Linux學習總結02—Linux的操作系統發展史(原創)

   我們都知道,在美國賓夕法尼亞大學,有那么一種計算機,叫ENIAC,這種機器耗電量是非常大,而且主機也是龐大,它誕生于1946年的2月14日的情人節,確實有紀念意義,就算是約炮也是拿著智能手機先搖一搖,好看就勾搭,不好看的就拉黑,這臺計算機可并不是造福人類的,只是計算數據,我想,當時的情況是這樣,在這臺計算機沒有出世之前,那幫工程師們計算數據通常時間是很長的,快的話兩個月,要是碰上特別復雜的,三五個月肯定都有,要知道,戰爭年代,時間就是勝利,如果速度那么慢的話,是肯定不會讓人接受的,所以賓夕法尼亞大學就開始申請研制可以解決一些特別復雜計算的方程式的計算機,研制出來之后,有原先的兩個月縮減出來兩天,所以,戰爭帶來毀滅的同時,也會帶來并且推動的東西。

   但是其實第一臺計算機其實并不是ENIAC,而是ABC,誕生于愛荷華州立大學,是由一位導師和幾個學生一同研發出來的。

   后來計算機的硬件慢慢形成,這一形成是由馮.諾依曼提起的,除了采用我在上述第一章提到的五大部件之外,采用二進制也是他提出來,(二進制由0和1組成)這個理論到現在還是主流,因為它或許是簡單而又全。

   我們都知道第一臺操作系統是UNIX,在早期的時候是沒有操作系統的,那時候的計算機是需要打卡,一個一個孔就是1,沒有孔的就是0,然后將那個小卡片依次送進計算機里面讓它讀,之后就通過打印機似的輸出系統給顯示出來,可見這是一個很麻煩的事情,當時貝爾實驗室(A&AT)、通氣公司、麻省理工大學等研發一款操作系統,這應該是世界上第一款操作系統,但研究的時間太長,而且進度非常緩慢,貝爾實驗室就率先退出了,之后就停滯、在啟動,雖然好像是研究出來了,不過并沒有形成那么一種通用。

   后來貝爾實驗室的人員有個叫做肯·湯普森,他之前就是參加研發那第一款操作系統的人,在貝爾實驗室里寫出一個多用戶的操作系統—-UNIX,起初就是他玩游戲時不太爽,而且那個游戲本來就是為當時第一款操作系統所研發的,而且運行也是不太流暢,后來貝爾實驗室退出之后,他就是就想自己寫一個程序讓自己的游戲跑起來,可問題是貝爾實驗室能批下來這個事情嘛?似乎覺得也不可能,他發現了在實驗室里有一個PDP-7沒人用,因為那時候已經出來PDP-11了,而且貝爾實驗室也是很有錢。呵呵!

   從此他空閑的時間都在這臺機子上寫他的程序,在70年完成,他當時讓同事們看他的游戲,可同事并不關心他的游戲,而是關心他的系統,因為他系統的健壯性和易用性都非常的好,于是乎在實驗室內部開始裝上了UNIX,所以70年是UNIX的元年(時間具體我也是記不清了)

   但是還是很麻煩,麻煩在于它是用匯編語言寫的,如果轉移到另一個硬件架構上,需要寫這個程序,并且要根據那個平臺編譯,這的確是很麻煩,在1973年的時候,他的同事丹尼斯·里奇將匯編語言B語言開始改版,加入函數等功能成為了C語言高級語言,讓它的可移植性功能開始了它在世界重要的發揮作用,于是丹尼斯.里奇使用C語言來重新編寫UNIX操作系統。

   后來肯.湯普森開始放假,假期一年,帶薪休假(我的內心是羨慕的),他來到了伯克利分校教學,伯克利分校也組織了一個研究UNIX的社團,在湯姆森的幫助下,他們研制出一套BSD的操作系統,里面也有A&AT UNIX的源代碼,不過當時A&AT當時主要生產別的業務,對于Unix來說,你想要的話你就取走,于是又很多公司都來了,比如HP、SUN以及IBM,貝爾實驗室都無償的給他們了,在后來BSD開始收費,好像是緊跟著他們也開始收費了吧(具體的我也記不清了),直到貝爾實驗室一分為二,想要開始收回版權,就與BSD開始長達幾十年的官司。

   這十幾年也是個黃金十幾年,因為蘋果和微軟也殺出來了,尤其是微軟,這幾十年掙了特別多,可他們發現的時候已經晚了,這里就不介紹微軟和蘋果的歷史了。

   此時的Unix已經是商業化了,在1983年,有人提出,軟件一切自由,于是有人就開始發起共產主義道路,這人就是理查德·馬修·斯托曼,他認為軟件都是自由的,不能被你們這些資本主義家占有(其實就是商業化),于是搞出了一套協議叫GNU(不叫GUN,意思是GNU is not Unix)很快就有天下義士響應(指的是那些熱愛自由、不斷挑戰新的規則的黑客們),于是又很多開源軟件在GNU協議中,比如GCC、Glib等,但是并沒有人研發出一個內核程序,所以這個協議也是托了很久。

   Unix教育機構中也是不讓用的,這下該怎么辦呢,在1987年,安德魯·斯圖爾特編寫了一套教育類的核心操作系統—-Minux,主要用于教育事業,來了解計算機的用于教學的一套操作系統,他不允許別人修改他們代碼,雖然可以給你,但你不能修改內核,這下讓那些熱愛自由精神的組織者既高興也是失望,高興的是這個內核很好,失望的是這個內核不給你用(恐怕還是失望多一點)。

   在1991年的8月份,有一位計算機學生,叫做Linus,他編寫一個內核,發布在FTP上,并且發布了一個帖子,很快共產主義開一次升起了冉冉星空,星星之火被再一次燎原。經過哪些虛擬團隊不斷的修改、添加以及測試之后,Linux誕生了,由于Linux就是一個內核,只能讓計算機的硬件利用并且相互協調通信,所以GNU的那些軟件也就開始跑在Linux內核之上,起初Linux并不兼容,因為它并不是兼容POSIX,因為Unix是根據POSIX規則開發的,于是在Linus有兩條道路,要不就修改那些軟件,要不就修改Linux內核,當然,他選擇了第二條道路,此后的Linux也是一強再強,發展的速度也是非常的快。

   現在,Linux已經完全貼近我們的生活中了,雖然你看不見,可你在悄悄地使用它。

