N計算機操作系統教程第一章_第1頁
N計算機操作系統教程第一章_第2頁
N計算機操作系統教程第一章_第3頁
N計算機操作系統教程第一章_第4頁
N計算機操作系統教程第一章_第5頁
已閱讀5頁,還剩49頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

計算機操作系統教程---------Linux實例分析程驊信息科學與工程學院第1章操作系統概述操作系統的主要功能2操作系統的類型4操作系統的發展歷程33操作系統的概念31Linux概述6操作系統的特征35

1.1操作系統概念計算機系統軟硬件資源的管理者為用戶提供一臺等價的擴展機器(ExtendedMachine)或虛擬機(VirtualMachine)最重要、最基本、最復雜的系統程序,控制應用程序執行的程序操作系統的定義:計算機操作系統是指控制和管理計算機的軟、硬件資源,合理組織計算機的工作流程,方便用戶使用程序集合,它合理地組織多道程序運行,是用戶與計算機之間的接口。

操作系統概念計算機的硬件和軟件以及應用之間是一種層次結構的關系。裸機在最里層,它的外面是操作系統,經過操作系統提供的資源管理功能和方便用戶的各種服務功能把裸機改造成為功能更強、使用更為方便的機器,通常稱之為虛擬機或擴展機,而各種實用程序和應用程序運行在操作系統之上,它們以操作系統作為支撐環境,同時又向用戶提供完成其作業所需的各種服務。應用軟件軟件操作系統裸機編輯軟件/編譯軟件等計算機系統計算機系統軟件硬件及固件應用軟件系統軟件Textinhere操作系統編輯軟件編譯軟件硬件:改進的VonNeuman機的五大部件

(輸/出設備、運算器、控制器、存貯器)軟件:系統軟件:管理計算機本身的操作,并為應用程序提供編程環境應用軟件:直接面向用戶,為之解決各類問題方便性(用戶的觀點):引入操作系統是為了給用戶使用計算機提供一個良好的界面,以使用戶無需了解許多有關硬件和系統軟件的細節,就能方便靈活地使用計算機。有效性(系統管理人員的觀點):引入操作系統是為了合理地組織計算機工作流程,管理和分配計算機系統硬件及軟件資源,使之能為多個用戶高效率地共享。因此,操作系統是計算機資源的管理者。可擴充性(升級的觀點):引入操作系統是為了給計算機系統的功能擴展提供支撐平臺,使之在追加新的服務和功能時更加容易和不影響原有的服務與功能。開放性(兼容的觀點)引入操作系統的目標(1)處理機管理(2)存儲器管理(3)設備管理(4)文件管理(5)用戶接口1.2操作系統的功能1212操作級接口程序級接口命令界面圖形界面系統調用我們從資源管理和作業管理等不同角度來說明操作系統的基本功能。在多道程序或多用戶的情況下,要組織多個作業同時運行,就要解決對處理機分配調度策略、分配實施和資源回收等問題。這就是處理機管理功能。正是由于操作系統對處理機管理策略的不同,其提供的作業處理方式也就不同,例如成批處理方式、分時處理方式和實時處理方式。從而呈現在用戶面前,成為具有不同性質功能的操作系統。1.2.1處理機管理存儲管理的主要工作是對內部存儲器進行分配、保護和擴充。(1)內存分配。如何分配內存,以保證系統及各用戶程序的存儲區互不沖突。(2)存儲保護。保證一道程序在執行過程中不會有意或無意地破壞另一道程序,保證用戶程序不會破壞系統程序。(3)內存擴充。當用戶作業所需要的內存量超過計算機系統所提供的內存容量時,把內部存儲器和外部存儲器結合起來管理,為用戶提供一個容量比實際內存大得多的虛擬存儲器。1.2.2存儲管理(1)通道、控制器、輸入輸出設備的分配和管理。設備管理的任務就是根據一定的分配策略,把通道、控制器和輸入輸出設備分配給請求輸入輸出操作的程序,并啟動設備完成實際的輸入輸出操作。為了盡可能發揮設備和主機的并行工作能力,常需要采用虛擬技術和緩沖技術。(2)設備獨立性。輸入輸出設備種類很多,使用方法各不相同。設備管理應為用戶提供一個良好的界面,而不必去涉及具體的設備特性,以使用戶能方便、靈活地使用這些設備。1.2.3設備管理上述三種管理是針對計算機的硬件資源的管理。文件系統管理(信息管理)是對系統的軟件資源的管理。文件如不能很好管理,就會引起混亂,甚至遭受破壞。這就是管理信息文件需要解決的問題。信息的共享、保密和保護,也是文件系統所要解決的。如果系統允許多個用戶協同工作,那么就應該允許用戶共享信息文件。但這種共享應該是受控制的,應該有授權和保密機制。還要有一定的保護機制以免文件被非授權用戶調用和修改,即使在意外情況下,如系統失效、用戶對文件使用不當,也能盡量保護信息免遭破壞。也就是說,系統是安全可靠的。1.2.4文件系統管理作業是指用戶在一次算題過程中或一次事物處理過程中,要求計算機系統所做工作的集合。作業管理實現作業調度和控制作業的執行。作業管理是根據系統條件和用戶需要,對作業的運作進行合理的組織、調度及相應的控制,主要功能如下:作業的組織與管理:其主要功能是對系統中所有的用戶作業進行統一的組織和管理,以提高整個系統的運行效率。作業調度:是指根據系統的能力和當前作業的運行情況,按照一定策略,為后備作業隊列中的一批作業,分配所需I/O設備和存儲空間,并調入內存并為之建立相應的進程,使成為具有獲得處理機資格的候選進程。作業控制:是指用戶對系統發出指令,可對自己的作業進行控制和管理。1.2.5作業管理操作系統提供兩種方式的接口來為用戶服務。一種用戶接口是程序一級的接口,即提供一組廣義指令(或稱系統調用、程序請求)供用戶程序和其他系統程序調用。當這些程序要求進行數據傳輸、文件操作或有其他資源要求時,通過這些廣義指令向操作系統提出申請,并由操作系統代為完成。另一種接口是作業一級的接口,提供一組控制操作命令(或稱作業控制語言,或像UNIX中的Shell命令語言)供用戶去組織和控制自己作業的運行。作業控制方式分兩大類:脫機控制和聯機控制。操作系統提供脫機控制作業語言和聯機控制作業控制語言。用戶接口1.3操作系統的發展多道程序系統:內存同時存在多個獨立的程序,它們宏觀上并行,微觀上穿行。手工操作階段早期批處理階段多道程序系統階段1.4操作系統的類型操作系統發展是隨著計算機硬件技術、應用軟件的發展而發展的。目標:充分利用硬件,提供更好的服務。第一代:手工操作(電子管時代,無操作系統)、第二代:單道批處理系統(晶體管時代,批處理系統)第三代:多道批處理系統(集成電路時代,多道程序設計)第四代:分時系統(大規模和超大規模集成電路時代)新發展:個人計算機、實時系統、網絡與分布式系統、移動計算、……第一代:手工操作

