日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

iOS系统层次架构

發(fā)布時間:2023/12/8 windows 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS系统层次架构 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文轉(zhuǎn)自:http://blog.csdn.net/lxl_815520/article/details/51172917

一,概述

? ? ??iOS的系統(tǒng)架構(gòu)分為四個層次:核心操作系統(tǒng)層(Core OS layer)、核心服務(wù)層(Core Services layer)、媒體層(Media layer)和可觸摸層(Cocoa Touch layer)。理解ios的系統(tǒng)構(gòu)架,對我們?nèi)粘i_發(fā)有很大幫助.其實iOS是基于UNIX的,所以我們完全可以相信這個操作系統(tǒng),要知道從系統(tǒng)的穩(wěn)定性上來說它要比其他操作系統(tǒng)的產(chǎn)品好很多。

二, IOS操作系統(tǒng)的層次結(jié)構(gòu)及相關(guān)框架

? ? 1、Core OS 核心層:包含Accelerate Framework、External Accessory Framework、Security Framework、System等幾個框架,基本都是基于C語言的接口
? ? 2、Core Services核心服務(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、Mediah媒體層:包含Core Graphics、Core Animation、OpenGL ES、Core Text、Image I/O、Assets Library Framework、Media Player Framework、AV Foundation、OpenAL、Core Audio Frameworks、AV Foundation、Core Media等等
? ?4、Cocoa Touch 觸摸層:包括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)的層次結(jié)構(gòu)及相關(guān)框架? ??

?三,iOS的系統(tǒng)層級結(jié)構(gòu)的功能和相關(guān)框架

