IOS学习基础之了解Core OS层

移动开发 iOS
本文介绍的IOS学习基础之了解Core OS 层,详细的介绍了Core OS 层,我们先来卡内容详解。

IOS学习基础之了解Core OS 层是本文要介绍的内容,Core OS层的底层功能是很多其他技术的构建基础。通常情况下,这些功能不会直接应用于应用程序,而是应用于其他框架。但是,在直接处理安全事务或和某个外设通讯的时候,则必须要应用到该层的框架

Accelerate 框架

iOS 4.0引入了Accelerate框架(Accelerate.framework)。该框架的接口可用于执行数学、大数字以及DSP运算。和开发者个人编写的库相比,该框架的优点在于它根据现存的各种iOS设备的硬件配置进行过优化。因此,您只需一次编码就可确保它在所有设备高效运行。

如需要进一步了解Accelerate框架,请查看Accelerate框架参考。

External Accessory 框架

iOS 3.0引入了External Accessory框架(ExternalAccessory.framework),通过它来支持iOS设备与绑定附件通信。附件可以通过一个30针的基座接口和设备相连,也可通过蓝牙连接。通过External Accessory框架,您可以获得每个外设的信息并初始化一个通讯会话。通讯会话初始化完成之后,您可以使用设备支持的命令直接对其进行操作。

如需进一步了解External Accessory框架的使用方式,请查看External Accessory编程概论。如需了解External Accessory框架中相关类的信息,请查看External Accessory框架参考。如需了解如何开发iOS设备附件,请访问 http://www.apple.com.cn/developer/页面。

Security 框架

iOS系统不但提供内建的安全功能,还提供Security框架(Security.framework)用于保证应用程序所管理之数据的安全。该框架提供的接口可用于管理证书、公钥、私钥以及信任策略。它支持生成加密的安全伪随机数。同时,它也支持对证书和Keychain密钥进行保存,是用户敏感数据的安全仓库。

CommonCrypto接口另外还支持对称加密、HMAC以及Digests。实际上,Digests的功能实和OpenSSL库常用的功能兼容,但是iOS无法使用OpenSSL库。

iOS 3.0及其后续版本的系统中, 您可以让所创建的多个应用程序共享某些Keychain项,这样可以让相同套件内的应用程序的互用更流畅。举个例子,您可以在应用程序间共享用户密码和及其他元素。通过这种方法,您就不需要在每个应用程序单独对用户作出提示。如应用程序需要共享数据,则每个应用程序的Xcode工程必须配备恰当的资格。

如需要进一步了解Security框架的功能和特征,请查看Security 框架参考 。如需了解如何访问 Keychain,请查看Keychain服务编程指南。如需了解如何在Xcode工程中设置应用程序的资格,请查看iOS 开发指南。如需了解您可以对哪些应用程序资格进行配置,请查看Keychain服务参考中的
SecItemAdd

函数。

System

系统层包括内核环境、驱动及操作系统底层UNIX 接口。内核以Mach为基础,它负责操作系统的各个方面,包括管理系统的虚拟内存、线程、文件系统、网络以及进程间通讯。这一层包含的驱动是系统硬件和系统框架的接口。出于安全方面的考虑,内核和驱动只允许少数系统框架和应用程序访问。

应用程序可以使用iOS提供的

LibSystem

库访问多种操作系统底层功能。

LibSystem

库的接口基于C语言,可为下述功能提供支持:

线程 (POSIX 线程)

网络 (BSD sockets)

文件系统访问

标准 I/O

Bonjour和 DNS服务

区域信息

内存分配

数学计算

许多 Core OS技术的头文件位于<iOS_SDK>

  1. /usr/include/ 

目录,<iOS_SDK>是 Xcode安装目录中目标SDK的路径。如果需要了解这些技术相关联的功能,请访问iOS手册页面。

小结:IOS学习基础之了解Core OS 层的内容介绍完了,希望本文对你有所帮助。更多关于IOS的内容,请参考编辑推荐。

责任编辑:zhaolei 来源: 博客园
相关推荐

2009-12-22 14:48:16

Fedora Core

2011-07-18 15:20:28

Core Services 框架

2011-08-05 14:25:11

iPhone 架构 音频

2011-07-07 11:03:07

iOS MVC Objective-

2011-09-14 15:30:00

MongoDB

2015-07-27 10:27:32

IOS基础知识核心动画

2011-07-26 17:31:52

iOS 设计模式

2011-06-02 10:28:18

2009-12-17 16:16:00

CCIE学习

2010-10-26 11:55:21

Oracle OS备份

2020-03-03 10:26:15

Linux OSLinuxUnix

2019-01-22 10:04:13

微软浏览器Windows

2011-06-02 10:28:15

网络命令Arp

2011-06-02 14:36:19

Route

2011-06-02 11:21:59

Tftp

2011-06-02 14:36:22

Runas

2011-03-09 16:10:34

MAC地址二层组播IGMP

2011-08-02 13:35:41

iOS开发 Get Post

2011-07-03 10:05:52

Core Animat

2015-11-06 10:52:51

点赞
收藏

51CTO技术栈公众号