求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。

計算機系統檢視原始碼討論檢視歷史

事實揭露 揭密真相
前往: 導覽搜尋
計算機系統

計算機系統,指用於數據庫管理計算機硬軟件及網絡系統。數據庫系統需要大容量的主存以存放和運行操作系統、數據庫管理系統程序、應用程序以及數據庫、目錄、系統緩衝區等,而輔存則需要大容量的直接存取設備。此外,系統應具有較強的網絡功能。

簡介

按人的要求接收和存儲信息,自動進行數據處理和計算,並輸出結果信息的機器系統。計算機是腦力的延伸和擴充,是近代科學的重大成就之一。

計算機系統由硬件(子)系統和軟件(子)系統組成。前者是藉助電、磁、光、機械等原理構成的各種物理部件的有機組合,是系統賴以工作的實體。後者是各種程序和文件,用於指揮全系統按指定的要求進行工作。[1] 自1946年第一台電子計算機問世以來,計算機技術在元件器件、硬件系統結構、軟件系統、應用等方面,均有驚人進步,現代計算機系統小到微型計算機和個人計算機,大到巨型計算機及其網絡,形態、特性多種多樣,已廣泛用於科學計算、事務處理和過程控制,日益深入社會各個領域,對社會的進步產生深刻影響。

電子計算機分數字和模擬兩類。通常所說的計算機均指數字計算機,其運算處理的數據,是用離散數字量表示的。而模擬計算機運算處理的數據是用連續模擬量表示的。模擬機和數字機相比較,其速度快、與物理設備接口簡單,但精度低、使用困難、穩定性和可靠性差、價格昂貴。故模擬機已趨淘汰,僅在要求響應速度快,但精度低的場合尚有應用。把二者優點巧妙結合而構成的混合型計算機,尚有一定的生命力。[2]

特點

計算機系統的特點是能進行精確、快速的計算和判斷,而且通用性好,使用容易,還能聯成網絡。

①計算:一切複雜的計算,幾乎都可用計算機通過算術運算和邏輯運算來實現。

②判斷:計算機有判別不同情況、選擇作不同處理的能力,故可用於管理、控制、對抗、決策、推理等領域。

③存儲:計算機能存儲巨量信息。

④精確:只要字長足夠,計算精度理論上不受限制。

⑤快速:計算機一次操作所需時間已小到以納秒計。

⑥通用:計算機是可編程的,不同程序可實現不同的應用。

⑦易用:豐富的高性能軟件及智能化的人-機接口,大大方便了使用。

⑧聯網:多個計算機系統能超越地理界限,藉助通信網絡,共享遠程信息與軟件資源。

組成

圖1為計算機系統的層次結構。內核是硬件系統,是進行信息處理的實際物理裝置。最外層是使用計算機的人,即用戶。人與硬件系統之間的接口界面是軟件系統,它大致可分為系統軟件、支援軟件和應用軟件三層。

硬件

硬件系統主要由中央處理器、存儲器、輸入輸出控制系統和各種外部設備組成。中央處理器是對信息進行高速運算處理的主要部件,其處理速度可達每秒幾億次以上操作。存儲器用於存儲程序、數據和文件,常由快速的內存儲器(容量可達數百兆字節,甚至數G字節)和慢速海量外存儲器(容量可達數十G或數百G以上)組成。各種輸入輸出外部設備是人機間的信息轉換器,由輸入-輸出控制系統管理外部設備與主存儲器(中央處理器)之間的信息交換。

軟件

軟件分為系統軟件、支撐軟件和應用軟件。系統軟件由操作系統、實用程序、編譯程序等組成。操作系統實施對各種軟硬件資源的管理控制。實用程序是為方便用戶所設,如文本編輯等。編譯程序的功能是把用戶用匯編語言或某種高級語言所編寫的程序,翻譯成機器可執行的機器語言程序。支撐軟件有接口軟件、工具軟件、環境數據庫等,它能支持用機的環境,提供軟件研製工具。支撐軟件也可認為是系統軟件的一部分。應用軟件是用戶按其需要自行編寫的專用程序,它藉助系統軟件和支援軟件來運行,是軟件系統的最外層。

分類

計算機系統可按系統的功能、性能或體系結構分類。

① 專用機與通用機:早期計算機均針對特定用途而設計,具有專用性質。60年代起,開始製造兼顧科學計算、事務處理和過程控制三方面應用的通用計算機。特別是系列機的出現,標準文本的各種高級程序語言的採用,操作系統的成熟,使一種機型系列選擇不同軟件、硬件配置,就能滿足各行業大小用戶的不同需要,進一步強化了通用性。但特殊用途的專用機仍在發展,例如連續動力學系統的全數字仿真機,超微型的空間專用計算機等。