? ?1>Core OS:是用FreeBSD和Mach所改寫的Darwin, 是開源、符合POSIX標(biāo)準(zhǔn)的一個Unix核心。這一層包含或者說是提供了整個iPhone OS的一些基礎(chǔ)功能,比如:硬件驅(qū)動, 內(nèi)存管理,程序管理,線程管理(POSIX),文件系統(tǒng),網(wǎng)絡(luò)(BSD Socket),以及標(biāo)準(zhǔn)輸入輸出等等,所有這些功能都會通過C語言的API來提供。另外,值得一題的是,這一層最具有UNIX色彩,如果你需要把 UNIX上所開發(fā)的程序移植到iPhone上,多半都會使用到Core OS的API.
? ? 核心OS層的驅(qū)動也提供了硬件和系統(tǒng)框架之間的接口。然而,由于安全的考慮,只有有限的系統(tǒng)框架類能訪問內(nèi)核和驅(qū)動。
? ? iPhone OS提供了許多訪問操作系統(tǒng)低層功能的接口集,iPhone 應(yīng)用通過LibSystem庫來訪問這些功能,這些接口集如下所示:
? ? ? ? 線程(POSIX線程);
? ? ? ? 網(wǎng)絡(luò)(BSD sockets);
? ? ? ? 文件系統(tǒng)訪問;
? ? ? ? 標(biāo)準(zhǔn)I/O;
? ? ? ? Bonjour和DNS服務(wù);
? ? ? ? 現(xiàn)場信息(Locale Information);
? ? ? ? 內(nèi)存分配;
? ? ? ? 數(shù)學(xué)計算。
? ? 許多Core OS技術(shù)的頭文件位于目錄/usr/include/,iPhoneSDK是SDK的安裝目錄。
? ? 2>Core Services:Core Services在Core OS基礎(chǔ)上提供了更為豐富的功能, 它包含了Foundation.Framework和Core Foundation.Framework, 之所以叫Foundation ,就是因為它提供了一系列處理字串,排列,組合,日歷,時間等等的基本功能。Foundation是屬于objective-c的API,Core Fundation是屬于C的API。另外Core servieces還提供了其他的功能,比如:
? ? Security, Core Location, SQLite, 和Address Book. 其中Security是用來處理認(rèn)證,密碼管理,按安全性管理的; Core Location是用來處理GPS定位的;SQLLite是輕量級的數(shù)據(jù)庫,而AddressBook則用來處理電話薄資料的。下面是具體介紹:?
? ? (1)電話本
? ? ? ? ?電話本框架(AddressBook.framework)提供了保存在手機設(shè)備中的電話本編程接口。開發(fā)者能使用該框架訪問和修改存儲在用戶聯(lián)系人數(shù)據(jù)庫里的記錄。例如,一個聊天程序可以使用該框架獲得可能的聯(lián)系人列表,啟動聊天的進(jìn)程(Process),并在視圖上顯示這些聯(lián)系人信息等。
? ? (2)核心基礎(chǔ)框架
? ? ? ? 核心基礎(chǔ)框架(CoreFoundation.framework)是基于C語言的接口集,提供iPhone應(yīng)用的基本數(shù)據(jù)管理和服務(wù)功能。該框架支持如下功能:
? ? ? ? Collection數(shù)據(jù)類型(Arrays、 Sets等);
? ? ? ? Bundles;
? ? ? ? 字符串管理;
? ? ? ? 日期和時間管理;
? ? ? ? 原始數(shù)據(jù)塊管理;
? ? ? ? 首選項管理;
? ? ? ? URL和Stream操作;
? ? ? ? 線程和運行循環(huán)(Run Loops);
? ? ? ? 端口和Socket通信。
? ? ? ? ? 核心基礎(chǔ)框架與基礎(chǔ)框架是緊密相關(guān)的,它們?yōu)橄嗤幕竟δ芴峁┝薕bjective-C接口。如果開發(fā)者混合使用Foundation Objects 和Core Foundation類型,就能充分利用存在兩個框架中的"toll-free bridging"。toll-free bridging意味著開發(fā)者能使用這兩個框架中的任何一個的核心基礎(chǔ)和基礎(chǔ)類型,例如Collection和字符串類型等。每個框架中的類和數(shù)據(jù)類型的描述注明該對象是否支持toll-free bridged。如果是,它與哪個對象橋接(toll-free bridged)。
? ? (3)CFNetwork
? ? ? ? ? ?CFNetwork框架(CFNetwork.framework)是一組高性能的C語言接口集,提供網(wǎng)絡(luò)協(xié)議的面向?qū)ο蟮某橄蟆i_發(fā)者可以使用 CFNetwork框架操作協(xié)議棧,并且可以訪問低層的結(jié)構(gòu)如BSD Sockets等。同時,開發(fā)者也能簡化與FTP和HTTP服務(wù)器的通信,或解析DNS等任務(wù)。使用CFNetwork框架實現(xiàn)的任務(wù)如下所示:
? ? ? ? ? BSD Sockets;
? ? ? ? ? 利用SSL或TLS創(chuàng)建加密連接;
? ? ? ? ? 解析DNS Hosts;
? ? ? ? ? 解析HTTP協(xié)議,鑒別HTTP和HTTPS服務(wù)器;
? ? ? ? ? 在FTP服務(wù)器工作;
? ? ? ? ? 發(fā)布、解析和瀏覽Bonjour服務(wù)。
? ? (4)核心位置框架(Core Location Framework)
? ? ? ? ? ? ? 核心位置框架(CoreLocation.framework)主要獲得手機設(shè)備當(dāng)前的經(jīng)緯度,核心位置框架利用附近的GPS、蜂窩基站或Wi- Fi信號信息測量用戶的當(dāng)前位置。iPhone地圖應(yīng)用使用這個功能在地圖上顯示用戶的當(dāng)前位置。開發(fā)者能融合這個技術(shù)到自己的應(yīng)用中,給用戶提供一些位置信息服務(wù)。例如可以提供一個服務(wù):基于用戶的當(dāng)前位置,查找附近的餐館、商店或設(shè)備等。
? ? (5)安全框架(Security Framework)
? ? ? ? ? ? ?iPhone OS除了內(nèi)置的安全特性外,還提供了外部安全框架(Security.framework),從而確保應(yīng)用數(shù)據(jù)的安全性。該框架提供了管理證書、公鑰/私鑰對和信任策略等的接口。它支持產(chǎn)生加密安全的偽隨機數(shù),也支持保存在密鑰鏈的證書和密鑰。對于用戶敏感的數(shù)據(jù),它是安全的知識庫(Secure Repository)。CommonCrypto接口也支持對稱加密、HMAC和數(shù)據(jù)摘要。在iPhone OS里沒有OpenSSL庫,但是數(shù)據(jù)摘要提供的功能在本質(zhì)上與OpenSSL庫提供的功能是一致的。
? ? (6)SQLite
? ? ? ? ? ? ?iPhone應(yīng)用中可以嵌入一個小型SQL數(shù)據(jù)庫SQLite,而不需要在遠(yuǎn)端運行另一個數(shù)據(jù)庫服務(wù)器。開發(fā)者可以創(chuàng)建本地數(shù)據(jù)庫文件,并管理這些文件中的表格和記錄。數(shù)據(jù)庫SQLite為通用的目的而設(shè)計,但仍可以優(yōu)化為快速訪問數(shù)據(jù)庫記錄。訪問數(shù)據(jù)庫SQLite的頭文件位于/usr/include/sqlite3.h,其中是SDK安裝的目標(biāo)路徑。
? ? (7)支持XML
? ? ? ? ? ? ?基礎(chǔ)框架提供NSXMLParser類,解析XML文檔元素。libXML2庫提供操作XML內(nèi)容的功能,這個開放源代碼的庫可以快速解析和編輯 XML數(shù)據(jù),并且轉(zhuǎn)換XML內(nèi)容到HTML。訪問libXML2庫的頭文件位于目錄/usr/include /libxml2/,其中是SDK安裝的目標(biāo)目錄。
? ? 3>Media:如同其名,Media層提供了圖片,音樂,影片等多媒體功能。圖像分為2D圖像和3D圖像,前者由Quartz2D來支持,后者則是用OpenglES.與音樂對應(yīng)的模組是Core Audio和OpenAL, Media Player 實現(xiàn)了影片的播放, 而最后還提供了Core Animation來對強大動畫的支持。具體介紹如下:
? ?(1)圖像技術(shù)(Graphics Technologies)
? ? ? ? 高質(zhì)量圖像是所有iPhone應(yīng)用的一個重要的組成部分。任何時候,開發(fā)者可以采用UIKit 框架中已有的視圖和功能以及預(yù)定義的圖像來開發(fā)iPhone應(yīng)用。然而,當(dāng)UIKit 框架中的視圖和功能不能滿足需求時,開發(fā)者可以應(yīng)用下面描述的技術(shù)和方法來制作視圖。
? ? ? ? ① Quartz。核心圖像框架(CoreGraphics.framework)包含了Quartz 2D畫圖API,Quartz與在Mac OS中采用的矢量圖畫引擎是一樣先進(jìn)的。Quartz支持基于路徑(Path-based)畫圖、抗混淆(Anti-aliased)重載、梯度(Gradients)、圖像(Images)、顏色(Colors)、坐標(biāo)空間轉(zhuǎn)換(Coordinate-space Transformations)、pdf文檔創(chuàng)建、顯示和解析。雖然API是基于C語言的,它采用基于對象的抽象表征基礎(chǔ)畫圖對象,使得圖像內(nèi)容易于保存和復(fù)用。
? ? ? ? ② 核心動畫(Core Animation)。Quartz核心框架(QuartzCore.framework)包含CoreAnimation接口,Core Animation是一種高級動畫和合成技術(shù),它用優(yōu)化的重載路徑(Rendering Path)實現(xiàn)復(fù)雜的動畫和虛擬效果。它用一種高層的Objective-C接口配置動畫和效果,然后重載在硬件上獲得較好的性能。Core Animation集成到iPhone OS 的許多部分,包括UIKit類如UIView,提供許多標(biāo)準(zhǔn)系統(tǒng)行為的動畫。開發(fā)者也能利用這個框架中的Objective-C接口創(chuàng)建客戶化的動畫。
? ? ? ? ③ OpenGL ES。OpenGL ES框架(OpenGLES.framework)符合OpenGL ES v1.1規(guī)范,它提供了一種繪畫2D和3D內(nèi)容的工具。OpenGL ES 框架是基于C語言的框架,與硬件設(shè)備緊密相關(guān),為全屏游戲類應(yīng)用提供高幀率(high frame rates)。開發(fā)者總是要使用OpenGL框架的EAGL接口,EAGL接口是OpenGL ES框架的一部分,它提供了應(yīng)用的OpenGL ES畫圖代碼和本地窗口對象的接口。
? ? ? (2)音頻技術(shù)(Audio Technologies)
? ? ? ?iPhone OS的音頻技術(shù)為用戶提供了豐富的音頻體驗。它包括音頻回放,高質(zhì)量的錄音和觸發(fā)設(shè)備的振動功能等。
? ? ? ?iPhone OS的音頻技術(shù)支持如下音頻格式:AAC、Apple Lossless(ALAC)、A-law、IMA/ADPCM(IMA4)、Linear PCM、μ-law和Core Audio等。
? ? ? ?① 核心音頻(Core Audio Family)。核心音頻框架家族(Core Audio family of frameworks)提供了音頻的本地支持,如表16-1所示。Core Audio是一個基于C語言的接口,并支持立體聲(Stereo Audio)。開發(fā)能采用iPhone OS 的Core Audio框架在iPhone 應(yīng)用中產(chǎn)生、錄制、混合和播放音頻。開發(fā)者也能通過核心音頻訪問手機設(shè)備的振動功能。
? ? ? ?核心音頻框架:? 框架(Framework)?服務(wù)(Service)
? ? ? ?CoreAudio.framework :定義核心音頻的音頻數(shù)據(jù)類型
? ? ? ?AudioUnit.framework:提供音頻和流媒體文件的回放和錄制,并且管理音頻文件和播放提示聲音
? ? ? ?AudioToolbox.framework:提供使用內(nèi)置音頻單元服務(wù),音頻處理模塊
? ? ? ?② OpenAL。iPhone OS 也支持開放音頻庫(Open Audio Library, OpenAL)。OpenAL是一個跨平臺的標(biāo)準(zhǔn),它能傳遞位置音頻(Positional Audio)。開發(fā)者能應(yīng)用OpenAL在需要位置音頻輸出的游戲或其他應(yīng)用中實現(xiàn)高性能、高質(zhì)量的音頻。
? ? ? ? ?由于OpenAL是一個跨平臺的標(biāo)準(zhǔn),采用OpenAL的代碼模塊可以平滑地移植到其他平臺。
? ?(3)視頻技術(shù)(Video Technologies)
? ? ? ? ?iPhone OS通過媒體播放框架(MediaPlayer.framework)支持全屏視頻回放。媒體播放框架支持的視頻文件格式包括.mov, .mp4,.m4v和.3gp,并應(yīng)用如下壓縮標(biāo)準(zhǔn):
? ? ? ? ?① H.264 Baseline Profile Level 3.0 video,在30 f/s 的情況下分辨率達(dá)到640×480像素。注意:不支持B frames;
? ? ? ? ?② MPEG4規(guī)范的視頻部分;
? ? ? ? ?③ 眾多的音頻格式,包含在音頻技術(shù)的列表里,如AAC、Apple Lossless (ALAC)、A-law、IMA/ADPCM(IMA4)、線性PCM、μ-law和Core Audio等。 ? ? ?
? ? ? ? 4>Cocoa Touch:它是Objective-C的API, 其中最核心的部分是UIKit.Framework,應(yīng)用程序界面上的各種組件,全是由它來提供呈現(xiàn)的,除此之外它還負(fù)責(zé)處理屏幕上的多點觸摸事件,文字的輸出,圖片,網(wǎng)頁的顯示,相機或文件的存取,以及加速感應(yīng)的部分等。具體介紹如下:
? ? ? ?(1)UIKit框架
? ? ? ? ?UIKit框架(UIKit.framework)包含Objective-C程序接口,提供實現(xiàn)圖形,事件驅(qū)動的iPhone應(yīng)用的關(guān)鍵架構(gòu)。 iPhone OS中的每一個應(yīng)用采用這個框架實現(xiàn)如下核心功能:
? ? ? ? 應(yīng)用管理;
? ? ? ? 支持圖形和窗口;
? ? ? ? 支持觸摸事件處理;
? ? ? ? 用戶接口管理;
? ? ? ? 提供用來表征標(biāo)準(zhǔn)系統(tǒng)視圖和控件的對象;
? ? ? ? 支持文本和Web內(nèi)容;
? ? ? ? 通過URL scheme與其他應(yīng)用的集成。
? ? ? ? 為提供基礎(chǔ)性代碼建立應(yīng)用,UIKit也支持一些與設(shè)備相關(guān)的特殊功能,如下所示:
? ? ? ? 加速計數(shù)據(jù);
? ? ? ? 內(nèi)建Camera;
? ? ? ? 用戶圖片庫;
? ? ? ? 設(shè)備名稱和模式信息。
? ? ? (2)基礎(chǔ)框架(Foundation Framework)
? ? ? ? ? ?基礎(chǔ)框架(Foundation.framework)支持如下功能:
? ? ? ? ? ?Collection數(shù)據(jù)類型(包括Arrays、Sets);
? ? ? ? ? ?Bundles;
? ? ? ? ? ?字符串管理;
? ? ? ? ? ?日期和時間管理;
? ? ? ? ? ?原始數(shù)據(jù)塊管理;
? ? ? ? ? ?首選項管理;
? ? ? ? ? ?線程和循環(huán);
? ? ? ? ? ?URL和Stream處理;
? ? ? ? ? ?Bonjour;
? ? ? ? ? ?通信端口管理;
? ? ? ? ? ?國際化。
? ? ? (3)電話本UI框架(Address Book UI Framework)
? ? ? ? ?電話本UI框架(AddressBookUI.framework)是一個Objective-C標(biāo)準(zhǔn)程序接口,主要用來創(chuàng)建新聯(lián)系人,編輯和選擇電話本中存在的聯(lián)系人。它簡化了在iPhone應(yīng)用中顯示聯(lián)系人信息,并確保所有應(yīng)用使用相同的程序接口,保證應(yīng)用在不同平臺的一致性。