(無操作系統)

上機完全是手工操作:先把程序紙帶(或卡片)裝上輸入機,然后啟動輸入機把程序和數據送入計算機,接著通過控制臺開關啟動程序運行。計算完畢,打印機輸出計算結果,用戶取走并卸下紙帶(或卡片)。50年代后期,計算機的運行速度有了很大提高,手工操作的慢速度和計算機的高速度之間形成矛盾。唯一的解決辦法是擺脫人的手工操作,實現作業的自動過渡。這樣就出現了批處理。機器的特點語言:機器語言操作系統:無用途:數學計算輸入輸出:插件板、 紙帶、卡片存在問題:計算機處理能力的提高,手工操作的低效率,造成浪費。第二代:單道批處理系統1955~1965大型機,語言:匯編語言,FORTRAN,作業(job)操作系統:FMS(FortranMonitorSystem),IBSYS(IBM為7094機配備的操作系統)用途:較復雜的科學工程計算聯機批處理脫機批處理IBM7094聯機批處理

慢速的輸入輸出(I/O)設備是和主機直接相連。作業的執行過程為:(1)用戶提交作業:作業程序、數據,用作業控制語言編寫的作業說明書;(2)作業被作成穿孔紙帶或卡片;(3)操作員有選擇地把若干作業合成一批,通過輸入設備(紙帶輸入機或讀卡機)把它們存入磁帶;(4)監督程序讀入一個作業(若系統資源能滿足該要求);(5)從磁帶調入匯編程序或編譯程序,將用戶作業源程序翻譯成目標代碼;(6)連接裝配程序把編譯后的目標代碼及所需的子程序裝配成一個可執行程序;(7)啟動執行;(8)執行完畢,由善后處理程序輸出計算結果;(9)再讀入一個作業,重復(5)—(9)各步;(10)一批作業完成,返回到(3),處理下一批作業。這種聯機批處理方式解決了作業自動轉接,從而減少作業建立和人工操作時間。但是在作業的輸入和執行結果的輸出過程中,主機CPU仍處在停止等待狀態,這樣慢速的輸入輸出設備和快速主機之間仍處于串行工作,CPU的時間仍有很大的浪費。聯機批處理

