iOS 和 OS X 对比

从本质上看, iOS 实际上就是 OS X, 但是两者之间还是有一些显著的区别:
  • iOS 内核和二进制文件编译的目标架构是基于 ARM 的架构, 而不是 Intel i386 和 x86_64. 尽管目标处理器可能不同(A4.....A10), 但都是采用 ARM 的设计. ** 相比 Intel, ARM 的主要优势在于电源管理, 因此 ARM 的处理器设计对于 iOS 这样的移动操作系统(及其强大对手 Android) 来说都非常重要. **
  • iOS 的内核源码依然闭源 --- 尽管苹果公司承诺 OS X 内核 XNU 要一直开源, 但是苹果公司的这个承诺显然在回避其移动版本. 有时候, 一些 iOS 修改会在公共开发的源代码中泄漏(这些代码可以通过 arm 和 ARM_ARCH 的 #ifdef 条件编译变量看出来), 不过这些泄漏代码的数量随着新版本内核的发布越来越少.
  • iOS 内核的编译稍有不同, 关注的是嵌入式特性和一些新的 API. 有一些新的 API 最终会进入 OS X, 但是其他的不会.
  • iOS 的系统 GUI 是 SpringBoard, 这是大家熟知的触屏应用加载器; 而 OS X 的 GUI 的 Aqua, 是鼠标驱动的, 而且特别为窗口系统所设计. 由于 SpringBoard 如此流行, 因此在 Lion 中以 Launchpad 的形式移植到了 OS X 中.
  • iOS 的内存管理要紧凑得多, 因为在移动设备上没有几乎无穷的交换空间可以使用. 因此, 开发者需要适应更严酷的内存限制以及编程模型的变化.
  • 系统的限制更严(或称为 jailed), 因此应用程序不允许访问底层 UNIX API(即 Darwin), 也没有 root 访问权限, 而且只能访问自己的目录里的数据. 只有苹果的应用才能访问整个系统的权力. App Store 的应用被严格受限, 而且必须通过苹果的审查.

你可能感兴趣的:(iOS 和 OS X 对比)