四,總結(jié):

? ? 當(dāng)我們要開發(fā)iPhone程序的時候,首先要現(xiàn)從上層入手,優(yōu)先使用Objective-C封裝后的庫,也就是通過 UIKit.framework搭配Foundation.framework來進(jìn)行開發(fā),而當(dāng)面對一些比較復(fù)雜的功能時,像是多媒體的處理或是繪圖,再往下層去找尋相關(guān)的framwork開完成。

?

? ? 每個框架對應(yīng)IOS系統(tǒng)里的一層,每層建立在它下面層的上面。應(yīng)該盡量使用上層的框架來代替下面的框架。更高層次的框架是對底層框架基于對象的抽象。

轉(zhuǎn)載于:https://www.cnblogs.com/yang-shuai/p/7120228.html

總結(jié)

以上是生活随笔為你收集整理的iOS系统层次架构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本少妇毛茸茸 | 日韩美女黄色片 | 四虎com| 日韩欧美一区二区一幕 | 天堂在线www | 亚洲高清一区二区三区 | 亚洲精品鲁一鲁一区二区三区 | 欧美人一级淫片a免费播放 西方av在线 | 青草精品在线 | 97在线免费 | 国模在线观看 | 日韩精品免费一区二区夜夜嗨 | 久久久天堂国产精品女人 | 色偷偷影院 | 亚洲一区二区在线看 | 狠狠躁夜夜躁人 | 日b视频在线观看 | 99情趣网 | 日韩精品一区不卡 | 老熟妇午夜毛片一区二区三区 | 美女被c出水 | 国产av电影一区二区三区 | 亚洲高清在线播放 | 国产精品福利在线播放 | 日韩在线观看不卡 | 天天躁日日躁狠狠躁伊人 | 中文字幕无人区二 | 北条麻妃一区二区三区四区五区 | 国产乱子伦一区二区 | 热热久| 尤物视频在线观看免费 | 日本免费专区 | 欧美理论片在线观看 | 成年人晚上看的视频 | 日韩欧美在线视频播放 | 美丽的姑娘在线观看 | 综合视频在线观看 | 天天爽夜夜爽视频 | 欧美乱论| 麻豆精品影院 | 永久在线观看 | 琪琪av在线| 手机在线小视频 | 国产美女作爱全过程免费视频 | 亚洲va天堂va国产va久 | 欧美日韩精品在线播放 | 粉嫩av一区二区白浆 | 日韩欧美在线一区二区 | 中文字幕免费视频 | 天天综合网天天综合色 | 国产丰满麻豆 | av综合网站 | 久久久www成人免费精品 | 欧美成人综合色 | 成人在线免费网址 | 东京热加勒比无码少妇 | 亚洲第一视频网 | 91免费网站在线观看 | 日韩久久网| 在线成人免费视频 | 开心六月婷婷 | 午夜爽爽爽 | 日韩高清一区二区 | 欧美日韩国 | 国产精品欧美在线 | 男人的天堂伊人 | 最新中文字幕在线播放 | 中文字幕在线播放第一页 | 国产精品久久无码 | 欧美特黄色片 | 欧美黄色一区 | 2019天天操 | 在线黄色观看 | 精品婷婷 | 一二三区在线视频 | 黄色不卡av | 欧美69久成人做爰视频 | 日韩中文一区二区 | 国产无套内射又大又猛又粗又爽 | 国产特黄aaaaa毛片 | 国产欧美一区二区三区在线看蜜臂 | 青青草成人免费 | 日韩精品久久一区 | 国产日本亚洲 | 国产免费黄色网址 | 一区福利| 99精品国产一区二区 | 欧洲性猛交 | 国产aaaaaa | 精品人妻一区二区三区日产乱码卜 | 国产成人精品一区二区三区在线 | 韩国美女一区 | 国产网红女主播精品视频 | 一区二区高清在线观看 | 美女扒开腿让男生捅 | 色噜噜色狠狠 | 一级大片在线观看 | 中文字幕永久在线播放 | 久久久久久久无码 |