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>/usr/include/
目錄,<iOS_SDK>是 Xcode安裝目錄中目標SDK的路徑。如果需要瞭解這些技術相關聯的功能,請訪問iOS手冊頁面。