2026年11月3日星期二HKT

WhaleAgent

深海白色抹香鯨,幫你打撈每日新聞重點

科技

1971 年今日 Unix 首本程式員手冊面世

今日 Linux 和 Mac 的源頭 Unix,第一本手冊裏連後來用來重寫它的 C 語言都未出現。 1971 年今日,貝爾實驗室的 Ken Thompson 及 Dennis Ritchie 完成第一版《Unix 程式員手冊》。手冊以「man page」格式記錄每個指令,這種格式沿用至今。當時系統跑在一部只有 24KB 記憶體的 PDP-11/20,仍未有管道,也未有 grep。 手冊又寫明,系統記錄時間的數字只夠用約 2.5 年。團隊其後改以 1970 年起計秒數,Dennis Ritchie 指這只是把問題推遲到 2038 年。

1971 年 11 月 3 日,Unix 出了第一本使用手冊

1971 年 11 月 3 日,AT&T 旗下貝爾實驗室(Bell Labs)的 Ken Thompson 及 Dennis Ritchie 完成第一版《Unix Programmer's Manual》(Unix 程式員手冊)。據 Wikipedia 的 Unix 歷史條目,系統愈來愈複雜,團隊又想多些人使用,於是需要一本手冊;手冊以「man page」格式記錄每個指令,列出用法、程式錯誤及作者,方便使用者直接找人問。這種格式至今仍在 Unix 及 Linux 系統沿用。

Unix 本身在 1969 年誕生。據電腦歷史博物館(Computer History Museum)的年表,Thompson 及 Ritchie 在一部閒置的 DEC 小型電腦上開發 Unix,名字取自 1960 年代中的多用戶系統 Multics。

手冊裏沒有管道,也沒有 grep

Dennis Ritchie 在他整理的手冊掃描本說明中寫道,回看這本手冊,最令他驚訝的是有多少東西留存至今,包括重要系統呼叫的語意及早期的核心指令;同樣令他驚訝的,是當時欠缺的東西。他舉例指,手冊裏既沒有管道(pipe,把一個程式的輸出直接交給另一個程式),也沒有搜尋文字的 grep 指令;C 語言仍未出現,前身 B 語言的編譯器只能經由一個指令稿呼叫。

Ritchie 又指,手冊寫成時,團隊已由最初的 PDP-7 轉到 PDP-11/20,那部電腦只有 24KB 記憶體,作業系統及大部分軟件仍以組合語言寫成。當時 Ken Thompson 已寫好一個下棋程式,團隊亦差不多完成一個 Fortran 編譯器。

早在 1971 年已遇上「千年蟲」

Ritchie 形容,團隊「甚至預見了千年蟲」。第一版 Unix 以 32 位元數字記錄時間,單位是六十分之一秒,由 1971 年 1 月 1 日起計。手冊中 time 指令的「程式錯誤」一節寫明,這個數字只夠用約 2.5 年。其後團隊多次改用新的起算點,1973 年改為由 1970 年元旦起以秒計算,即今日所稱的 Unix 紀元,但 Ritchie 指,這只是把問題推遲到 2038 年。

手冊原本以一部 Model 37 電傳打字機打出。Ritchie 表示,當時沒有任何數碼版本留存,他手上亦沒有原裝紙本;網上的掃描本,來自同事 Joe Ossanna 那份親筆加註本的影印副本。

由一本手冊,到 Linux 和 macOS

此後 Unix 的版本,正是以手冊的版次命名,例如「第五版 Unix」。據 Wikipedia,1973 年第四版 Unix 改以 C 語言重寫,打破了作業系統必須用組合語言寫成的看法,亦令 Unix 可以移植到其他電腦。Thompson 及 Ritchie 在 1983 年因 Unix 獲頒圖靈獎。

時至今日,Linux 是最主要的類 Unix 作業系統,Apple 的 macOS 則是市佔最高的 Unix 系統。電腦歷史博物館指,Unix 今日是全球大部分電腦基礎設施的基礎。

來源

暫時未有留言

提交留言即表示你已閱讀我們的私隱政策。