你需要了解操作系统发展历程
本文我們大概回顧計算機操作系統發展歷程,這里不會記錄關于操作系統的完整歷史記錄,只是記錄那些里程碑事件,看看各位接觸計算機時,操作系統發展正處于哪個年代
起初
沒有操作系統,沒有編程語言或編譯器,甚至沒有鼠標,沒有窗口,啥都么有,太難了
假設我們需要建立一臺計算機,那么如何獲得它來閱讀和運行將要編寫的程序?它如何訪問設備:讀取輸入和寫入輸出數據?程序從內存中運行,但是必須以某種方式將程序放入內存,然后將如何運行其他程序?是否需要重新啟動計算機嗎?編寫的程序對系統的硬件了解多少:訪問磁盤或掃描鍵盤的詳細信息?可以向應用程序程序員隱藏此信息嗎?
諸如此類的問題導致了操作系統的發展,操作系統的開發與計算機系統的開發,用戶如何使用它們以及對它們的期望緊密相關。接下來是對過去七十多年左右的計算系統的快速瀏覽。
1945?
?
ENIAC,賓夕法尼亞大學摩爾工程學院ENIAC(電子數值積分器和計算機)可以說是第一臺通用電子計算機(第一臺確實是Colossus,但是它的存在一直被保密數十年)。它的創建是出于非常特定的目的:計算軍用點火表。主要用于戰斗中,考慮了溫度,風向和彈藥類型,為槍支找到合適的仰角。在第二次世界大戰期間,隨著槍支生產進入高速發展階段,并且制造了越來越多的槍支,陸軍正面臨著大量積壓的計算。這導致為ENIAC項目提供資金,以解決這些問題。
該機器包含:200個十進制數字的內部存儲器、每分鐘8,000個十進制數字的I / O速度、每秒5,000次操作的計算速度、裝有18,000個真空管,消耗了100,000瓦特(其中40,000瓦去了燈絲并轉化為熱量)、通過配線架和開關進行編程、從打孔卡讀取的數據
準備ENIAC進行一系列運行是一個難以置信的過程。首先,必須編寫詳細的說明來定義問題和解決問題的過程。這些說明是通過手動調節開關并將數千根電纜插入多達40個大型插板中來編寫的。一個由五名操作員組成的團隊可能需要花費幾天的時間進行外部接線,而要花費更多的時間來查找錯誤并進行糾正—突破計算機時代,哈里·沃爾福斯特(Harry Wulforst),查爾斯·斯克里伯納父子出版社(1982)
1949?
?
EDSAC和EDVAC計算機獲取內存
EDVAC(電子離散變量自動計算機)和EDSAC(電子延遲存儲自動計算器)都于1949年完成。EDVAC是ENIAC的后繼產品。EDSAC是由劍橋大學計算實驗室的Maurice Wilkes領導的一個項目,基于EDVAC的建議而構建。兩者都是存儲程序的計算機:指令可以從計算機的內存中運行,而不是硬連線。他們使用了約翰·馮·諾依曼(John von Neumann)的體系結構,其中計算機的程序代碼與數據駐留在同一存儲中。
汞延遲線用于系統的內存,這些是含有汞的長密封管,數據表示為流體中的波動。它通過換能器進入,在流體中傳播,并在遠端通過換能器提取,那時,計算機可以讀取數據(進入真空管)或將其循環回以通過汞管再循環。
EDSAC具有高達512個35位字的內存。
1949
?
BINAC – ENIAC的后繼者編程語言
第一個編程語言的先驅出現:John Mauchly的 Short Order Code,它具有一個簡單的代數解釋器。程序員可以用偽代碼而不是實際機器的代碼來編寫。該偽代碼可以包括一組“子例程”。就我們所知,這些不是子例程。程序查看每個語句,跳到所需的子例程,執行該語句,然后循環返回,但堆棧的概念和返回指令還未出現。
1951?
?
雷明頓市UNIVAC可重用代碼
代碼共享的概念應運而生,它創建了一組標準的數學子例程,這些都寫在紙上,并根據需要復制(到打卡機上)。不幸的是,程序員并不能夠總是非常準確地進行復制,因此經常需要進行調試。
John Mauchly估計,世界上可能有十二個組織需要并負擔得起UNIVAC,超過45被出售。
1952?
?
IBM 701真正的可重用代碼和真正的匯編程序
701是IBM的第一臺商業科學計算機。它包含1,024字的隨機存取存儲器,并使用塑料磁帶作為存儲介質。該計算機采用模塊化結構。它由幾個單元組成,將被運送到客戶那里進行最終連接。這與必須在客戶現場完全組裝的UNIVAC等較早的機器形成對比。
匯編器風格語言的出現:IBM Speed Coding
創建了一個IBM用戶組織SHARE(幫助減輕冗余工作的協調)。它維護了通用例程的存儲庫。例如,如果需要用于將磁帶前進到某個位置并寫入數據塊的代碼,則可以從SHARE獲取它。這些共享的I/O例程是當今操作系統中設備驅動程序的先驅。
1956
?
中斷UNIVAC 1103A引入了中斷。接收到中斷后,處理器會將其程序計數器的值存儲在固定的存儲位置中,并且程序計數器將被預設的地址替換,從而迫使執行切換到中斷服務程序。為了返回,中斷服務程序將跳轉到存儲在特殊存儲器位置中的值。使用中斷的一種方法是允許較低優先級的批處理過程在陸軍作戰研究辦公室的戰爭游戲模擬程序之間運行。這是分時共享的先驅,后者將在未來幾十年主導操作系統設計。
操作應運而生
早期計算的一大浪費時間是設置計算機來運行作業,然后將其重置并在第一個程序完成時加載下一個作業所花費的時間。為了運行程序,將包含該程序的一副打孔卡加載到機器的內存中。在程序終止之前,該程序是在該計算機上運行的唯一程序。作業完成后,操作員將加載程序以轉儲內存,并刪除磁帶,卡和所有打印輸出,之后,下一個作業將被加載到計算機上。
早期的操作系統通過分批而非單獨處理作業來提高系統吞吐量,作業完成后,它將分支到操作系統中的某個位置,該位置將包含將轉儲當前作業狀態并加載下一個作業的軟件。這大大減少了操作員干預的需要。在最早的系統中,此作業轉換軟件封裝在一組打孔卡中,這些打孔卡已添加到包含用戶程序的卡組中。
作業控制語言為程序提供了一種定義其資源需求的方式,例如它們需要使用什么磁帶或讀卡器以及它們的預期運行時間是多少。
1954?
?
FORTRAN誕生高級語言
使用高級語言,程序員不再需要了解計算機的體系結構。
早期的編譯器,包括早期的FORTRAN(FORmula TRANslator),必須容納1024個12個字符的單詞,并且仍然留有足夠的數據空間。但是由于磁帶機一直忙于獲取數據,因此編譯程序通常要耗費兩個小時。
到1950年代末,操作系統支持:單流批處理、用于設備訪問的通用,標準化的輸入/輸出例程、程序轉換功能可減少開始新工作的開銷、錯誤恢復以清理作業異常終止后的情況、作業控制語言,允許用戶指定作業定義和資源要求
開啟1960時代
1960年代初操作系統的目標是提高吞吐量,計算機非常昂貴,因此找到利用CPU每一秒可能的時間的方法很重要。
多程序:將幾個程序一次保存在主存儲器中,并在程序之間切換處理器。由于I / O(輸入/輸出)設備速度和處理器速度之間的不匹配,因此可以進行多程序編程。在程序等待I/O操作完成時,可能浪費數萬個周期(在當今的處理器上為數千萬至數十億),I/O操作正在進行時,與其讓處理器坐在那里而不執行任何操作,不如將其切換為運行其他程序。
多處理系統:多個處理器相互配合。其中一些開始出現在1960年代。
交易處理系統:IBM在1960年為美國航空開發了SABRE航空公司預訂系統。它由兩臺相連的IBM 7090計算機(由分立晶體管構成)組成,旅行代理商通過打字機終端與中央計算機進行通信。盡管SABRE是專用系統,而不是通用操作環境,但它迎來了對計算的新要求。
對于SABRE這樣的系統:用戶帳戶和并發訪問需要創建保護機制和密碼存儲。
現在,計算機必須進行交互操作(對話)。因此,人為因素成為一個問題:響應時間和易用性。隨著磁盤的廣泛部署,訪問存儲組織技術得到了發展,隨后是文件系統。數據通信鏈接用于遠程訪問。在大多數情況下,這些是電話線。
該年代,磁盤成為主流、隨機存取大容量存儲。第一個磁盤驅動器是IBM 350磁盤存儲單元,于1956年推出。它的容量為3.75兆字節,以500萬個六位字符存儲在直徑為50的24英寸磁盤上。IBM以每月3200美元的價格租用了它。
到1960年代,磁盤存儲終于被廣泛使用。它提供高容量,幾乎隨機的訪問存儲。IBM創建了一系列磁盤操作系統(DOS,DOS-2314,DOS MP,DOS VS,DOS/VSE)以利用該技術。
1961
?
小型計算機大眾計算
數字設備公司(DEC)推出了程序數據處理器1(PDP-1)。售價在$125,000- $ 250,000之間,因為當時任何競爭性系統的起價都是$100萬。此外,它不需要服務員和操作員。現在,更多公司可以負擔得起計算機的費用。
1962?
?
麻省理工學院兼容的分時系統(CTSS)分時
CTSS在具有特殊硬件的IBM 7094上運行。它證明了交互式時間共享系統的價值以及在線共享數據和程序的價值,該系統是Multics操作系統的前身。
1963?
?
Burroughs B5000系統的主控制程序(MCP)虛擬內存和多處理
MCP是第一個用高級語言編寫的操作系統(請注意,這不是便攜式操作系統,它只能在B5000計算機上運行)。運行MCP的B5000系統為用戶提供了:多程序
多處理、虛擬存儲(即系統具有比實際更多的物理內存)、源語言調試功能
1964?
?
IBM System / 360SOME TITLE HERE
IBM對此公司進行投入,它創建了由五臺計算機組成的產品線,全部兼容,為用戶提供了隨著計算需求增長而遷移的途徑。它包括迄今為止為實現向后兼容性而組裝的種類最多的仿真器。重新設計了讀卡器,磁帶驅動器,打印機和存儲設備,以使其更快(例如,System/360 1403型鏈式打印機每分鐘可打印1100行文本)。
該項目的研發費用超過10億美元,公告發布后的六個月內,IBM預訂了System / 360的訂單,其訂單總額是IBM全年總收入的三倍以上。賭注回報很大。
System/360操作系統目標:為整個計算機系列提供一個操作系統。
事實證明,創建一個滿足用戶不同程度復雜程度的系統非常困難,用重型操作系統負擔較小的機器似乎也不公平。由此出現了一系列操作系統:
PCP/360 :順序作業系統
MFT:多個作業系統,固定數量的任務。系統內存分為固定數量的分區,程序被加載到這些分區中,并且處理器在每個分區上需要耗費一些時間
MVT:具有可變數量任務的多重編程。一項新作業要求一個特定大小的分區,獲取該分區,然后運行,然后該分區再次可用。后來成為IBM的MVS系統。此時所有內存引用都是直接內存引用(要求的內存地址就是獲得的地址)。
1966
?
微型計算機變得更便宜,更強大且真正有用廣泛計算
DEC引入了PDP-8,它的成本僅為20,000美元,并被小型企業,大學和高中使用。提供了五個操作系統,這是從1969年數字設備公司的PDP-8系列家庭計算機入門簡介中得到的清單 :
紙帶編程系統—程序和數據的I/O通過紙帶閱讀器手動執行,并打孔。所有編程系統都始于通過紙帶將某些系統和實用程序加載到核心中。
DECtape編程系統—程序和數據的I/O通過DECtape單元執行。
4K磁盤監視器系統— 4K系統程序在具有磁盤輸入和輸出的磁盤監視器的控制下運行。您可以將其用于4K內存系統。DECtape包含超過一百萬個八進制字的存儲。
PS/8編程系統—使用DECtape或磁盤輸入/輸出,在8K執行程序的控制下運行8K系統程序。系統和實用程序包括語言(FOCAL,BASIC,FORTRAN-D,匯編器)和實用程序(用于外圍設備控制的PIP,用于調試的DDT和編輯器)。
TSS/8分時系統—多個用戶在磁盤環境中使用4K系統程序在TSS/8 Monitor的控制下共享計算機。每個用戶都有一個單獨的電傳打字終端。它允許與設備無關的訪問多達15個I / O設備。用戶程序可以為幾種服務調用執行例程,包括加載設備處理程序,為設備分配名稱,創建文件以及對電傳打字機進行線路輸入/輸出。
開啟1970年代
1970年代操作系統具有以下特征:多用戶,多任務處理是至高無上的、動態地址轉換硬件創建操作系統必須處理的虛擬內存。虛擬機現在可以存在、模塊化架構、便攜式設計的出現、個人互動系統
另外還有改變計算的兩個發展:
數據網絡:計算機開始通過數據通信鏈接進行連接。
微處理器:這些將使計算機更小,更便宜,更個性化。在大約20年的時間里,這些將成為技術落后者,重新發現許多年前真正的計算機已經擁有的東西 。到1990年代,他們已成為技術領導者。
1967?
?
鼠標引入了一種新的用戶交互形式,在iPhone和iPad之前占主導地位,此處省略若干字
鼠標是由斯坦福研究所增強研究中心(ARC)的道格拉斯·恩格爾巴特(Douglas Engelbart)創建的 。他和他在ARC的團隊發明了鼠標,位圖顯示,圖形用戶界面概念,電話會議和超文本,這在1968年秋季聯合計算機會議上得到了證明,被稱為 “所有演示之母”,這可以一直追溯到1968年,大概47年以來,我們從未對此進行實質性的更改!
1969?
?
貝爾電話實驗室的UNIX分時系統小型操作系統,工具箱方法
UNIX的第一版在PDP-7上運行,并以匯編語言編寫。它強調了一個小而簡單的內核和一組豐富的實用程序(這些實用程序主要用于處理基于行的基于文本的數據),可以將它們連接在一起以執行各種任務。它結合了Multics的許多想法,例如分層文件系統,多層文件訪問權限,輸入/輸出重定向和管道。
1971?
?
英特爾宣布推出微處理器英特爾4004包含2000個晶體管,每秒執行60,000次操作。這是一臺四位機器,具有與ENIAC一樣高的功率。
1972?
?
IBM推出了VM:虛擬機操作系統虛擬內存和虛擬機
目標:是否可以構建一臺可以在其上同時運行不同操作系統以開發它們,調試它們并評估其性能的機器呢?
開發操作系統非常棘手:需要一臺專用計算機來運行操作系統,由于大型計算機非常昂貴(數百萬美元)并且占用大量空間,因此即使IBM程序員也無法使用一臺。
IBM構建了修改的System/360,它支持地址轉換,地址轉換意味著處理器認為它正在引用一個內存位置,但實際上它被轉換為另一個,所以每個進程都可以獲取自己的地址空間,就像擁有該計算機一樣。
VM是采用模塊化方法構建的:將資源管理和用戶支持分為單獨的組件。控制程序(CP)是VM的一部分,用于創建運行各種操作系統的虛擬機。虛擬機不僅包含虛擬地址空間,還包含虛擬讀取器,磁盤,打孔器,打印機和磁帶驅動器。兩種操作系統都訪問設備或執行特權指令會導致CP中斷,從而將請求的操作映射為物理操作。若使用VM,我們可以:
繼續在舊操作系統上進行生產工作的同時測試新操作系統
運行同一操作系統的多個副本(VM/CMS為每個用戶運行一個CMS副本,一個單用戶系統)。
運行某些任務的專用操作系統
VM最初是一個內部IBM項目,旨在為其工程師提供開發和測試操作系統的能力,但事實證明對VM客戶也很有用。此后直到1990年代,虛擬機幾乎全部消失,但在2000年代再一次復興。
1973
?
UNIX 第 4 版出版便攜式操作系統
這是UNIX的第一個版本,該版本主要使用C編程語言編寫。該系統在PDP-11上運行,并配有編輯器,匯編器,計算器,電子郵件,編譯器和許多實用程序。由于貝爾系統是受監管的壟斷,并且不能從事計算機業務,因此UNIX實際上對大學是免費的(他們必須支付文檔和磁帶),沒有獲得支持,但是可以有來源。UNIX是易于理解和修改的系統。很快將其移植到其他計算機上。
關于UNIX的三件事至關重要:
UNIX主要是用C編寫的,這使得編寫,調試,增強和維護軟件變得更加容易。使用高級語言編寫操作系統的方法是一種相對新穎的方法。操作系統是為特定的機器編寫的,必須高效并且必須訪問機器的各個低級方面。1950年代和1960年代主要編譯的高級語言是FORTRAN和COBOL(LISP也在那里,但已被解釋)。兩者都不適合該任務。以前,Burroughs用Algol版本編寫了B5000的操作系統。MULTICS是UNIX之前的一個大型OS項目,是使用EPL(PL / I的早期版本)編寫的。該語言在很大程度上不適合操作系統,并且編譯器沒有得到優化,以至于“一個簡單的PL / I語句可能會轉換成整個代碼頁面。C是一種簡化的高級語言,非常適合系統編程。盡管效率低下,但并非不合理。
使用高級語言可以更輕松地為不同的計算機體系結構重新編譯操作系統。傳統上,操作系統針對特定的機器體系結構。例如,UNIX的前身MULTICS專為GE–645計算機設計。架構和操作系統齊頭并進。雖然UNIX最初是為PDP-8和PDP-11編寫的,但是操作系統的大部分都是獨立于體系結構并以高級語言編寫的,這意味著將代碼移植到其中并不是一項艱巨的任務。
到1975年(第六版),UNIX才開始分配給大學使用,這使一大批計算機科學專業的學生接觸到源代碼級別的操作系統。這是他們可以使用,修改和完全學習的系統,如此導致了UNIX的進一步增強,大多數來自加州大學伯克利分校,以伯克利軟件發行版(BSD)的形式提供
1973?
?
以太網Robert Metcalfe在Xerox PARC(帕洛阿爾托研究中心)期間發明了以太網。它不是第一個數據網絡,但它已迅速推廣為標準,其數據包交換方法使其價格低廉且具有高度可擴展性,它迅速成為局域網的主導網絡技術。
1973?
?
Xerox Alto視頻顯示,桌面,鼠標,以太網網絡,所見即所得編輯。Alto是Xerox PARC開發的一個項目,盡管在商業上并未取得成功,并且施樂放棄了該項目,但由于它集成了鼠標,以太網網絡,位圖視頻顯示和可拆卸的按鍵,因此在計算機系統的歷史上至關重要,它還在圖形顯示中隱式的引入了桌面交互。
1974
?進入
進入個人計算機時代第一臺個人電腦
大眾電子的封面上有MITS Altair計算機。這款基于8080的機器的套件成本為397美元。它沒有鍵盤,視頻顯示器,磁盤驅動器,磁帶存儲或軟件。大多數系統具有256字節的內存(即bytes,而不是千字節或兆字節)。通過前面板上的開關輸入了說明。
更高型號的Altair 8800b具有一條串行線,可支持視頻終端和打印機。當時,Lear-Siegler ADM-3A是一款具有80x24字符顯示屏的啞視頻終端,售價為995美元/套,1195美元/完整組裝)。如果負擔不起,則可能會得到二手電傳打字機,成千上萬的人購買了這些計算機,雖然不能做很多事情,但是擁有個人電腦在當時是多么讓人羨慕的事情,由此出現很多Homebrew Computer Club,這導致了更多PC和外圍設備制造商的產生以及軟件的創建。
如此強大的市場對英特爾市場產生了極大的打擊,到1975年,英特爾8080處理器的售價為179美元,同一年,英特爾推出了6502處理器,僅售25美元,由于價格低廉,它成為許多個人計算機的首選處理器,包括Commodore PET,The Apple II,Atari等,同樣,1976年Zilog推出了一種更好,更便宜的處理器,該處理器向后兼容Intel 8080指令集-Z80,直到IBM PC,主流個人計算機才會在其中看到Intel處理器。
1974
?比爾
比爾蓋茨和艾倫為Altair編寫BASIC可以在PC上編寫程序,而不必使用匯編語言
1975
?比爾
基于Intel的8位PC的操作系統將BIOS引入英特爾PC架構:數字研究的加里·基爾德爾(Gary Kildall)向世界展示了CP/M(微型計算機控制程序)。它可以在Intel 8080(以及后來的8085和Zilog Z80)計算機上運行。它并不是針對任何特定計算機,而是旨在適用于具有8080系列處理器和軟盤驅動器的任何計算機,它是一個基本的操作系統:簡單的命令解釋器,程序加載器和文件系統管理器,而且一次只運行一個程序。完成后,命令轉移到控制臺命令處理器代碼,提示用戶輸入下一條命令。該操作系統包括:
CCP(Console Command Processor):控制臺命令處理器(命令解釋器)
BDOS(基本磁盤操作系統):程序加載器和軟件,該軟件找出了如何管理和解釋軟盤上的文件系統。
BIOS(Basic I/O System):基本I / O系統(BIOS)。由于每臺計算機都不相同,因此必須自己編寫低級功能(從輸入設備中獲取字符,從軟盤中讀取扇區,寫入扇區,將字符寫入輸出設備,等等)。
該系統還附帶一些程序,例如匯編器,行編輯器和用于復制文件的程序。這是當時用戶希望隨計算機一起提供的那種軟件,CP/M是MS-DOS的直接前身,MS-DOS源自QDOS,即Quick and Dirty操作系統,它本質上是8086處理器(英特爾的第一個16位CPU)的CP/M的反向工程版本。微軟以50,000美元的價格從Seattle Computer Products購買了QDOS。加里·基爾德爾本來可以和IBM PC操作系統簽訂IBM合同,但是最終以失敗而告終。第一臺IBM PC帶有ROM中的BASIC解釋器和匯編器,行編輯器以及用于復制文件的程序。
1976
?比爾
Apple II內置BASIC,它允許以彩色顯示文本和圖形,這是一臺即插即用機器,至今已投入生產十五年。該機器面向個人計算機,所以受眾市場很大。
到1977年,又售出了其他幾款現成的PC:Radio Shack的TRS-80和Commodore Pet。
1977
?比爾
DEC推出了第一臺運行VMS的VAX計算機(VAX 11/780)共享相同指令集和虛擬內存的32位小型計算機系列
VAX 11/780是一臺非常流行的大型微型計算機,并且是最早使用虛擬內存來管理(當時)計算機的巨大32位地址空間的計算機之一(較小的PDP-11系列是16位機)。
就像IBM System/360(但更小,更便宜,并且來自其他公司)一樣,這也成為了一系列計算機。盡管不同模型的大小和功能范圍有所不同,但它們都具有相同的體系結構,VAX(也稱為Vaxen)可以聯網在一起并以對等關系運行(任何計算機都可以是客戶端或服務器)。
盡管VAX很快成為UNIX的流行平臺,但VMS(虛擬內存系統)是DEC發行的VAX操作系統。
VMS旨在利用VAX的體系結構,并結合了 需求分頁功能,該功能使計算機能夠在流程需要時分配和加載內存頁面,并將其映射到該流程的正確內存位置。這樣避免了必須將整個程序預加載到內存中的情況。Securiy是設計的核心要素。它支持特權檢查和帳戶鎖定。VMS支持用于流程調度的32個優先級,并支持實時流程。
1979
?比爾
Visicalc和WordStar誕生個人計算機的第一個殺手級應用程序:可以證明所購買計算機的合法性。
開啟1980年代
驅動個人計算機,但是操作系統是原始的:僅比命令解釋器,程序加載器和設備驅動程序多。即使這樣,程序員也經常違反約定并直接訪問設備。網絡,尤其是在工作站之間的網絡,變得廣泛而快速。通過網絡訪問文件就像在本地訪問文件一樣可行,網絡操作系統變得很有趣。
具有消息傳遞結構的微內核成為熱門話題,但從未真正成為主流操作系統。被設計為微內核的Mach成為Windows NT(和派生產品)以及OS X的基礎,但實際上它太大了,不能被視為微內核體系結構。
進入操作系統的一種關鍵機制是多線程,即一個進程具有多個并發執行線程的能力。最初主要用于網絡服務器,因為一個進程現在可以同時處理許多請求。
用戶界面開始變得重要,窗戶系統得到完善。
1981
?比爾
IBM推出IBM PCIBM PC是基于Intel 8088處理器的開放式計算機(IBM將為您提供原理圖和零件清單)。在銷售的個人計算機中,最受人尊敬的品牌已經不再是業余愛好者的玩具,而是可以成為個人商務使用的機器,大部分人都毫無疑問地購買IBM PC,并且IBM設置了仍然遵循的標準。英特爾和微軟(不是IBM)成為大贏家,因為許多其他公司開始對IBM PC進行復制,但是這些復制仍然需要處理器和操作系統。
第一臺IBM PC具有:16K字節內存(可擴展到256K)、2張軟盤,每個軟盤容納160K字節、2種顯示方式:彩色和單色、Microsoft的PC-DOS。這本質上是一個CP/M復制,比爾·蓋茨同意向IBM提供其操作系統,盡管當時他還沒有任何東西可做。他巧妙而且通過協商出售了操作系統的權利(可能預料到不久的將來將是PC時代)。
1983
?比爾
Microsoft開始在MS-Windows上工作太慢且有故障,用戶堅持使用MS-DOS。
1984
?比爾
Apple Macintosh面世Mac將鼠標和窗口引入了大眾市場,就普通用戶而言,命令行現在已失效,因其友好的用戶界面而受歡迎?;谑髽说狞c擊界面是從Xerox PARC(帕洛阿爾托研究中心)創建的Xerox Star系統中所派生。
1985
?比爾
工作站上的網絡文件系統SUN的NFS允許用戶將其他計算機上的文件系統掛載到自己的計算機上。Apollo的Domain系統將整個機器網絡合并到其文件名空間中。現在,我們可以訪問駐留在其他計算機上的數據,就像訪問計算機上的數據一樣,許多公司開始為企業銷售聯網的個人工作站,最終SUN大獲全勝。
1986
?比爾
MachMach是一個微內核系統,旨在允許在其上仿真各種其他操作系統(例如UNIX的各種變體)。它允許透明地訪問網絡資源,可以利用并行性,并且可以支持較大的地址空間,Mach原理成為Microsoft Windows NT和Apple OS X的理論基礎。
1980年代后期,UNIX顯的有點過時,沒有跟上時代的步伐,然后重新開始認識到過去所建立系統的分布式網絡并使其成為一個統一做出的努力并沒有完全很成功。
目標:構建一個分布式,可伸縮的系統,該系統看起來像一個分時系統,可以支持數千個用戶,數TB的文件和數千兆的內存。計劃9由許多單獨的組件組成:CPU服務器,終端(帶處理),文件服務器和網絡。
貝爾實驗室計劃9從未在商業上獲取吸引力甚至沒有被廣泛采用,盡管它有不錯的想法和主意,但社區用戶并不關心新的操作系統,當提供操作系統和一些程序時,他們不再得到滿足,他們想要運行自己所喜歡的應用程序,向后兼容性很重要。
開啟1990年代
Microsoft Windows 1.0于1985年首次問世,其次是1987年的Windows 2.0。這些本質上只是基于MS-DOS的圖形外殼,MS-DOS是一個單用戶單任務系統。但是,Windows為用戶提供了下拉菜單,屏幕窗口上的滾動條和對話框。Windows 1.0需要一臺至少具有256 KB內存的PC,由于大多數應用程序仍在MS-DOS下運行,因此此發行版并不是很受歡迎。
1990年,Microsoft推出了Windows 3.0,這是Windows的第一個非常流行的版本,盡管許多DOS基礎仍然清晰可見,但性能得到改善,圖標得到了更好的友好展示,并且系統完全支持Intel的新386處理器,386處理器是第一個提供對虛擬內存的支持的Intel處理器,該處理器現在允許Windows對MS-DOS程序的多個實例進行多任務處理,從而為每個程序提供自己的虛擬地址空間,同樣重要的是,Microsoft引入了Windows軟件開發工具包(SDK),該工具包為開發人員提供了用于訪問系統功能(包括圖形)的標準API,從而為該平臺帶來了巨大的應用程序開發浪潮。
1991?
?
GNU/LinuxUNIX雖然獲得了極大的歡迎,但僅限于大學可以免費使用,貝爾系統是受監管的壟斷,不能出售計算機產品。在1984年Bell系統解體之后,AT&T希望涉足計算機業務,并撤銷了UNIX操作系統對大學的免費許可,Minix由Andrew Tanenbaum創建,它是一個類似于Unix的小型操作系統,確實,與過去的UNIX一樣,它僅對大學和研究機構免費提供。
Linux最初是由Linus Torvalds編寫的內核,后來被廣泛的GNU用戶級工具(gcc,make,emacs和其他人們希望在Unix發行版中獲得的其他東西)所補充。它隨著時間的流逝而得到發展,盡管它尚未在PC臺式機(Windows和OS X占主導)中獲得廣泛普及,但它可在許多服務器和嵌入式系統上運行,在后一種類別中,它是Google Android和Chrome OS操作系統,TiVo數字視頻錄像機,各種機頂盒,汽車計算機和工業控制器的基礎。
1992?
?
Windows病毒問世發現了名為WinVir的病毒,被感染的程序將搜索其他可執行文件并編輯這些文件,以在其中插入其自身的副本,然后它將自己從原始文件中刪除,以將該文件恢復到原始狀態。病毒開始肆虐,主要是因為操作系統用戶通常在Windows等系統中以管理權限運行,從而使他們執行的程序可以自由訪問系統中的所有文件。
1993?
?
Windows NTVMS的設計由David Cutler領導,當該項目在1988年被取消時,微軟從VMS團隊聘請了卡特勒(Cutler)和其他大約20名DEC員工,為Windwos開發與UNIX競爭的下一代操作系統,這導致了Windows NT的創建,從許多方面來說,NT是VMS的繼承者,并具有許多共同的術語和概念。
Windows NT也受到Mach微內核體系結構的啟發,NT不是微內核,而是使OS 仿真子系統能夠作為用戶級服務器進程運行。這使它能夠實現與其他操作系統(包括DOS,OS / 2,POSIX(UNIX接口)和16位Windows)的向后兼容性支持。
NT代表新技術,它被設計為更好的Windows,提供聯網,基于每個對象的進程以及文件保護機制,與VMS不同,它幾乎完全是用C編寫的,旨在可在不同的處理器和硬件體系結構之間移植,MS-DOS和Microsoft Windows的早期版本僅針對Intel x86系列處理器編寫,NT引入了硬件抽象層,以提供與底層硬件的抽象接口,該系統完全是32位的,而Windows是在考慮16位體系結構的情況下編寫的。在操作系統的高層,API模塊提供了支持各種系統調用接口的選項,盡管最終僅支持Win32,該系統還可以處理各種可安裝的文件系統模塊
NT可以說是最后一個從頭開始編寫的現代操作系統,Windows的后續每個版本都是基于Windows NT的發展。
1993?
?
瀏覽器Mosaic誕生網絡瀏覽器誕生,Mosaic,Netscape Navigator(1994年)和Internet Explorer(1995年)引入了網絡。Web瀏覽器成為1990年代中期及以后的殺手級應用程序。最初,Web只是一種信息導航工具,但很快就變成為了應用程序和服務交付平臺,其中Web瀏覽器用作駐留在可從Internet訪問的遠程服務器上的服務的用戶界面,若沒有網絡,可以想象將產生怎樣的后果。
瀏覽器當然不是操作系統,但是它使許多人重新審視操作系統在用戶計算中的作用,并想象一個通過Web瀏覽器提供所有服務的世界。
開啟2000年代
移動端的興起,再一次掀起熱潮,誕生了iOS和Android操作系統,對用戶的生活產生了深遠的影響。
2007
?比爾
iOS操作系統多點觸控界面,蘋果的iPhone使多點觸控用戶界面成為主流,用戶交互模型包括一個虛擬鍵盤,并支持輕擊,滑動,捏和松開手勢,以放大和縮小以支持基于手指的直接操作屏幕上的對象,多點觸摸界面的概念可以追溯到1970年代,在1980年代初創建了使用雙指縮放手勢的界面。名為iOS的基礎操作系統派生自OS X,但進行了更改以支持不同的窗口系統,對后臺進程進行了限制以實現更好的應用程序性能和更長的電池壽命,并提供了移動服務(例如推送通知和通知應用程序的功能)或位置發生變化時。
2008
?比爾
Android操作系統Google開發了針對手機的Linux變體,移除了Linux系統及其庫的多余負擔,添加了用于訪問GPS,加速計,電話和手機上其他組件等組件的標準庫,并建立了圖形UI框架。所有應用程序均以Java編寫,并且運行在類似Java的虛擬機(Dalvik)上,這樣可以確保應用程序不依賴于任何特定的處理器平臺。
2009
?比爾
物聯網(IoT)各種電器和設備互相交互,所謂的萬物可互聯。物聯網是凱文·阿什頓(Kevin Ashton)于2009年提出,但是這種想法可以追溯到更早的時候,隨著微控制器變得更小,更便宜,更省電并且無線網絡變得無處不在,很明顯,可以控制所有形式的對象或可以報告其狀態。這包括諸如:燈泡(例如,Philips Hue連接的燈泡)、健身器材(例如Fitbit活動腕帶)、家用警報器,暖氣,空調系統(例如Nest Nest溫控器和Nest Protect煙霧探測器)、熱水爐、、洗衣機,烤箱和其他設備、運輸集裝箱、自動售貨機、數字標牌,從廣告牌到貨架標簽
總結
以上是生活随笔為你收集整理的你需要了解操作系统发展历程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP.NET Core on K8s学
- 下一篇: 开发大会上,前微软CEO放出的狠话!.N