② 巨型機、大型機、中型機、小型機、微型機:計算機是以大、中型機為主線發展的。20世紀60年代末出現小型計算機,70年代初出現微型計算機,因其輕巧、價廉、功能較強、可靠性高,而得到廣泛應用。70年代開始出現每秒可運算五千萬次以上的巨型計算機,專門用於解決科技、國防、經濟發展中的特大課題。巨、大、中、小、微型機作為計算機系統的梯隊組成部分,各有其用途,都在迅速發展。

③ 流水線處理機與並行處理機:在元件、器件速度有限的條件下,從系統結構與組織着手來實現高速處理能力,成功地研製出這兩種處理機。它們均面向ɑiθbi=ci(i=1,2,3,…,n;θ為算符)這樣一組數據(也叫向量)運算。流水線處理機是單指令數據流(SISD)的,它們用重疊原理,用流水線方式加工向量各元素,具有高加工速率。並行處理機是單指令流多數據流(SIMD)的,它利用並行原理,重複設置多個處理部件,同時並行處理向量各元素來獲得高速度(見並行處理計算機系統)。流水和並行技術還可結合,如重複設置多個流水部件,並行工作,以獲得更高性能。研究並行算法是發揮這類處理機效率的關鍵。在高級程序語言中相應地擴充向量語句,可有效地組織向量運算;或設有向量識別器,自動識別源程序中的向量成分。

一台普通主機(標量機)配一台數組處理器(僅作高速向量運算的流水線專用機),構成主副機系統,可大大提高系統的處理能力,且性能價格比高,應用相當廣泛。

④多處理機與多機系統、分布處理系統和計算機網:多處理機與多機系統是進一步發展並行技術的必由之路,是巨型、大型機主要發展方向。它們是多指令流多數據流(MIMD)系統,各機處理各自的指令流(進程),相互通信,聯合解決大型問題。它們比並行處理機有更高的並行級別,潛力大,靈活性好。用大量廉價微型機,通過互連網絡構成系統,以獲得高性能,是研究多處理機與多機系統的一個方向。多處理機與多機系統要求在更高級別(進程)上研究並行算法,高級程序語言提供並發、同步進程的手段,其操作系統也大為複雜,必須解決多機間多進程的通信、同步、控制等問題。

分布系統是多機系統的發展,它是由物理上分布的多個獨立而又相互作用的單機,協同解決用戶問題的系統,其系統軟件更為複雜(見分布計算機系統)。

現代大型機幾乎都是功能分布的多機系統,除含有高速中央處理器外,有管理輸入輸出的輸入輸出處理機(或前端用戶機)、管理遠程終端及網絡通信的通信控制處理機、全系統維護診斷的維護診斷機和從事數據庫管理的數據庫處理機等。這是分布系統的一種低級形態。

多個地理上分布的計算機系統,通過通信線路和網絡協議,相互聯絡起來,構成計算機網絡。它按地理上分布的遠近,分為局部(本地)計算機網絡和遠程計算機網絡。網絡上各計算機可相互共享信息資源和軟硬件資源。訂票系統、情報資料檢索系統都是計算機網應用的實例。

⑤ 諾依曼機與非諾依曼機:存儲程序和指令驅動的諾依曼機迄今仍占統治地位。它順序執行指令,限制了所解問題本身含有的並行性,影響處理速度的進一步提高。突破這一原理的非諾依曼機,就是從體系結構上來發展並行性,提高系統吞吐量,這方面的研究工作正在進行中。由數據流來驅動的數據流計算機以及按歸約式控制驅動和按需求驅動的高度並行計算機,都是有發展前途的非諾依曼計算機系統。

展望

計算機系統約每3~5年更新一次,性能價格比成十倍地提高,體積大幅度減小。超大規模集成電路技術將繼續快速發展,並對各類計算機系統均產生巨大而又深刻的影響。32位微型機已出現,64位微型機也已經問世,單片上做1000萬個元件已為時不遠。

比半導體集成電路快10~100倍的器件,如砷化鎵、高電子遷移率器件、約瑟夫遜結、光元件等的研究將會有重要成果。提高組裝密度和縮短互連線的微組裝技術是新一代計算機的關鍵技術之一。光纖通信將大量應用。各種高速智能化外部設備不斷湧現,光盤的問世將使輔助海量存儲器面目一新。多處理機系統、多機系統、分布處理系統將是引人注目的系統結構。軟件硬化(稱固件)是發展趨勢。新型非諾伊曼機、推理計算機、知識庫計算機等已開始實際使用。軟件開發將擺脫落後低效狀態。

