當(dāng)前位置:
首頁 >
FreeBSD的起源和发展
發(fā)布時間:2025/3/15
22
豆豆
生活随笔
收集整理的這篇文章主要介紹了
FreeBSD的起源和发展
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
FreeBSD的起源和發(fā)展
Unix的魅力不僅在于其功能的強大性,還在于其優(yōu)秀的可擴展性,它提供了高級語言C和各種解釋語言可用于編寫程序。利用這些系統(tǒng)提供的工具,使用者就能按照自己的需要和興趣對原有系統(tǒng)進行擴展,滿足相當(dāng)一部分計算機研究人員和使用者的需要,這樣Unix就具備更強大的能力,完成各種復(fù)雜的任務(wù)。一旦用熟了Unix,體會到Unix的強大功能,使用者就會希望一直使用它,而不是僅具備有限能力的其他計算機系統(tǒng)。企業(yè)也希望能在其可以承受的條件下,利用Unix系統(tǒng)的強大處理能力。
由于Unix是多用戶操作系統(tǒng),作為系統(tǒng)的普通使用者只能使用系統(tǒng)提供的有限功能,而只有Unix系統(tǒng)管理員才能充分利用其的全部能力。因而擁有自己的Unix系統(tǒng)也是一個普通Unix使用者的愿望。但是在那些時候,能夠滿足這些愿望的計算機并不是每個人都能買得起的。昂貴的硬件,以及Unix逐漸商業(yè)化趨勢,都使得擁有自己的Unix對大多數(shù)人只是美好的愿望,而使用Unix的地方主要為一些要求較高的科研和大中型公司機構(gòu)。
到80年代,個人計算機的出現(xiàn),使得硬件的價格能被個人和小企業(yè)接受了,給擁有一個Unix系統(tǒng)的愿望帶來了一線曙光。但是使用8086芯片的個人計算機能力比較差,在其上不能實現(xiàn)真正正常工作的多用戶系統(tǒng)。進入九十年代之后,英特爾公司推出的80386芯片使個人計算機的計算能力大大提高,在個人計算機上構(gòu)建一個可以真正使用的Unix也成為了可能。
事實上此時能運行在X86平臺上的Unix相當(dāng)有限,Mircosoft的Xienx是一種(后來發(fā)展成為SCO Unix),但不能指望能自由、免費使用這個商用系統(tǒng)。要移植Unix到PC平臺上便需要Unix的源代碼,而此時受AT&T的許可權(quán)的限制,Unix代碼還不能被自由獲得(但在BSD與AT&T的法律糾紛之后的4.4 BSD Lite不再受這個限制了,可以在BSD許可下自由使用)。很多計算機愛好者為了實現(xiàn)一個可以自由使用的操作系統(tǒng),不但進行著努力。自由軟件基金會的GNU計劃的目的就是打算創(chuàng)建一個自由的、與Unix類似的操作系統(tǒng),為了實現(xiàn)這個目的,GNU開發(fā)了很多非常有效的工具、包括編譯器和很多系統(tǒng)命令,然而GNU計劃中的操作系統(tǒng)內(nèi)核──HURD,卻進展緩慢,從而無法構(gòu)建一個完整的操作系統(tǒng)。很快,就有計算機愛好者開始考慮在個人計算機平臺上構(gòu)建一個Unix內(nèi)核。芬蘭一位計算機研究生Linus Torvalds開始了這個工作,他通過學(xué)習(xí)Minix──一個用于教學(xué)目的的簡單Unix系統(tǒng),在x86平臺上構(gòu)建了Linux內(nèi)核,這個內(nèi)核和GNU的系統(tǒng)工具結(jié)合起來,取得了相當(dāng)大的成功,成為當(dāng)前非常流行的GNU/Linux系統(tǒng)。
與這些努力相比,BSD方面的研究人員的行動則比較遲緩,一個原因是Unix技術(shù)上已經(jīng)相當(dāng)成熟,計算機系統(tǒng)研究組的大部分成員已經(jīng)把注意力轉(zhuǎn)向了其他研究項目,另外AT&T與BSD的法律紛爭也使得BSD發(fā)展受到了阻礙。但是還是有兩個將BSD移植到80386平臺的開發(fā)工作同時進行,一個是BSD/386小組,他們的研究結(jié)果為商業(yè)版本的BSD/OS,屬于商業(yè)公司BSDI。另一個就是386BSD計劃,后來發(fā)展成為FreeBSD。
CSRG研究人員的條件比較優(yōu)越,擁有足夠的Unix系統(tǒng),因此對個人計算機平臺上的Unix系統(tǒng)沒有太急迫的要求。
386BSD計劃由Bill Jolitz等研究人員發(fā)起,將4.3BSD Net/2移植到80386平臺上,并使用386BSD的名稱發(fā)布。但是移植工作是一個復(fù)雜的任務(wù),直到386BSD 0.5版本,系統(tǒng)中仍然存在相當(dāng)多的問題沒有解決。于是在1993年,另一些研究者決定加入這個計劃,打算和Bill Jolitz一起修正系統(tǒng)中存在的問題。但是這時計劃的組織者Bill Jolitz突然決定退出,使得386BSD計劃面臨停止的危險。Bill Jolitz作為計劃的發(fā)起者和負責(zé)者并沒有對這個計劃以后該如何發(fā)展給出具體意見,因此386BSD計劃是到此為止還是繼續(xù)發(fā)展,就取決于其他開發(fā)者的決定。幸運的是,該項目的另三個參與者Nate Williams, Rod Grimes和Jordan K. Hubbard決定繼續(xù)這項非常有意義的工作,他們采用由David Greenman創(chuàng)造的名字FreeBSD作為系統(tǒng)的新名字,從此有了一種任何人都可以自由使用的Unix操作系統(tǒng) ── FreeBSD。
BSD Unix使用一個神話中的精靈形象作為其吉祥物,這個吉祥物標志被FreeBSD、NetBSD繼續(xù)使用,但不同BSD系統(tǒng)的精靈略有不同,右圖為FreeBSD的BSD精靈形象。當(dāng)用戶瀏覽Internet時,會在很多與FreeBSD相關(guān)的網(wǎng)站上看到這個可愛的精靈標志。
1993年12月對于FreeBSD來講是非常重要的日子,FreeBSD 1.0版本于這個月正式發(fā)布。這次FreeBSD的開發(fā)者找到了一家出版商Walnet Creek提供支持,來發(fā)布FreeBSD的光盤和提供高速Internet網(wǎng)絡(luò)服務(wù),使得任何人都可以通過購買光盤或者通過Internet下載的方法,自由獲得FreeBSD系統(tǒng),使得FreeBSD取得了很大成功。而Walnet Creek也使用FreeBSD建成了Internet上最大、最繁忙的匿名文件服務(wù)器──ftp.cdrom.com。
FreeBSD雖然可以自由獲得,然而BSD與AT&T的法律糾紛仍然威脅著FreeBSD系統(tǒng)的合法性。就在FreeBSD得到相當(dāng)多用戶歡迎的時候,Unix系統(tǒng)實驗室(此時已經(jīng)賣給了Novell)與伯克利計算機系統(tǒng)研究小組的法律紛爭有了結(jié)論。雖然最后不必進行賠償,但是BSD Unix系統(tǒng)中必須去除原來來自AT&T的源碼。伯克利計算機系統(tǒng)研究小組去除了這些不到10%源碼,發(fā)布了4.4BSD Lite,其他基于BSD的Unix,包括FreeBSD在內(nèi),都被要求立即轉(zhuǎn)換到4.4 BSD Lite上去。
這對FreeBSD是一次相當(dāng)嚴重的打擊,雖然4.4 BSD Lite只刪除了一小部分代碼,但尤其對于英特爾80386平臺,缺乏這些代碼,系統(tǒng)就不能正常運轉(zhuǎn)。FreeBSD小組必須解決兩個任務(wù),首先是將FreeBSD從原本的4.3BSD遷移到4.4BSD上,再將刪除的源碼完全重寫。這些任務(wù)相當(dāng)于將4.4BSD Lite重新移植到80386上,因此這花費了FreeBSD核心小組很大的精力。因此直到1995年1月他們才發(fā)布了FreeBSD 2.0,這次就是一個完全的4.4BSD Lite的系統(tǒng)了。但是在大約一年時間之內(nèi),FreeBSD不能在原有1.0基礎(chǔ)上進行改進并推出新版本,而這個時期正是Internet進一步發(fā)展的階段,FreeBSD錯過了一個發(fā)展壯大的好時機。而其競爭對手,如Linux,則取得了巨大的成功。
接下來,FreeBSD加快了開發(fā)節(jié)奏,2.1、2.2、3.0相繼推出,這個系統(tǒng)在Internet上的應(yīng)用也越來越多,尤其是對于要求高性能、高可靠性的網(wǎng)絡(luò)服務(wù)器系統(tǒng),FreeBSD提供了一個極具誘惑的選擇。
由于Unix商標屬于X/Open組織,而FreeBSD只是一個自由操作系統(tǒng),從法律角度上看FreeBSD不能被叫作Unix(不能使用Unix做商標)。但是基于Unix本身的歷史,FreeBSD可以算最原汁原味的Unix,在有的方面,它更具傳統(tǒng)特色──或者說BSD Unix的學(xué)院特色。當(dāng)前,Unix商標其實是只具有象征性的含義,沒有人介意到底那些系統(tǒng)是X/Open的成員,可以被稱作Unix,那些不是。Unix已經(jīng)成為一個廣泛的概念,只要是按照Unix為模板進行開發(fā),所有的應(yīng)用程序在C源程序級與其他Unix相互兼容,也同樣被所有使用者承認為Unix系統(tǒng)。因此這里的Unix包括BSD和System V在內(nèi)的各種系統(tǒng),也包括像Linux這樣的兼容系統(tǒng)。
Unix的魅力不僅在于其功能的強大性,還在于其優(yōu)秀的可擴展性,它提供了高級語言C和各種解釋語言可用于編寫程序。利用這些系統(tǒng)提供的工具,使用者就能按照自己的需要和興趣對原有系統(tǒng)進行擴展,滿足相當(dāng)一部分計算機研究人員和使用者的需要,這樣Unix就具備更強大的能力,完成各種復(fù)雜的任務(wù)。一旦用熟了Unix,體會到Unix的強大功能,使用者就會希望一直使用它,而不是僅具備有限能力的其他計算機系統(tǒng)。企業(yè)也希望能在其可以承受的條件下,利用Unix系統(tǒng)的強大處理能力。
由于Unix是多用戶操作系統(tǒng),作為系統(tǒng)的普通使用者只能使用系統(tǒng)提供的有限功能,而只有Unix系統(tǒng)管理員才能充分利用其的全部能力。因而擁有自己的Unix系統(tǒng)也是一個普通Unix使用者的愿望。但是在那些時候,能夠滿足這些愿望的計算機并不是每個人都能買得起的。昂貴的硬件,以及Unix逐漸商業(yè)化趨勢,都使得擁有自己的Unix對大多數(shù)人只是美好的愿望,而使用Unix的地方主要為一些要求較高的科研和大中型公司機構(gòu)。
到80年代,個人計算機的出現(xiàn),使得硬件的價格能被個人和小企業(yè)接受了,給擁有一個Unix系統(tǒng)的愿望帶來了一線曙光。但是使用8086芯片的個人計算機能力比較差,在其上不能實現(xiàn)真正正常工作的多用戶系統(tǒng)。進入九十年代之后,英特爾公司推出的80386芯片使個人計算機的計算能力大大提高,在個人計算機上構(gòu)建一個可以真正使用的Unix也成為了可能。
事實上此時能運行在X86平臺上的Unix相當(dāng)有限,Mircosoft的Xienx是一種(后來發(fā)展成為SCO Unix),但不能指望能自由、免費使用這個商用系統(tǒng)。要移植Unix到PC平臺上便需要Unix的源代碼,而此時受AT&T的許可權(quán)的限制,Unix代碼還不能被自由獲得(但在BSD與AT&T的法律糾紛之后的4.4 BSD Lite不再受這個限制了,可以在BSD許可下自由使用)。很多計算機愛好者為了實現(xiàn)一個可以自由使用的操作系統(tǒng),不但進行著努力。自由軟件基金會的GNU計劃的目的就是打算創(chuàng)建一個自由的、與Unix類似的操作系統(tǒng),為了實現(xiàn)這個目的,GNU開發(fā)了很多非常有效的工具、包括編譯器和很多系統(tǒng)命令,然而GNU計劃中的操作系統(tǒng)內(nèi)核──HURD,卻進展緩慢,從而無法構(gòu)建一個完整的操作系統(tǒng)。很快,就有計算機愛好者開始考慮在個人計算機平臺上構(gòu)建一個Unix內(nèi)核。芬蘭一位計算機研究生Linus Torvalds開始了這個工作,他通過學(xué)習(xí)Minix──一個用于教學(xué)目的的簡單Unix系統(tǒng),在x86平臺上構(gòu)建了Linux內(nèi)核,這個內(nèi)核和GNU的系統(tǒng)工具結(jié)合起來,取得了相當(dāng)大的成功,成為當(dāng)前非常流行的GNU/Linux系統(tǒng)。
與這些努力相比,BSD方面的研究人員的行動則比較遲緩,一個原因是Unix技術(shù)上已經(jīng)相當(dāng)成熟,計算機系統(tǒng)研究組的大部分成員已經(jīng)把注意力轉(zhuǎn)向了其他研究項目,另外AT&T與BSD的法律紛爭也使得BSD發(fā)展受到了阻礙。但是還是有兩個將BSD移植到80386平臺的開發(fā)工作同時進行,一個是BSD/386小組,他們的研究結(jié)果為商業(yè)版本的BSD/OS,屬于商業(yè)公司BSDI。另一個就是386BSD計劃,后來發(fā)展成為FreeBSD。
CSRG研究人員的條件比較優(yōu)越,擁有足夠的Unix系統(tǒng),因此對個人計算機平臺上的Unix系統(tǒng)沒有太急迫的要求。
386BSD計劃由Bill Jolitz等研究人員發(fā)起,將4.3BSD Net/2移植到80386平臺上,并使用386BSD的名稱發(fā)布。但是移植工作是一個復(fù)雜的任務(wù),直到386BSD 0.5版本,系統(tǒng)中仍然存在相當(dāng)多的問題沒有解決。于是在1993年,另一些研究者決定加入這個計劃,打算和Bill Jolitz一起修正系統(tǒng)中存在的問題。但是這時計劃的組織者Bill Jolitz突然決定退出,使得386BSD計劃面臨停止的危險。Bill Jolitz作為計劃的發(fā)起者和負責(zé)者并沒有對這個計劃以后該如何發(fā)展給出具體意見,因此386BSD計劃是到此為止還是繼續(xù)發(fā)展,就取決于其他開發(fā)者的決定。幸運的是,該項目的另三個參與者Nate Williams, Rod Grimes和Jordan K. Hubbard決定繼續(xù)這項非常有意義的工作,他們采用由David Greenman創(chuàng)造的名字FreeBSD作為系統(tǒng)的新名字,從此有了一種任何人都可以自由使用的Unix操作系統(tǒng) ── FreeBSD。
BSD Unix使用一個神話中的精靈形象作為其吉祥物,這個吉祥物標志被FreeBSD、NetBSD繼續(xù)使用,但不同BSD系統(tǒng)的精靈略有不同,右圖為FreeBSD的BSD精靈形象。當(dāng)用戶瀏覽Internet時,會在很多與FreeBSD相關(guān)的網(wǎng)站上看到這個可愛的精靈標志。
1993年12月對于FreeBSD來講是非常重要的日子,FreeBSD 1.0版本于這個月正式發(fā)布。這次FreeBSD的開發(fā)者找到了一家出版商Walnet Creek提供支持,來發(fā)布FreeBSD的光盤和提供高速Internet網(wǎng)絡(luò)服務(wù),使得任何人都可以通過購買光盤或者通過Internet下載的方法,自由獲得FreeBSD系統(tǒng),使得FreeBSD取得了很大成功。而Walnet Creek也使用FreeBSD建成了Internet上最大、最繁忙的匿名文件服務(wù)器──ftp.cdrom.com。
FreeBSD雖然可以自由獲得,然而BSD與AT&T的法律糾紛仍然威脅著FreeBSD系統(tǒng)的合法性。就在FreeBSD得到相當(dāng)多用戶歡迎的時候,Unix系統(tǒng)實驗室(此時已經(jīng)賣給了Novell)與伯克利計算機系統(tǒng)研究小組的法律紛爭有了結(jié)論。雖然最后不必進行賠償,但是BSD Unix系統(tǒng)中必須去除原來來自AT&T的源碼。伯克利計算機系統(tǒng)研究小組去除了這些不到10%源碼,發(fā)布了4.4BSD Lite,其他基于BSD的Unix,包括FreeBSD在內(nèi),都被要求立即轉(zhuǎn)換到4.4 BSD Lite上去。
這對FreeBSD是一次相當(dāng)嚴重的打擊,雖然4.4 BSD Lite只刪除了一小部分代碼,但尤其對于英特爾80386平臺,缺乏這些代碼,系統(tǒng)就不能正常運轉(zhuǎn)。FreeBSD小組必須解決兩個任務(wù),首先是將FreeBSD從原本的4.3BSD遷移到4.4BSD上,再將刪除的源碼完全重寫。這些任務(wù)相當(dāng)于將4.4BSD Lite重新移植到80386上,因此這花費了FreeBSD核心小組很大的精力。因此直到1995年1月他們才發(fā)布了FreeBSD 2.0,這次就是一個完全的4.4BSD Lite的系統(tǒng)了。但是在大約一年時間之內(nèi),FreeBSD不能在原有1.0基礎(chǔ)上進行改進并推出新版本,而這個時期正是Internet進一步發(fā)展的階段,FreeBSD錯過了一個發(fā)展壯大的好時機。而其競爭對手,如Linux,則取得了巨大的成功。
接下來,FreeBSD加快了開發(fā)節(jié)奏,2.1、2.2、3.0相繼推出,這個系統(tǒng)在Internet上的應(yīng)用也越來越多,尤其是對于要求高性能、高可靠性的網(wǎng)絡(luò)服務(wù)器系統(tǒng),FreeBSD提供了一個極具誘惑的選擇。
由于Unix商標屬于X/Open組織,而FreeBSD只是一個自由操作系統(tǒng),從法律角度上看FreeBSD不能被叫作Unix(不能使用Unix做商標)。但是基于Unix本身的歷史,FreeBSD可以算最原汁原味的Unix,在有的方面,它更具傳統(tǒng)特色──或者說BSD Unix的學(xué)院特色。當(dāng)前,Unix商標其實是只具有象征性的含義,沒有人介意到底那些系統(tǒng)是X/Open的成員,可以被稱作Unix,那些不是。Unix已經(jīng)成為一個廣泛的概念,只要是按照Unix為模板進行開發(fā),所有的應(yīng)用程序在C源程序級與其他Unix相互兼容,也同樣被所有使用者承認為Unix系統(tǒng)。因此這里的Unix包括BSD和System V在內(nèi)的各種系統(tǒng),也包括像Linux這樣的兼容系統(tǒng)。
總結(jié)
以上是生活随笔為你收集整理的FreeBSD的起源和发展的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 部分书籍的源代码
- 下一篇: php调用go服务问题,PHP 调用 G