為方便專題的后續(xù)文章聚焦開源許可協(xié)議,本文簡明扼要闡述以下兩方面的背景知識:計算機發(fā)展史和操作系統(tǒng)發(fā)展史。
一葛闷、電子計算機發(fā)展史:
從上世紀40年代起憋槐,人類開始研究并創(chuàng)造了計算機,從體型龐大功能簡單的計算機淑趾,到超大規(guī)模集成電路的超級計算機阳仔;從簡單的控制操作流程的程序,到多用戶多任務(wù)多處理器架構(gòu)的操作系統(tǒng)扣泊;短短半個世紀近范,人類在電子計算機科學領(lǐng)域,經(jīng)歷了創(chuàng)世紀歷程延蟹,并以指數(shù)級速度發(fā)展(摩爾定律)评矩,驅(qū)動了一系列科技創(chuàng)新、社會變革阱飘、生產(chǎn)效率的提高和經(jīng)濟增長稚照。
計算機的硬件和軟件,如同安迪-比爾定律所描述的那樣俯萌,二者像一對孿生兄弟相輔相成果录,互相驅(qū)動對方升級換代,不斷提升軟硬件的能力咐熙,滿足高速發(fā)展的算力需求弱恒。
在計算機這個人類智慧結(jié)晶的創(chuàng)世紀過程中,隨著操作系統(tǒng)從無到有棋恼、隨著層出不窮的軟件被創(chuàng)造出來返弹,版權(quán)、相關(guān)領(lǐng)域的壟斷及法律也隨之出現(xiàn)爪飘,開源軟件運動和開源許可協(xié)議也隨之出現(xiàn)义起。在軟件開源的運動發(fā)展過程中,涌現(xiàn)出了很多動人的故事师崎,新的概念如開源軟件默终、開源許可協(xié)議、開源系統(tǒng)等犁罩,如同璀璨耀眼的明星齐蔽,共同構(gòu)成了開源軟件這片璀璨的星空。
1床估、第一代計算機:
二戰(zhàn)期間含滴,美國為了模擬飛行訓(xùn)練,以真空管為邏輯元器件構(gòu)建了計算設(shè)備丐巫,不斷迭代最終發(fā)展出了馮·諾伊曼結(jié)構(gòu)的計算機谈况,該結(jié)構(gòu)實現(xiàn)了實用化的通用計算機勺美。
2、第二代計算機:
1958年碑韵,羅伯特·諾伊斯帶領(lǐng)團隊發(fā)明了集成電路赡茸,不久后又推出了微處理器,1959年到1964年間設(shè)計的計算機稱為第二代計算機泼诱。
3坛掠、第三代計算機:
1960年代赊锚,晶體管取代真空管治筒,晶體管體積更小,速度更快舷蒲,性能更加可靠耸袜,1964年到1972年的計算機被稱為第三代計算機。
4牲平、第四代計算機:
1970年代堤框,基于大規(guī)模積體電路,以及后來的超大規(guī)模積體電路纵柿,計算機從此開始走向千家萬戶蜈抓,1972年以后的計算機習慣上被稱為第四代計算機。
二昂儒、Unix 系統(tǒng)的發(fā)展史:
1沟使、Multics計劃:
早期的電腦并沒有操作系統(tǒng),電腦的管理工具以及簡化硬件操作流程的程序渊跋,可以看做是操作系統(tǒng)的雛形腊嗡。
到1960年代早期,商用電腦的制造商通過批處理系統(tǒng)拾酝,對工作程序的初始化燕少、參數(shù)設(shè)置和調(diào)度、以及運行的程序進行了序列化處理蒿囤,但每臺不同型號的電腦都有自己的批處理系統(tǒng)客们,每臺電腦上運行的程序彼此之間也不能移植。
發(fā)展到1964年材诽,麻省理工學院和美國通用電氣公司镶摘,共同發(fā)起了一個Multics計劃,AT&T 旗下的貝爾實驗室也參加了這個計劃岳守。Multics計劃的目標是創(chuàng)建一套安裝在大型主機上的多用戶凄敢、多任務(wù)、多層次的分時多任務(wù)操作系統(tǒng)(multi-user湿痢、multi-processor涝缝、multi-level)扑庞。
2、Unix 操作系統(tǒng)的誕生:
后來因開發(fā)進度緩慢拒逮,1969年貝爾實驗室退出了該計劃罐氨,但貝爾實驗室的工程師“肯·湯普遜”和“丹尼斯·里奇”在此基礎(chǔ)上繼續(xù)開發(fā),最終在1970年使用匯編語言開發(fā)出了第一版Unix系統(tǒng)滩援≌ひ考慮到性能以及移植性問題,1971年兩人共同發(fā)明了C語言玩徊,并在1973年用C語言重寫了Unix系統(tǒng)租悄。用C語言編寫的Unix系統(tǒng),代碼簡潔緊湊恩袱、易移植泣棋、易讀易修改,這些特性為此后Unix的發(fā)展奠定了堅實的基礎(chǔ)畔塔。
3潭辈、BSD,伯克利軟件套裝:
此后的10年澈吨,Unix在學術(shù)機構(gòu)把敢、大型企業(yè)中得到了廣泛的應(yīng)用,許多機構(gòu)在此源碼基礎(chǔ)上加以擴展和改進谅辣,形成了所謂的“Unix變種”修赞,這些變種反過來也促進了Unix的發(fā)展,其中最著名的變種之一就是加州大學伯克利分校開發(fā)的伯克利軟件套件產(chǎn)品屈藐,即BSD(Berkeley Software Distribution)榔组。
BSD在Unix的歷史發(fā)展中具有相當大的影響力,成為很多商用Unix的基礎(chǔ)联逻,其不斷增大的影響力終于引起了 AT&T 的關(guān)注搓扯,于是 AT&T 和伯克利分校之間開始了一場持久的著作權(quán)官司,這場官司一直打到 AT&T 將自己的 Unix 系統(tǒng)實驗室賣掉包归,新接手的 Novell 采取了一種比較開明的做法锨推,允許伯克利分校自由發(fā)布自己的 Unix 變種,但前提是必須將來自于 AT&T 的代碼完全刪除公壤,于是伯克利分校的師生開始重寫相關(guān)代碼换可,最終誕生了 4.4-BSD-Lite 版,成為了現(xiàn)代BSD的基礎(chǔ)版本厦幅。
盡管后來非商業(yè)版的Unix系統(tǒng)又經(jīng)過了很多演變沾鳄,但其中有不少最終都是創(chuàng)建在BSD版本上(Linux、Minix等系統(tǒng)除外)确憨,例如蘋果公司基于BSD開發(fā)出了 Darwin 內(nèi)核译荞,MacOS 和 iOS 系統(tǒng)的內(nèi)核就是 Darwin 內(nèi)核瓤的。從這個角度上講,4.4 BSD 又是所有自由版本Unix的基礎(chǔ)吞歼,它們和 System V 及 Linux 等共同構(gòu)成 Unix 操作系統(tǒng)這片璀璨的星空圈膏。BSD 后來經(jīng)過演化,出現(xiàn)了 BSD 系統(tǒng)的三個主流版本篙骡,即 FreeBSD稽坤,NetBSD,OpenBSD糯俗。
4尿褪、Unix 發(fā)展小結(jié):
Unix 操作系統(tǒng),是一個強大的多用戶叶骨、多任務(wù)操作系統(tǒng)茫多,支持多種處理器架構(gòu)祈匙,按照操作系統(tǒng)的分類忽刽,屬于分時操作系統(tǒng)。目前它的商標權(quán)由國際開放標準組織所擁有夺欲,只有符合單一 Unix 規(guī)范的 Unix 系統(tǒng)才能使用 Unix 這個名稱跪帝,否則只能稱為類 Unix(Unix-like),比如后來的 Linux 系統(tǒng) 些阅。
Unix 因為其安全可靠伞剑,高效強大的特點在服務(wù)器領(lǐng)域得到了廣泛的應(yīng)用。直到 GNU/Linux 流行開始前市埋,Unix是科學計算黎泣、大型機、超級計算機等所用操作系統(tǒng)的主流$突眩現(xiàn)在其仍被應(yīng)用于一些對穩(wěn)定性要求極高的數(shù)據(jù)中心之上抒倚。
首發(fā)公眾號【戰(zhàn)神波波】,歡迎來交流~