ios系統(tǒng)架構(gòu)分為哪幾層
ios操作系統(tǒng)到底有多少層基本架構(gòu)呢,每一層行使什么功能呢?下面由學(xué)習(xí)啦小編為大家整理了ios系統(tǒng)架構(gòu)的介紹,希望對(duì)大家有幫助。
ios系統(tǒng)架構(gòu)簡(jiǎn)介
iOS是由蘋果公司開發(fā)的移動(dòng)操作系統(tǒng) [1] 。蘋果公司最早于2007年1月9日的Macworld大會(huì)上公布這個(gè)系統(tǒng),最初是設(shè)計(jì)給iPhone使用的,后來陸續(xù)套用到iPod touch、iPad以及Apple TV等產(chǎn)品上。iOS與蘋果的Mac OS X操作系統(tǒng)一樣,屬于類Unix的商業(yè)操作系統(tǒng)。原本這個(gè)系統(tǒng)名為iPhone OS,因?yàn)閕Pad,iPhone,iPod touch都使用iPhone OS,所以2010WWDC大會(huì)上宣布改名為iOS(iOS為美國(guó)Cisco公司網(wǎng)絡(luò)設(shè)備操作系統(tǒng)注冊(cè)商標(biāo),蘋果改名已獲得Cisco公司授權(quán))。
iOS的系統(tǒng)架構(gòu)分為四個(gè)層次:核心操作系統(tǒng)層(Core OS layer)、核心服務(wù)層(Core Services layer)、媒體層(Media layer)和可觸摸層(Cocoa Touch layer)。
1.Core OS層-----包含核心部分、文件系統(tǒng)、網(wǎng)絡(luò)基礎(chǔ)、安全特性、能量管理和一些設(shè)備驅(qū)動(dòng),還有一些系統(tǒng)級(jí)別的API。
2.Core Services層----提供核心服務(wù),例如字符串處理函數(shù)、集合管理、網(wǎng)絡(luò)管理、URL處理工具、聯(lián)系人維護(hù)、偏好設(shè)置等。
3.Media層----該層框架和服務(wù)依賴Core Services層,向Cocoa Touch層提供畫圖和多媒體服務(wù),如聲音、圖片、視頻等。
4.Cocoa Touch層----該框架基于 iPhone OS應(yīng)用層直接調(diào)用層,如觸摸事件、照相機(jī)管理等,包該層含UIKit框架和Foundation框架。
其實(shí)iOS是基于UNIX的,所以我們完全可以相信這個(gè)操作系統(tǒng),要知道從系統(tǒng)的穩(wěn)定性上來說它要比其他操作系統(tǒng)的產(chǎn)品好很多。
ios系統(tǒng)架構(gòu)詳解
位于iOS系統(tǒng)架構(gòu)最下面的一層是核心操作系統(tǒng)層,它包括內(nèi)存管理、文件系統(tǒng)、電源管理以及一些其他的操作系統(tǒng)任務(wù)。它可以直接和硬件設(shè)備進(jìn)行交互。核心操作系統(tǒng)層包括以下這些組件:
OS X Kernel Mach 3.0 BSD
Sockets Power Mgmt File System
Keychain Certificates Security
Bonjour
第二層是核心服務(wù)層,我們可以通過它來訪問iOS的一些服務(wù)。它包括以下這些組件:
Collections Address Book Networking
File Access SQLite Core Location
Net Services Threading Preferences
URL Utilities
第三層是媒體層,通過它我們可以在應(yīng)用程序中使用各種媒體文件,進(jìn)行音頻與視頻的錄制,圖形的繪制,以及制作基礎(chǔ)的動(dòng)畫效果。它包括以下這些組件:
Core Audio OpenGL Audio Mixing
Audio Recording Video Playback JPG,PNG,TIFF
PDF Quartz Core Animation
OpenGL ES
最上面一層是可觸摸層,這一層為我們的應(yīng)用程序開發(fā)提供了各種有用的框架,并且大部分與用戶界面有關(guān),本質(zhì)上來說它負(fù)責(zé)用戶在iOS設(shè)備上的觸摸交互操作。它包括以下這些組件:
Multi-Touch Events Core Motion Camera
View Hierarchy Localization Alerts
Web Views Image Picker Multi-Touch Controls
在Cocoa Touch層中的很多技術(shù)都是基于Objective-C語言的。Objective-C語言為iOS提供了像集合、文件管理、網(wǎng)絡(luò)操作等支持。像UIKit框架,它為應(yīng)用程序提供了各種可視化組件,比如像窗口(Window)、視圖(View)和按鈕組件(UIButton)。Cocoa Touch層中的其他框架,對(duì)我們?cè)趹?yīng)用程序中的開發(fā)來說也是非常有用的,如訪問用戶通信錄功能框架、獲取照片信息功能的框架、負(fù)責(zé)加速感應(yīng)器和三維陀螺儀等硬件支持的框架。