自由軟體的本質
自由軟體的存在,建立在四大自由之上。 零:自由執行程式,無論任何目的。 壹:自由研究該程式如何運作,並依照想法修改以符合自身所需。(能存取源始碼是這項自由的先決條件) 貳:自由再次散布程式副本,幫助親朋好友街坊鄰居。 參:自由將修改後版本散布給他人,如此一來就有機會讓改善惠及社群整體。(能存取源始碼是這項自由的先決條件) 於是,自由軟體就不再是個人專屬的,它更是全民共有的。 BabyGnuTux-Big,作者 Nicolas Rougier, 源始檔在此 漢文中所謂 軟體 ,泛指一切智慧、思想的資源,與硬體相對。而 硬體 泛指一切建設的實質設施。 基本上我們可以這麼想,電腦世界中的軟體是程式碼,是種 具有實用性質的數學式 ,在互相組合交織之後得以完成某些事務的智慧思想過程,人們將之寫下並交付給電腦運行。就像數學一樣,軟體需要相當進階的專業知識才能夠正確地調整、改善和使用,這就是為什麼有許多人會僱用程式設計師來更新軟體與改良。 自由軟體的特性,就是個人和群體都能自由運用這些以數學式形式存在的事務處理思維過程。也因為自由軟體這樣的特性,造就個人與群體之間的連結與互動,形成了「社群」。 歷史 就歷史而言,起源自 理查・史托曼 (Richard Stallman) 的重大自由軟體專案 — GNU 專案。其創立本身旨在完成 理查・史托曼 的個人理想,打造出完全是自由軟體的 Unix 風作業系統,一套不同但類似(且相容)於當時主流之專有 Unix 的作業系統,他將這套作業系統稱為 GNU,意思代表 GNU's Not Unix。於是世界各地認同這個理念的人們就這麼聯合起來,成為社群,互助合作共同打造 GNU 作業系統。 在1991年時,GNU 將近完成,只欠 Unix 風作業系統中最內部用來分配機器資源、並和硬體對話的程式,也就是「核心」,英文稱為 kernel。剛好 林納思・托瓦茲 (Linus Torvalds) 所開發的 Linux 核心可以補完欠缺之處,許多人開始將 GNU 和 Linux 結合一起,打包成「GNU/Linux」作業系統,自此為自由軟體運動的濫觴。 不過 林納思・托瓦茲 為何要開發 Linux 核心呢?他本人說是「Just for fun.」純屬樂趣為之。但正因為自由軟體兼屬個人與集體的特性...