這種方式的顯著特征是增加一臺不與主機直接相連而專門用于與輸入輸出設備打交道的衛星機。如圖1.2所示。衛星機的功能是:(1)輸入設備通過它把作業輸入到輸入磁帶;(2)輸出磁帶將作業執行結果輸出到輸出設備。這樣,主機不是直接與慢速的輸入輸出設備打交道,而是與速度相對較快的磁帶機發生關系。主機與衛星機可以并行工作,二者分工明確,以充分發揮主機的高速度計算能力。因此脫機批處理和早期聯機批處理相比大大提高了系統的處理能力。脫機批處理圖1.2早期脫機批處理模型

批處理出現于20世紀50年代末到60年代初。它的出現促使了軟件的發展。再有重要的是監督程序,它管理作業的運行——負責裝入和運行各種系統處理程序,如匯編程序、編譯程序、連接裝配程序、程序庫(如輸入輸出標準程序等);完成作業的自動過渡,同時也出現程序覆蓋等程序設計技術。批處理仍有些缺點:磁帶需人工拆裝,既麻煩又易出錯;而另一個更重要的問題是系統的保護。監督程序管理下的解題過程:監督程序管理下的解題過程

在進行批處理過程中,監督程序、系統程序和用戶程序之間存在著一種調用關系,任何一個環節出問題,整個系統都會停頓;用戶程序也可能會破壞監督程序和系統程序,這時,只有操作員進行干預才能恢復。20世紀60年代初期,硬件獲得了兩方面(即通道和中斷技術)的進展,導致操作系統進入執行系統階段。

通道是一種專用處理部件,它能控制一臺或多臺輸入輸出設備工作,負責輸入輸出設備與主存之間的信息傳輸。它一旦被啟動就能獨立于CPU運行,這樣可使CPU和通道并行操作,而且CPU和多種輸入輸出設備也能并行操作。中斷是指當主機接到外部信號(如輸入輸出設備完成信號)時,馬上停止原來工作,轉去處理這一事件,處理完畢后,主機回到原來的斷點繼續工作。

借助于通道、中斷技術和輸入輸出可在主機控制下完成批處理。這時,原來的監督程序的功能擴大了,它不僅要負責作業運行的自動調度,而且還要提供輸入輸出控制功能。這個發展了的監督程序常駐內存稱為執行系統。

執行系統實現的也是輸入輸出聯機操作,和早期批處理系統不同的是:輸入輸出工作是由在主機控制下的通道完成的。主機和通道、主機和輸入輸出設備都可以并行操作。用戶程序的輸入輸出工作都是由系統執行而沒有人工干預,由系統檢查其命令的合法性,以避免不合法的輸入輸出命令造成對系統的影響,從而提高系統的安全性。此時,除了輸入輸出中斷外,其他中斷如算術溢出和非法操作碼中斷等可以克服錯誤停機,而時鐘中斷可以解決用戶程序中出現的死循環等。

許多成功的批處理系統在20世紀50年代末和60年代初出現,典型的操作系統是FMS(FortranMonitorSystem)即FORTRAN監督系統和IBM/7094機上的IBM操作系統IBSYS。執行系統實現了主機、通道和輸入輸出設備的并行操作,提高了系統效率,方便用戶對輸入輸出設備的使用。但是,這時計算機系統運行的特征是單道順序地處理作業,即用戶作業仍然是一道一道作業順序處理。那么可能會出現兩種情況:

對于以計算為主的作業,輸入輸出量少,外圍設備空閑;然而對于以輸入輸出為主的作業,又會造成主機空閑。這樣總的來說,計算機資源使用效率仍然不高。因此操作系統進入了多道程序階段:多道程序合理搭配交替運行,充分利用資源,提高效率。通道和中斷技術單道批處理系統:優點:同一批內各作業自動依次更替,改善了主機CPU和I/O設備的使用效率,提高了吞吐量。主要問題:CPU和I/O設備使用忙閑不均,取決于作業特性。計算為主的作業,外設空閑;I/O為主的作業,CPU空閑;通道和中斷技術通道:用于控制I/O設備與內存間的數據傳輸。啟動后可獨立于CPU運行,實現CPU與I/O的并行。中斷:指CPU在收到外部中斷信號后,停止原來工作,轉去處理該中斷事件,完畢后回到原來斷點繼續工作。第三代:多道批處理操作系統-

