iOS 4層結構(iOS技術概要)—— Core OS 層(四)

Core OS層

Core OS層包含了很多技術的底層技術支持,在應用程序裏面,儘管你沒有直接使用這些底層技術,但是他們被高層的框架所使用。如果需要顯示的處理安全模塊或者與硬件通信,你會Core OS層上的一些框架。

 

 

Accelerate  Framework

iOS4.0引入的,包含接口執行DSP、線性代數以及圖像處理計算。這個框架的優勢:自己寫接口封裝這些底層高性能的接口,這些接口一旦寫成,就可以非常方便的移植不同的程序中,並且支持所有iOS設備運行。

更多關於Accelerate框架中函數的使用,參考 Accelerate Framework Reference。

 

Core Bluetooth Framework

藍牙框架允許開發者與其他低功耗藍牙設備交互,這個框架的OC接口允許你掃描低功耗藍牙設備,與其中一個設備連接或者斷開連接,讀取或者寫入服務的屬性,註冊服務以及監聽屬性的變化,等等。

更多關於Core Bluetooth框架接口的介紹,參考 Core Bluetooth Framework Reference。

 

External Accessory Framework

iOS3.0引入,External Accessory(外部輔助)框架提供了與iOS相關輔助設備通信技術,外部輔助設備可以通過30針的數據線連接或者通過藍牙進行無線連接。外部輔助框架提供了一種方法來獲取每個可用的配件以及發起通信會話,之後,還可以通過相關命令直接控制配件。

更多這個框架的使用信息,參考 External Accessory Programming Topics,以及http://developer.apple.com

 

Generic Security ServicesServices Framework

iOS5引入的,通用安全服務框架爲iOS程序提供了一組標準的安全相關服務,這個框架的基本接口是在IETF RFC 2743和RFC 4401中指定的。除了提供標準的接口,iOS還增加了管理證書的接口(標準接口裏沒有,但是需要應用程序要求)。

更多GSS框架的接口,參考對應的頭文件。

 

Security Framework

iOS系統不但提供內建的安全功能,還提供Security框架,用於保證程序所管理數據的安全,該框架提供的接口可用於管理證書、公鑰、私鑰以及信任策略。它支持生成加密的安全僞隨機數。同時,它也支持對證書和KeyChain密鑰進行保存,是用戶敏感數據的安全倉庫。

Common Crypto接口另外還支持對稱加密、HMAC以及Digests。Digests的功能和OpenSSL庫常用的功能兼容,但是iOS無法使用OpenSSL庫。

iOS3.0之後,你可以讓所創建的多個應用程序共享某些KeyChain項,這樣可以讓相同套件內的應用程序胡勇更流暢。例如,你可以在應用程序間共享用戶密碼和其他元素,通過這種方法,你就不需要在每個應用程序單獨對用戶做出提示。如應用程序需要共享數據,則每個應用程序的Xcode功能必須同樣的授權。

更多Security框架的功能和特性,參考SecurityFramework Reference。如何使用Keychain參考,KeyChain Services Programming Guide。如何在Xcode工程中設置應用程序的授權,參考ToolsWorkflow Guide for iOS。如需瞭解可以對哪些應用程序授權進行配置,參考KeyChain Services Reference中的SecItemAdd函數。

 

System

系統層包括內核環境、驅動及操作系統底層UNIX接口,內核以Mach爲基礎,它負責操作系統的各個方面,包括管理系統的虛擬內存、線程、文件系統、網絡以及進程間通信。這一層包含的驅動是系統硬件和系統框架的接口,處於安全方面的考慮,內核和驅動只允許少數系統框架和應用程序訪問。

應用程序可以使用iOS提供的LibSystem庫訪問多種操作系統底層功能。LibSystem庫的接口基於C語言,可爲下述功能提供支持:

1、線程(POSIX線程)

2、網絡(BSD sockets)

3、文件系統訪問

4、標準I/O

5、Bonjour和DNS服務

6、區域信息

7、內存分配

8、數學計算

許多Core OS技術的頭文件位於<iOS_SDK>/usr/include/目錄,<iOS_SDK>是Xcode安裝目錄中目標SDK的路徑。如果需要了解這些技術相關的功能,參考iOS Manual Pages

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章