軟件工程正在深入發展。軟件生產正向工程化、形式化、自動化、模塊化、集成化方向發展。新的高級語言如邏輯型語言、函數型語言和人工智能的研究將使人-機接口簡單自然(能直接看、聽、說、畫)。數據庫技術將大為發展。計算機網絡將廣泛普及。以巨大處理能力(例如每秒 100~1000億次操作)、巨大知識信息庫、高度智能化為特徵的下一代計算機系統正在大力研製。計算機應用將日益廣泛。計算機輔助設計、計算機控制的生產線、智能機器人將大大提高社會勞動生產力。辦公、醫療、通信、教育及家庭生活,都將計算機化。計算機對人們生活和社會組織的影響將日益廣泛深刻。

工作流程

用戶使用計算機系統算題的一般流程:

①通過系統操作員建立帳號,取得使用權。帳號既用於識別並保護用戶的文件(程序和數據),也用於系統自動統計用戶使用資源的情況(記帳,付款)。

②根據要解決的問題,研究算法,選用合適的語言,編寫源程序,同時提供需處理的數據和有關控制信息。

③把②的結果在脫機的專用設備上放入軟磁盤,建立用戶文件(也可在聯機終端上進行,直接在輔助存儲器中建立文件,此時第四步省去)。

④藉助軟盤機把軟盤上用戶文件輸入計算機,經加工處理,作為一個作業,登記並存入輔助存儲器。

⑤是要求編譯。操作系統把該作業調入主存儲器,並調用所選語言的編譯程序,進行編譯和連接(含所調用的子程序),產生機器可執行的目標程序,存入輔助存儲器。

⑥要求運算處理。操作系統把目標程序調入主存儲器,由中央處理器運算處理,結果再存入輔助存儲器。

⑦運算結果由操作系統按用戶要求的格式送外部設備輸出。

計算機內部工作(④~⑦)是在操作系統控制下的一個複雜過程。通常,一台計算機中有多個用戶作業同時輸入,它們由操作系統統一調度,交錯運行。但這種調度對用戶是透明的,一般用戶無需了解其內部細節。

用戶可用一台終端,交互式的控制③~⑦的進行(分時方式);也可委託操作員完成③~⑦,其中④~⑦是計算機自動進行的(批處理方式)。批處理方式的自動化程度高,但用戶不直觀,無中間干預。分時方式用戶直觀控制,可隨時干預糾錯,但自動化程度低。現代計算機系統大多提供兩種方式,由用戶選用。

操作系統

簡介

操作系統是方便用戶、管理和控制計算機軟硬件資源的系統軟件(或程序集合)。 從用戶角度看,操作系統可以看成是對計算機硬件的擴充;從人機交互方式來看,操作系統是用戶與機器的接口;從計算機的系統結構看,操作系統是一種層次、模塊結構的程序集合,屬於有序分層法,是無序模塊的有序層次調用。操作系統在設計方面體現了計算機技術和管理技術的結合。操作系統在計算機中的地位:

操作系統是軟件,而且是系統軟件。它在計算機系統中的作用,大致可以從兩方面體會:

對內,操作系統管理計算機系統的各種資源,擴充硬件的功能;

對外,操作系統提供良好的人機界面,方便用戶使用計算機。它在整個計算機系統中具有承上啟下的地位。

操作系統是一個大型的軟件系統,其功能複雜,體系龐大。從不同的角度看的結果也不同,正是"橫看成嶺側成峰",下面我們通過最典型的兩個角度來分析一下。

1、從程序員的角度看

正如前面所說的,如果沒有操作系統,程序員在開發軟件的時候就必須陷入複雜的硬件實現細節。程序員並不想涉足這個可怕的領域,而且大量的精力花費在這個重複的、沒有創造性的工作上也使得程序員無法集中精力放在更具有創造性的程序設計工作中去。程序員需要的是一種簡單的,高度抽象的可以與之打交道的設備。

將硬件細節與程序員隔離開來,這當然就是操作系統。

從這個角度看,操作系統的作用是為用戶提供一台等價的擴展機器,也稱虛擬機,它比底層硬件更容易編程。

2、從使用者的角度看

從使用者的角度來看,操作系統則用來管理一個複雜系統的各個部分。

操作系統負責在相互競爭的程序之間有序地控制對CPU、內存及其它I/O接口設備的分配。

比如說,假設在一台計算機上運行的三個程序試圖同時在同一台打印機上輸出計算結果。那麼頭幾行可能是程序1的輸出,下幾行是程序2的輸出,然後又是程序3的輸出等等。最終結果將是一團糟。這時,操作系統採用將打印輸出送到磁盤上的緩衝區的方法就可以避免這種混亂。在一個程序結束後,操作系統可以將暫存在磁盤上的文件送到打印機輸出。