原創文章,作者:劉 祥宇,如若轉載,請注明出處:http://www.www58058.com/55494

(0)
劉 祥宇劉 祥宇
上一篇 2016-10-29 22:11
下一篇 2016-10-29 23:02

相關推薦

  • 練習

    練習 顯示/proc/meminfo文件中以大小s開頭的行;     顯示/etc/passwd文件中不以/bin/bash結尾的行     找出/etc/passwd中的兩位或三位數     顯示/etc/grub2.cfg文件中,至少以一個空白字符開頭的 且后面存非空白字符的行   &…

    Linux干貨 2016-08-12
  • Liunx學習小結2

    1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。文件管理類命令有:cp、mv、rmcp [選項] [參數]選項:-a:此參數的效果和同時指定”-dpR”參數相同;-d:當復制符號連接時,把目標文件或目錄也建立為符號連接,并指向與源文件或目錄連接的原始文件或目錄;-f:強行復制文件或目錄,不論目標文件或目錄…

    Linux干貨 2017-07-31
  • Linux網絡配置

    Linux網絡基礎配置 將Linux主機接入到網絡,需要配置網絡相關設置。 一般包括如下內容:     主機名     IP/netmask     路由:默認網關     DNS服務器  …

    Linux干貨 2016-09-09
  • 馬哥教育網絡班22期+第14周課程練習

    系統的INPUT和OUTPUT默認策略為DROP;   iptables -P INPUT DROP   iptables -P OUTPUT DROP 1、限制本地主機的web服務器在周一不允許訪問;新請求的速率不能超過100個每秒;web服務器包含了adm…

    Linux干貨 2016-12-05
  • 用戶管理基本操作

    1.創建組distro,其GID為2016[root@localhost ~]# groupadd -g 2016 distro2.創建用戶mandriva,其ID號為1005;基本組為distro[root@localhost ~]# useradd -u 1005 mandriva -g 20163.創建用戶mageia,其ID號為1…

    Linux干貨 2017-09-04
  • Linux程序包管理相關

    前言 首先說說一個軟件的誕生過程: 程序員用編程語言寫文本格式的源代碼,但是計算機只能讀懂二進制文件,那么就需要將源代碼轉換成二進制格式,這個過程稱為編譯。編譯用的工具稱為編譯器,編譯器有很多種,在Linux上常用gcc這個編譯器。利用編譯器,得到二進制格式的文件(二進制程序(Windows上.exe.msi,Linux.elf)、庫文件、配置文件、幫助文件…

    Linux干貨 2018-01-04
欧美性久久久久