現代操作系統雛型運行一個作業的步驟:將程序寫在紙上(用高級語言或匯編語言)穿孔成卡片,再將卡片盒交給操作員計算結果從打印機上輸出操作員到打印機上撕下運算結果送到輸出室程序員稍后可從輸出室取到結果操作員從輸入室的卡片盒中讀入另一個任務如果需要FORTRAN編譯器,還要把它取來讀入計算機缺點:機時在走來走去時浪費掉上述批處理系統,每次只調用一個用戶作業程序進入內存并運行,稱為單道運行。單道程序工作示例多道程序系統多道程序工作示例多道程序系統

在單處理機系統中,多道程序運行的特點是:(1)多道:計算機內存中同時存放幾道相互獨立的程序。(2)宏觀上并行:同時進入系統的幾道程序都處于運行過程中,即它們先后開始了各自的運行,但都未運行完畢。(3)微觀上串行:實際上,各道程序輪流使用CPU,交替執行。優點:資源利用率高、系統吞吐量大、系統切換開銷小缺點:無交互能力、作業平均周轉時間較長

在批處理系統中采用多道程序設計技術,就形成了多道批處理系統。要處理的許多作業存放在外部存儲器中,形成作業隊列,等待運行。當需要調入作業時,將由操作系統中的作業調度程序對外存中的一批作業,根據其對資源的要求和一定的調度原則,調幾個作業進入內存,讓它們交替運行。當某個作業完成,然后再調入一個或幾個作業。這種處理方式,在內存中總是同時存在幾道程序,系統資源得到比較充分的利用。并行運行的程序要共享計算機系統的硬件和軟件資源,既有對資源的競爭,但又須相互同步。因此同步與互斥機制成為操作系統設計中的重要問題。隨著多道程序的增加,出現了內存不夠用的問題,提高內存的使用效率也成為關鍵。因此出現了諸如覆蓋技術、對換技術和虛擬存儲技術等內存管理技術。由于多道程序存在于內存,為了保證系統程序存儲區和各用戶程序存儲區的安全可靠,提出了內存保護的要求。

多道程序系統的出現標志著在操作系統漸趨成熟的階段先后出現了作業調度管理、處理機管理、存儲器管理、外部設備管理、文件系統管理等功能。

多道程序系統要解決的問題

同步就是你叫我去吃飯,我聽到了就和你去吃飯;如果沒有聽到,你就不停的叫,直到我告訴你聽到了,才一起去吃飯。

異步就是你叫我,然后自己去吃飯,我得到消息后可能立即走,也可能等到下班才去吃飯。同步:提交請求->等待服務器處理->處理完畢返回這個期間客戶端瀏覽器不能干任何事

異步:

請求通過事件觸發->服務器處理(這是瀏覽器仍然可以作其他事情)->處理完畢

去吃拉面,點了一份,拉面師傅拉了一份,然后客人吃掉了,這叫同步。拉面師傅不管有沒有人點,反正不停的一份一份的拉,客人隨到隨吃,這叫異步。Example兩個程序:A程序按順序使用CPU10秒,使用設備甲5秒,使用CPU5秒,使用設備乙10秒,最后使用CPU10秒。B程序順序使用設備甲10秒,使用CPU10秒,使用設備乙5秒,使用CPU5秒,使用設備乙10秒。計算(不計程序切換時間):(1)順序環境下執行A程序和B程序,CPU的利用率是多少?(2)多道程序環境下,CPU的利用率是多少?程序A和程序B順序執行時,程序A執行完畢,程序B才開始執行。兩個程序共耗時80秒,其中占用CPU時間為40秒。故順序執行時CPU利用率為50%。多道程序環境下,兩個程序并發的執行,如圖所示。可以看出兩個程序共耗時45秒,其中占用CPU時間為40秒。故此時CPU利用率為40/45=88.89%。特性優點:資源利用率高(CPU、內存、I/O);作業吞吐量大缺點:用戶交互性差;作業平均周轉時間長

根據環境和作業處理方式,操作系統的基本類型有:(1)單用戶操作系統(Personalcomputeroperatingsystem)(2)批處理操作系統(Batchprocessingoperatingsystem)(3)分時操作系統(Timesharingoperatingsystem)(4)實時操作系統(Realtimeoperatingsystem)(5)通用操作系統(Generaloperatingsystem)(6)網絡操作系統(Networkoperatingsystem)(7)分布式操作系統(Distributedoperatingsystem)1.4操作系統的基本類型1.4操作系統的類型1.4.2批處理系統作業:是用戶定義的、由計算機完成的工作單位。

用戶將作業成批的交給計算機系統,系統則自動地選擇作業運行。

批處理系統的特征

多道:計算機內存同時駐留多個用戶的作業,互不干擾。

