《MAC OS X 技术内幕》读书笔记第一章:MAC OS X的起源
《MAC OS X 技術(shù)內(nèi)幕》讀書筆記第一章:MAC OS X的起源
- 前言
- 1 System x.x系列
- 1.1System 1.0(1984年1月24日)
- 1.2System 2.x(1985年4月)
- 1.3System 3.x(1986年1月)
- 1.4System 4.x(1987年1月)
- 1.5System 5.x(1987年10月)
- 1.6System 6.x(1988年4月)
- 1.7System 7.x(1991年5月13日)
- 2 對(duì)MAC OS 的探索
- 2.1 Mac OS 8.x(1997年7月26日)
- 2.2 Mac OS 9.x(1999年月26日)
- 2.3 Copland(Apple針對(duì)Mac電腦的一個(gè)操作系統(tǒng)升級(jí)計(jì)劃)
- 2.4 NeXT(喬布斯被Apple解雇后創(chuàng)建的一家公司,后被Apple收購)
- 2.5 Mach(NeXTSTEP和OPENSTEP內(nèi)核的關(guān)鍵組件)
- 2.6 Carbon API(對(duì)經(jīng)典版Mac OS的徹查 )
- 3朝著 Mac OS X 前進(jìn)
- 3.1 Rhapsody(NeXT與Mac OS X之間的操作系統(tǒng)的代號(hào))
- 3.1.1Blue Box(MAC OS 兼容環(huán)境,虛擬化環(huán)境)
- 3.1.2Yellow Box(Rhapsody開發(fā)平臺(tái),來后演變?yōu)镃ocoa API)
- 3.2 Mac OS X Developer Previews
- 3.3 Mac OS X Public Beta
- 3.4 Mac OS X 10.0~10.15
- 3.4.1 Mac OS X 10.0(Cheetah獵豹,2001.3.24)
- 3.4.2 Mac OS X 10.1(Puma美洲獅,2001.9.25)
- 3.4.3 Mac OS X 10.2(Jaguar美洲虎,2002.8.24)
- 3.4.4 Mac OS X 10.3(Panther黑豹,2003.10.24)
- 3.4.5 Mac OS X 10.4(Tiger虎,2005.4.29)
- 3.4.6 Mac OS X 10.5(Leopard花豹,2007.10.26)
- 3.4.7 Mac OS X 10.6(Snow Leopard雪豹,2009.8.28)
- 3.4.8 Mac OS X 10.7(Lion獅,2011.7.20)
- 3.4.9 Mac OS X 10.8(Mountain Lion山獅,2012.7.25)
- 3.4.10 Mac OS X 10.9(Mavericks沖浪灣,2013.10.22)
- 3.4.11 Mac OS X 10.10(Yosemite優(yōu)勝美地國家公園,2014.10.16)
- 3.3.12 Mac OS X 10.11(El Capitan酋長(zhǎng)巖,2015.9.30)
- 3.4.13 macOS 10.12 Sierra(Sierra內(nèi)華達(dá)山脈,2016.9.20)
- 3.4.14 macOS 10.13(High Sierra內(nèi)華達(dá)高脊山脈,2017.9.25)
- 3.4.15 macOS 10.14(Mojave莫哈維沙漠,2018.9.25)
- 3.4.16 macOS 10.15(Catalina圣卡塔利娜島,2019.10.7)
- 結(jié)尾
前言
最近想了解一下MacOS,于是雙十一的時(shí)候買了這本書來看,偶爾抽空寫一下讀書筆記做個(gè)總結(jié)。這本書還是挺新的,19年1月清華大學(xué)出版社出版的書,作者是阿米特·辛格(Amit Singh),全書一共1302頁,共分12章和一個(gè)附錄,作者從系統(tǒng)設(shè)計(jì)的角度剖析了Mac OS X內(nèi)部工作原理的具體細(xì)節(jié),揭示Mac OS X及其組件的核心體系結(jié)構(gòu)和實(shí)現(xiàn)。
Mac OS可以被分成操作系統(tǒng)的兩個(gè)系列,一個(gè)是老舊且已不被支持的經(jīng)典版Mac OS,Mac OS 8以前用“System x.x”來稱呼(System 1.0~7.5),另一個(gè)則是Mac OS。Mac OS版本從1997年7月26日發(fā)布的Mac OS 8(實(shí)際上是System7.7)開始, 一直到2002年秋天發(fā)布的Mac OS 9.2.2為止。之后Mac OS X 成為蘋果電腦操作系統(tǒng)產(chǎn)品線最新的 Mac OS。盡管官方上簡(jiǎn)單地說是 Mac OS 的“版本10”,但是在歷史上看來它與早期的 Mac OS 版本有本質(zhì)區(qū)別。到今天為止,蘋果的Mac操作系統(tǒng)被稱為“OS X”已長(zhǎng)達(dá)近20年之久。
下面我講分為System(System 1.0~7.5),MacOS(8.0~9),MacOS X(10.0~10.15)三個(gè)部分來寫。(書中第一章主要講了Apple對(duì)Mac OS 和 Mac OS X的探索和發(fā)展,但是幾乎沒有怎么提及System x.x系列,所以System x.x系列我只好從網(wǎng)上找了一些資料整理下來)
1 System x.x系列
1.1System 1.0(1984年1月24日)
System 1.0是蘋果隨同Macintosh 128K的最初電腦操作系統(tǒng),發(fā)布于1984年1月,是第一個(gè)麥金塔操作系統(tǒng)。當(dāng)時(shí)的System 1.0已經(jīng)具備了圖形操作界面,含有桌面、窗口 、圖標(biāo)、光標(biāo)、菜單和卷動(dòng)欄等項(xiàng)目。全體系統(tǒng)文件夾僅216K。當(dāng)時(shí)并不能從菜單中建立新的文件夾。
ps:原始的蘋果操作系統(tǒng)都是基于Lisa OS的
1.2System 2.x(1985年4月)
System 2.0更新了Finder,引入了多個(gè)文件夾,“關(guān)閉”命令,并安裝了“ MiniFinder”應(yīng)用程序以快速啟動(dòng)任何選定的應(yīng)用程序。System 2.1(Finder 5.0)引入了具有真實(shí)目錄的分層文件系統(tǒng)(HFS), 被認(rèn)為是一個(gè)重大的進(jìn)步。該版本專門用于支持Hard Disk 20,并且僅在RAM中實(shí)現(xiàn)HFS 。
1.3System 3.x(1986年1月)
System 3.0(Finder 5.1),正式實(shí)現(xiàn)了HFS,800K啟動(dòng)驅(qū)動(dòng)器,對(duì)包括SCSI和AppleShare在內(nèi)的多種新技術(shù)的支持。
1.4System 4.x(1987年1月)
System 4.0隨Macintosh SE一起發(fā)布,而系統(tǒng)4.1隨Macintosh II一起首次發(fā)布-這些新機(jī)器要求對(duì)第一個(gè)擴(kuò)展插槽,Apple桌面總線(ADB),內(nèi)部硬盤驅(qū)動(dòng)器以及Macintosh II上的外部顏色提供附加支持顯示屏和第一個(gè)Motorola 68020處理器。
ps: System 1到System 4全都是單任務(wù)操作系統(tǒng),意味著用戶只能同時(shí)運(yùn)行一個(gè)應(yīng)用程序(桌面附件除外)。
1.5System 5.x(1987年10月)
System 5.0 的主要新功能是MultiFinder,該擴(kuò)展使系統(tǒng)可以一次運(yùn)行多個(gè)程序。該系統(tǒng)使用協(xié)作式多任務(wù)處理模型,這意味著僅在前臺(tái)應(yīng)用程序產(chǎn)生控制權(quán)時(shí)才將時(shí)間分配給后臺(tái)應(yīng)用程序。應(yīng)用程序已經(jīng)調(diào)用以處理事件的系統(tǒng)功能的更改使許多現(xiàn)有應(yīng)用程序自動(dòng)共享時(shí)間,并允許它們?cè)诤笈_(tái)執(zhí)行任務(wù)。用戶還可以選擇不使用MultiFinder,從而一次只使用一個(gè)應(yīng)用程序。
1.6System 6.x(1988年4月)
System Software 6(也就是System 6)是Macintosh系統(tǒng)軟件的合并版本,可產(chǎn)生完整,穩(wěn)定且持久的操作系統(tǒng)。需要在系統(tǒng)6下提供額外支持的兩個(gè)主要硬件介紹是68030處理器和1.44 MB的SuperDrive,它們隨Macintosh IIx和Macintosh SE / 30一起首次亮相。后來的更新包括對(duì)Macintosh Portable的引入對(duì)第一個(gè)專用筆記本電腦功能的支持。從System 6開始,Finder的統(tǒng)一版本號(hào)與System的版本號(hào)非常接近,從而減輕了由早期系統(tǒng)之間經(jīng)常存在的巨大差異引起的混亂。
1.7System 7.x(1991年5月13日)
1991年5月13日,發(fā)布了System 7.0,這是對(duì)System 6的重大升級(jí),添加了重要的用戶界面檢修,新應(yīng)用程序,穩(wěn)定性改進(jìn)和許多新功能,這也是第一款彩色的蘋果系統(tǒng),有了256色的圖標(biāo),有了更好的多媒體(quick time)支持。它的推出與68040 Macintosh系列的發(fā)布同時(shí)提供支持。System 7.0最重要的功能之一是支持虛擬內(nèi)存,這是預(yù)計(jì)已使用多年的基本子系統(tǒng),僅在Connectix的名為Virtual的第三方擴(kuò)展中才存在于以前的系統(tǒng)中。隨之而來的是向32位內(nèi)存尋址的轉(zhuǎn)變,此過程涉及使OS代碼中的所有例程都使用指針的完整32位作為地址-先前的系統(tǒng)使用高8位作為標(biāo)志。System 7.0的另一個(gè)值得注意的功能是內(nèi)置的協(xié)作式多任務(wù)處理。在System6.x中,此功能是通過MultiFinder可選的。直至Mac OS 8于1997年發(fā)布之前,是當(dāng)時(shí)最受歡迎的Macintosh操作系統(tǒng)。其后的System 7.1~7.5(1991-1997)主要是修正了很多錯(cuò)誤,提高了系統(tǒng)的穩(wěn)定性并添加了大量的次要功能。
2 對(duì)MAC OS 的探索
Apple對(duì)操作系統(tǒng)的探索從未停止,在第二部分我先介紹一下MAC OS 8和MAC OS 9的一些特性,然后討論影響Apple操作系統(tǒng)的幾種重要的技術(shù)。
2.1 Mac OS 8.x(1997年7月26日)
1997年7月26日,Mac OS 8.0正式發(fā)布,同月喬布斯成為Apple真正意義上的 CEO,從這個(gè)版本開始,Mac OS的名稱被正式采用。Mac OS 8通過一系列更新發(fā)布,代表了從1988年到1996年為蘋果公司雄心勃勃的操作系統(tǒng)Copland開發(fā)的許多技術(shù)的增量集成。Mac OS 8幫助Mac OS實(shí)現(xiàn)了現(xiàn)代化。Mac OS 8.0為用戶帶來了多線程的Finder以及更強(qiáng)大的自定義用戶界面。 同時(shí)還有三維鉑金界面以及新的電腦幫助 (輔助說明) 系統(tǒng)。
2.2 Mac OS 9.x(1999年月26日)
Mac OS 9是經(jīng)典Mac OS的最新主要版本,發(fā)布于1999年10月23日。它是Mac OS 8的穩(wěn)定演進(jìn)。Mac OS 9.x一共發(fā)布了7個(gè)版本,直到2001年末發(fā)布的Mac OS 9.2.2為止。
Mac OS 9增加了對(duì)AirPort 無線網(wǎng)絡(luò)的支持。它引入了多用戶支持的早期實(shí)現(xiàn)。盡管不是真正的多用戶操作系統(tǒng),Mac OS 9確實(shí)允許多個(gè)桌面用戶擁有自己的數(shù)據(jù)和系統(tǒng)設(shè)置。改進(jìn)的Sherlock搜索引擎添加了幾個(gè)新的搜索插件。Mac OS 9還提供了大大改進(jìn)的內(nèi)存實(shí)現(xiàn)和管理。AppleScript進(jìn)行了改進(jìn),以允許TCP / IP和網(wǎng)絡(luò)控制。Mac OS 9還首次使用集中式Apple軟件更新來查找和安裝OS和硬件更新。
其他新功能包括帶有代碼簽名和鑰匙串技術(shù)的動(dòng)態(tài)文件加密軟件,遠(yuǎn)程網(wǎng)絡(luò)和文件服務(wù)器軟件包以及USB 驅(qū)動(dòng)程序列表的大大改進(jìn)。
此外,Mac OS 9還添加了一些過渡技術(shù),以幫助應(yīng)用程序開發(fā)人員在向公眾推出新OS之前采用某些Mac OS X功能,以幫助簡(jiǎn)化過渡。其中包括用于文件系統(tǒng)的新API 以及應(yīng)用程序可以鏈接到的Carbon庫的綁定,而不是傳統(tǒng)的API庫的綁定—適應(yīng)此需求的應(yīng)用程序也可以在Mac OS X上本地運(yùn)行。從Mac OS 9.1更新開始進(jìn)行了其他更改,以使其可以在Mac OS X 的經(jīng)典環(huán)境中啟動(dòng)。
2.3 Copland(Apple針對(duì)Mac電腦的一個(gè)操作系統(tǒng)升級(jí)計(jì)劃)
Copland是Apple在1994年至1996年之間為Macintosh計(jì)算機(jī)開發(fā)的操作系統(tǒng),但從未商業(yè)發(fā)布。它引入了內(nèi)存保護(hù)、多任務(wù)處理及一系列特性,并與當(dāng)時(shí)的Mac系統(tǒng)軟件兼容。開發(fā)工作于1994年3月正式開始。在接下來的幾年中,Copland的預(yù)覽引起了廣泛的關(guān)注,向Mac觀眾介紹了現(xiàn)代操作系統(tǒng)設(shè)計(jì)的基本概念,例如面向?qū)ο?#xff0c;防撞和多任務(wù)處理。這個(gè)系統(tǒng)在開發(fā)過程中不斷引入新特性,但在內(nèi)部測(cè)試版本中表現(xiàn)出嚴(yán)重的不穩(wěn)定。最終被蘋果公司放棄。
1996年5月,蘋果公司CEO吉爾·阿梅里奧(Gil Amelio)表示,Copland是該公司的主要業(yè)務(wù)目標(biāo),但是由于公司人員和項(xiàng)目管理功能失調(diào),開發(fā)工作陷入了問題,導(dǎo)致這個(gè)項(xiàng)目被長(zhǎng)期忽略。“只是各個(gè)部分的集合,而每個(gè)部分是由不同的團(tuán)隊(duì)開發(fā)的,人們期望它們能以某種方式魔法般的整合在一起…”。負(fù)責(zé)Copland的首席技術(shù)官埃倫·漢考克(Ellen Hancock)被聘請(qǐng)使該項(xiàng)目重回正軌,但很她快得出結(jié)論,它將永遠(yuǎn)無法交付。1996年8月,宣布取消Copland。Apple曾轉(zhuǎn)向一個(gè)代號(hào)名為Gershwin的項(xiàng)目,但是這只是轉(zhuǎn)移當(dāng)前人們關(guān)注的焦點(diǎn),Gershwin也只是一個(gè)代號(hào),Gershwin的開發(fā)工作從沒有開始過。2008年,《PC World》將Copland評(píng)選為IT歷史上最大的項(xiàng)目失敗清單。
在Copland徹底失敗后,Apple對(duì)新的操作系統(tǒng)的需求比以往更加強(qiáng)烈,蘋果公司將在公司外部尋求新的操作系統(tǒng)。在眾多選擇中,他們選擇了OpenStep并于1997年購買了NeXT以獲得它。在收購NeXT之后,Apple采用了雙管齊下的操作系統(tǒng)戰(zhàn)略:
1:為用戶桌面市場(chǎng)持續(xù)改進(jìn)MacOS(例如后來的 Mac OS 8和 Mac OS 9)
2:基于NeXT技術(shù)創(chuàng)建高端操作系統(tǒng)(新系統(tǒng)名為Rhapsody,我在后面會(huì)說到,主要是針對(duì)服務(wù)器和企業(yè)用戶)
按照首席技術(shù)官埃倫·漢考克(Ellen Hancock)的計(jì)劃,System7.5的開發(fā)繼續(xù)進(jìn)行,最初為Copland預(yù)定的許多技術(shù)都已集成到基本OS中。蘋果開始購買活動(dòng),獲得了對(duì)各種第三方系統(tǒng)增強(qiáng)功能的權(quán)利,并將其集成到操作系統(tǒng)中,包括拓展管理,分層的Apple菜單,折疊的窗口,菜單欄時(shí)鐘和便箋等等。Mac OS 7.6改善了穩(wěn)定性和性能,它放棄了“ System”這個(gè)名字,取而代之的是“ Mac OS”。最終,為Copland開發(fā)了許多功能,包括新的多線程Finder和對(duì)主題的支持被納入未發(fā)布的Mac OS 7.7 Beta中,該版本已更名并作為Mac OS 8發(fā)行。
Copland操作系統(tǒng)是蘋果公司對(duì)新的操作系統(tǒng)的一次嘗試,盡管當(dāng)時(shí)蘋果下了很大的決心和力氣,但最后還是以失敗告終,而Copland創(chuàng)建或者改進(jìn)的一些重要特性添加到了Mac OS 8和Mac OS 9中。
2.4 NeXT(喬布斯被Apple解雇后創(chuàng)建的一家公司,后被Apple收購)
NeXT是喬布斯與幾位同事一起被蘋果公司解雇后由他創(chuàng)立的。NeXT發(fā)布了許多NeXTSTEP系統(tǒng),這套系統(tǒng)是以Mach和BSD為基礎(chǔ),以O(shè)bjective-C作為原生語言,NeXTSTEP是以下幾個(gè)部分的組合:
NeXTSTEP以出色地實(shí)現(xiàn)了后三項(xiàng)而著稱。這些工具包提供了強(qiáng)大的功能,并且是機(jī)器上所有軟件的規(guī)范開發(fā)系統(tǒng)。它介紹了Dock(通過OpenStep傳遞到當(dāng)今的macOS中)和Shelf的想法。NeXTSTEP還發(fā)起或創(chuàng)??新了許多其他GUI概念,這些概念在其他操作系統(tǒng)中也很常見:3D小部件,大型全彩圖標(biāo),系統(tǒng)范圍內(nèi)除文件圖標(biāo)之外的各種對(duì)象的拖放,全系統(tǒng)的管道服務(wù),實(shí)時(shí)滾動(dòng)和窗口拖動(dòng),屬性對(duì)話框以及窗口修改通知(例如文件的保存狀態(tài))。該系統(tǒng)是首批通用用戶界面之一,可在所有應(yīng)用程序中以一致的方式處理發(fā)布的顏色標(biāo)準(zhǔn),透明度,復(fù)雜的聲音和音樂處理(通過Motorola 56000 DSP),高級(jí)圖形基元,國際化和現(xiàn)代字體。
由于經(jīng)濟(jì)問題NeXT于1993年退出了硬件業(yè)務(wù),繼續(xù)開發(fā)NeXTSTEP。1994年NeXT與Sun Microsystems合作,聯(lián)合發(fā)布了OpenStep規(guī)范,它是一個(gè)開放平臺(tái),包含多個(gè)API和框架,任何人都可以使用它來創(chuàng)建它們自己的面向?qū)ο蟛僮飨到y(tǒng)的實(shí)現(xiàn),它們運(yùn)行在任何底層的核心操作系統(tǒng)之上。OpenStep API規(guī)范定義了三個(gè)主要組件:
在Sun OS ,HP-UX和Windows NT上實(shí)現(xiàn)了OpenStep。NeXT自己的實(shí)現(xiàn)于1996年7月發(fā)布為OPENSTEP4。對(duì)于OpenStep一個(gè)重要的認(rèn)識(shí)是,它只是一組API規(guī)范,而OPENSTEP(一定要大寫)是由NeXT開發(fā)的一個(gè)OpenStep的特殊實(shí)現(xiàn)。OPENSTEP構(gòu)建于Mach(也是NEXTSTEP的核心),它是原始OpenStep規(guī)范的超集,包括原始NeXTSTEP的許多功能。
蘋果在1997年以4.29億美元(相當(dāng)于2018年的6.7億美元)和150萬股蘋果股票收購了NeXT。作為協(xié)議的一部分,NeXT Software董事長(zhǎng)兼首席執(zhí)行官史蒂夫·喬布斯回到了他于1976年共同創(chuàng)立的公司Apple。創(chuàng)始人承諾將NeXT的軟件與Apple的硬件平臺(tái)合并,最終產(chǎn)生macOS,iOS,watchOS和tvOS。這些操作系統(tǒng)完全基于NeXTSTEP和OPENSTEP基礎(chǔ)。
2.5 Mach(NeXTSTEP和OPENSTEP內(nèi)核的關(guān)鍵組件)
與NeXT一起出現(xiàn)的是他的內(nèi)核,它變成來Apple的將來系統(tǒng)的內(nèi)核基礎(chǔ),Mach是NEXTSTEP內(nèi)核的關(guān)鍵組件也是Mac OS X 內(nèi)核的關(guān)鍵組件。Mach是一個(gè)由卡內(nèi)基梅隆大學(xué)開發(fā)的計(jì)算機(jī)操作系統(tǒng)微內(nèi)核,為了用于操作系統(tǒng)之研究,特別是在分布式與并行運(yùn)算上。是最早實(shí)現(xiàn)微核心操作系統(tǒng)的例子之一,是許多其它相似的項(xiàng)目的標(biāo)準(zhǔn)。
Mach開發(fā)項(xiàng)目在卡內(nèi)基梅隆大學(xué)從1985年運(yùn)行到1994年,到Mach 3.0版結(jié)束。其他還有許多人繼續(xù)Mach的研究包括猶他大學(xué)的Mach 4。Mach的開發(fā)是為了取代BSD的UNIX核心,所以是許多新的操作系統(tǒng)的設(shè)計(jì)基礎(chǔ)。Mach的研究至今似乎是停止了,雖然有許多商業(yè)化操作系統(tǒng),如NEXTSTEP與OPENSTEP,特別是Mac OS X(使用XNU核心)都是使用Mach或其派生系統(tǒng)。Mach的虛擬內(nèi)存(VM)系統(tǒng)也被BSD的開發(fā)者用于CSRG,并出現(xiàn)在BSD派生的系統(tǒng)中,如FreeBSD。Mac OS X與FreeBSD并未保留Mach首倡的微核心結(jié)構(gòu),除了Mac OS X繼續(xù)提供微核心于內(nèi)部處理通信以及應(yīng)用程序直接控制。
Mach的總體目標(biāo)是創(chuàng)建一個(gè)微內(nèi)核,它將作為其他操作系統(tǒng)的基礎(chǔ)。Mach打算主要用于實(shí)現(xiàn)處理器和內(nèi)存管理,而不是文件系統(tǒng)網(wǎng)絡(luò)或者I/O。Mach的實(shí)現(xiàn)使用4.3BSD作為其實(shí)代碼庫,它的設(shè)計(jì)者在消息傳遞內(nèi)核領(lǐng)域使用了RIG和Accent作為參考。Mach內(nèi)是用C語言編寫的,也計(jì)劃是高度可移植的。最初,Mach的設(shè)計(jì)者在內(nèi)核中提出了4個(gè)基本的抽象概念:
另一個(gè)基本的Mach抽象概念是內(nèi)存管理,可以把它視作映射到任務(wù)的地址空間里的數(shù)據(jù)的容器。Mach需要分頁式內(nèi)存管理單元(Paged Memory-Management Unit ,PMMU)Mach通過它的物理映射層給依附于機(jī)器的MMU功能提供了一個(gè)非常好的接口。Mach的虛擬內(nèi)存子系統(tǒng)被設(shè)計(jì)成支持大量,稀疏的虛擬地址空間,并與IPC集成在一起。IPC消息傳遞機(jī)制的應(yīng)用為線程和并發(fā)提供了很好的支持。進(jìn)程之下是多個(gè)線程,線程作為IPC機(jī)制的單元,Mach得以在消息被處理時(shí)控制線程睡眠或喚醒。這就允許系統(tǒng)將進(jìn)程分布于多個(gè)處理器之上,消息直接通過共享內(nèi)存實(shí)現(xiàn)也可以,必要時(shí)為其它處理器復(fù)制一份也可以。
與UNIX最初無視多處理器的設(shè)計(jì)不同,Mach在設(shè)計(jì)伊始即將多處理器支持納入考慮。它的擴(kuò)展性也很好,UMA還是NUMA都能很好的支持。Mach是為千種不同的處理器而設(shè)計(jì)的,移植到其他體系結(jié)構(gòu)很容易。其設(shè)計(jì)的一個(gè)關(guān)鍵目標(biāo)即為各不相同的硬件平臺(tái)上,實(shí)現(xiàn)可移植的分布式系統(tǒng)。
Mach項(xiàng)目的開發(fā) 3.0版本結(jié)束。Mach3.0是第一個(gè)真正的微內(nèi)核版本——BSD作為用戶空間里的Mach任務(wù)進(jìn)行,并且只具有Mach內(nèi)核所提供的基本特性。Mach3中的更改和改進(jìn)包括:
ps: FreeBSD的虛擬內(nèi)存體系結(jié)構(gòu)基于Mach的虛擬內(nèi)存管理體系結(jié)構(gòu)
2.6 Carbon API(對(duì)經(jīng)典版Mac OS的徹查 )
Carbon API是經(jīng)典版Mac OS的API經(jīng)過精簡(jiǎn),擴(kuò)展或修改后移植庫,它在當(dāng)時(shí)代表了70%左右的遺留Mac OS API,Carbon是蘋果將Mac OS X推向市場(chǎng)的戰(zhàn)略的重要組成部分,它提供了快速移植現(xiàn)有軟件應(yīng)用程序的途徑,以及運(yùn)輸可在Mac OS X或經(jīng)典Mac OS上運(yùn)行的應(yīng)用程序的途徑。隨著市場(chǎng)越來越轉(zhuǎn)向基于Cocoa的框架,尤其是在iOS發(fā)布之后,對(duì)移植庫的需求已被稀釋。Apple 在2007年的框架內(nèi)更新其他框架時(shí)并未創(chuàng)建64位版本的Carbon,最終在2012年7月24日發(fā)布的OS X 10.8 Mountain Lion中棄用了整個(gè)API。Carbon正式停產(chǎn),隨著macOS 10.15 Catalina的發(fā)布完全刪除。
3朝著 Mac OS X 前進(jìn)
在收購了NeXT之后,Apple 就在1997年演示了它的新一帶操作系統(tǒng)Rhapsody,在Rhapsody 第二個(gè)開發(fā)者預(yù)覽版本發(fā)布之后,Apple又改變了它的戰(zhàn)略,如下圖所示,但是最終都是為了實(shí)現(xiàn)它的具有新系統(tǒng)的目標(biāo)。
3.1 Rhapsody(NeXT與Mac OS X之間的操作系統(tǒng)的代號(hào))
Rhapsody代表了Apple的一項(xiàng)新戰(zhàn)略,Apple計(jì)劃把大多數(shù)關(guān)鍵的Mac OS 框架移植到Rhapsody上,包括:Quick Time, QuickDraw 3D, QuickDraw GX, GolorSync等。Rhapsody還支持眾多的文件系統(tǒng),比如AFP,FAT,HFS,HFS+,ISO9660和UFS。Rhapsody有兩個(gè)開發(fā)者版本:DR1,DR2,它們是為PowerPC和x86平臺(tái)發(fā)布的。在1997年的WWDC上,第一次演示了Rhapsody,它包括以下主要組件:
3.1.1Blue Box(MAC OS 兼容環(huán)境,虛擬化環(huán)境)
Blue Box是通過Rhapsody上的一個(gè)應(yīng)用程序(MacOS.app)來實(shí)現(xiàn)的Mac OS 的虛擬環(huán)境,MacOS.app從磁盤上加載一個(gè)Macintosh ROM文件并創(chuàng)建一個(gè)環(huán)境,Mac OS 在其中可以正常的運(yùn)行(我的理解就是一個(gè)類似虛擬機(jī)的app),Blue Box最初全屏幕地運(yùn)行MAC OS 8,并且可以使用cmd+return鍵在Rhapsody與Mac OS 之間切換
3.1.2Yellow Box(Rhapsody開發(fā)平臺(tái),來后演變?yōu)镃ocoa API)
Rhapsody的開發(fā)平臺(tái)稱為Yellow Box,Yellow Box包括OPENSTEP大多數(shù)集成框架,有3種核心框架:
3.2 Mac OS X Developer Previews
Mac OS X 有四個(gè)開發(fā)者預(yù)覽版本,即DP1~DP4,Apple在發(fā)布這些DP版本是做出了重大改進(jìn)。
3.3 Mac OS X Public Beta
Apple在2000年9月13日在巴黎舉行的Apple展覽會(huì)上發(fā)布了Mac OS X 的Beta版本,Mac OS X的Beta版本是最早的一個(gè)公開版本蘋果電腦的Mac OS X的操作系統(tǒng)到功能的Aqua用戶界面。它于2000年9月13日以29.95美元的價(jià)格向公眾發(fā)布。它的發(fā)布具有重要意義,作為蘋果在Copland失敗后能夠發(fā)布期待已久的“下一代Mac操作系統(tǒng)”的第一個(gè)公開證據(jù)。Beta版本的關(guān)鍵特性如下:
ps: Darwin是Apple的一個(gè)創(chuàng)新項(xiàng)目,Darwin前身是Rhapsody開發(fā)人員版本的一個(gè)分支,其內(nèi)核是xnu,xnu很大程度上是基于Mach 和 FreeBSD
3.4 Mac OS X 10.0~10.15
Mac OS X 是與先前的Mac OS徹底地分離開來,它的底層代碼完全地與先前版本不同。它的新的核心名為Darwin,是一個(gè)開放源碼、符合POSIX標(biāo)準(zhǔn)的操作系統(tǒng),伴隨著標(biāo)準(zhǔn)的Unix命令行與其強(qiáng)大的應(yīng)用工具。盡管最重要的架構(gòu)改變是在表面之下,但是Aqua GUI是最突出和引人注目的特色。柔軟邊緣的使用,半透明顏色和細(xì)條紋把更多的顏色和材質(zhì)帶入到桌面上的視窗和控件。
3.4.1 Mac OS X 10.0(Cheetah獵豹,2001.3.24)
在2001年3月24日,蘋果推出了Mac OS X v10.0(內(nèi)部代號(hào)為獵豹),Apple把Cheetah稱為世界上最高級(jí)的操作系統(tǒng)。其早期版本相當(dāng)慢,功能也不齊全,僅有少量來自獨(dú)立開發(fā)商的應(yīng)用軟件。很多評(píng)論員認(rèn)為它并不是一款成熟的大眾化產(chǎn)品。蘋果從1996年就開始重寫Mac操作系統(tǒng),對(duì)于翹首盼望多年的業(yè)界人士而言,是推出Mac OS X 10.0本身就是一項(xiàng)了不起的成就。除去一些較小的補(bǔ)丁,Mac OS X的穩(wěn)定性也頗具口碑,系統(tǒng)內(nèi)核的錯(cuò)誤比以往大大減少了。不過,就性能和穩(wěn)定性而言,Apple還有很長(zhǎng)的路要走。
3.4.2 Mac OS X 10.1(Puma美洲獅,2001.9.25)
增加了系統(tǒng)的性能和新的功能,完善了carbon API 足以允許發(fā)布重要的第三方應(yīng)用程序
3.4.3 Mac OS X 10.2(Jaguar美洲虎,2002.8.24)
該版本帶來徹底的性能增強(qiáng),新的且光鮮的外觀,以及很多巨大的改進(jìn)(根據(jù)蘋果公司表示有150個(gè)),在這些中有:
增加對(duì)于Microsoft Windows網(wǎng)絡(luò)的支持
Quartz Extreme直接在顯卡上合成圖形
以latent semantic indexing為基礎(chǔ),一個(gè)調(diào)適性的垃圾郵件過濾
在新的Apple Address Book中對(duì)于聯(lián)系數(shù)據(jù)的系統(tǒng)貯存空間
Rendezvous網(wǎng)絡(luò)(蘋果的Zeroconf實(shí)現(xiàn);于10.4更名為Bonjour)
iChat:以Apple為商標(biāo),官方支持的AOL即時(shí)通訊之客戶端
重新翻修的Finder,直接在每個(gè)視窗內(nèi)置搜索功能
很多的新Apple Universal Access特色
Sherlock 3:互聯(lián)網(wǎng)信息搜索
CUPS:Common Unix Printing System,允許為不支持的打印機(jī)使用GIMP打印驅(qū)動(dòng)程序,hpijs驅(qū)動(dòng)程序等等。
3.4.4 Mac OS X 10.3(Panther黑豹,2003.10.24)
除了提供更多性能的改進(jìn)外,它也針對(duì)用戶界面有大規(guī)模的更新。這些更新包含了跟該年之前Jaguar所有的多種特色。另一方面,中斷了對(duì)于某些老舊的G3米黃色世代電腦的支持。"Panther"的新特色包含:
Finder更新,結(jié)合金屬觸感接口和快速搜索
Exposé:用來操作視窗接口的新系統(tǒng)
快速用戶切換:允許用戶維持登錄狀態(tài)而換另外一個(gè)用戶登錄。
iChat AV增加了視頻會(huì)議功能到iChat
改進(jìn)PDF顯現(xiàn)而使得PDF能夠極快速地瀏覽
內(nèi)置支持傳真
更多與Microsoft Windows的兼容支持
FileVault:對(duì)于用戶目錄直接加密解密
針對(duì)PowerPC G5提供更多的支持,增加整個(gè)系統(tǒng)的速度
Safari:網(wǎng)頁瀏覽器
3.4.5 Mac OS X 10.4(Tiger虎,2005.4.29)
蘋果宣稱Tiger包含200種以上新功能,但就像是Panther的發(fā)行推出一樣,某些更老的機(jī)器已經(jīng)從支持的硬件列表中去除。在"Tiger"中有以下這些新特色:
Spotlight:一種快速的內(nèi)容和metadata基礎(chǔ)的文件搜索工具,能夠快速地找到你所搜索的關(guān)鍵字項(xiàng)目列表。
Dashboard:在桌面上只需要一次鼠標(biāo)點(diǎn)擊就出現(xiàn)且提供通用工作的Widget
iChat:為視頻會(huì)議支持H.264視頻編碼的新版本,且允許多方語音和影像聊天。
QuickTime 7:包含H.264支持的新版本,以及完全重新撰寫的接口
Safari 2:新版本的系統(tǒng)默認(rèn)網(wǎng)頁瀏覽器,在其他新特色中,包含能夠直接在瀏覽器查看RSS feed的能力。
Automator:自動(dòng)重復(fù)性的任務(wù)而不需要程序設(shè)計(jì)方式
Core Image和Core Video:允許實(shí)現(xiàn)即時(shí)的影像或圖片編輯時(shí)額外的效果。
對(duì)于PowerPC G5的64位存儲(chǔ)器支持,使用LP64系統(tǒng)
更新Unix的工具,像是cp和rsync,可以保存HFS Plus metadata和resource forks
使用訪問控制表的擴(kuò)展權(quán)限系統(tǒng)
3.4.6 Mac OS X 10.5(Leopard花豹,2007.10.26)
Mac OS X v10.5 "Leopard"是于2005年6月6日的蘋果全球開發(fā)者大會(huì)中所宣布的。在2006年8月7日美國舊金山舉行的2006年度會(huì)議上,蘋果電腦總裁斯特弗·喬布斯聲稱,Leopard將于“2007年春季”推出。然而,為求iPhone能順利開發(fā)使其能在6月推出而將開發(fā)Leopard的部分人員調(diào)往iPhone以致Leopard預(yù)計(jì)將于10月上市,而在全球開發(fā)者大會(huì)蘋果公司會(huì)發(fā)表新的Leopard測(cè)試版。蘋果電腦宣稱它將是最后一版同時(shí)支持PowerPC和Intel平臺(tái)的Mac OS X,以后的版本只支持Intel平臺(tái)。在2006年度的世界開發(fā)者大會(huì)上,蘋果預(yù)覽了部分Leopard的新功能,雖然蘋果說明“在Mac OS X Leopard的提前預(yù)覽中公布的內(nèi)容有可能改變”,但由喬布斯預(yù)覽的一些新功能包括:
Time Machine(時(shí)間機(jī)器)- 允許用戶退回或恢復(fù)丟失或被誤刪除的文件,也可以將某些文件恢復(fù)到較早的版本。
Spaces - 允許用戶創(chuàng)造多個(gè)的“虛擬桌面”或“空間”,并允許用戶在這些"桌面"切換,按照目的將各空間分類(如工作、娛樂,等等)。
對(duì)64位應(yīng)用程序的完整支持,包括圖像處理軟件。
3.4.7 Mac OS X 10.6(Snow Leopard雪豹,2009.8.28)
Mac OS X v10.6 Snow Leopard。該系統(tǒng)于2008年6月9日在WWDC上由蘋果CEO 斯特弗·喬布斯宣布,該操作系統(tǒng)將于自宣布開始"大約一年"后推出。現(xiàn)已全球上市,升級(jí)版本分為個(gè)人版及家庭版,家庭版可供三部電腦使用。從Mac OS X Leopard升級(jí)為Snow Leopard,這是macOS一個(gè)簡(jiǎn)單,功能更強(qiáng)大完善的版本。它提供了大量的改進(jìn)功能、新一代技術(shù)、開箱即可使用的Microsoft Exchange Server支持以及新輔助功能。
該系統(tǒng)提供了多項(xiàng)面向開發(fā)者的改進(jìn),如編譯器升級(jí)到GCC 4.2,并提供蘋果公司自行開發(fā)的Clang編譯器和LLVM中間碼優(yōu)化器。提供GCD優(yōu)化系統(tǒng)的多核效率。以及提供OpenCL進(jìn)行GPU通用計(jì)算。
此版本起僅適用于Intel CPU的Mac,不再支持任何PowerPC CPU的Mac電腦。
3.4.8 Mac OS X 10.7(Lion獅,2011.7.20)
蘋果公司于2011年7月20日正式發(fā)表Mac OS X v10.7,此版本僅適用于Intel Core 2 Duo或更新款CPU的Mac電腦。它進(jìn)一步去除了對(duì)Power PC的支持,移除了Rosetta。其顯著的新特性有從iPad移植的一些功能如Launchpad、全屏應(yīng)用程序、Mission Control等。現(xiàn)最新版本為10.7.5,支持MacBook Pro(Retina顯示屏)。
3.4.9 Mac OS X 10.8(Mountain Lion山獅,2012.7.25)
蘋果公司于WWDC2012發(fā)布的新版美洲獅OS X,最新穩(wěn)定版本12F45(OS X v10.8.5)。(Mountain Lion又譯為山獅,目的避免與之前重復(fù),發(fā)生混淆)。該版本包含諸多新功能,例如信息、提醒事項(xiàng)、備忘錄、通知中心、分享頁(Share Sheets)、Game Center、AirPlay鏡像和Gatekeeper等,大部分源自iOS。蘋果公司還重新設(shè)計(jì)了屏幕底部Dock的托盤,將原來的玻璃托盤及圓形運(yùn)行指示燈改為金屬托盤和方形指示燈。
3.4.10 Mac OS X 10.9(Mavericks沖浪灣,2013.10.22)
蘋果公司于2013年10月22日正式發(fā)表OS X v10.9版本,是蘋果公司開發(fā)的個(gè)人電腦和服務(wù)器操作系統(tǒng)OS X的第十個(gè)版本,免費(fèi)提供。蘋果于2013年6月10日公布了OS X Mavericks,當(dāng)日起進(jìn)行開發(fā)者測(cè)試。從這個(gè)版本起,蘋果公司不再以大型貓科動(dòng)物來為其操作系統(tǒng)命名,改為采用給予團(tuán)隊(duì)靈感的美國加州的景點(diǎn)名。“Mavericks”一名來自加州的一個(gè)沖浪勝地。該系統(tǒng)加入了iBooks電子書功能(DP5加入)和與iOS相同的地圖程序,Finder加入了標(biāo)簽和標(biāo)簽頁瀏覽模式。同時(shí)該系統(tǒng)提供Safari 7和iTunes 11.1,以及應(yīng)用新技術(shù)降低 Ram(閃存)和 CPU (處理器) 的使用量以及降低用電,蘋果宣稱所有的舊產(chǎn)品都可以延長(zhǎng)一個(gè)小時(shí)的續(xù)航。 Mavericks進(jìn)一步提高了iCloud的集成能力。Mavericks相較Mountain Lion有一些細(xì)微的用戶界面調(diào)整。2013年10月22日開始免費(fèi)提供。支持OS X Lion的電腦都可由Mac OS X v10.6.8免費(fèi)升級(jí)。
3.4.11 Mac OS X 10.10(Yosemite優(yōu)勝美地國家公園,2014.10.16)
OS X 10.10于WWDC 2014發(fā)表(6月2日),秋季10月16日隨配備Retina 5K顯示屏的iMac正式推出。7月25日開放給首100萬名登記的用戶下載測(cè)試,不再只限于繳交了99美元的開發(fā)者可以預(yù)先下載測(cè)試版。“Yosemite”一名來自加州的優(yōu)勝美地國家公園。
3.3.12 Mac OS X 10.11(El Capitan酋長(zhǎng)巖,2015.9.30)
以 OS X Yosemite 為基礎(chǔ)的新 OS X 系統(tǒng),具備更強(qiáng)大的視窗管理功能、更出色的內(nèi)置 app,以及更強(qiáng)大的 Spotlight 搜索功能。另外, OS X El Capitan 一大重點(diǎn)就是性能提升,主要是因?yàn)榘?Metal 繪圖技術(shù)集成在 OS X El Capitan 中,不僅提供全系統(tǒng)可見的性能提升,同時(shí)也能讓游戲及專業(yè) app 能更進(jìn)一步發(fā)揮 Mac 繪圖處理器的完整性能。
3.4.13 macOS 10.12 Sierra(Sierra內(nèi)華達(dá)山脈,2016.9.20)
macOS Sierra的新功能主要是集成了Siri與網(wǎng)頁版Apple Pay,并采用Universal Clipboard與iOS等設(shè)備共享剪貼板,優(yōu)化了iCloud Drive與本地磁盤文件管理,媒體畫中畫。同時(shí),最為顯著的更改是將使用多年的“OS X”名稱變更為“macOS”。
3.4.14 macOS 10.13(High Sierra內(nèi)華達(dá)高脊山脈,2017.9.25)
macOS High Sierra用上全新的蘋果文件系統(tǒng)(APFS, Apple File System),同時(shí)優(yōu)化了Safari、照片、郵件及其他設(shè)置。
3.4.15 macOS 10.14(Mojave莫哈維沙漠,2018.9.25)
macOS Mojave針對(duì)用戶體驗(yàn)有重大的變革,此次發(fā)表全新完整接口的暗色模式,并針對(duì)文件管理的功能強(qiáng)化,如文件堆棧功能加以整理桌面、強(qiáng)化Finder功能及增加“藝?yán)取?#xff08;Gallery)查看模式、Quick Look快速查看的功能強(qiáng)化、屏幕截圖功能強(qiáng)化并新增錄影功能等。除文件管理強(qiáng)化之外,此次Mac帶來了新的家庭、新聞、股市、語音備忘錄等App、全新設(shè)計(jì)的Mac App Store、Continuity 多設(shè)備無縫鏈接、提升Mac安全性,Metal讓Mac在運(yùn)行3D游戲時(shí)更為順暢、Create ML開發(fā)人員工具,而APFS亦在此版本macOS正式支持Fusion Drive。
3.4.16 macOS 10.15(Catalina圣卡塔利娜島,2019.10.7)
macOS Catalina是蘋果公司用于麥金塔電腦的桌面操作系統(tǒng) macOS 的第16個(gè)主要版本,于2019年6月3日在蘋果全球開發(fā)者大會(huì)(WWDC)發(fā)布,并于2019年10月8日正式推出。Catalina 是第一個(gè)只支持64位應(yīng)用程序的 macOS 版本,macOS停止對(duì)32位應(yīng)用程序的支持,只能運(yùn)行64位應(yīng)用程序,而較舊的32位應(yīng)用程序?qū)⒉荒茉龠\(yùn)行。Dashboard應(yīng)用程序已在macOS Catalina中被移除。其他的一些新功能包括:
Catalyst 是一個(gè)全新平臺(tái),允許軟件同時(shí)針對(duì) macOS 與 iPadOS 進(jìn)行開發(fā)
專用系統(tǒng)卷,系統(tǒng)在其自己的只讀卷中運(yùn)行,并與Mac上的所有其他數(shù)據(jù)分開
Gatekeeper,使用開發(fā)者ID簽名的Mac應(yīng)用程序、安裝程序包和內(nèi)核擴(kuò)展,現(xiàn)在必須由Apple認(rèn)證才能在macOS Catalina上運(yùn)行
語音控制(Voice control)此新功能將允許用戶使用語音命令控制設(shè)備。盡管macOS早已支持Siri,但“語音控制”將能讓用戶對(duì)設(shè)備進(jìn)行更深層次的控制
隨航(Sidecar),Sidecar是一項(xiàng)新功能,允許搭載iPadOS的iPad用作無線外接顯示器。借助Apple Pencil,iPad還可以用作在電腦上運(yùn)行的軟件的數(shù)字繪圖板
游戲控制器,游戲控制器框架增加了對(duì)兩款主流游戲機(jī)的游戲控制器的支持:PlayStation 4的DualShock 4和Xbox One的控制器
應(yīng)用程序iTunes,iTunes軟件淡出歷史舞臺(tái),并拆分成“音樂”(Music)、“播客”(Podcasts)和“電視”(TV)三款應(yīng)用程序,與iOS維持一致
查找(Find My),“查找我的Mac”(Find My Mac)和“查找我的朋友”(Find My Friends)合并為一個(gè)應(yīng)用程序“查找”(Find My)
提醒事項(xiàng)
附件現(xiàn)在可以加到提醒事項(xiàng)中,Siri亦可以智能地判斷在何時(shí)提醒用戶多個(gè)事件中的一件
結(jié)尾
大多數(shù)想法都來自于以前的想法,Mac OS X 的發(fā)展歷史也一樣,其中各種各樣的技術(shù)相互混合,相互促進(jìn),經(jīng)過累計(jì)的經(jīng)驗(yàn)和多年的奮斗,用戶和開發(fā)人員社區(qū)的推動(dòng),Mac OS X最終展示出了一副和諧統(tǒng)一,可靠穩(wěn)定的圖景。Mac OS X 是許多種技術(shù)漫長(zhǎng)演變的結(jié)果,期望Mac OS X 的下一代版本將變得更加完美,在第2章我們將深入了解Mac OS X 的特性和簡(jiǎn)要概述各個(gè)層。
(第一次寫博客,有很多不到位或錯(cuò)誤的地方還希望大家多多指正,感謝)
總結(jié)
以上是生活随笔為你收集整理的《MAC OS X 技术内幕》读书笔记第一章:MAC OS X的起源的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 好用的AndroidStudio插件推荐
- 下一篇: 英语点读笔市场太内卷 飞扫翻译笔靠实力“