一個悄然成為世界流行的操作系統(tǒng)


整理:葉子
來源:OSC 開源社區(qū)(ID:oschina2013)
閱讀本文大概需要 6 分鐘。
今天想跟大家介紹一款曾經(jīng)影響了無數(shù)開發(fā)者的操作系統(tǒng):Minix。
1987 的今天,Minix 誕生了。
Minix 介紹
Minix 是 Mini Unix 的縮寫,一個迷你版類 Unix 操作系統(tǒng) (約 300MB)。
Minix 原來是荷蘭阿姆斯特丹 Vrije 大學(xué)計算機科學(xué)系的安德魯?塔能鮑姆(Andrew S. Tanenbaum )教授所開發(fā)的一個類 UNIX 操作系統(tǒng),開發(fā)初衷是方便教學(xué)使用(因為 AT&T 推出 Version 7 Unix 之后,將 Unix 源碼進(jìn)行了私有化)。
Minix 全部的源代碼共約 12,000 行,并置于他的著作 Operating Systems: Design and Implementation(ISBN 0-13-637331-3) 的附錄里作為范例。Minix 的系統(tǒng)要求在當(dāng)時來說非常簡單,只要三片磁片就可以啟動。
安德魯?塔能鮑姆(Andrew S. Tanenbaum ,1944 年 3 月 16 日 ——)計算機科學(xué)家,阿姆斯特丹自由大學(xué)教授,專精操作系統(tǒng),類 Unix 教學(xué)操作系統(tǒng) Minix 作者,出版多部計算機科學(xué)教科書,如《現(xiàn)代操作系統(tǒng)》《計算機組成》等。

Minix 一開始向使用者收取極低的授權(quán)費,直到 2004 年,塔能鮑姆重新架構(gòu)與設(shè)計了整個系統(tǒng),更進(jìn)一步的將程序模塊化,推出 MINIX 3。重新以 BSD 許可協(xié)議發(fā)布,成為開放源代碼軟件。
源碼地址,可在 逆鋒起筆 公眾號后臺,回復(fù)【Minix】獲取。
MINIX 3 的目標(biāo)是比 Windows 或 Linux 更安全,在當(dāng)時塔能鮑姆那份獲得歐盟研究委員會(EuropeanResearchCouncil)5 年 250 萬歐元資助的研究計劃書里,Tanenbaum 解釋了為何他認(rèn)為現(xiàn)有的操作系統(tǒng)不安全:
最嚴(yán)重的可靠性及安全問題是與操作系統(tǒng)相關(guān)的那些。核心問題在于現(xiàn)有操作系統(tǒng)都不符合 POLA —— 最低授權(quán)原則 (PrincipleOfLeastAuthority)。
POLA 說的是系統(tǒng)劃分組件的方式,應(yīng)當(dāng)使必然存在于某個組件中的缺陷,不至于波及其他組件。每個組件僅應(yīng)該得到完成它本身工作所需的權(quán)限,不多不少。
具體來說,它應(yīng)該無權(quán)讀寫屬于其他組件的數(shù)據(jù),無權(quán)讀取它自身地址空間之外的任何計算機內(nèi)存,無 權(quán)執(zhí)行與它無關(guān)的敏感操作指令,無權(quán)訪問不該訪問的 I/O 設(shè)備,諸如此類。
現(xiàn)有操作系統(tǒng)完全違反以上原則,結(jié)果就是造成眾多可靠性及安全問題。
Minix 的流行與威脅
說起最流行的操作系統(tǒng),我們也許會下意識地想到 Linux、Windows、macOS、iOS 和 Android 等一些當(dāng)下主流的操作系統(tǒng)。但事實恐怕不是我們以為的那樣,你可能不知道,但在英特爾近些年推出的所有處理器中都運行著一個操作系統(tǒng)。
沒錯,這個系統(tǒng)正是 MINIX,就是因為英特爾,讓它成了世界上最流行的操作系統(tǒng),不過這也引起了人們的注意和擔(dān)憂。