成批:計算機系統可同時接納多個用戶的作業。脫機工作:用戶不需與計算機進行交流。1.4.1單用戶操作系統第四代分時系統70年代中期至今,Time-SharingSystem多個用戶分享使用同一臺計算機。多個程序分時共享硬件和軟件資源。通常按時間片(TimeSlice)分配:各個程序在CPU上執行的輪換時間。操作系統:CTSS(M.I.T.)Multics(computercommunity)批處理方式下,用戶以脫機操作方式使用計算機,只有等該批作業處理結束,用戶才能得到計算結果。根據結果再作下一步處理。它的好處是計算機效率高。不過,用戶十分留戀手工操作階段的聯機工作方式,獨占計算機,并直接控制程序運行。但獨占計算機方式會造成資源效率低。既能保證計算機效率,又能方便用戶使用,成為一種新的追求目標。

20世紀60年代中期,計算機技術和軟件技術的發展使這種追求成為可能。由于CPU速度不斷提高和采用分時技術,一臺計算機可同時連接多個用戶終端,而每個用戶可在自己的終端上聯機使用計算機,好像自己獨占機器一樣。分時操作系統

所謂分時技術,就是把處理機的運行時間分成很短的時間片,按時間片輪流把處理機分配給各聯機作業使用。若某個作業在分配給它的時間片內不能完成其計算,則該作業暫時中斷,把處理機讓給另一作業使用,等待下一輪時再繼續其運行。由于計算機速度很快,作業運行輪轉得很快,給每個用戶的印象是好像他獨占了一臺計算機。而每個用戶可以通過自己終端向系統發出各種操作控制命令,完成作業的運行。

多用戶分時操作系統是當今計算機操作系統中最普遍使用的一類操作系統。分時操作系統特性同時性:也稱為多路性。若干用戶同時與一臺計算機相連,宏觀上看各個用戶在同時使用計算機,他們是并行的;微觀上看各個用戶在輪流使用計算機。交互性:用戶通過終端設備(如鍵盤、鼠標)向系統發出請求,并根據系統的響應結果再向系統發出請求,直至得到滿意的結果。獨立性:每個用戶使用各自的終端與系統交互,彼此獨立、互不干擾。及時性:指用戶向系統發出請求后,應該在較短的時間內得到響應。響應時間:指從用戶發出命令到系統給予反應所經歷的時間。分時系統分時系統的特征同時性:若干用戶可同時上機使用計算機系統。

交互性:用戶能方便地與系統進行人—機對話。及時性:用戶能在很短時間內得到系統的響應。

一臺計算機可同時為多個終端用戶服務,每個用戶通過自己使用的終端采用人機對話的方式控制自己的程序運行,而系統則將處理機分成時間片為每個終端用戶服務。獨立性:每個用戶各自獨立的工作。

1.4操作系統的類型

20世紀60年代中期計算機進入第三代,計算機的性能和可靠性有了很大提高,造價亦大幅度下降,導致計算機應用越來越廣泛。計算機由于用于工業過程控制、軍事實時控制等形成了各種實時處理系統。針對實時處理的實時操作系統是以在允許時間范圍之內做出響應為特征的。它要求計算機對于外來信息能以足夠快的速度進行處理,并在被控對象允許時間范圍內作出快速響應,其響應時間要求在秒級、毫秒級甚至微秒級或更小。近年來,實時操作系統正得到越來越廣泛的應用。特別是非PC機和PDA(個人數字助理)等新設備的出現,更加強了這一趨勢。實時操作系統實時系統

對外來信息以足夠快的速度予以響應的高可靠的系統.

實時系統的用途

實時數據處理

實時工業控制多道批處理系統和分時系統的不斷改進、實時系統的出現及其應用日益廣泛,致使操作系統日益完善。在此基礎上,出現了通用操作系統。它可以同時兼有多道批處理、分時、實時處理的功能,或其中兩種以上的功能。例如,將實時處理和批處理相結合構成實時批處理系統。在這樣的系統中,它首先保證優先處理任務,插空進行批作業處理。通常把實時任務稱為前臺作業,批作業稱為后臺作業。將批處理和分時處理相結合可構成分時批處理系統。在保證分時用戶的前提下,沒有分時用戶時可進行批量作業的處理。同樣,分時用戶和批處理作業可按前后臺方式處理。通用操作系統20世紀60年代中期開始,國際上開始研制大型通用操作系統。這些系統在解決其可靠性、可維護性、可理解性和開放性等方面都遇到很大的困難。相比之下UNIX

操作系統卻是一個例外。這是一個通用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論