Linus Torvalds 于 1991 年宣布了 linux 的第一個版本,但是有些 Linux 概念甚至比 Linux 本身更古老。
雖然Linux通常被認為是一種現代操作系統,但其中一些概念比你想象的要古老得多。以下是一些在Linux系統中擁有悠久歷史的概念。
1、雙重啟動
使用雙重啟動方式在不同操作系統之間共享 Linux 一直是標準方式,包括 windows。多啟動操作系統的概念幾乎與計算機一樣古老。
在 Unix 類環境中,它也很流行,比如在舊的 PC Unix 系統(如Xenix)上運行 Unix 和 MS-DOS。雙重啟動也早于 Linux 在 Amiga 上實現。
Commodore Amiga 3000UX 帶有 Amiga Unix,這是 System V 的定制版本,以及標準的 Amiga Workbench 操作系統。您可以通過使用左右鼠標按鈕來選擇引導時的操作系統。
2、支持不同的體系結構
當 Linus Torvalds 在 1991 年在 Us.NET 上發布 Linux 內核時,他本人沒有預見到它會擴展到除 Intel x86 平臺之外的其他體系結構,但他可能應該給歷史留下這樣的先例。
像原始的 Unix 一樣,Linux 是用 C 語言編寫的。C 語言本身是一種可移植的語言。只要 C 程序不對底層環境做出任何假設,它就可以在任何計算機上編譯,只要它具有相應的編譯器。
像當時的許多操作系統一樣,Unix 最初是用匯編語言編寫的,但 Dennis Ritchie 在 70 年代初用他發明的 C 語言重寫了它。這樣做的一個副作用是,操作系統與硬件分離,Unix 成為了一種通用操作系統。
這在當時是不尋常的,因為操作系統與一臺特定的機器綁定。這也是 Unix 在計算機科學學術界在 70 年代和 80 年代引起轟動的原因之一。
3、不同 Shell 的概念
Bash shell 是 Linux 系統上的流行默認 Shell,但你可以輕松更改你的登錄Shell為任何你選擇的 Shell。你可能知道這是最初的 Unix 系統的一個功能,但你知道這個想法甚至比 Unix 還要古老嗎?
Multics 項目首創了可互換的 Shell 的概念。貝爾實驗室是參與該項目構建可靠分時共享操作系統的實體之一。這個概念是構建一個”實用計算”設施,就像你可以像用水或電一樣使用它。這個概念類似于今天的云計算。
不幸的是,Multics 是當時的Windows Vista:野心勃勃但過于復雜、拖延和超預算。貝爾實驗室退出了該項目,留下了兩位研究人員 Dennis Ritchie 和 Ken Thompson,他們渴望擁有良好的編程環境。在 Unix 系統中,他們實現的第一件事情之一就是可替換 Shell。
隨著Unix將OS從底層硬件中解耦,Shell 也將用戶界面從底層 OS 中解耦。這種靈活性自那時起一直深受程序員和技術人員的喜愛。
4、類似 WSL 的環境
WSL(Windows Subsystem for Linux)可讓你在Windows 10 或 11 上運行原生 Linux 應用程序。但你知道 1988 年 Digital Equipment Corporation(DEC)就有過類似的想法嗎?
DEC 正在開發一種名為 MICA 的操作系統,它將在一種名為 PRISM 的新處理器架構上運行。它將基于DEC流行的小型機操作系統VMS,但也將具備Unix風格。
這個雄心勃勃的項目是 Dave Cutler 的創意。DEC 最終取消了 MICA 項目,Cutler 轉投 Microsoft,領導了最終成為 Windows NT 的項目。
在VMS方面,還有一個名為 Eunice 的程序,它也可以運行Unix程序。像最初的WSL一樣,它可以工作,但與原生Unix相比,它也因性能和兼容性問題而備受關注。
當 Windows NT 最終于 1993 年問世時,它有一個 POSIX 環境,但似乎只是為了讓微軟可以說它符合 POSIX 標準并競標某些與美國聯邦政府的合同。
微軟還將發布一個更完整的環境——Windows Services for Unix,開源的 Cygwin 項目也隨之出現。
5、法律問題
在21世紀初,由SCO提起的對IBM的訴訟在Linux和開源社區中廣受關注。SCO 聲稱 Linux 侵犯了他們對原始 Unix 代碼的權利,而他們已經獲得了這些代碼的所有權。
雖然 IBM 和 Linux 社區最終獲得了勝利,但這種情況在原始 Unix 時代也有先例。AT&T的Unix System Laboratories(USL)聲稱對伯克利軟件分發代碼擁有版權,這在90年代初給伯克利造成了壓力。
盡管最終證明只有少量文件受到““限制”,可以輕松重寫以實現開源分發,但Linux成為了計算機愛好者的寵兒。
6、不同版本之間的競爭
盡管Linux社區喜歡爭論哪個發行版更好,但這對 Unix 文化來說并不是什么新鮮事。
在80年代,AT&T 的 System V 和 BSD 之間的辯論是大事。后者在學術界更為流行,由加州大學伯克利分校“開發。它也是工作站 Unix 的主要組件,如 Sun Microsystems。
到 1980 年代末,Unix 世界陷入了所謂的“Unix戰爭”。 AT&T 和 Sun 開始合作,將 BSD 和 System V 合并,這引起了惠普,DEC 和 IBM 等其他計算機公司的警惕。后來這些公司組建了開放軟件基金會,而 Sun 和 AT&T 則組建了 Unix International。
這場“戰爭”最終以停火結束。兩個組織合并,但 Linux 最終取代了大多數應用程序中的專有 Unix。
7、”Unix桌面年”
Linux 發行版以其桌面用戶界面而聞名,旨在讓非技術用戶使用 Linux。這種努力也有著悠久的歷史,可以在 1989 年的 PBS 電視節目《計算機紀事》中看到。
在節目中,我們可以看到來自Sun Microsystems、惠普甚至蘋果的產品。蘋果也曾經推出過一款基于 Unix 的操作系統 A/UX。
8、開源軟件
雖然Linux推廣了開源軟件的概念,但這個想法已經存在了很長時間,可能早已存在于計算機本身。
雖然GNU項目因為提供免費軟件的明確理念而獲得了聲譽,但軟件在學術界早就自由流傳。BSD開發人員創建了自己的許可證,允許自由分發。
許多Linux概念比你想象中的要古老
你可能會驚訝于 Linux 文化中的一些概念(例如雙引導和開源軟件)有多么古老。Linux 的許多特殊之處都可以通過其源自 Unix 的歷史來解釋。
一個困惑很多新接觸 Linux 命令行的人的例子是,這些命令看起來很奇怪。它們為什么如此簡短?原因是它們最初是為電傳打字機而不是屏幕設計的。