日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

操作系统的起源与发展历程

發布時間:2023/12/9 windows 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 操作系统的起源与发展历程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1. Unix
  • 2. Linux

1. Unix

早期計算機只有在軍事或者學術研究方面才能接觸到,并不像現如今擁有如此高的普及程度。

非但如此,當時的計算機不僅架構很難用、處理器運算速度慢,而且開發接口也沒有···

當時的“程序員”編寫程序需要使用卡紙進行信息打洞,再將打好的卡紙放入卡紙閱讀機中讀入計算,可以想象如果某個地方打錯,就需要進行重新打卡,加上當時計算機的稀有程度與使用者眾多,光是人員排隊和等待運算就耗去了很多時間。

1960年麻省理工學院(MIT)開發了兼容分時系統(Compatible Time Sharing System),可以讓大型主機通過多個終端機(Terminal)來聯機進行運算,并將結果從主機傳輸到終端機。

終端機僅僅具有輸入輸出功能,具體運算能力在主機上。并且當時比較先進的主機也只能帶動30個終端機。

當時為了讓大型主機可以帶動300個以上終端機,由貝爾實驗室(Bell)、麻省理工學院(MIT)、以及奇異公司(GE)共同發起Multics計劃,后來到1969年前后,由于資金短缺,進度落后,此計劃宣告失敗!


在原本參與Multics計劃的人員中,Ken Thompson 希望開發一個小小的操作系統來滿足自己的需求,于是在1969年8月份回家探親時利用當時一部沒人使用的DEC(Digital Equipment Corporation) PDP-7 主機,利用一個月的時間采用匯編語言(Assembly Language)寫出了一個核心程序包括一些核心工具與一個小型文件系統(File Server System)。

