iOS框架
最新的iOS4.0以Darwin 10.3.1为基础,所以开发iPhone或iPad程序与Mac OS X类似。
iPhone OS 框架层次图
Core OS和Core Services层包含了iPhone操作系统最基础的工作,如:文件读取、系统服务和网络通信等等。这些层面大多以C语言为基础,包含了CoreFoundation、CFNetwork、SQLite、存取POSIX序列以及UNIX协议等等的技术。
Media层是以C和Objective-C为基础实现的。Media层包含了2D与3D绘图支持和影音处理等等。这一层包括了以C为基础技术的OpenGL ES、Quartz及Core Audio。还有以Objective-C为基础的动画引擎Core Animation。
Core Touch层的大多技术是以Objective-C实现,提供了构建程序的最基本框架。举例来说,Foundationframework提供了一个对集合、文档管理、网络操作及其他面向对象应用的支持。而UIKit则提供了一个应用程序视图的基础架构,包含了视窗的classes、views、controls控件以及管理这些对象的控制器等等。在此层的其它framework则提供了存取iPhone内联系人以及照片信息,以及加速器状态及其它硬件特征等等。
背景知识:
Apple公司由乔布斯、斯蒂夫•沃兹尼亚克
现代苹果操作系统的源泉—Darwin
1985年9月16日乔布斯被迫离开Apple公司并于当日成立了NeXT Computer公司,誓做最好的计算机来打垮Apple公司。之后他们开发了一款极其出色的操作系统NeXTStep(NS前缀的来源)。
然而NeXT公司经营状况并不乐观,在1996年12月Apple花费4亿美金买下NeXT,Apple想要用NeXTStep来构成一个新的现代操作系统的基础,因为Apple当时的操作系统差得每当启动Netscape的Navigator的时候都会崩溃。
从此NeXT技术进入Apple。Mac OS X Server 1.0应该才是开始以Darwin为核心开发的操作系统。
Darwin围绕XNU(一个混合内核,包含Mach 3微核心和FreeBSD等宏核心)构建。Darwin 8.0之后只以源码形式发布,而不再发布二进制文件。
Darwin巧妙的内核—XNU
XNU的意思是
XNU was a
后来Apple收购了NeXT,Mach组件升级到了3.0,BSD组件升级用了FreeBSD工程,并且I/0工具包也用C++重写。
XNU特点:
Like some other modern
Currently, XNU runs on
本文摘自