資源管理技術(shù)課件_第1頁
資源管理技術(shù)課件_第2頁
資源管理技術(shù)課件_第3頁
資源管理技術(shù)課件_第4頁
資源管理技術(shù)課件_第5頁
已閱讀5頁,還剩103頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第一部分:操作系統(tǒng)基本概念計算機(jī)系統(tǒng)=計算機(jī)硬件+計算機(jī)軟件計算機(jī)硬件是構(gòu)成計算機(jī)系統(tǒng)的物理部件和設(shè)備的總稱。硬件的核心是主機(jī);主機(jī)的核心是CPU。計算機(jī)軟件是構(gòu)成計算機(jī)系統(tǒng)的邏輯部件及文檔資料的總稱。軟件的核心是系統(tǒng)軟件;系統(tǒng)軟件的核心是操作系統(tǒng)。1第一部分:操作系統(tǒng)基本概念計算機(jī)系統(tǒng)=計算機(jī)硬件+計1.操作系統(tǒng)的概念OperatingSystem(1)定義:操作系統(tǒng)是控制和管理計算機(jī)硬件和軟件資源、合理組織計算機(jī)工作流程、方便用戶使用計算機(jī)并提高計算機(jī)響應(yīng)速度而設(shè)計的一套程序的集合。資源角度:是計算機(jī)資源管理系統(tǒng),負(fù)責(zé)計算機(jī)系統(tǒng)的全部資源的分配、控制、調(diào)度和回收用戶角度:操作系統(tǒng)是計算機(jī)與用戶之間的接口進(jìn)程角度:是動態(tài)、合理地組織計算機(jī)工作流程的軟件。評價(地位和作用):操作系統(tǒng)是直接與硬件相鄰的第一層軟件,是其他軟件運(yùn)行的基礎(chǔ),是系統(tǒng)軟件中最基本、最核心的部分。21.操作系統(tǒng)的概念OperatingSystem2(2)操作系統(tǒng)的兩大基本職能面向計算機(jī):管理和操控全部計算機(jī)資源(CPU、設(shè)備、存儲器、文件);提高系統(tǒng)效率。面向用戶:提供人機(jī)界面;提供便捷的操作環(huán)境。

3(2)操作系統(tǒng)的兩大基本職能面向計算機(jī):3計算機(jī)資源

計算機(jī)資源硬件設(shè)備

文件

數(shù)據(jù)庫

應(yīng)用程序

內(nèi)存單元其他用戶

遠(yuǎn)程用戶4計算機(jī)資源計算機(jī)硬件設(shè)備文件數(shù)據(jù)庫

命令翻譯

結(jié)果

計算機(jī)識別機(jī)器語言,人識別高級語言;語言編譯器充當(dāng)人機(jī)之間的“翻譯”。操作系統(tǒng)人機(jī)接口5操作人機(jī)接口5(3)操作系統(tǒng)的五大功能

操作系統(tǒng)功能文件管理進(jìn)程管理存儲器管理作業(yè)管理設(shè)備管理6(3)操作系統(tǒng)的五大功能操作系統(tǒng)功能文件管理進(jìn)程管理存2.操作系統(tǒng)的發(fā)展OS是伴隨計算機(jī)技術(shù)的發(fā)展而發(fā)展的。其發(fā)展大致經(jīng)歷了四個階段。早期階段,從20世紀(jì)40年代末到50年代中期——無操作系統(tǒng)幾乎無外部設(shè)備,軟件只用機(jī)器語言,無操作系統(tǒng)。手工操作、系統(tǒng)資源利用率低第2階段,50年代中期——第1代操作系統(tǒng)把“零散的單一程序處理”變?yōu)椤凹械某膳绦蛱幚怼钡奶幚矸绞?。“批處理”操作系統(tǒng)(監(jiān)管程序)由此而產(chǎn)生.程序員和操作員分工,第3階段——第2代操作系統(tǒng)通道技術(shù)、緩沖技術(shù)、多道處理技術(shù)、中斷技術(shù)等。由此產(chǎn)生了第二代操作系統(tǒng)。CPU利用率低的矛盾更加激化。現(xiàn)有處理技術(shù)和手段已不適應(yīng)應(yīng)用的實(shí)時處理需求第4階段——第3代操作系統(tǒng)多用戶操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、多媒體技術(shù)、“客戶機(jī)/服務(wù)器”模式

72.操作系統(tǒng)的發(fā)展OS是伴隨計算機(jī)技術(shù)的發(fā)展而發(fā)展的。其幾種相關(guān)技術(shù)多道處理

一個CPU同時處理多個程序;同時將多個程序裝入內(nèi)存、并同時運(yùn)行的機(jī)制;大大提高了CPU的利用率;通道技術(shù)

將I/O處理從CPU的控制下獨(dú)立出來的一套處理機(jī)制,也稱為“I/O處理機(jī)”;CPU不再直接控制I/O設(shè)備,而是通過通道去控制,從而實(shí)現(xiàn)了CPU和I/O設(shè)備之間的并行工作,緩解了CPU和I/O速度不匹配的矛盾;中斷技術(shù)

在程序運(yùn)行中,出現(xiàn)了某種緊急事件,必須暫時中止現(xiàn)行程序,轉(zhuǎn)去處理此事件,然后再恢復(fù)中斷程序的運(yùn)行技術(shù)。8幾種相關(guān)技術(shù)多道處理一個CPU同時處理多個程序;同時將多3.操作系統(tǒng)的分類1.按處理器特點(diǎn)分分時OS采用分配時間片的方法,一個CPU可為多個用戶服務(wù)。實(shí)時OS在較短時間內(nèi)即響應(yīng)用戶要求并完成處理的OS。2.按適用面分專用OS為特定應(yīng)用目的或特定機(jī)器環(huán)境而配備的OS。通用OS為通用計算機(jī)系統(tǒng)配備的OS。3.按用戶數(shù)量分單用戶OS只能服務(wù)于單個用戶的OS;如MS-DOS。多用戶OS能為多個用戶服務(wù)的OS;如UNIX、WINDOWSNT。4.按任務(wù)處理方式分交互式OS能為用戶提供交互式操作支持的OS。批處理式OS以批處理方式處理用戶作業(yè)的OS。5.按硬件環(huán)境和控制方式分集中式OS指駐留在一臺計算機(jī)上或管理一臺計算機(jī)的OS。分布式OS用于管理分布式計算機(jī)的OS。93.操作系統(tǒng)的分類1.按處理器特點(diǎn)分94.常用、主流OS簡介MS-DOSUNIXWINDOWS104.常用、主流OS簡介MS-DOS10MS-DOSMS-DOS16位機(jī)、基于字符(命令行)方式的OS交互式、字符界面、批處理、單用戶、集中式MS-DOS操作系統(tǒng)的特點(diǎn):系統(tǒng)簡單,層次性強(qiáng)I/O重定位,如dir>a.txt管道操作;把一個命令或程序的輸出送到另一個命令或程序中去并依次形成一個連續(xù)的處理過程.樹形文件目錄系統(tǒng).dir|more最早的版本DOS1.0,在1981年8月發(fā)布;它由4000行匯編代碼組成,運(yùn)行于8K內(nèi)存中,使用Intel8086微處理器。以后,隨著Intel不斷推出功能越來越強(qiáng)大的CPU以及PC領(lǐng)域各種新技術(shù)的發(fā)展,Microsoft不斷推出新的DOS版本,直到7.0。但DOS并不能充分發(fā)揮一些新的CPU的強(qiáng)大功能。11MS-DOSMS-DOS16位機(jī)、基于字符(命令行)方式的UNIX

UNIX:交互式的分時操作系統(tǒng),中、小型機(jī)的工業(yè)標(biāo)準(zhǔn)化的OS。

1969年美國AT&T公司的BELL實(shí)驗(yàn)室在PDP-7小型機(jī)上開發(fā)出UNIX(匯編語言版本);

1973年推出UNIX第5版(C語言版本);因此,而獲美國計算機(jī)界最高獎—ACM圖靈獎;1992年據(jù)美國Infocorp公司調(diào)查,裝UNIX的機(jī)器占全世界計算機(jī)市場的36%;

在美國,90%的大學(xué)使用UNIX,這些大學(xué)的計算機(jī)系均開設(shè)UNIX操作系統(tǒng)的課程;UNIX已成為通用的、交互式的、多用戶、多任務(wù)應(yīng)用領(lǐng)域中小型機(jī)的主流操作系統(tǒng)之一。Linux是UNIX的一個版本。紅旗Linux是中國產(chǎn)權(quán)的OS。12UNIXUNIX:交互式的分時操作系統(tǒng),中、小型機(jī)的工業(yè)UNIX操作系統(tǒng)特點(diǎn)⑴多用戶、多任務(wù)、交互式、分時⑵功能強(qiáng)、但規(guī)模?。ㄕ麄€系統(tǒng)一萬行代碼)⑶靈活性(系統(tǒng)的90%用C編寫,便于維護(hù)、具有可擴(kuò)充性、可移植性)⑷所有文件是沒有內(nèi)部結(jié)構(gòu)的字符行序列,外部設(shè)備、目錄和普通文件同樣處理、對待。(普通文件、目錄文件、特殊文件)⑸樹狀文件結(jié)構(gòu)⑹模塊性好,適應(yīng)性強(qiáng)⑺為用戶提供了功能完備、使用方便的命令程序語言Shell,且系統(tǒng)具有完備的網(wǎng)絡(luò)功能。⑻可移植性好⑼系統(tǒng)安全(滿足C2級安全標(biāo)準(zhǔn),自主訪問控制、對象重用、辨別與驗(yàn)證、審計)13UNIX操作系統(tǒng)特點(diǎn)⑴多用戶、多任務(wù)、交互式、分時13WINDOWSWINDOWS32位以上高檔微機(jī)的、單用戶、多任務(wù)、基于圖形界面的主流OS

1983年11月,MICROSOFT公司推出WINDOWS1.0操作環(huán)境;1992年,幾經(jīng)改版,推出WINDOWS3.1(還不是一個獨(dú)立的OS);1993年推出WINDOWSNT,網(wǎng)絡(luò)版操作系統(tǒng);1995年推出WINDOWS’95。1998年推出WINDOWS’98。14WINDOWSWINDOWS32位以上高檔微機(jī)的、單用戶、WINDOWS的特點(diǎn)1、一致性的用戶界面(圖形界面、窗口、菜單、控件操作方式)2、多任務(wù)操作3、功能強(qiáng)大的、先進(jìn)的內(nèi)存管理4、支持動態(tài)數(shù)據(jù)交換(DDE)和動態(tài)連接庫(DLL)5、設(shè)備無關(guān)性。對外部設(shè)備的管理都是通過設(shè)備驅(qū)動程序來實(shí)現(xiàn)的。更換設(shè)備只需安裝相應(yīng)的設(shè)備驅(qū)動程序即可。支持鼠標(biāo)操作。6、支持網(wǎng)絡(luò)功能和多媒體技術(shù)(內(nèi)置TCP/IP協(xié)議、Windows網(wǎng)絡(luò)登錄等功能,使各種資源可在網(wǎng)上共享)。7、支持GBK大字符集(2萬多漢字字符)及多種字庫。8、系統(tǒng)龐大、開銷大,啟動、關(guān)機(jī)慢。

15WINDOWS的特點(diǎn)1、一致性的用戶界面(圖形界面、窗口、菜三種操作系統(tǒng)的比較

操作系統(tǒng)多生產(chǎn)硬件要求多用戶

多任務(wù)市場用戶

編程界面

網(wǎng)絡(luò)

安全性廠商支持支持

界面功能MS-DOSMSPC機(jī)及否否PC機(jī)字符靜態(tài)差一般IBM兼容機(jī)界面類庫WindowsMSPC機(jī)及否是PC機(jī)字符界靜態(tài)類庫兼容機(jī)面及圖多種API強(qiáng)較強(qiáng)形界面VXD編程接口UNIXIMB各種機(jī)器是是小型機(jī)字符界靜態(tài)類庫HP工作站面及圖多種API很強(qiáng)很強(qiáng)Sun等服務(wù)器形界面共同點(diǎn):程序執(zhí)行、資源分配、I/O操作、文件系統(tǒng)管理、出錯檢測、中斷處理、統(tǒng)計、保護(hù)等。16三種操作系統(tǒng)的比較操作系統(tǒng)多生產(chǎn)硬件要求多第二部分:進(jìn)程管理教學(xué)內(nèi)容:

進(jìn)程、程序的關(guān)系和區(qū)別

進(jìn)程的類型、性質(zhì)和狀態(tài)進(jìn)程調(diào)度的策略和常用算法靜、動態(tài)優(yōu)先數(shù)法、輪轉(zhuǎn)法進(jìn)程的控制與管理——進(jìn)程控制塊PCB

17第二部分:進(jìn)程管理教學(xué)內(nèi)容:17一、基本概念包括:程序單道程序、多道程序、順序程序、并發(fā)程序順序程序與并發(fā)程序的特征進(jìn)程進(jìn)程的特征、性質(zhì)、狀態(tài)及轉(zhuǎn)換、線程18一、基本概念包括:181.程序的有關(guān)概念程序(Program)

是為解決某個問題用計算機(jī)語言或命令設(shè)計、編寫的一系列指令的有序集合。程序的順序執(zhí)行

一個程序通常分為若干個具有一定獨(dú)立性的程序段,這些程序段是按邏輯步驟編排的,只有當(dāng)當(dāng)前程序段執(zhí)行完成后,才將控制權(quán)轉(zhuǎn)交到下一個程序段并執(zhí)行下一個程序段。191.程序的有關(guān)概念程序(Program)19單道程序處理及特性一次只處理一個程序。該程序獨(dú)享系統(tǒng)資源。單個程序的特性:

順序性操作按程序規(guī)定的順序執(zhí)行。封閉性程序在執(zhí)行過程中獨(dú)享系統(tǒng)資源,不受外界因素的干擾和影響??稍佻F(xiàn)性只要初始條件相同,無論以何種方式、速度、重復(fù)執(zhí)行多少次,結(jié)果是相同的。20單道程序處理及特性一次只處理一個程序。該程序獨(dú)享系統(tǒng)資源。多道程序處理及特性同時將多個程序裝入內(nèi)存,并同時處理它們,整個系統(tǒng)資源為多個程序共享。由于多道程序具有并發(fā)的特點(diǎn),在任一時刻,系統(tǒng)內(nèi)部(內(nèi)存)同時運(yùn)行著多個程序;受系統(tǒng)資源的制約,每個程序處理過程的行為是不確定的(系統(tǒng)內(nèi)部狀態(tài)因此而不同)。例如,第Ii個程序的Ci,這次是在時刻Ti開始的,那么,下一次運(yùn)行同樣的程序組時,第Ii個程序的Ci就不一定是在Ti時刻開始。集體活動,過程和結(jié)果不受個體完全控制21多道程序處理及特性同時將多個程序裝入內(nèi)存,并同時處理它們,整

程序并發(fā)執(zhí)行舉例設(shè)有三個程序,它們的執(zhí)行步驟和順序相同,都是Ii(輸入)、Ci(計算)、Pi(輸出)。當(dāng)?shù)?個程序的輸入操作I1執(zhí)行完、執(zhí)行C1時,輸入機(jī)空閑,這時候可以執(zhí)行第2個程序的輸入操作I2;在時間上,操作C1和I2是重疊的。當(dāng)C1執(zhí)行完、執(zhí)行P1時,處理機(jī)空閑,若這時I2已完成,就可以執(zhí)行C2,與此同時,輸入機(jī)又空閑,可以執(zhí)行第3個程序的I3。這樣一來,在時間上,P1、C2和I3是重疊操作的。22程序并發(fā)執(zhí)行舉例設(shè)有三個程序,它們的執(zhí)行步驟和順序相同,都

程序并發(fā)執(zhí)行舉例示意圖程序1:I1C1P1程序2:I2C2P2程序3:I3C3P3

從示意圖中可以看出,C1和I2、P1、C2和I3、P2和C3在時間上都是重疊操作的。Tt1t3t2輸入計算輸出23程序并發(fā)執(zhí)行舉例示意圖程序1:I1C1單道和多道程序處理的區(qū)別在單道程序處理環(huán)境下,各邏輯步驟之間的關(guān)系是確定的、不受外界影響而改變的。在多道程序處理環(huán)境下,并發(fā)處理機(jī)制中必然存在著直接或間接的相互依賴和相互制約的關(guān)系,從而使被處理的多道程序失去了程序固有的特性:封閉性、可再現(xiàn)性。

24單道和多道程序處理的區(qū)別在單道程序處理環(huán)境下,各邏輯步驟之間程序并發(fā)處理特征程序與執(zhí)行過程不再一一對應(yīng)在并發(fā)執(zhí)行時,一個共享程序可為多個用戶作業(yè)調(diào)度,而使程序處于多個執(zhí)行中,從而形成了多個“計算”。程序并發(fā)執(zhí)行時的相互制約例如,Ii,Ci和Pi分別共享同一個輸入機(jī)、處理機(jī)和打印機(jī),因此,一旦C2占用處理機(jī),在它未完成之前,C3就無法啟動。由此可見,程序并發(fā)執(zhí)行時是相互制約的,將導(dǎo)致并發(fā)程序具有“執(zhí)行——暫?!獔?zhí)行”這樣的活動規(guī)律。失去了程序的封閉性若A和B為兩個程序,共享數(shù)據(jù)段,由于程序A和程序B都是以各自獨(dú)立的速度運(yùn)行,則因速度不同而結(jié)果不同。所以并發(fā)執(zhí)行程序失去了順序程序的封閉性。如何表示并發(fā)程序的特性?25程序并發(fā)處理特征程序與執(zhí)行過程不再一一對應(yīng)252.進(jìn)程及有關(guān)概念(1)進(jìn)程(Process)就是程序的一次執(zhí)行過程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個獨(dú)立單位。“進(jìn)程”這個概念是1966年美國麻省理工學(xué)院的J.H.Sallexer提出的。進(jìn)程管理也被稱為處理機(jī)管理。處理機(jī)是計算機(jī)系統(tǒng)中的重要資源,所以它管理的好壞在很大程度上直接影響系統(tǒng)的效率。處理機(jī)管理又分兩個部分:作業(yè)管理和進(jìn)程管理。進(jìn)程管理是由程序管理進(jìn)化而來,是和程序管理密不可分的。作業(yè)用戶在一次計算過程中,或者一次事務(wù)處理過程中,要求計算機(jī)系統(tǒng)所做工作的總稱262.進(jìn)程及有關(guān)概念(1)進(jìn)程(Process)就是程序的進(jìn)程的不同定義由于并發(fā)活動的復(fù)雜性,不同學(xué)者研究和討論的側(cè)重點(diǎn)不同,對進(jìn)程的定義也不盡相同。幾種不同的定義為:進(jìn)程是可以和別的計算并發(fā)執(zhí)行的計算;進(jìn)程是程序的一次執(zhí)行,亦即進(jìn)程是在給定內(nèi)存區(qū)域中的一組指令序列的執(zhí)行過程;所謂進(jìn)程,就是一個程序在給定活動空間和初始環(huán)境下,在一個處理機(jī)上的執(zhí)行過程;進(jìn)程是程序在一個數(shù)據(jù)集合上運(yùn)行的過程,是系統(tǒng)資源分配和調(diào)度的一個獨(dú)立單位。27進(jìn)程的不同定義由于并發(fā)活動的復(fù)雜性,不同學(xué)者研究和討論的側(cè)重(2)進(jìn)程的特征進(jìn)程具有兩個重要特征:(a)動態(tài)性:表現(xiàn)在它由“創(chuàng)建”而產(chǎn)生,由“調(diào)度”而執(zhí)行,因得不到資源而“暫停”執(zhí)行,最后由“撤消”而消亡。進(jìn)程有自己的生命周期。(b)并發(fā)性:在系統(tǒng)中可以同時存在幾個進(jìn)程。在單CPU系統(tǒng)中,任何時刻只有一個進(jìn)程占用CPU,其它進(jìn)程處于等待狀態(tài)。進(jìn)程有著走走停停的活動規(guī)律。引入進(jìn)程的目的是為了程序的并發(fā)執(zhí)行,以提高資源的利用率。進(jìn)程與程序的區(qū)別:進(jìn)程描述程序的動態(tài)行為,程序是指令和數(shù)據(jù)的靜態(tài)集合。進(jìn)程是程序的運(yùn)行活動,當(dāng)程序沒運(yùn)行時,有程序存在,而無進(jìn)程存在。一個程序可以有多個進(jìn)程,一個進(jìn)程也可以對應(yīng)多個程序(調(diào)用、順序執(zhí)行)28(2)進(jìn)程的特征進(jìn)程具有兩個重要特征:28(3)進(jìn)程的性質(zhì)動態(tài)性描述程序在執(zhí)行過程中的全部活動;并發(fā)性O(shè)S同時接受和處理多個進(jìn)程;異步性不同進(jìn)程在邏輯上相互獨(dú)立,有各的運(yùn)行“軌跡”;制約性由于計算機(jī)資源是有限的,不同進(jìn)程共享CPU和I/O通道及設(shè)備,因此相互制約。

29(3)進(jìn)程的性質(zhì)動態(tài)性描述程序在執(zhí)行過程中的全部活動;(4)進(jìn)程的狀態(tài)進(jìn)程在其存在的過程中,它們的狀態(tài)是不斷發(fā)生變化的。一般來說,進(jìn)程有三種基本狀態(tài):就緒狀態(tài)、運(yùn)行狀態(tài)、等待狀態(tài)。就緒狀態(tài)

已經(jīng)獲得投入運(yùn)行所必需的一切資源,一旦分配到CPU,就可以立即執(zhí)行。這是一種邏輯上可運(yùn)行狀態(tài)(“萬事俱備,只欠東風(fēng)”)。運(yùn)行狀態(tài)進(jìn)程獲得了CPU及其它一切所需資源,正在CPU上運(yùn)行著。(春風(fēng)得意之時)等待狀態(tài)

由于資源得不到滿足,進(jìn)程運(yùn)行受阻,處于暫停狀態(tài),等待資源分配后,再投入運(yùn)行。(青黃不接,門庭冷落)30(4)進(jìn)程的狀態(tài)進(jìn)程在其存在的過程中,它們的狀態(tài)是不斷發(fā)生變進(jìn)程狀態(tài)轉(zhuǎn)換示意圖

運(yùn)行狀態(tài)等待狀態(tài)

就緒狀態(tài)

進(jìn)程調(diào)度

資源得不到滿足等待資源CPU時間用完獲得資源

進(jìn)程調(diào)度程序

來自作業(yè)調(diào)度

交作業(yè)管理進(jìn)程在整個生存周期中,由進(jìn)程調(diào)動程序控制,在這三種狀態(tài)之間進(jìn)行轉(zhuǎn)換。31進(jìn)程狀態(tài)轉(zhuǎn)換示意圖運(yùn)行狀態(tài)等待狀態(tài)就緒狀態(tài)(4)線程(Thread)的概念線程是一個程序內(nèi)部的順序控制流(獨(dú)立執(zhí)行的流)。但線程并不是程序,它自己并不能運(yùn)行,必須在程序中才能運(yùn)行。多線程是指在單個程序內(nèi)部可以在同一時刻運(yùn)行多個不同的線程、執(zhí)行不同的任務(wù)。多線程的程序,指單個程序內(nèi)部在同一時刻也可以進(jìn)行多種運(yùn)行處理。在現(xiàn)代操作系統(tǒng)中,線程是系統(tǒng)中能調(diào)度的最小實(shí)體。如網(wǎng)絡(luò)螞蟻、Cuteftp32(4)線程(Thread)的概念線程是一個程序內(nèi)部的順序控制關(guān)于線程的進(jìn)一步解釋線程是進(jìn)程中的一個實(shí)體,是系統(tǒng)獨(dú)立調(diào)度和分派的基本單位線程自己不擁有系統(tǒng)資源,只擁有一點(diǎn)在進(jìn)行中必不可少的資源(程序計數(shù)器、寄存器、棧),但可以和其他線程共享進(jìn)程的全部資源。線程是獨(dú)立調(diào)度和分派的基本單位,進(jìn)程是擁有資源的基本單位線程切換不會引起進(jìn)程切換進(jìn)程的切換開銷大于線程的切換開銷。33關(guān)于線程的進(jìn)一步解釋線程是進(jìn)程中的一個實(shí)體,是系統(tǒng)獨(dú)立調(diào)度和3.進(jìn)程管理進(jìn)程管理的核心是:進(jìn)程的控制和調(diào)度。進(jìn)程自投入運(yùn)行時起,即交由進(jìn)程調(diào)度程序管理。343.進(jìn)程管理進(jìn)程管理的核心是:34(1)進(jìn)程控制進(jìn)程控制的職責(zé)是對系統(tǒng)中全部進(jìn)程實(shí)行有效的管理;它應(yīng)該具有創(chuàng)建新進(jìn)程、撤消已結(jié)束進(jìn)程的能力。35(1)進(jìn)程控制進(jìn)程控制的職責(zé)是對系統(tǒng)中全部進(jìn)程實(shí)行有效的管理(2)進(jìn)程的組成進(jìn)程是程序在一個數(shù)據(jù)集合上的運(yùn)行過程,它由三部分組成:

程序

它主要用于描述進(jìn)程所要完成的功能。

數(shù)據(jù)集合

它包括程序執(zhí)行時所需要的數(shù)據(jù)和工作區(qū)。

進(jìn)程控制塊(PCB——ProcessControlBlock)

它記錄進(jìn)程控制信息,是進(jìn)程動態(tài)特性的反映。36(2)進(jìn)程的組成進(jìn)程是程序在一個數(shù)據(jù)集合上的運(yùn)行過程,它由三(3)進(jìn)程控制塊——PCB進(jìn)程控制塊PCB是進(jìn)程的唯一標(biāo)識。當(dāng)創(chuàng)建一個新進(jìn)程時,系統(tǒng)就建立一個PCB;它記錄和描述該進(jìn)程的運(yùn)行變化過程及參數(shù)變化。實(shí)際上,系統(tǒng)是通過PCB對進(jìn)程進(jìn)行實(shí)際控制和管理的。PCB中包括:

進(jìn)程標(biāo)識符進(jìn)程唯一的代號

進(jìn)程現(xiàn)行狀態(tài)記錄進(jìn)程當(dāng)前狀態(tài)

中斷現(xiàn)場保護(hù)區(qū)記錄中斷現(xiàn)場信息,以備恢復(fù)用

進(jìn)程使用資源表記錄進(jìn)程使用的資源信息

進(jìn)程優(yōu)先級標(biāo)明該進(jìn)程要求CPU的迫切程度

進(jìn)程家族信息記錄該進(jìn)程家族史信息。37(3)進(jìn)程控制塊——PCB進(jìn)程控制塊PCB是進(jìn)程的唯一標(biāo)識。(4)進(jìn)程控制塊PCB的組織形式通過進(jìn)程控制塊對進(jìn)程進(jìn)行管理進(jìn)程控制塊PCB是定長記錄(類似與DOS中的文件目錄表FDT和UNIX中的i索引結(jié)點(diǎn)表),采用兩種組織方式。

線性表結(jié)構(gòu)PCB組織形式鏈表結(jié)構(gòu)38(4)進(jìn)程控制塊PCB的組織形式通過進(jìn)程控制塊對進(jìn)PCB線性表結(jié)構(gòu)

PCB1PCB2PCB3PCB4???PCBiPCBi+1PCBi+2

就緒表

等待表

就緒表起始地址等待表起始地址39PCB線性表結(jié)構(gòu)PCB1PCB2PCB3PCB4?PCBiPPCB鏈表結(jié)構(gòu)三個隊(duì)列(三個線性表)

運(yùn)行隊(duì)列

就緒隊(duì)列

等待隊(duì)列PCBr隊(duì)頭指針PCBsPCBs+1PCBs+2PCBtPCBt+1PCBt+240PCB鏈表結(jié)構(gòu)三個隊(duì)列(三個線性表)運(yùn)行隊(duì)列就緒隊(duì)列等4.進(jìn)程調(diào)度的任務(wù)及功能(1)進(jìn)程調(diào)度任務(wù)(確定誰、何時使用CPU)按一定的算法,動態(tài)地將處理機(jī)分配給就緒隊(duì)列中的某個進(jìn)程,使之執(zhí)行。(2)進(jìn)程調(diào)度功能記錄系統(tǒng)中所有進(jìn)程的狀態(tài)、優(yōu)先數(shù)和所用資源的情況。(記錄進(jìn)程信息)當(dāng)CPU空閑時,按一定的算法將CPU分配給某一進(jìn)程、并確定CPU時間片的長度。(確定運(yùn)行進(jìn)程)動態(tài)地調(diào)度進(jìn)程、修改進(jìn)程的狀態(tài)、以及修改相應(yīng)的排隊(duì)隊(duì)列。(修改進(jìn)程狀態(tài))414.進(jìn)程調(diào)度的任務(wù)及功能(1)進(jìn)程調(diào)度任務(wù)(確定誰、何時(3)進(jìn)程調(diào)度方式剝奪方式

當(dāng)“重要“或”系統(tǒng)“的進(jìn)程出現(xiàn)時,便暫停正在執(zhí)行的進(jìn)程,立即將CPU分配給“重要”或”系統(tǒng)“的進(jìn)程。非剝奪方式

讓正在執(zhí)行的進(jìn)程繼續(xù)執(zhí)行,直到該進(jìn)程完成或發(fā)生其它事件,而改變?yōu)槠渌鼱顟B(tài)后,才移交CPU控制權(quán)。42(3)進(jìn)程調(diào)度方式剝奪方式當(dāng)“重要“或”系統(tǒng)“的進(jìn)程出現(xiàn)(4)進(jìn)程調(diào)度算法進(jìn)程調(diào)度算法的考慮因素有:

1、盡量提高資源利用率,較少CPU空閑時間;2、對一般作業(yè)采用較合理的平均響應(yīng)時間;3、應(yīng)避免有的作業(yè)長期得不到響應(yīng)的情況。常用的算法:優(yōu)先數(shù)法、時間片輪流法、分級調(diào)度法優(yōu)先數(shù)法是把CPU分配給具有最高優(yōu)先數(shù)的進(jìn)程;首要問題是如何確定進(jìn)程的優(yōu)先數(shù)?(簡記為:優(yōu)先數(shù)法)確定進(jìn)程的優(yōu)先數(shù):概括起來不外乎是基于“靜態(tài)特性”和“動態(tài)特性”兩種方法。43(4)進(jìn)程調(diào)度算法進(jìn)程調(diào)度算法的考慮因素有:43靜態(tài)與動態(tài)優(yōu)先數(shù)法靜態(tài)優(yōu)先數(shù)法

進(jìn)程優(yōu)先數(shù)是在系統(tǒng)創(chuàng)建進(jìn)程時確定的,一經(jīng)確定,在進(jìn)程運(yùn)行期間就不再改變。動態(tài)優(yōu)先數(shù)法

進(jìn)程優(yōu)先數(shù)在進(jìn)程運(yùn)行中,隨進(jìn)程特性的變化不斷修改進(jìn)程的優(yōu)先數(shù),實(shí)現(xiàn)更精確的調(diào)度。44靜態(tài)與動態(tài)優(yōu)先數(shù)法靜態(tài)優(yōu)先數(shù)法44確定靜態(tài)特性的三個標(biāo)準(zhǔn)根據(jù)進(jìn)程的類型確定

?系統(tǒng)進(jìn)程優(yōu)于用戶進(jìn)程?I/O忙的進(jìn)程優(yōu)于CPU忙的進(jìn)程?在分時系統(tǒng)中,前臺進(jìn)程優(yōu)于后臺進(jìn)程根據(jù)作業(yè)需要的資源確定?短作業(yè)優(yōu)先的原則?資源占用越大、優(yōu)先數(shù)越低的原則根據(jù)作業(yè)到達(dá)的時間確定?先到先服務(wù)方法(FCFS)45確定靜態(tài)特性的三個標(biāo)準(zhǔn)根據(jù)進(jìn)程的類型確定45改變動態(tài)優(yōu)先數(shù)的規(guī)則?線性方式規(guī)則

就緒隊(duì)列進(jìn)程的優(yōu)先數(shù)以a的速度增加,正在執(zhí)行的進(jìn)程優(yōu)先數(shù)以b的速率改變,通過選擇a、b值形成各種算法。?非線性方式規(guī)則(一)在進(jìn)程進(jìn)入系統(tǒng)后的前一階段,其優(yōu)先數(shù)不變,或隨時間線性減少。當(dāng)該進(jìn)程的等待時間達(dá)到某一給定的最大值時,其優(yōu)先數(shù)又突然躍變到某一最高值,從而使該進(jìn)程能很快地投入運(yùn)行。?非線性方式規(guī)則(二)與短作業(yè)優(yōu)先的算法結(jié)合起來,既可使短作業(yè)優(yōu)先運(yùn)行,又可以保證長作業(yè)在等待了一個最大的給定時間后,也能得到運(yùn)行的機(jī)會。

46改變動態(tài)優(yōu)先數(shù)的規(guī)則?線性方式規(guī)則就緒隊(duì)列進(jìn)程的優(yōu)先數(shù)以DOS的進(jìn)程管理

DOS是單用戶、單任務(wù)OS,因此進(jìn)程管理任務(wù)非常簡單;進(jìn)程獨(dú)享系統(tǒng)資源,不需要復(fù)雜的調(diào)度管理和調(diào)度算法。47DOS的進(jìn)程管理47UNIX的進(jìn)程管理

UNIX是多用戶、多任務(wù)的OS。為了更好的實(shí)現(xiàn)管理,它將進(jìn)程的狀態(tài)細(xì)分為六種。運(yùn)行狀態(tài)1暫停狀態(tài)運(yùn)行狀態(tài)2終止?fàn)顟B(tài)睡眠狀態(tài)高優(yōu)先低優(yōu)先等待狀態(tài)喚醒就緒狀態(tài)選中落選撤消掛起置運(yùn)行跟蹤48UNIX的進(jìn)程管理UNIX是多用戶、多任WINDOWS’98的進(jìn)程管理單用戶、搶占式、多任務(wù)、多進(jìn)程、多線程Win98OS中使用了進(jìn)程和線程相結(jié)合的設(shè)計技術(shù)。每個進(jìn)程至少包括一個線程,在執(zhí)行時給每個線程分配時間片。Win98是多任務(wù)OS,采用搶占式的多任務(wù)調(diào)度算法來實(shí)現(xiàn)多任務(wù)操作。任務(wù)調(diào)度程序?qū)⑻幚頇C(jī)分配給等待隊(duì)列中優(yōu)先級最高的線程。

在Win98有兩種調(diào)度程序:主調(diào)度程序和時間片調(diào)度程序;前者選擇最高優(yōu)先級的線程運(yùn)行(優(yōu)先級為0~31);后者依據(jù)線程的處理順序及虛擬機(jī)的當(dāng)前狀態(tài),分配一個時間片給被選線程,并執(zhí)行。49WINDOWS’98的進(jìn)程管理單用戶、搶占式、多任務(wù)、多進(jìn)程5.用戶接口概念:負(fù)責(zé)操作系統(tǒng)和用戶之間進(jìn)行雙向通信的部分被稱為用戶接口(UserInterface),也稱用戶界面。類型:用戶通過OS使用計算機(jī)是通過兩種類型用戶接口:編程接口(程序級)和命令接口(作業(yè)控制級)。用戶接口實(shí)際上是通過菜單、屏幕設(shè)計、鍵盤命令、鼠標(biāo)操作、命令語言和幫助系統(tǒng)等實(shí)現(xiàn)的。用戶接口應(yīng)具有如下特性:信息在屏幕上的位置一致命令的語法一致不同的應(yīng)用程序中類似操作的執(zhí)行過程相似命令名字、縮略語的設(shè)計一致錯誤信息、糾錯指示的語法表示形式一致表格、屏幕顯示中標(biāo)題和域的設(shè)計一致不同功能的會話風(fēng)格一致術(shù)語與用戶現(xiàn)有的行業(yè)用語一致

505.用戶接口概念:負(fù)責(zé)操作系統(tǒng)和用戶之間進(jìn)行雙向通信的部分被UNIX用戶接口UNIX傳統(tǒng)用戶界面是基于文本的命令行界面,即shell。Shell即可方便的編程操作,又可以聯(lián)機(jī)作為交互命令使用。UNIX還為用戶提供圖形界面,主要是XWindows系統(tǒng),它被開發(fā)成為UNIX平臺的標(biāo)準(zhǔn)GUI。X不實(shí)現(xiàn)用戶接口,它只實(shí)現(xiàn)一個窗口系統(tǒng).一般情況下,向用戶顯示一個統(tǒng)一的接口、圖形和基于字符的接口形式不應(yīng)在同一個系統(tǒng)中混用。

51UNIX用戶接口UNIX傳統(tǒng)用戶界面是基于文本的命令行界面,DOS用戶接口DOS操作系統(tǒng)基本上都是字符界面接口。采用菜單、窗口等圖形仿真實(shí)現(xiàn)圖形界面,不支持鼠標(biāo)操作。52DOS用戶接口DOS操作系統(tǒng)基本上都是字符界面接口。采用菜單Windows用戶接口現(xiàn)行的Windows界面是基于GUI的用戶接口,已經(jīng)成為一種開放化系統(tǒng)的用戶接口。Windows的圖形輸出是由圖形設(shè)備接口GUI來完成的。GUI是系統(tǒng)原始的圖形輸出庫,它用于在屏幕上輸出像素、在打印機(jī)上輸出硬拷貝以及繪制Windows用戶界面。53Windows用戶接口現(xiàn)行的Windows界面是基于GUI的程序員接口程序員與計算機(jī)進(jìn)行交互對話的接口稱為程序員接口API(ApplicationProgramInterface)。API實(shí)質(zhì)是一個程序內(nèi)的一套函數(shù)調(diào)用,是程序員可用的編程接口,用于創(chuàng)建其他程序。API為程序員或計算機(jī)用戶提供了使用計算機(jī)時低層次、高效率的服務(wù)接口。API旨在管理運(yùn)行程序,在程序與系統(tǒng)資源及系統(tǒng)服務(wù)之間實(shí)現(xiàn)交互作用。這種作用通常采用若干系統(tǒng)調(diào)用組成,用戶可以在程序中直接或間接地使用這些調(diào)用。采用低級語言(匯編語言)編程可以直接使用這些調(diào)用,采用高級語言編程則采用程序調(diào)用方式,通過解釋或者編譯程序?qū)⑵浞g成有關(guān)的系統(tǒng)調(diào)用,完成各種功能和服務(wù)。這一類接口被稱為編程接口。Dos中斷、UNIXshell、WindowsAPI

54程序員接口程序員與計算機(jī)進(jìn)行交互對話的接口稱為程序員接口AP第一部分:操作系統(tǒng)基本概念計算機(jī)系統(tǒng)=計算機(jī)硬件+計算機(jī)軟件計算機(jī)硬件是構(gòu)成計算機(jī)系統(tǒng)的物理部件和設(shè)備的總稱。硬件的核心是主機(jī);主機(jī)的核心是CPU。計算機(jī)軟件是構(gòu)成計算機(jī)系統(tǒng)的邏輯部件及文檔資料的總稱。軟件的核心是系統(tǒng)軟件;系統(tǒng)軟件的核心是操作系統(tǒng)。55第一部分:操作系統(tǒng)基本概念計算機(jī)系統(tǒng)=計算機(jī)硬件+計1.操作系統(tǒng)的概念OperatingSystem(1)定義:操作系統(tǒng)是控制和管理計算機(jī)硬件和軟件資源、合理組織計算機(jī)工作流程、方便用戶使用計算機(jī)并提高計算機(jī)響應(yīng)速度而設(shè)計的一套程序的集合。資源角度:是計算機(jī)資源管理系統(tǒng),負(fù)責(zé)計算機(jī)系統(tǒng)的全部資源的分配、控制、調(diào)度和回收用戶角度:操作系統(tǒng)是計算機(jī)與用戶之間的接口進(jìn)程角度:是動態(tài)、合理地組織計算機(jī)工作流程的軟件。評價(地位和作用):操作系統(tǒng)是直接與硬件相鄰的第一層軟件,是其他軟件運(yùn)行的基礎(chǔ),是系統(tǒng)軟件中最基本、最核心的部分。561.操作系統(tǒng)的概念OperatingSystem2(2)操作系統(tǒng)的兩大基本職能面向計算機(jī):管理和操控全部計算機(jī)資源(CPU、設(shè)備、存儲器、文件);提高系統(tǒng)效率。面向用戶:提供人機(jī)界面;提供便捷的操作環(huán)境。

57(2)操作系統(tǒng)的兩大基本職能面向計算機(jī):3計算機(jī)資源

計算機(jī)資源硬件設(shè)備

文件

數(shù)據(jù)庫

應(yīng)用程序

內(nèi)存單元其他用戶

遠(yuǎn)程用戶58計算機(jī)資源計算機(jī)硬件設(shè)備文件數(shù)據(jù)庫

命令翻譯

結(jié)果

計算機(jī)識別機(jī)器語言,人識別高級語言;語言編譯器充當(dāng)人機(jī)之間的“翻譯”。操作系統(tǒng)人機(jī)接口59操作人機(jī)接口5(3)操作系統(tǒng)的五大功能

操作系統(tǒng)功能文件管理進(jìn)程管理存儲器管理作業(yè)管理設(shè)備管理60(3)操作系統(tǒng)的五大功能操作系統(tǒng)功能文件管理進(jìn)程管理存2.操作系統(tǒng)的發(fā)展OS是伴隨計算機(jī)技術(shù)的發(fā)展而發(fā)展的。其發(fā)展大致經(jīng)歷了四個階段。早期階段,從20世紀(jì)40年代末到50年代中期——無操作系統(tǒng)幾乎無外部設(shè)備,軟件只用機(jī)器語言,無操作系統(tǒng)。手工操作、系統(tǒng)資源利用率低第2階段,50年代中期——第1代操作系統(tǒng)把“零散的單一程序處理”變?yōu)椤凹械某膳绦蛱幚怼钡奶幚矸绞?。“批處理”操作系統(tǒng)(監(jiān)管程序)由此而產(chǎn)生.程序員和操作員分工,第3階段——第2代操作系統(tǒng)通道技術(shù)、緩沖技術(shù)、多道處理技術(shù)、中斷技術(shù)等。由此產(chǎn)生了第二代操作系統(tǒng)。CPU利用率低的矛盾更加激化?,F(xiàn)有處理技術(shù)和手段已不適應(yīng)應(yīng)用的實(shí)時處理需求第4階段——第3代操作系統(tǒng)多用戶操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、多媒體技術(shù)、“客戶機(jī)/服務(wù)器”模式

612.操作系統(tǒng)的發(fā)展OS是伴隨計算機(jī)技術(shù)的發(fā)展而發(fā)展的。其幾種相關(guān)技術(shù)多道處理

一個CPU同時處理多個程序;同時將多個程序裝入內(nèi)存、并同時運(yùn)行的機(jī)制;大大提高了CPU的利用率;通道技術(shù)

將I/O處理從CPU的控制下獨(dú)立出來的一套處理機(jī)制,也稱為“I/O處理機(jī)”;CPU不再直接控制I/O設(shè)備,而是通過通道去控制,從而實(shí)現(xiàn)了CPU和I/O設(shè)備之間的并行工作,緩解了CPU和I/O速度不匹配的矛盾;中斷技術(shù)

在程序運(yùn)行中,出現(xiàn)了某種緊急事件,必須暫時中止現(xiàn)行程序,轉(zhuǎn)去處理此事件,然后再恢復(fù)中斷程序的運(yùn)行技術(shù)。62幾種相關(guān)技術(shù)多道處理一個CPU同時處理多個程序;同時將多3.操作系統(tǒng)的分類1.按處理器特點(diǎn)分分時OS采用分配時間片的方法,一個CPU可為多個用戶服務(wù)。實(shí)時OS在較短時間內(nèi)即響應(yīng)用戶要求并完成處理的OS。2.按適用面分專用OS為特定應(yīng)用目的或特定機(jī)器環(huán)境而配備的OS。通用OS為通用計算機(jī)系統(tǒng)配備的OS。3.按用戶數(shù)量分單用戶OS只能服務(wù)于單個用戶的OS;如MS-DOS。多用戶OS能為多個用戶服務(wù)的OS;如UNIX、WINDOWSNT。4.按任務(wù)處理方式分交互式OS能為用戶提供交互式操作支持的OS。批處理式OS以批處理方式處理用戶作業(yè)的OS。5.按硬件環(huán)境和控制方式分集中式OS指駐留在一臺計算機(jī)上或管理一臺計算機(jī)的OS。分布式OS用于管理分布式計算機(jī)的OS。633.操作系統(tǒng)的分類1.按處理器特點(diǎn)分94.常用、主流OS簡介MS-DOSUNIXWINDOWS644.常用、主流OS簡介MS-DOS10MS-DOSMS-DOS16位機(jī)、基于字符(命令行)方式的OS交互式、字符界面、批處理、單用戶、集中式MS-DOS操作系統(tǒng)的特點(diǎn):系統(tǒng)簡單,層次性強(qiáng)I/O重定位,如dir>a.txt管道操作;把一個命令或程序的輸出送到另一個命令或程序中去并依次形成一個連續(xù)的處理過程.樹形文件目錄系統(tǒng).dir|more最早的版本DOS1.0,在1981年8月發(fā)布;它由4000行匯編代碼組成,運(yùn)行于8K內(nèi)存中,使用Intel8086微處理器。以后,隨著Intel不斷推出功能越來越強(qiáng)大的CPU以及PC領(lǐng)域各種新技術(shù)的發(fā)展,Microsoft不斷推出新的DOS版本,直到7.0。但DOS并不能充分發(fā)揮一些新的CPU的強(qiáng)大功能。65MS-DOSMS-DOS16位機(jī)、基于字符(命令行)方式的UNIX

UNIX:交互式的分時操作系統(tǒng),中、小型機(jī)的工業(yè)標(biāo)準(zhǔn)化的OS。

1969年美國AT&T公司的BELL實(shí)驗(yàn)室在PDP-7小型機(jī)上開發(fā)出UNIX(匯編語言版本);

1973年推出UNIX第5版(C語言版本);因此,而獲美國計算機(jī)界最高獎—ACM圖靈獎;1992年據(jù)美國Infocorp公司調(diào)查,裝UNIX的機(jī)器占全世界計算機(jī)市場的36%;

在美國,90%的大學(xué)使用UNIX,這些大學(xué)的計算機(jī)系均開設(shè)UNIX操作系統(tǒng)的課程;UNIX已成為通用的、交互式的、多用戶、多任務(wù)應(yīng)用領(lǐng)域中小型機(jī)的主流操作系統(tǒng)之一。Linux是UNIX的一個版本。紅旗Linux是中國產(chǎn)權(quán)的OS。66UNIXUNIX:交互式的分時操作系統(tǒng),中、小型機(jī)的工業(yè)UNIX操作系統(tǒng)特點(diǎn)⑴多用戶、多任務(wù)、交互式、分時⑵功能強(qiáng)、但規(guī)模小(整個系統(tǒng)一萬行代碼)⑶靈活性(系統(tǒng)的90%用C編寫,便于維護(hù)、具有可擴(kuò)充性、可移植性)⑷所有文件是沒有內(nèi)部結(jié)構(gòu)的字符行序列,外部設(shè)備、目錄和普通文件同樣處理、對待。(普通文件、目錄文件、特殊文件)⑸樹狀文件結(jié)構(gòu)⑹模塊性好,適應(yīng)性強(qiáng)⑺為用戶提供了功能完備、使用方便的命令程序語言Shell,且系統(tǒng)具有完備的網(wǎng)絡(luò)功能。⑻可移植性好⑼系統(tǒng)安全(滿足C2級安全標(biāo)準(zhǔn),自主訪問控制、對象重用、辨別與驗(yàn)證、審計)67UNIX操作系統(tǒng)特點(diǎn)⑴多用戶、多任務(wù)、交互式、分時13WINDOWSWINDOWS32位以上高檔微機(jī)的、單用戶、多任務(wù)、基于圖形界面的主流OS

1983年11月,MICROSOFT公司推出WINDOWS1.0操作環(huán)境;1992年,幾經(jīng)改版,推出WINDOWS3.1(還不是一個獨(dú)立的OS);1993年推出WINDOWSNT,網(wǎng)絡(luò)版操作系統(tǒng);1995年推出WINDOWS’95。1998年推出WINDOWS’98。68WINDOWSWINDOWS32位以上高檔微機(jī)的、單用戶、WINDOWS的特點(diǎn)1、一致性的用戶界面(圖形界面、窗口、菜單、控件操作方式)2、多任務(wù)操作3、功能強(qiáng)大的、先進(jìn)的內(nèi)存管理4、支持動態(tài)數(shù)據(jù)交換(DDE)和動態(tài)連接庫(DLL)5、設(shè)備無關(guān)性。對外部設(shè)備的管理都是通過設(shè)備驅(qū)動程序來實(shí)現(xiàn)的。更換設(shè)備只需安裝相應(yīng)的設(shè)備驅(qū)動程序即可。支持鼠標(biāo)操作。6、支持網(wǎng)絡(luò)功能和多媒體技術(shù)(內(nèi)置TCP/IP協(xié)議、Windows網(wǎng)絡(luò)登錄等功能,使各種資源可在網(wǎng)上共享)。7、支持GBK大字符集(2萬多漢字字符)及多種字庫。8、系統(tǒng)龐大、開銷大,啟動、關(guān)機(jī)慢。

69WINDOWS的特點(diǎn)1、一致性的用戶界面(圖形界面、窗口、菜三種操作系統(tǒng)的比較

操作系統(tǒng)多生產(chǎn)硬件要求多用戶

多任務(wù)市場用戶

編程界面

網(wǎng)絡(luò)

安全性廠商支持支持

界面功能MS-DOSMSPC機(jī)及否否PC機(jī)字符靜態(tài)差一般IBM兼容機(jī)界面類庫WindowsMSPC機(jī)及否是PC機(jī)字符界靜態(tài)類庫兼容機(jī)面及圖多種API強(qiáng)較強(qiáng)形界面VXD編程接口UNIXIMB各種機(jī)器是是小型機(jī)字符界靜態(tài)類庫HP工作站面及圖多種API很強(qiáng)很強(qiáng)Sun等服務(wù)器形界面共同點(diǎn):程序執(zhí)行、資源分配、I/O操作、文件系統(tǒng)管理、出錯檢測、中斷處理、統(tǒng)計、保護(hù)等。70三種操作系統(tǒng)的比較操作系統(tǒng)多生產(chǎn)硬件要求多第二部分:進(jìn)程管理教學(xué)內(nèi)容:

進(jìn)程、程序的關(guān)系和區(qū)別

進(jìn)程的類型、性質(zhì)和狀態(tài)進(jìn)程調(diào)度的策略和常用算法靜、動態(tài)優(yōu)先數(shù)法、輪轉(zhuǎn)法進(jìn)程的控制與管理——進(jìn)程控制塊PCB

71第二部分:進(jìn)程管理教學(xué)內(nèi)容:17一、基本概念包括:程序單道程序、多道程序、順序程序、并發(fā)程序順序程序與并發(fā)程序的特征進(jìn)程進(jìn)程的特征、性質(zhì)、狀態(tài)及轉(zhuǎn)換、線程72一、基本概念包括:181.程序的有關(guān)概念程序(Program)

是為解決某個問題用計算機(jī)語言或命令設(shè)計、編寫的一系列指令的有序集合。程序的順序執(zhí)行

一個程序通常分為若干個具有一定獨(dú)立性的程序段,這些程序段是按邏輯步驟編排的,只有當(dāng)當(dāng)前程序段執(zhí)行完成后,才將控制權(quán)轉(zhuǎn)交到下一個程序段并執(zhí)行下一個程序段。731.程序的有關(guān)概念程序(Program)19單道程序處理及特性一次只處理一個程序。該程序獨(dú)享系統(tǒng)資源。單個程序的特性:

順序性操作按程序規(guī)定的順序執(zhí)行。封閉性程序在執(zhí)行過程中獨(dú)享系統(tǒng)資源,不受外界因素的干擾和影響。可再現(xiàn)性只要初始條件相同,無論以何種方式、速度、重復(fù)執(zhí)行多少次,結(jié)果是相同的。74單道程序處理及特性一次只處理一個程序。該程序獨(dú)享系統(tǒng)資源。多道程序處理及特性同時將多個程序裝入內(nèi)存,并同時處理它們,整個系統(tǒng)資源為多個程序共享。由于多道程序具有并發(fā)的特點(diǎn),在任一時刻,系統(tǒng)內(nèi)部(內(nèi)存)同時運(yùn)行著多個程序;受系統(tǒng)資源的制約,每個程序處理過程的行為是不確定的(系統(tǒng)內(nèi)部狀態(tài)因此而不同)。例如,第Ii個程序的Ci,這次是在時刻Ti開始的,那么,下一次運(yùn)行同樣的程序組時,第Ii個程序的Ci就不一定是在Ti時刻開始。集體活動,過程和結(jié)果不受個體完全控制75多道程序處理及特性同時將多個程序裝入內(nèi)存,并同時處理它們,整

程序并發(fā)執(zhí)行舉例設(shè)有三個程序,它們的執(zhí)行步驟和順序相同,都是Ii(輸入)、Ci(計算)、Pi(輸出)。當(dāng)?shù)?個程序的輸入操作I1執(zhí)行完、執(zhí)行C1時,輸入機(jī)空閑,這時候可以執(zhí)行第2個程序的輸入操作I2;在時間上,操作C1和I2是重疊的。當(dāng)C1執(zhí)行完、執(zhí)行P1時,處理機(jī)空閑,若這時I2已完成,就可以執(zhí)行C2,與此同時,輸入機(jī)又空閑,可以執(zhí)行第3個程序的I3。這樣一來,在時間上,P1、C2和I3是重疊操作的。76程序并發(fā)執(zhí)行舉例設(shè)有三個程序,它們的執(zhí)行步驟和順序相同,都

程序并發(fā)執(zhí)行舉例示意圖程序1:I1C1P1程序2:I2C2P2程序3:I3C3P3

從示意圖中可以看出,C1和I2、P1、C2和I3、P2和C3在時間上都是重疊操作的。Tt1t3t2輸入計算輸出77程序并發(fā)執(zhí)行舉例示意圖程序1:I1C1單道和多道程序處理的區(qū)別在單道程序處理環(huán)境下,各邏輯步驟之間的關(guān)系是確定的、不受外界影響而改變的。在多道程序處理環(huán)境下,并發(fā)處理機(jī)制中必然存在著直接或間接的相互依賴和相互制約的關(guān)系,從而使被處理的多道程序失去了程序固有的特性:封閉性、可再現(xiàn)性。

78單道和多道程序處理的區(qū)別在單道程序處理環(huán)境下,各邏輯步驟之間程序并發(fā)處理特征程序與執(zhí)行過程不再一一對應(yīng)在并發(fā)執(zhí)行時,一個共享程序可為多個用戶作業(yè)調(diào)度,而使程序處于多個執(zhí)行中,從而形成了多個“計算”。程序并發(fā)執(zhí)行時的相互制約例如,Ii,Ci和Pi分別共享同一個輸入機(jī)、處理機(jī)和打印機(jī),因此,一旦C2占用處理機(jī),在它未完成之前,C3就無法啟動。由此可見,程序并發(fā)執(zhí)行時是相互制約的,將導(dǎo)致并發(fā)程序具有“執(zhí)行——暫?!獔?zhí)行”這樣的活動規(guī)律。失去了程序的封閉性若A和B為兩個程序,共享數(shù)據(jù)段,由于程序A和程序B都是以各自獨(dú)立的速度運(yùn)行,則因速度不同而結(jié)果不同。所以并發(fā)執(zhí)行程序失去了順序程序的封閉性。如何表示并發(fā)程序的特性?79程序并發(fā)處理特征程序與執(zhí)行過程不再一一對應(yīng)252.進(jìn)程及有關(guān)概念(1)進(jìn)程(Process)就是程序的一次執(zhí)行過程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個獨(dú)立單位。“進(jìn)程”這個概念是1966年美國麻省理工學(xué)院的J.H.Sallexer提出的。進(jìn)程管理也被稱為處理機(jī)管理。處理機(jī)是計算機(jī)系統(tǒng)中的重要資源,所以它管理的好壞在很大程度上直接影響系統(tǒng)的效率。處理機(jī)管理又分兩個部分:作業(yè)管理和進(jìn)程管理。進(jìn)程管理是由程序管理進(jìn)化而來,是和程序管理密不可分的。作業(yè)用戶在一次計算過程中,或者一次事務(wù)處理過程中,要求計算機(jī)系統(tǒng)所做工作的總稱802.進(jìn)程及有關(guān)概念(1)進(jìn)程(Process)就是程序的進(jìn)程的不同定義由于并發(fā)活動的復(fù)雜性,不同學(xué)者研究和討論的側(cè)重點(diǎn)不同,對進(jìn)程的定義也不盡相同。幾種不同的定義為:進(jìn)程是可以和別的計算并發(fā)執(zhí)行的計算;進(jìn)程是程序的一次執(zhí)行,亦即進(jìn)程是在給定內(nèi)存區(qū)域中的一組指令序列的執(zhí)行過程;所謂進(jìn)程,就是一個程序在給定活動空間和初始環(huán)境下,在一個處理機(jī)上的執(zhí)行過程;進(jìn)程是程序在一個數(shù)據(jù)集合上運(yùn)行的過程,是系統(tǒng)資源分配和調(diào)度的一個獨(dú)立單位。81進(jìn)程的不同定義由于并發(fā)活動的復(fù)雜性,不同學(xué)者研究和討論的側(cè)重(2)進(jìn)程的特征進(jìn)程具有兩個重要特征:(a)動態(tài)性:表現(xiàn)在它由“創(chuàng)建”而產(chǎn)生,由“調(diào)度”而執(zhí)行,因得不到資源而“暫?!眻?zhí)行,最后由“撤消”而消亡。進(jìn)程有自己的生命周期。(b)并發(fā)性:在系統(tǒng)中可以同時存在幾個進(jìn)程。在單CPU系統(tǒng)中,任何時刻只有一個進(jìn)程占用CPU,其它進(jìn)程處于等待狀態(tài)。進(jìn)程有著走走停停的活動規(guī)律。引入進(jìn)程的目的是為了程序的并發(fā)執(zhí)行,以提高資源的利用率。進(jìn)程與程序的區(qū)別:進(jìn)程描述程序的動態(tài)行為,程序是指令和數(shù)據(jù)的靜態(tài)集合。進(jìn)程是程序的運(yùn)行活動,當(dāng)程序沒運(yùn)行時,有程序存在,而無進(jìn)程存在。一個程序可以有多個進(jìn)程,一個進(jìn)程也可以對應(yīng)多個程序(調(diào)用、順序執(zhí)行)82(2)進(jìn)程的特征進(jìn)程具有兩個重要特征:28(3)進(jìn)程的性質(zhì)動態(tài)性描述程序在執(zhí)行過程中的全部活動;并發(fā)性O(shè)S同時接受和處理多個進(jìn)程;異步性不同進(jìn)程在邏輯上相互獨(dú)立,有各的運(yùn)行“軌跡”;制約性由于計算機(jī)資源是有限的,不同進(jìn)程共享CPU和I/O通道及設(shè)備,因此相互制約。

83(3)進(jìn)程的性質(zhì)動態(tài)性描述程序在執(zhí)行過程中的全部活動;(4)進(jìn)程的狀態(tài)進(jìn)程在其存在的過程中,它們的狀態(tài)是不斷發(fā)生變化的。一般來說,進(jìn)程有三種基本狀態(tài):就緒狀態(tài)、運(yùn)行狀態(tài)、等待狀態(tài)。就緒狀態(tài)

已經(jīng)獲得投入運(yùn)行所必需的一切資源,一旦分配到CPU,就可以立即執(zhí)行。這是一種邏輯上可運(yùn)行狀態(tài)(“萬事俱備,只欠東風(fēng)”)。運(yùn)行狀態(tài)進(jìn)程獲得了CPU及其它一切所需資源,正在CPU上運(yùn)行著。(春風(fēng)得意之時)等待狀態(tài)

由于資源得不到滿足,進(jìn)程運(yùn)行受阻,處于暫停狀態(tài),等待資源分配后,再投入運(yùn)行。(青黃不接,門庭冷落)84(4)進(jìn)程的狀態(tài)進(jìn)程在其存在的過程中,它們的狀態(tài)是不斷發(fā)生變進(jìn)程狀態(tài)轉(zhuǎn)換示意圖

運(yùn)行狀態(tài)等待狀態(tài)

就緒狀態(tài)

進(jìn)程調(diào)度

資源得不到滿足等待資源CPU時間用完獲得資源

進(jìn)程調(diào)度程序

來自作業(yè)調(diào)度

交作業(yè)管理進(jìn)程在整個生存周期中,由進(jìn)程調(diào)動程序控制,在這三種狀態(tài)之間進(jìn)行轉(zhuǎn)換。85進(jìn)程狀態(tài)轉(zhuǎn)換示意圖運(yùn)行狀態(tài)等待狀態(tài)就緒狀態(tài)(4)線程(Thread)的概念線程是一個程序內(nèi)部的順序控制流(獨(dú)立執(zhí)行的流)。但線程并不是程序,它自己并不能運(yùn)行,必須在程序中才能運(yùn)行。多線程是指在單個程序內(nèi)部可以在同一時刻運(yùn)行多個不同的線程、執(zhí)行不同的任務(wù)。多線程的程序,指單個程序內(nèi)部在同一時刻也可以進(jìn)行多種運(yùn)行處理。在現(xiàn)代操作系統(tǒng)中,線程是系統(tǒng)中能調(diào)度的最小實(shí)體。如網(wǎng)絡(luò)螞蟻、Cuteftp86(4)線程(Thread)的概念線程是一個程序內(nèi)部的順序控制關(guān)于線程的進(jìn)一步解釋線程是進(jìn)程中的一個實(shí)體,是系統(tǒng)獨(dú)立調(diào)度和分派的基本單位線程自己不擁有系統(tǒng)資源,只擁有一點(diǎn)在進(jìn)行中必不可少的資源(程序計數(shù)器、寄存器、棧),但可以和其他線程共享進(jìn)程的全部資源。線程是獨(dú)立調(diào)度和分派的基本單位,進(jìn)程是擁有資源的基本單位線程切換不會引起進(jìn)程切換進(jìn)程的切換開銷大于線程的切換開銷。87關(guān)于線程的進(jìn)一步解釋線程是進(jìn)程中的一個實(shí)體,是系統(tǒng)獨(dú)立調(diào)度和3.進(jìn)程管理進(jìn)程管理的核心是:進(jìn)程的控制和調(diào)度。進(jìn)程自投入運(yùn)行時起,即交由進(jìn)程調(diào)度程序管理。883.進(jìn)程管理進(jìn)程管理的核心是:34(1)進(jìn)程控制進(jìn)程控制的職責(zé)是對系統(tǒng)中全部進(jìn)程實(shí)行有效的管理;它應(yīng)該具有創(chuàng)建新進(jìn)程、撤消已結(jié)束進(jìn)程的能力。89(1)進(jìn)程控制進(jìn)程控制的職責(zé)是對系統(tǒng)中全部進(jìn)程實(shí)行有效的管理(2)進(jìn)程的組成進(jìn)程是程序在一個數(shù)據(jù)集合上的運(yùn)行過程,它由三部分組成:

程序

它主要用于描述進(jìn)程所要完成的功能。

數(shù)據(jù)集合

它包括程序執(zhí)行時所需要的數(shù)據(jù)和工作區(qū)。

進(jìn)程控制塊(PCB——ProcessControlBlock)

它記錄進(jìn)程控制信息,是進(jìn)程動態(tài)特性的反映。90(2)進(jìn)程的組成進(jìn)程是程序在一個數(shù)據(jù)集合上的運(yùn)行過程,它由三(3)進(jìn)程控制塊——PCB進(jìn)程控制塊PCB是進(jìn)程的唯一標(biāo)識。當(dāng)創(chuàng)建一個新進(jìn)程時,系統(tǒng)就建立一個PCB;它記錄和描述該進(jìn)程的運(yùn)行變化過程及參數(shù)變化。實(shí)際上,系統(tǒng)是通過PCB對進(jìn)程進(jìn)行實(shí)際控制和管理的。PCB中包括:

進(jìn)程標(biāo)識符進(jìn)程唯一的代號

進(jìn)程現(xiàn)行狀態(tài)記錄進(jìn)程當(dāng)前狀態(tài)

中斷現(xiàn)場保護(hù)區(qū)記錄中斷現(xiàn)場信息,以備恢復(fù)用

進(jìn)程使用資源表記錄進(jìn)程使用的資源信息

進(jìn)程優(yōu)先級標(biāo)明該進(jìn)程要求CPU的迫切程度

進(jìn)程家族信息記錄該進(jìn)程家族史信息。91(3)進(jìn)程控制塊——PCB進(jìn)程控制塊PCB是進(jìn)程的唯一標(biāo)識。(4)進(jìn)程控制塊PCB的組織形式通過進(jìn)程控制塊對進(jìn)程進(jìn)行管理進(jìn)程控制塊PCB是定長記錄(類似與DOS中的文件目錄表FDT和UNIX中的i索引結(jié)點(diǎn)表),采用兩種組織方式。

線性表結(jié)構(gòu)PCB組織形式鏈表結(jié)構(gòu)92(4)進(jìn)程控制塊PCB的組織形式通過進(jìn)程控制塊對進(jìn)PCB線性表結(jié)構(gòu)

PCB1PCB2PCB3PCB4???PCBiPCBi+1PCBi+2

就緒表

等待表

就緒表起始地址等待表起始地址93PCB線性表結(jié)構(gòu)PCB1PCB2PCB3PCB4?PCBiPPCB鏈表結(jié)構(gòu)三個隊(duì)列(三個線性表)

運(yùn)行隊(duì)列

就緒隊(duì)列

等待隊(duì)列PCBr隊(duì)頭指針PCBsPCBs+1PCBs+2PCBtPCBt+1PCBt+294PCB鏈表結(jié)構(gòu)三個隊(duì)列(三個線性表)運(yùn)行隊(duì)列就緒隊(duì)列等4.進(jìn)程調(diào)度的任務(wù)及功能(1)進(jìn)程調(diào)度任務(wù)(確定誰、何時使用CPU)按一定的算法,動態(tài)地將處理機(jī)分配給就緒隊(duì)列中的某個進(jìn)程,使之執(zhí)行。(2)進(jìn)程調(diào)度功能記錄系統(tǒng)中所有進(jìn)程的狀態(tài)、優(yōu)先數(shù)和所用資源的情況。(記錄進(jìn)程信息)當(dāng)CPU空閑時,按一定的算法將CPU分配給某一進(jìn)程、并確定CPU時間片的長度。(確定運(yùn)行進(jìn)程)動態(tài)地調(diào)度進(jìn)程、修改進(jìn)程的狀態(tài)、以及修改相應(yīng)的排隊(duì)隊(duì)列。(修改進(jìn)程狀態(tài))954.進(jìn)程調(diào)度的任務(wù)及功能(1)進(jìn)程調(diào)度任務(wù)(確定誰、何時(3)進(jìn)程調(diào)度方式剝奪方式

當(dāng)“重要“或”系統(tǒng)“的進(jìn)程出現(xiàn)時,便暫停正在執(zhí)行的進(jìn)程,立即將CPU分配給“重要”或”系統(tǒng)“的進(jìn)程。非剝奪方式

讓正在執(zhí)行的進(jìn)程繼續(xù)執(zhí)行,直到該進(jìn)程完成或發(fā)生其它事件,而改變?yōu)槠渌鼱顟B(tài)后,才移交CPU控制權(quán)。96(3)進(jìn)程調(diào)度方式剝奪方式當(dāng)“重要“或”系統(tǒng)“的進(jìn)程出現(xiàn)(4)進(jìn)程調(diào)度

溫馨提示

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

評論

0/150

提交評論