投資investing,經濟學Economics, 商業Business,麥金塔Mac, 法律Law…
這邊我們要來簡單介紹Mac OSX的架構以及Mac的韌體。如果真要詳盡介紹一個系統可能得花上幾本書的篇幅,我可不打算這樣做。希望你就把這篇當作是high-level的方式來談論電腦中low-level的部份。 如同前面那篇「Mac OSX簡史」中所敘述,Mac OSX是從NEXTSTEP這系統所衍生的。至於這二者之間有何相似或是差異之處,就不詳談。
Darwin
1999年3月16日,Darwin的第一個版本0.1版推出,主要是當作開發者的實驗型版本。雖然說Darwin本身就是個系統,但是我們最好把它看作是許多科技技術的整合,其中以Apple為主導。但這個系統的臨時應用程式環境中尚不包括Cocoa和Carbon,當然也沒有Mac OSX中最主要的GUI環境—Aqua(甚至連視窗介面都沒有)。
內容
Darwin 7.0.x(對映到Mac OSX 10.3.x)就包含了超過250個套件,之中絕大部份是Apple的(包括Mac OSX kernel和一些驅動程式),其他則多是從﹡BSD和GNU等等而來。
Apple在這裡整合了許多開放源始碼的軟體,可說是透過一次漂亮地槓桿操作來完成他們的系統: apache, bind, binutils, cvs, gcc, gdb, gimp_print, kerberos, mysql, openssh, openssl pam, perl, postfix, ppp, python, rsync, samba, 以及許多﹡BSD或GNU的套件。
Apple對這些開放源始碼的軟體做了相當的修改來符合他們的平台。甚至一個使用者可以像過去一樣來操作以及控制系統(例如用vi或是Emacs來編輯檔案),而Apple提供了簡化的使用者介面來讓作業更簡便,但需要注意的是Apple並非完全翻新。
跨平台
Darwin除了可以在PowerPC以及x86系統上面運行之外,甚至你可以編譯出一個“大“核心,達到只靠一個核心檔案就能在不同平台上面運作的目標。
版權
Darwin套件所採用的版權是Apple的Apple Public Source License (APSL),目前最新的版本是2.0版。雖然APSL跟鼎鼎大名的GPL不相容,但是在自由軟體協會網頁上也是有納入APSL。
GNU-Darwin計畫則是要整合Darwin與GNU二者。OpenDarwin則是Apple有參與共同創立的一個以開發Darwin為目的的計畫。你在該計畫官方網站上面可以同時下載PowerPC或x86版本的Darwin光碟。
層級
Mac OSX內部軟體的組程架構可以化成像是以下概念圖示的樣子:

韌體
Mac的韌體以及開機所會載入的元件,我打算留到「Mac的開機過程」這一章再談。
XNU:核心
XNU,也就是OSX的核心,這個我們也留到「XNU:核心」這章討論。
較高層級的服務與環境
將在「核心之上」這章作說明。
較高層級系統啟動機制
「Mac OSX 系統啟動」中說明。
本文由張元毓所翻譯,本人保有一切法律權利。
Copyright@ alan chang
3 Responses for "【翻譯】Mac OSX的架構"
想請教你關於Mach system的問題~你能介紹一下它的使用介面和系統環境設計的架構嗎?我對這方面了解不多..
sorry,這你可能得寫信去問原文作者
因為我只是翻譯這系列文章,我自己實際上了解也相當有限。
我自己本身學的是Linux,所以翻譯這系列文章時所依據的背景知識也是基於Linux system概念。但這些知識現在來看也很老舊了。(Red Hat Linux 6.x版時代哩)
現在我的重心都在法律跟投資上面,因此更沒有資格提供知識了。
不過如果你英文沒問題,其實你可以先上Wikipedia查mach的介紹,然後上Apple官方網站,那邊有相當大量的技術文件,相信可以滿足大部分相關知識的需求。
感謝你的資料提供^^
Leave a reply