由于 Thompson 將 Multics 進行了簡化,當時他的同事們稱這個系統為 Unics ,這個小型文件系統就是 Unix 的原型。它有兩個重要的概念

  • 所有程序或系統裝置都是文件
  • 不管構建編輯器還是附屬文件,程序只有一個目的,有效完成相應的目標
  • 后來,由于Thompson 寫的這個系統非常好用,于是在貝爾實驗室內部廣為流傳,并且同事們根據需求進行改版,1973年因為系統移植與性能原因,Dennis Ritchie 將其改寫為B語言,后又重新改寫為C語言,并發行出Unix的正式版本。那么在以 Unix 為代表的分時操作系統被發明前,你和電腦的交互會被任何人的使用而打斷,而這一點延遲通常意味著幾千美元的損失。

    站在商業角度來看,這時的貝爾實驗室隸屬于AT&T,當時正忙于其它商業活動,對于此時的Unix采取比較開放的態度,并且C語言是擁有移植性的,也就是說只要取得當時Unix的源碼,可以移植到任何一部主機上。于是Unix與學術界開始合作,最重要的是與加州柏克萊(Berkeley)大學的合作,柏克萊大學的Bill Joy(Sun 公司的創辦者)修改為自己機器的版本并且增加了很多工具軟件與編譯程序,命名為Berkeley Software Distribution (BSD),成為Unix一個很重要的分支,Sun公司也以BSD為核心發展商業Unix版本,后來出現的可以安裝在x86硬件架構上的FreeBSD就是BSD改版而來。

    由于Unix沒有版權糾紛與其高度的可移植性與強大的效能,商業公司紛紛開始推出自家主機搭配的Unix系統,例如AT&T的System V,IBM的AIX,HP,DEC等公司。因為操作系統的內核必須要搭配硬件才能工作,此時各硬件公司之間也沒有所謂的協議,所以他們是需要根據自家公司的硬件開發合適的Unix系統的,也就是說各大公司開發出的Unix只能支持自家的硬件。

    此時AT&T看中了Unix的商業價值,想要將Unix的版權收回,于是在1979年發行的第七版Unix版權聲明中特別提出了不可對學生提供源碼的嚴格限制,同時也引爆了很多的商業糾紛。

    由于教學要求,沒有原始碼如何教導學生認識Unix成為Andrew Tanenbaum教授傷腦筋的問題,于是Tanenbaum于1984-1986年動手編寫了基于x86架構的Minix這個Unix Like的核心程序,并于1987年出版Minix相關書籍,Minix十分有趣,它并不是免費的,需要購買磁盤或磁帶,但是很便宜。由于Minix開發者只有Tanenbaum一個人,并且他認為Minix主要用于教育用途,點到為止即可,不再進行繼續開發。

    Richard Mathew Stallman原本使用Lisp操作系統(MIT 的專利軟件),后來由于實驗室硬件更換無法使用,對于一個想要成立開放團體的他來說Lisp系統是一個阻礙,此時他接觸到Unix系統,開始進行軟件移植。Stallman認為寫程序最大的快樂是自己的軟件可以分享給大家使用,既然每個人所使用的計算機軟硬件不同那么程序的源碼就要公開,方便大家修改或者除錯后適用于自身的計算機,這樣該程序會越來越壯大,越來越優秀,那么這一舉動便稱為開源(Open Source)。

    1984年Stallman開始GNU計劃(GNU's Not Unix),即建立一個自由開放的Unix操作系統,但是一個人建立操作系統實在是太麻煩,于是他著手開始編寫在Unix上可以運行的程序,模仿原有專利軟件進行重新編寫。但是無論什么軟件都要編譯為二進制文件后計算機才能夠執行,但是當時的C語言編譯器都是專利軟件,于是他靠將Emacs編輯器(Editor)移植到Unix后以磁帶售賣賺錢,成立自由軟件基金會(Free Software Foundation)聘請工程師一起編寫出GNU C編譯器、C函數庫(GNU C Library)以及操作系統基本接口Bash Shell,也就是現如今的GCC編譯器。

    同年由于圖形使用接口(Graphical User Interface , GUI)的需求,MIT與其它廠商聯合發表了X Window System,并于1988年成立非營利性XFree86組織。

    1985年,Stallman為了避免GNU所開發的自由軟件被人利用成為專利軟件,與律師起草了通用公共許可證(General Public License , GPL),GPL是可以從事商業行為的,但其自身是開源的自由軟件,販賣的大多數是服務和二次開發后的服務。

    GPL授權的軟件特色如下:

    • 取得軟件與源碼
    • 復制該軟件
    • 修改過的程序代碼回饋給社群
    • 對軟件源碼進行修改后再度發行,保證不會與原始撰寫者沖突
    • 不可將修改后的程序取消GPL授權
    • 不能單純販賣自由軟件,但可搭配相應手冊或者后續服務

    盡管如此,對于GNU最初構想建立一個自由開放的Unix操作系統由于沒有自由的Unix核心存在所以這些軟件還是只能運行在有專利的Unix平臺上。這種情況一直到Linux的出現。

    2. Linux

    Linus Torvalds(1969年出生)的外祖父是赫爾辛基大學的統計學家,為了讓自己的小孫子能夠學點東西,從小就將Torvalds帶到身邊來管理一些微計算機。 在這個時期,Torvalds接觸了匯編語言。在1988年,Torvalds順利的進入了赫爾辛基大學,并選讀了計算機科學系。在就學期間,Torvalds接觸到了Unix操作系統。當時整個赫爾辛基只有一部最新的Unix系統,同時僅提供16個終端機(terminal)。光是等待使用Unix的時間就很耗時,為此,他不禁想到: 『我何不自己搞一部Unix來玩?』不過,就如同Stallman當初的GNU計劃一樣,要寫核心程序,談何容易~

    不久之后,他知道了有一個類似Unix的系統, 并且與Unix完全兼容,還可以在Intel 386機器上面跑的操作系統, Tanenbaum教授為了教育需要而撰寫的Minix系統!

    于是他貸款買了一部Intel的386計算機,參考Minix的設計理念與書上的程序代碼,然后仔細研究出386個人計算機的效能優化, 然后使用GNU計劃提供的bash工作環境軟件以及gcc編譯程序等自由軟件將核心程序代碼與386緊緊的結合在一起,最終寫出他所需要的核心程序。

    他希望這個程序可以獲得大家的一些修改建議,于是便將這個核心放置在網絡上提供大家下載,同時在BBS上面貼了一則消息:他說,他完成了一個小小的操作系統,這個核心是用在386機器上的, 同時,他真的僅是好玩,并不是想要做一個跟GNU一樣大的計劃! 另外,他希望能夠得到更多人的建議與回饋來發展這個操作系統!

    這則新聞引起很多人的注意,他們也去托瓦茲提供的網站上下載了這個核心來安裝。因為托瓦茲放置核心的那個FTP網站的目錄為:Linux,大家便稱這個核心為Linux了。

    同時,為了讓自己的Linux能夠兼容Unix系統,于是托瓦茲開始將一些能夠在Unix上面運作的軟件拿來在Linux上面跑。 不過,他發現到有很多的軟件無法在Linux這個核心上運作。這個時候他有兩種作法, 一種是修改軟件,讓該軟件可以在Linux上跑, 另一種則是修改Linux,讓Linux符合軟件能夠運作的規范! 由于Linux希望能夠兼容于Unix,于是托瓦茲選擇了第二個作法『修改Linux』! 為了讓所有的軟件都可以在Linux上執行,于是托瓦茲開始參考標準的POSIX(Portable Operating System Interface)可攜式操作系統接口規范。

    因為Linux的核心是開源的,極客們很容易就能夠跟隨Linux的原本設計架構, 并且寫出兼容的驅動程序或者軟件。他將該驅動程序/軟件帶入核心中, 只要測試可以運行,并且沒有什么主要的大問題,那么他就會很樂意的將志工們寫的程序代碼加入核心中!為應對這種隨時都有程序代碼加入的狀況,于是Linux逐漸發展成具有模塊的功能,將某些功能獨立出于核心外,在需要的時候才加載到核心中。 如果有新的硬件驅動程序或者其他協議的程序代碼進來時,就可以模塊化,不用進行重新內核編譯,大大的增加了Linux核心的可維護能力!

    后來,因為Linux核心加入了太多的功能,光靠托瓦茲一個人進行核心的實際測試并加入核心原始程序實在太費力~ 結果,就有很多的朋友跳出來幫忙這個前置作業!例如考克斯(Alan Cox)、與崔迪(Stephen Tweedie)等等, 這些重要的副手會先將來自志工們的修補程序或者新功能的程序代碼進行測試, 并且結果上傳給托瓦茲看,讓托瓦茲作最后核心加入的原始碼的選擇與整并! 這個分層負責的結果,讓Linux的發展更加的容易!

    特別值得注意的是,這些托瓦茲的Linux發展副手,以及自愿傳送修補程序的黑客志工, 其實都沒有見過面,而且彼此在地球的各個角落,大家群策群力的共同發展出現今的Linux, 我們稱這群人為虛擬團隊!而為了虛擬團隊數據的傳輸,于是Linux便成立的核心網站: http://www.kernel.org!

    而這群素未謀面的虛擬團隊們,在1994年終于完成的Linux的核心正式版!version 1.0。 這一版同時還加入了X Window System的支持,并于1996年完成了2.0版。此外,Torvalds指明了他小時候去動物園被咬了一口的企鵝為Linux的吉祥物。

    Linux的核心版本編號:
    2.6.18-92.el5
    主版本.次版本.釋出版本-修改版本

    • 主、次版本為奇數:發展中版本(development)
      如2.5.xx,這種核心版本主要用在測試與發展新功能,所以通常這種版本僅有核心開發工程師會使用。 如果有新增的核心程序代碼,會加到這種版本當中,等到眾多工程師測試沒問題后,才加入下一版的穩定核心中;

    • 主、次版本為偶數:穩定版本(stable)
      如2.6.xx,等到核心功能發展成熟后會加到這類的版本中,主要用在一般家庭計算機以及企業版本中。 重點在于提供使用者一個相對穩定的Linux作業環境平臺。

    Linux其實就是一個操作系統最底層的核心及其提供的核心工具。 他是GNU GPL授權模式,所以,任何人均可取得原始碼與可執行這個核心程序,并且可以修改。 此外,因為Linux參考POSIX設計規范,于是兼容于Unix操作系統,故亦可稱之為Unix Like的一種。

    Linux的出現讓Stallman的GNU計劃放下了心里的一塊大石頭,因為GNU一直以來就是缺乏了核心程序, 導致他們的GNU自由軟件只能在其他的Unix上面跑。既然目前有Linux出現了,且 Linux也用了很多的GNU相關軟件,所以Stallman認為Linux的全名應該稱之為GNU/Linux!

    為了讓使用者能夠接觸到Linux,于是很多的商業公司或非營利團體, 就將Linux Kernel(含tools)與可運行的軟件整合起來,并加上具有創意的工具程序, 這個工具程序可以讓用戶以光盤/DVD或者網絡直接安裝/管理Linux系統。

    這個『Kernel + Softwares + Tools』的可完全安裝稱之為Linux Distribution,一般中文翻譯成可完全安裝套件,或者Linux發布商套件等。由于GNU的GPL授權并非不能從事商業行為,于是很多商業公司便販賣Linux Distribution,例如Red Hat,、Debian、Ubuntu、SuSE、 Fedora 等等

    每個Linux distributions使用的kernel都是http://www.kernel.org所釋出的,而他們所選擇的軟件,幾乎都是目前很知名的軟件,重復性相當的高, 例如網頁服務器的Apache,電子郵件服務器的Postfix/sendmail,文件服務器的Samba等等。

    此外,為了讓所有的Linux distributions開發不致于差異太大,且讓這些開發商在開發的時候有所依據,還有Linux Standard Base (LSB)等標準來規范開發者,以及目錄架構的File system Hierarchy Standard (FHS)標準規范

    事實Distributions主要分為兩大系統,一種是使用RPM方式安裝軟件的系統,包括Red Hat, Fedora, SuSE等都是這類; 一種則是使用Debian的dpkg方式安裝軟件的系統,包括Debian, Ubuntu, B2D等等。

    因為Linux具有 1.硬件需求低、 2.架構開放、 3.系統穩定性及保密性功能夠強、 4.完全免費,所以造成一些所謂『反微軟聯盟』的程序設計高手不斷的開發新軟件!以與Microsoft進行抗衡!

    Linux早期都是由工程師所發展的,對於窗口介面并沒有很需要,所以造成Linux不太親和的印象。為了要強化桌面計算機的使用率,Linux與X Window System結合了! 自從1994年Linux 1.0后就加入的X Window系統,在眾多黑客的努力之下終于與Linux有高度整合, 且主要的繪圖卡公司(Intel, NVidia, ATI等)都有針對Linux推出最新的驅動程序, 因此Linux的GUI已經有長足的進步了!另外,Linux環境下的圖形接口不只有一種呢! 包括大家耳熟能詳的KDE(http://www.kde.org/)以GNOME(http://www.gnome.org)都是很常見的!要注意的是,X Window System僅只是Linux上面的一套軟件, 而不是核心,所以即使X Window掛了,對Linux也可能不會有直接的影響,這些都比較吃顯卡與內存

    總結

    以上是生活随笔為你收集整理的操作系统的起源与发展历程的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。