背景
幾年前,我聽人說 OSX 和 Linux 比 Windows 更好,我還記得讀過一些東西,說 Solaris 作業系統沒有檔案碎片,而 Linux 檔案系統幾乎處於同一步驟但這些說法似乎都沒有依據或參考。
問題
有哪些客觀標準可用於對作業系統進行相互比較?
答案1
我認為你可以採取比較作業系統的方法並將它們分為兩組:
- 特徵
- 結構性差異
首先,結構差異:現今的作業系統在底層非常相似。基本上所有這些都受到 Brian Kernighan 和 Dennis Ritchie 的影響,這兩個人都致力於 C 程式語言和 UNIX。事實上,當今的許多作業系統(例如 Linux、Solaris 和 OS X)都被歸類為“類 UNIX”,因為它們在某種程度上都是 UNIX 的後代。 UNIX 的哲學基本上是讓一切變得簡單,或者更準確地說,“基本”,每個程式都應該有一個且恰好一個功能。這些概念至今仍在使用。
至於Windows,這個奇怪的東西,它也受到了K&R 工作的影響。儘管 Windows 不是「類 UNIX」系統,但它是用 K&R 發明的 C 語言編寫的,並且表現出某些相似之處。例如,「藍色畫面死機」只是 Windows 版本的內核恐慌,這個想法是與 UNIX 一起發明的。
當今所有主流作業系統都基於稱為「單晶片」核心的核心設計方案。這僅意味著核心作為一個程式運行。這意味著程式中的所有程式碼都可以完全控制電腦的所有資源,這可能會導致錯誤造成嚴重損害。已經有一個著名的辯論關於將作業系統的核心「拆分」為單獨的程式以提高穩定性和安全性的可能性。這種設計被稱為「微內核」。正如我所提到的,當今所有的操作系統都基於單晶片內核設計,也許是因為它們具有更好的性能,或者可能只是因為這種方式已經存在了很長一段時間。
至於功能,這可能是一個很大的比較,因為如上所述,當今所有主流作業系統在結構上都非常相似。事實上,在我看來,功能僅略有不同。這實際上取決於你問的是誰。例如,Mac OS X 有一些非常漂亮的功能,例如 XGrid 和 OpenCL(儘管現在也可以在其他平台上使用)。它也非常人性化。但它也被批評為“背負包袱”,也許是指其相對過時的文件系統。此外,它僅適用於 Apple 硬體。
Linux 非常適合伺服器和超級計算機,因為它的開放性和多處理方面的明顯優勢。這也是更安全的選擇之一。但它也被批評為桌面設置不太用戶友好,並且沒有得到任何大公司的正式支持。然而,Linux 可能是最前沿軟體的最佳選擇,因為它經常變化。事實上,Linux 可能會得到一個新檔案系統和新視窗管理器在不遠的將來。
然後是Windows。 Windows 與 OS X 一樣,都得到了大公司的支持,您可以找到許多適用於該平台的軟體。從上面關於功能和作業系統結構的討論中,您可以看到它們並沒有那麼不同,因此豐富的可用軟體可能是保持該作業系統市場份額的原因。除了這個明顯的優勢之外,還有一個事實是它可以在許多不同的硬體上運行,與 OS X 不同。
所以你會發現今天的作業系統彼此之間並沒有太大的不同。如今的許多功能都採用開源軟體的形式,可以在任何這些作業系統上使用。但是,存在一些明顯的差異,例如它們可以合法運行的硬體、程式碼的開放性等。
答案2
任何作業系統比較都需要在「適用性」的背景下進行。你必須定義你想要作業系統做什麼做在您決定哪一個最適合任何特定用例之前。
然而,肯定有客觀的比較點。一份非詳盡的清單包括:
- 硬體支援
- 應用生態系統
- 開發生態系統
- 檔案系統支援
- 資源管理
- 記憶體管理
- 行程調度
- 輸入/輸出控制
- TCP協定棧的實現
- 資源級核算
- 安全
- 作業系統級安全機制
- 檔案系統級安全機制
- 審核功能
- 流程會計
- 使用者/角色管理
- 本機系統服務
- 特定於應用程式的效能基準
每個主題都有大量的深入研究,這就是為什麼您不太可能找到問題的規範答案。