從這種角度來看,操作系統則是系統的資源管理者。

發展歷史

下面我們結合計算機的發展歷史來回顧一下操作系統的發展歷程。

1、第一代計算機(1945-1955):真空管和插件板

40年代中期,美國哈佛大學、普林斯頓高等研究院、賓夕法尼亞大學的一些人使用數萬個真空管,構建了世界上第一台電子計算機。開啟計算機發展的歷史。這個時期的機器需要一個小組專門設計、製造、編程、操作、維護每台機器。程序設計使用機器語言,通過插板上的硬連線來控制其基本功能。

這個時候處於計算機發展的最初階段,連程序設計語言都還沒有出現,操作系統更是聞所未聞。

2、第二代計算機(1955-1965):晶體管和批處理系統

這個時期計算機越來越可靠,已從研究院中走出來,走進了商業應用。但這個時期的計算機主要完成各種科學計算,需要專門的操作人員維護,並且需要針對每次的計算任務進行編程。

第二代計算機主要用於科學與工程計算。使用FORTRAN與匯編語言編寫程序。在後期出現了操作系統的雛形:FMS(FORTRAN監控系統)和IBMSYS(IBM為7094機配備的操作系統)。

3、第三代計算機(1965-1980):集成電路芯片和多道程序

60年代初,計算機廠商根據不同的應用分成了兩個計算機系列,一個針對科學計算,一個針對商業應用。

隨着計算機應用的深入,對統一兩種應用的計算機需求出現了。這時IBM公司試圖通過引入System/360來解決這個問題。

與這個計劃配套,IBM公司組織了OS/360操作系統的開發,然後複雜的需求,以及當時軟件工程水平低下使得OS/360的開發工作陷入了歷史以來最可怕的"軟件開發泥潭",誕生了最著名的失敗論著----《神秘的人月》。雖然這個開發計劃失敗了,但是這個願望卻成為了計算機廠商的目標。

此時,MIT、Bell Lab(貝爾實驗室)和通用電氣公司決定開發一種"公用計算機服務系統"----MULTICS,希望其能同時支持數百名分時用戶的一種機器。結果這個計劃的研製難度超出了所有人的預料,最後這個系統也以失敗結束。不過,MULTICS的思想卻為後來的操作系統很多提示。

20世紀60年代未,一位貝爾實驗室曾參加過MULTICS研製工作的計算機科學家Ken Thompson,在一台無人使用的PDP-7機器上開發出了一套簡化的、單用戶版的MULTICS。後來導致了UNIX操作系統的誕生。

UNIX操作系統主導了小型機、工作站以及其他市場。也是至今最有影響力的操作系統之一,而Linux也是UNIX系統的一種衍生,下一講我們將專門介紹一下UNIX的發展歷史。

4、第四代計算機(1980-今):個人計算機

隨着計算機技術的不斷更新與發展,計算機神奇般地闖入了人們的生活,以低廉的價格就可以獲得強大計算能力的計算機。

價格不再是阻攔計算機普及的門檻時,降低計算機的易用性就顯得十分重要!由於UNIX系統的本身特點,使得其不太適合於在運行在個人計算機上,這時就需要一種新的操作系統。

在這一歷史關鍵時候,IBM公司由於低估了PC機的市場,並未使用最大的力量角逐這一市場,這時Intel公司趁機進入,成為了當今微處理器的老大。同時善於抓住時機的微軟公司的總裁比爾·蓋茨適時地進入了這一領域,用購買來的CP/M搖身一變成為MS-DOS,並憑藉其成為個人計算機操作系統領域的霸主。

雖然是蘋果公司在GUI方面先拔頭籌,但由於蘋果公司的不兼容、不開放的市場策略,未能擴大戰果,這時微軟又適時地進入了GUI方面,憑藉WINDOWS系統再次稱雄。

構成

一般來說,操作系統由以下幾個部分組成:

1)進程調度子系統:

進程調度子系統決定哪個進程使用CPU,對進程進行調度、管理。

2)進程間通信子系統:

負責各個進程之間的通信。

3)內存管理子系統:

負責管理計算機內存。

4)設備管理子系統:

負責管理各種計算機外設,主要由設備驅動程序構成。

5)文件子系統:

負責管理磁盤上的各種文件、目錄。

6)網絡子系統:

負責處理各種與網絡有關的東西。

結構設計

操作系統有多種實現方法與設計思路,下面僅選取最有代表性的三種做一簡單的敘述。

一、整體式系統

