常見「GNU/Linux」稱呼,非單純加前綴。若無GNU計畫提供的編譯器、程式庫、Shell、核心工具,Linux核心只是一段無法構成可用作業系統的程式碼。本文梳理兩者歷史關係與融合過程。
GNU計畫:自由軟體運動的起點
- 1983年9月27日,Richard Stallman (RMS) 公開發起GNU計畫(GNU's Not Unix)。
- 目標:開發完全自由、與Unix相容的作業系統。
- 策略:吸收既有自由軟體(TeX、X Window)+ 自行開發核心組件。
- 關鍵產出:Emacs編輯器、GCC編譯器、Glibc程式庫、Bash Shell、Coreutils核心工具、GDB除錯器、Make建構工具……幾乎構成現代Linux用戶空間的全部基礎。
- 授權保護:GPL (GNU General Public License) 確保「使用、複製、修改、發布」四大自由,禁止添加額外限制。
缺失的最後一塊拼圖:核心
- 1990年,GNU核心Hurd(基於Mach微核心)進度緩慢,陷入架構困境。
- 1991年,芬蘭學生Linus Torvalds發布Linux核心0.01,採用GPL授權,網路傳播迅速。
- 1992年,Linux核心 + GNU用戶空間工具鏈 = 完整自由作業系統 誕生。
為何堅持叫「GNU/Linux」?
- 歷史功勞:GNU計畫貢獻超過系統總代碼量50%(早期),奠定自由軟體基礎設施。
- 哲學傳承:GNU代表「自由軟體」社會運動,Linux僅代表核心技術實現。稱呼傳遞價值觀。
- 避免誤解:防止大眾誤以為Linux是單一公司產品或僅指核心,忽視用戶空間自由軟體生態。
現代視角
- 嵌入式系統(Android、OpenWrt、路由器固件)常用Linux核心 + 非GNU用戶空間(Bionic libc、BusyBox、Toybox),此時稱「Linux」更精確。
- 桌面/伺服器發佈版(Debian、Fedora、Arch、Gentoo)核心為Linux,用戶空間以GNU為主,稱「GNU/Linux」合宜。
- RMS持續倡導正確稱呼,Linus則認為「Linux」已成通用品牌,無需強求。
無論稱呼,GNU與Linux的結合是自由軟體運動最偉大的勝利之一:核心提供硬體抽象,工具鏈提供構建能力,社區提供持續演進動力,三位一體成就今日數位世界基石。