Mac OS 和 iOS 操作系统架构

本文深入探讨了Mac OS和iOS的操作系统架构,重点分析了iOS的四个层次:Core OS层(包括Darwin和基础功能)、Core Services层(涉及Foundation、Core Foundation、Security等)、Media层(涵盖图像、音频、视频技术)和Cocoa Touch层(UIKit和Foundation框架)。文章详细介绍了各层的主要功能和相关API,旨在帮助iOS开发者更好地理解和利用系统资源进行开发。
摘要由CSDN通过智能技术生成

        做iOS开发已经半年多了,但是感觉对iOS开发的理解却还只停留在表面,昨天刚把两个项目结了,今天打算学了一下iOS系统的架构,以便于更好的理解和开发。

首先看一下Mac OS 和 iOS 系统架构的对比图:

从图上可以看出Mac OS和iOS的系统架构层次只有最上面一层不同,Mac是Cocoa框架,而iOS是Cocoa Touch框架,因此Mac OS开发和iOS开发是相似的。这里我只分析iOS的系统架构:

一、核心操作系统层(Core OS layer):

     Core OS是用FreeBSD和Mach所改写的Darwin, 是开源、符合POSIX标准的一个Unix核心。这一层包含或者说是提供了整个iPhone OS的一些基础功能,比如:硬件驱动, 内存管理,程序管理,线程管理(POSIX),文件系统,网络(BSD Socket),以及标准输入输出等等,所有这些功能都会通过C语言的API来提供。另外,值得一题的是,这一层最具有UNIX色彩,如果你需要把 UNIX上所开发的程序移植到iPhone上,多半都会使用到Core OS的API.
     核心OS层的驱动也提供了硬件和系统框架之间的接口。然而,由于安全的考虑,只有有限的系统框架类能访问内核和驱动。
     iPhone OS提供了许多访问操作系统低层功能的接口集,iPhone 应用通过LibSystem库来访问这些功能,这些接口集如下所示:

        线程(POSIX线程);

        网络(BSD sockets);

        文件系统访问;

        标准I/O;

        Bonjour和DNS服务;

        现场信息(Locale Information);

        内存分配;

        数学计算。

     许多Core OS技术的头文件位于目录<iPhoneSDK>/usr/include/,iPhoneSDK是SDK的安装目录。

 

二、核心服务层(Core Services layer):

    Core Services在Core OS基础上提供了更为丰富的功能, 它包含了Foundation.Framework和Core Foundation.Framework, 之所以叫Foundation ,就是因为它提供了一系列处理字串,排列,组合,日历,时间等等的基本功能。Foundation是属于Objective-C的API,Core Fundation是属于C的API。另外Core servieces还提供了其他的功能,比如:
    Security, Core Location, SQLite, 和Address Book. 其中Security是用来处理认证,密码管理,按安全性管理的; Core Location是用来处理GPS定位的;SQLLite是轻量级的数据库,而AddressBook则用来处理电话薄资料的。下面是具体介绍: 
    (1)电话本

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值