因为 ObjC 的 runtime 只能在 Mac OS 下才能编译,所以文章中的代码都是在 Mac OS,也就是 x86_64 架构下运行的,对于在
arm64 中运行的代码会特别说明。
在上一篇分析 isa 的文章从
NSObject 的初始化了解 isa中曾经说到过实例方法被调用时,会通过其持有 isa 指针寻找对应的类,然后在其中的 class_data_bits_t...
分类:
其他好文 时间:
2016-05-13 00:09:53
阅读次数:
296
因为 ObjC 的 runtime 只能在 Mac OS 下才能编译,所以文章中的代码都是在 Mac OS,也就是 x86_64 架构下运行的,对于在
arm64 中运行的代码会特别说明。
写在前面
文章会介绍上古时代 Objective-C 哈希表,也就是 NXHashTable :
NXHashTable 的实现NXHashTable 的性能分析NXHashTab...
分类:
其他好文 时间:
2016-05-13 00:06:32
阅读次数:
252
通常x86架构的字节码长度是不固定的,x64也也沿袭了这种做法。 ARM架构则是具有固定长度的字节码。 在最开始的时候,所有的ARM指令都被编码为4字节。这被称为ARM mode。 后来发现可以压缩到两个字节。这被称为Thumb mode * Thumb mode和ARM mode可能会同时存在于一 ...
分类:
其他好文 时间:
2016-04-28 23:59:29
阅读次数:
586
描述:为了适配iPhone 5s的64位处理器,在编译选项中加入了arm64架构。但是发现工程在真机上可以编译通过但是在模拟器上却未编过。 问题解决:经研究在编译选项中再加入x86_64架构,重新编译工程就可以在模拟器上编译成功了. 可以这样理解armv7 , armv7s对应真机的32位处理器,i ...
分类:
移动开发 时间:
2016-04-23 07:07:08
阅读次数:
253
现代的CPU基本上归为冯洛伊曼结构(也成普林斯顿结构)和哈佛结构。 冯洛伊曼结构就是我们所说的X86架构,而哈佛结构就是ARM架构。一个广泛用于桌面端(台式/笔记本/服务器/工作站等),一个雄踞移动领域,我们的手持设备(平板\手机用的大多就是他了)。 他们的如区别如下: 一、冯洛伊曼的体系核心是:数 ...
分类:
其他好文 时间:
2016-04-14 01:24:34
阅读次数:
129
本篇只是初略介绍X86的逻辑运行原理,并不涉及物理层面和汇编层面的知识。 一、冯洛伊曼体系的运作过程: 1、CPU的历史就不扯了,有兴趣的朋友可以网上搜一下。 2、X86CPU是基于冯洛伊曼架构体系,所以大致上无非就这几点: ①、指令集和数据都用二进制来表示,且混在一个存储器。 ②、计算机由运算器、 ...
分类:
其他好文 时间:
2016-04-14 01:22:40
阅读次数:
180
Solaris是sun/Oracle公司出的一个操作系统,支持x86架构和SPARC架构,主要应用在服务器领域。实际使用中,一般都是通过终端连接,以命令行方式安装到服务器上的。
Solairs下载地址:http://www.oracle.com/technetwork/server-storage/solaris11/downloads/install-2245079.html
在这个...
分类:
系统相关 时间:
2016-04-10 14:35:23
阅读次数:
454
1.Arm架构 2.X86架构 3.Mips架构 如果是在Linux下编译Android源码,有可能是两个原因: 1. lunch命令有32位和64位的区别,注意选能够编译64位so的命令 2. mk文件中有LOCAL_MODULE_PATH的值比如为$(TARGET_OUT_SHARED_LIBR
分类:
移动开发 时间:
2016-03-21 12:22:38
阅读次数:
539
一 前期准备工作 1 搭建环境 1.1下载内核源代码并编译内核 创建目录,并进入该目录: 下载源码: 解压缩,并进入该目录:xz -d linux-3.18.6.tar.xz tar -xvf linux-3.18.6 cd linux-3.18.6 选定x86架构的相关文件编译: 编译: 1.2
分类:
系统相关 时间:
2016-03-12 21:05:59
阅读次数:
223
三台机器操作系统环境如下:[mongodb@node1~]$cat/etc/issue
CentOSrelease6.4(Final)
Kernel\ronan\m
[mongodb@node1~]$uname-r
2.6.32-358.el6.x86_64
[mongodb@node1~]$uname-m
x86_64架构如下图,之前的架构图找不到了,就凑合看下面的表格吧。。192.168.75.128、shard1:10..
分类:
数据库 时间:
2016-03-09 11:09:25
阅读次数:
305