之所以引起人們的擔(dān)憂,是因為現(xiàn)代英特爾處理器中都有一個核心部件 —— 英特爾管理引擎 (Intel ME-Intel's Management Engine),用來管理協(xié)調(diào)內(nèi)部的諸多模塊,尤其是傳統(tǒng)芯片組整合進(jìn)入之后,處理器已經(jīng)差不多成了 SoC 單芯片系統(tǒng),更需要一個 “總管”,MINIX 正是負(fù)責(zé)這個工作。而一旦英特爾管理引擎受到危及,有可能給攻擊者留下嚴(yán)重的后門。
研究人員特別指出,由于其在初始化硬件、電源管理和啟動主處理器等方面扮演重要角色,無法完全被禁用。這讓安全研究人員甚為擔(dān)憂,因為除了英特爾外,誰都無法審查有無后門(畢竟英特爾使用自己修改過的 MINIX 3 沒有開源)。
MINIX 在處理器內(nèi)部擁有自己的 CPU 內(nèi)核和專屬固件,完全獨立于其他部分,而且完全隱形,操作系統(tǒng)和用戶均不可見,運行權(quán)限更是達(dá)到了 Ring -3。

要知道,我們?nèi)粘J褂玫膽?yīng)用程序權(quán)限級別都是 Ring 3,操作系統(tǒng)內(nèi)核的是 Ring 0,這也是一般用戶能夠接觸到的最低權(quán)限,MINIX 竟然深入到了 Ring -3。
事實上,即便是在休眠乃至關(guān)機狀態(tài)下,MINIX 都在不間斷運行,因為英特爾管理引擎要在處理器啟動的同時就開始執(zhí)行管理工作,還要負(fù)責(zé)芯片級的安全功能。添加微信studyingJava,免費領(lǐng)取你需要的任何學(xué)習(xí)資料
這就使得 MINIX 擁有至高無上的地位,而且只要你的電腦使用的是英特爾近些年推出的處理器,都有一個它在默默運行,這使得它成為名副其實的世界上最流行的系統(tǒng)。
Minix 和 Linux
Linux 是 Linus Torvalds 受到 Minix 的影響而作成的(Linus 不喜歡他的 386 計算機上的 MS-DOS 操作系統(tǒng),而安裝了 Minix,并以它為樣本開發(fā)了原始的 Linux 核心)。
但是這種影響更多在于非技術(shù)層面,確切地說是一種精神上的 “鼓舞”。在設(shè)計上,Linux 則和 Minix 相差很大,在 Linux 系統(tǒng)還沒有自己的原生文件系統(tǒng)之前,曾采用 Minix 的文件系統(tǒng)。
Minix 在核心設(shè)計上采用微核心,即將操作系統(tǒng)分成微核心和其上的提供文件系統(tǒng)、存儲器管理、驅(qū)動程序等服務(wù)的服務(wù)程序;而 Linux 則和原始的 Unix 都采用宏內(nèi)核。
在 Linux 發(fā)展之初,雙方還于 1992 年在新聞組上有過一場精彩的爭論,被稱為塔能鮑姆 - 林納斯辯論。Minix 的作者和支持者認(rèn)為使用宏內(nèi)核是技術(shù)上的退步,而 Linux 的支持者認(rèn)為 Minix 本身沒有實用性。
參考鏈接:
https://www.oschina.net/news/1766
https://www.oschina.net/news/90374/minix-the-most-popular-os-in-the-world?p=7
http://www.360doc.com/content/19/0129/00/277688_811876443.shtml
如果你覺得文章還不錯,請大家?點贊、分享、留言?下,因為這將是我持續(xù)輸出更多優(yōu)質(zhì)文章的最強動力!
近期閱讀學(xué)習(xí)推薦:
你應(yīng)該知道的 89 個"操作系統(tǒng)"核心概念
這本豆瓣評分 9.7 的操作系統(tǒng)導(dǎo)論竟然是免費的
分享
收藏
點贊
在看




