# 2021q1 Homework1 (culture) contributed by < `fdfdd12345628` > ## 問題清單 ### free software (自由軟體) 和 open source (開放原始碼) 兩者的理念有何落差? 雖然開放原始碼常常被視為自由軟體的子集,但是其實他們打從一開始的出發點就不一樣。根據 Free Software Foundation 內的[介紹](https://www.gnu.org/philosophy/free-sw.html.en), free software 的定義如下 1. The freedom to run the program as you wish, for any purpose (freedom 0). 2. The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this. 3. The freedom to redistribute copies so you can help others (freedom 2). 4. The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this. 而根據 debian 的前領導者 Bruce Perens 表示 open source 的[定義](https://openedreader.org/chapter/the-open-source-definition/)為: 1. Free Redistribution 2. Source Code 3. Derived Works 4. Integrity of The Author’s Source Code 5. No Discrimination Against Persons or Groups 6. No Discrimination Against Fields of Endeavor 7. Distribution of License 8. License Must Not Be Specific to a Product 9. License Must Not Restrict Other Software 10. License Must Be Technology-Neutral 因此 free software 是對於該軟體的態度,代表那個軟體是完全自由而且可以任意使用,但是不論何種使用方式都不會影響該軟體的自由。 而 open source 更像是一種開發方式,由大家一起來寫程式可以讓程式變得更好更快,大家也可以一起切磋程式功力,找到其他人沒找到的錯誤等等。 ### 從最初的 Cygnus Solutions (史上首間透過 free software 實現盈利的公司), Red Hat (收購 Cygnus Solutions), 到 IBM (收購 Red Hat 並將其既有業務作為主軸),請解釋公司如何透過 free software 及 open source 來獲利? 根據[這篇報告](https://www.redhat.com/en/blog/red-hat-leading-enterprise-linux-server-market), RHEL 的收入是持續增加並且接近 Microsoft 。並且根據這篇 [IDC whitepaper](https://www.redhat.com/rhdc/managed-files/li-idc-red-hat-enterprise-linux-economy-analyst-paper-f17271-201904-en_1.pdf) , Red Hat 有 36% 的收入在 service 上, 33% 在 added software 。因此可以知道他主要是賣服務與整個軟體環境的公司。 很多人(包括我)在安裝與使用 Linux 常常都會有問題,不管是安裝問題、軟體相容性、甚麼程式不能跑之類的。當我們要自己解決通常都很花時間與精力,甚至是沒辦法解決(我感同身受)。因此有一個 Linux 專家可以幫我們提供整套系統解決方案就會很方便,並且在出問題時也可以直接問他。這就是為什麼 Red Hat 可以賺錢。 ### 在 21 世紀初期,Microsoft 一度負面評價 GPL 與 Linux,但為何一旦該公司主推雲端業務後,即宣布擁抱 GNU/Linux 呢?請討論該公司的態度轉變,以及 Microsoft 如何利用 Linux 提高獲利? 當電腦逐漸大眾化,硬體越來越便宜,軟體也要跟著越來越便宜使用者才會買單。根據[這篇報導](https://arstechnica.com/gadgets/2018/04/even-windows-revenue-is-up-in-microsofts-26-8-billion-3q18/)指出,就算微軟在作業系統上的收入持續成長,但是微軟在雲端業務的收入已經是兩倍於作業系統。可以看出賣軟體已經不是賺錢的主要手段了,做服務才是賺錢的方式。 而 Microsoft 再透過雲端服務賺錢時,也要逐漸將支撐雲端服務的軟體完善。因此將軟體開源,並且跟大家一起貢獻開源軟體是成本最低的方式,不只可以不用雇用員工將系統整個創建出來,也可以享受到高品質的軟體。而且自己做自己的系統反而漏洞會更多,對於雲端服務是一大痛點。 ### Compatible Time-Sharing System (簡稱 CTSS) 是史上第一套分時多工作業系統,請簡述其發展背景和關鍵特徵,又有哪些 CTSS 的特徵被 UNIX 或更晚出現的 Linux 所繼承? 由於一開始的電腦一次只能做一件事,但是又有很多人要同時使用的話,就需要讓程式執行時快速切換,讓人看起來就像是同時在執行一樣。而這個切換的特性也被保留到後續的 Unix 與 Linux 。 ### Richard Stallman 建立 GNU 的訴求是 “GNU’s Not Unix”,儘管 Stallman 博士對於 AT&T 收取 UNIX 高額授權金感到不悅,但為何他採用 UNIX 作為 GNU/FSF 發展的藍圖呢?UNIX 有哪些特徵和文化,很直得延續呢? Unix 的一些系統介面有被 IEEE 訂成標準的 POSIX 介面,因此既然是已經有標準化介面的話就不用自己創造一個了。而且當時的 UNIX 盛行讓眾多軟體都可以跑在 UNIX 上面,為了可以直接融入現有軟體環境,相容於 UNIX 是必須的。 ### 在 Linux 問世前,BSD 早已席捲作業系統的生態,但為何在 1990 年代後期,Linux 無論是聲勢和開發活躍度都超越 BSD 家族呢?請舉出量化數據和相關研究報告說明