整體式系統結構設計:

這是最常用的一種組織方式,它常被譽為"大雜燴",也可說,整體式系統結構就是"無結構"。

這種結構方式下,開發人員為了構造最終的目標操作系統程序,首先將一些獨立的過程,或包含過程的文件進行編譯,然後用鏈接程序將它們鏈接成為一個單獨的目標程序。

Linux操作系統就是採用整體式的系統結構設計。但其在此基礎上增加了一些形如動態模塊加載等方法來提高整體的靈活性,彌補整體式系統結構設計的不足。

二、層次式系統

層次式系統結構設計:

這種方式則是對系統進行嚴格的分層,使得整個系統層次分明,等級森嚴!這種系統學術味道較濃!實際完全按照這種結構進行設計的操作系統不多,也沒有廣泛的應用。

可以這麼說,現在的操作系統設計是在整體式系統結構與層次式系統結構設計中尋求平衡。

三、微內核系統

微內核系統結構設計:

微內核系統結構設計是近幾年來出現的一種新的設計理念,最有代表性的操作系統有Mach和QNX。

微內核系統,顧名思義就是系統內核很小。比如說QNX的微內核只負責:進程間的通信、低層的網絡通信、進程調度、第一級中斷處理。

橫向比較

計算機歷史中出現了許許多多的操作系統,然後大浪淘沙,無情地淘汰了許多,只留下一些經歷過市場考驗的:

一、桌面操作系統

1)MSDOS:Intelx86系列的PC機上的最早的操作系統,微軟公司產品,曾經統治了這個領域,現在已逐漸被自家兄弟WINDOWS系列所代替,現在除了一些低檔機外已不多見。

2)Windows:微軟公司產品,從Windows 1.0發展而來,現在是基於Intel x86系列的PC機上的主要操作系統,也是現然個人電腦中裝機量最大的操作系統。面向桌面、面向個人用戶。

3)Mac OS:蘋果公司所有,界面友好,性能優異,但由於只能運行在蘋果公司自己的電腦上而發展有限。但由於蘋果電腦獨特的市場定位,現在仍存活良好。

4)linux:Linux是一種計算機操作系統和它的內核的名字,它也是自由軟件和開放源代碼發展中最著名的例子。

嚴格來講,Linux這個詞本身只表示Linux內核,但在實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU 工程各種工具和數據庫的操作系統(也被稱為GNU/Linux)。基於這些組件的Linux軟件被稱為Linux發行版。一般來講,一個Linux發行套件包含大量的軟件,比如軟件開發工具,數據庫,Web服務器(例如Apache),X Window,桌面環境(比如GNOME和KDE),辦公套件等等。

二、服務器操作系統

1)UNIX系列:UNIX可以說是源遠流長,是一個真正穩健、實用、強大的操作系統,但是由於眾多廠商在其基礎上開發了有自己特色的UNIX版本,所以影響了整體。在國外,UNIX系統可謂獨樹一幟,廣泛應用於科研、學校、金融等關鍵領域。但由於中國的計算機發展較為落後,UNIX系統的應用水平與國外相比有一定的滯後。

2)Windows NT系列:微軟公司產品,其利用Windows的友好的用戶界面的優勢打進服務器操作系統市場。但其在整體性能、效率、穩定性上都與UNIX有一定差距,所以現在主要應用於中小企業市場。

3)Novell Netware系列:Novell公司產品,其以極適合於中小網絡而著稱,在中國的證券行業市場占有率極高,而且其產品特點鮮明,仍然是服務器系統軟件中的長青樹。

4)LINUX系列: Linux是一種自由和開放源碼的類Unix操作系統。目前存在着許多不同的Linux,但它們都使用了Linux內核。Linux可安裝在各種計算機硬件設備中,從手機、平板電腦、路由器和視頻遊戲控制台,到台式計算機、大型機和超級計算機。Linux是一個領先的操作系統,世界上運算最快的10台超級計算機運行的都是Linux操作系統。嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU 工程各種工具和數據庫的操作系統。Linux得名於計算機業餘愛好者Linus Torvalds。

弗林分類法

弗林(Flynn)分類法是按指令流、數據流及其多倍性分類的。共分四類:

SISD――指令部件只對一條指令處理,只控制一個操作部件操作。如一般的串行單處理機。

SIMD――由單一指令部件同時控制多個重複設置的處理單元,執行同一指令下不同

數據的操作。如陣列處理機。

MISD――多個指令部件對同一數據的各個處理階段進行操作。這種機器很少見。

MIMD――多個獨立或相對獨立的處理機分別執行各自的程序、作業或進程。例如多

處理機。

參考來源