ios操作系統(tǒng)簡介和原理
現(xiàn)在大多數(shù)人都喜歡用蘋果產(chǎn)品,重要原因就是ios系統(tǒng)的強大,那么它強在哪呢?下面由學習啦小編為大家整理了ios核心操作系統(tǒng)層,希望對大家有幫助。
ios核心操作系統(tǒng)層簡介
在ios開發(fā)體系中,核心操作系統(tǒng)層(Core OS)處于最底層,Core OS的作用是給ios技術(shù)提供支持。在應(yīng)用程序中,開發(fā)者正常是用不到Core OS提供的功能,但是所引用的其他庫很有可能會用到或者依賴于Core OS。開發(fā)者在處理安全問題或者與硬件進行溝通的時候,會直接用到Core OS提供的功能。
iOS的系統(tǒng)架構(gòu)分為四個層次:核心操作系統(tǒng)層(Core OS layer)、核心服務(wù)層(Core Services layer)、媒體層(Media layer)和可觸摸層(Cocoa Touch layer)。
1、Core OS是位于iOS系統(tǒng)架構(gòu)最下面的一層是核心操作系統(tǒng)層,它包括內(nèi)存管理、文件系統(tǒng)、電源管理以及一些其他的操作系統(tǒng)任務(wù)。它可以直接和硬件設(shè)備進行交互。作為app開發(fā)者不需要與這一層打交道。
包含Accelerate Framework、External Accessory Framework、Security Framework、System等幾個框架,基本都是基于c語言的接口
2、Core Services是核心服務(wù)層,可以通過它來訪問iOS的一些服務(wù)。
包含Address Book Framework、CFNetwork Framework、Core Data Framework、Core Foundation Framework、Core Location Framework、Core Media Framework、Core Telephony Framework、Event Kit Framework、Foundation Framework、Mobile Core Services Framework、Quick Look Framework、Store Kit Framework、System Configuration Framework、Block Objects、Grand Central Dispatch 、In App Purchase、Location Services、SQLite、XML Support等一些框架,也基本都是基于c語言的接口。
3、Media是媒體層,通過它我們可以在應(yīng)用程序中使用各種媒體文件,進行音頻與視頻的錄制,圖形的繪制,以及制作基礎(chǔ)的動畫效果。
包含Core Graphics、Core Animation、OpenGL ES、Core Text、Image I/O、Assets Library Framework、Media Player Framework、AV Foundation、OpenAL、Core Audio Frameworks、Core Media等等
4、Cocoa Touch是可觸摸層,這一層為我們的應(yīng)用程序開發(fā)提供了各種有用的框架,并且大部分與用戶界面有關(guān),本質(zhì)上來說它負責用戶在iOS設(shè)備上的觸摸交互操作。
包括Address Book UI Framework、Event Kit UI Framework、Game Kit Framework、iAd Framework、Map Kit Framework、Message UI Framework、UIKit Framework等等,這一層基本都是基于 Objective-c的接口
ios核心操作系統(tǒng)層詳解
Core OS層所包含的庫如下:
(1)Accelerate Framework
包含數(shù)學計算、大號碼以及數(shù)字信號處理等一系列接口。使用這個庫的好處在于開發(fā)者可以對其進行重寫,用以優(yōu)化基于iOS的不同設(shè)備的硬件特征,并且只需要寫一次就可以確保它在全部設(shè)備上有效運行。
(2)External Accessory Framework
負責iOS設(shè)備與各種附屬設(shè)備的溝通。iOS設(shè)備可以通過自帶的數(shù)據(jù)線、Wi.Fi和藍牙與附屬設(shè)備進行溝通。ExternalAccessoryFramework提供接口讓開發(fā)者可以獲取各種附屬設(shè)備的信息并且進行初始化,從而可以放心地發(fā)送指令以控制設(shè)備。
(3)Security Framework
用來保證應(yīng)用程序數(shù)據(jù)管理的安全性。這個庫會提供一些接口讓開發(fā)者管理證書、公共密鑰、私有密鑰和信任策略。它支持安全加密隨機數(shù)生成,同時也支持密鑰的證書存儲。
(4)System層
包括內(nèi)核、驅(qū)動和OS的各種UNIX底層接口。其中內(nèi)核是基于Mach(用于Mac OS X的微內(nèi)核)的,它主要負責處理虛擬內(nèi)存管理、線程、文件系統(tǒng)、網(wǎng)絡(luò)和進程間通信。驅(qū)動主要用來為各種硬件和系統(tǒng)庫之間提供接口。iOS提供接口讓應(yīng)用程序可以訪問OS的各種功能,開發(fā)者可以通過LibSystem庫來調(diào)用它們,這些接口都是基于C語言的,它們提供的功能如下:
①線程。
?、诰W(wǎng)絡(luò)。
?、畚募到y(tǒng)。
?、軜藴瘦斎胼敵?。
?、軧onjour和DNS服務(wù)。
?、薇镜匦畔ⅰ?/p>
?、邇?nèi)存管理。
?、鄶?shù)學計算。
Bonjour也稱為零配置聯(lián)網(wǎng),能自動發(fā)現(xiàn)IP網(wǎng)絡(luò)上的計算機、設(shè)備和服務(wù)。Bonjour使用工業(yè)標準的IP協(xié)議來允許設(shè)備自動發(fā)現(xiàn)彼此,而不需輸入口地址或配置DNS服務(wù)器。如果讀者想要了解更多的iOS開發(fā)課程知識,可以進入扣丁學堂官網(wǎng)觀看免費的iOS培訓視頻講座。