原文地址: https://juejin.im/post/5cd5d1b4518825686761cc1f
我常常會聽到類似的問題: Unix, Linux和MacOS之間有什麽聯系? 又有什麽區別?
先說結論:
如下圖:
下面開始詳細描述.
Unix是壹個由多用戶、多進程的計算機操作系統的統稱,源自於從20世紀70年代開始在美國AT&T公司的Bell Labs開發的 AT&T Unix, 包括很多個相似但不同的變種操作系統. Unix是壹個商業上的專利產品, 需要購買或授權才能使用.
隨著Unix變種操作系統的增加,就需要有標準來規範各個變種操作系統,以保證系統之間的兼容性,這樣就有了POSIX.
POSIX : Portable Operating System Interface,中文為可移植操作系統接口,為壹系列標準的集合,是由IEEE Computer Society定義的以為保證各UNIX操作系統之間的兼容性.
POSIX中定義的標準有:
SUS : Single UNIX Specification, 創建的目的與POSIX類似,都是為了保證Unix系統之間的兼容性. 現在由IEEE和The Open Group***同組成的Austin Group來開發和維護.
Austin Group從POSIX和SUS中定義了壹套通用的標準,稱為Open Group Base Specification.
Linux是壹個基於Linux kernel的類Unix操作系統的統稱.
GNU Project是壹個關於 free-software , mass-collaboration 的項目,理念是: 用戶可以自由的使用,分享,學習和修改軟件.
由GNU項目和Linux kernel就可以組成壹個類Unix的操作系統:
Linux發行版, 是由Linux kernel加上壹些軟件組成,不同的組合就構成了不同的發行版. 通常發行版會包括:
比較受歡迎的發行版有: Debian, Fedora, Ubuntu等.
MacOS新的名稱為Darwin, 這是Apple發布的類Unix的操作系統, 內核由XNU構成, 而XNU是基於NeXTSTEP和FreeBSD混合開發組成. 架構圖如下: