ios操作系統(tǒng)簡(jiǎn)介和原理
現(xiàn)在大多數(shù)人都喜歡用蘋果產(chǎn)品,重要原因就是ios系統(tǒng)的強(qiáng)大,那么它強(qiáng)在哪呢?下面由學(xué)習(xí)啦小編為大家整理了ios核心操作系統(tǒng)層,希望對(duì)大家有幫助。
ios核心操作系統(tǒng)層簡(jiǎn)介
在ios開發(fā)體系中,核心操作系統(tǒng)層(Core OS)處于最底層,Core OS的作用是給ios技術(shù)提供支持。在應(yīng)用程序中,開發(fā)者正常是用不到Core OS提供的功能,但是所引用的其他庫很有可能會(huì)用到或者依賴于Core OS。開發(fā)者在處理安全問題或者與硬件進(jìn)行溝通的時(shí)候,會(huì)直接用到Core OS提供的功能。
iOS的系統(tǒng)架構(gòu)分為四個(gè)層次:核心操作系統(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è)備進(jìn)行交互。作為app開發(fā)者不需要與這一層打交道。
包含Accelerate Framework、External Accessory Framework、Security Framework、System等幾個(gè)框架,基本都是基于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)用程序中使用各種媒體文件,進(jìn)行音頻與視頻的錄制,圖形的繪制,以及制作基礎(chǔ)的動(dòng)畫效果。
包含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ì)上來說它負(fù)責(zé)用戶在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ù)學(xué)計(jì)算、大號(hào)碼以及數(shù)字信號(hào)處理等一系列接口。使用這個(gè)庫的好處在于開發(fā)者可以對(duì)其進(jìn)行重寫,用以優(yōu)化基于iOS的不同設(shè)備的硬件特征,并且只需要寫一次就可以確保它在全部設(shè)備上有效運(yùn)行。
(2)External Accessory Framework
負(fù)責(zé)iOS設(shè)備與各種附屬設(shè)備的溝通。iOS設(shè)備可以通過自帶的數(shù)據(jù)線、Wi.Fi和藍(lán)牙與附屬設(shè)備進(jìn)行溝通。ExternalAccessoryFramework提供接口讓開發(fā)者可以獲取各種附屬設(shè)備的信息并且進(jìn)行初始化,從而可以放心地發(fā)送指令以控制設(shè)備。
(3)Security Framework
用來保證應(yīng)用程序數(shù)據(jù)管理的安全性。這個(gè)庫會(huì)提供一些接口讓開發(fā)者管理證書、公共密鑰、私有密鑰和信任策略。它支持安全加密隨機(jī)數(shù)生成,同時(shí)也支持密鑰的證書存儲(chǔ)。
(4)System層
包括內(nèi)核、驅(qū)動(dòng)和OS的各種UNIX底層接口。其中內(nèi)核是基于Mach(用于Mac OS X的微內(nèi)核)的,它主要負(fù)責(zé)處理虛擬內(nèi)存管理、線程、文件系統(tǒng)、網(wǎng)絡(luò)和進(jìn)程間通信。驅(qū)動(dòng)主要用來為各種硬件和系統(tǒng)庫之間提供接口。iOS提供接口讓應(yīng)用程序可以訪問OS的各種功能,開發(fā)者可以通過LibSystem庫來調(diào)用它們,這些接口都是基于C語言的,它們提供的功能如下:
①線程。
②網(wǎng)絡(luò)。
?、畚募到y(tǒng)。
?、軜?biāo)準(zhǔn)輸入輸出。
?、軧onjour和DNS服務(wù)。
?、薇镜匦畔?。
?、邇?nèi)存管理。
?、鄶?shù)學(xué)計(jì)算。
Bonjour也稱為零配置聯(lián)網(wǎng),能自動(dòng)發(fā)現(xiàn)IP網(wǎng)絡(luò)上的計(jì)算機(jī)、設(shè)備和服務(wù)。Bonjour使用工業(yè)標(biāo)準(zhǔn)的IP協(xié)議來允許設(shè)備自動(dòng)發(fā)現(xiàn)彼此,而不需輸入口地址或配置DNS服務(wù)器。如果讀者想要了解更多的iOS開發(fā)課程知識(shí),可以進(jìn)入扣丁學(xué)堂官網(wǎng)觀看免費(fèi)的iOS培訓(xùn)視頻講座。