![操作系統(tǒng)課程學(xué)習(xí)筆記_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/30/28d6d689-9490-4928-adad-d06ad6f78fb2/28d6d689-9490-4928-adad-d06ad6f78fb21.gif)
![操作系統(tǒng)課程學(xué)習(xí)筆記_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/30/28d6d689-9490-4928-adad-d06ad6f78fb2/28d6d689-9490-4928-adad-d06ad6f78fb22.gif)
![操作系統(tǒng)課程學(xué)習(xí)筆記_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/30/28d6d689-9490-4928-adad-d06ad6f78fb2/28d6d689-9490-4928-adad-d06ad6f78fb23.gif)
![操作系統(tǒng)課程學(xué)習(xí)筆記_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/30/28d6d689-9490-4928-adad-d06ad6f78fb2/28d6d689-9490-4928-adad-d06ad6f78fb24.gif)
![操作系統(tǒng)課程學(xué)習(xí)筆記_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/30/28d6d689-9490-4928-adad-d06ad6f78fb2/28d6d689-9490-4928-adad-d06ad6f78fb25.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、操作系統(tǒng)學(xué)習(xí)筆記第1章概述本章介紹了操作系統(tǒng)的基本概念。主要包括:計算機(jī)系統(tǒng)由硬件和軟件兩大部分組成,操作系統(tǒng)是計算機(jī)系統(tǒng)中的一種系統(tǒng)軟件,它管理計算機(jī)系統(tǒng)的資源和控制程序的執(zhí)行,改善人機(jī)界面和為其他軟件提供支持。它的設(shè)計目標(biāo)是使用戶方便地使用計算機(jī)系統(tǒng)和使得計算機(jī)系統(tǒng)能高效地工作。計算機(jī)配置操作系統(tǒng)的目的是提高資源利用率。操作系統(tǒng)的形成和發(fā)展與計算機(jī)硬件和其他軟件的發(fā)展密切相關(guān)。隨著計算機(jī)應(yīng)用的日益廣泛,操作系統(tǒng)的功能也日趨完善,根據(jù)計算機(jī)系統(tǒng)的功能和應(yīng)用,操作系統(tǒng)可分成幾類:批處理操作系統(tǒng)、分時操作系統(tǒng)、實(shí)時操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。批處理操作系統(tǒng)按照用戶預(yù)先規(guī)定好的步驟控制
2、作業(yè)的執(zhí)行,實(shí)現(xiàn)計算機(jī)操作的自動化,無須人工干預(yù)。批處理多道系統(tǒng)還可以充分利用計算機(jī)系統(tǒng)的資源,縮短作業(yè)執(zhí)行時間,提高系統(tǒng)的吞吐率。分時操作系統(tǒng)支持多個終端用戶同時以交互方式使用計算機(jī)系統(tǒng),為用戶在測試、修改和控制程序執(zhí)行方面提供了靈活性。實(shí)時操作系統(tǒng)是實(shí)現(xiàn)實(shí)時控制的系統(tǒng),它由外部信號觸發(fā)而工作,并在特定的時間內(nèi)完成處理,且給出反饋信號。實(shí)時系統(tǒng)對可靠性和安全性的要求極高,不強(qiáng)求系統(tǒng)資源的利用率。個人計算機(jī)系統(tǒng)都是使用微行計算機(jī)。比起大型機(jī)來,微行機(jī)既小又便宜。但是,個人計算機(jī)系統(tǒng)的資源和功能相對有限。為了滿足較大規(guī)模的應(yīng)用,可把若干臺個人計算機(jī)系統(tǒng)構(gòu)成計算機(jī)網(wǎng)絡(luò)。根據(jù)計算機(jī)網(wǎng)絡(luò)的結(jié)構(gòu)、通信方
3、式和資源管理方法,分別配置網(wǎng)絡(luò)操作系統(tǒng)或分布式操作系統(tǒng)。操作系統(tǒng)的資源管理功能可以分為四大部分:處理器管理、存儲管理、文件管理、設(shè)備管理。重點(diǎn)內(nèi)容(一)操作系統(tǒng)的定義操作系統(tǒng)是一種管理計算機(jī)系統(tǒng)資源、控制程序執(zhí)行、改善人機(jī)界面和為其他軟件提供支持的系統(tǒng)軟件。(二)操作系統(tǒng)的類型批處理操作系統(tǒng)、分時操作系統(tǒng)、實(shí)時操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、分布式操作系統(tǒng)、多機(jī)操作系統(tǒng)和嵌入式操作系統(tǒng)。其中前三種是基本的操作系統(tǒng)。(四)操作系統(tǒng)的功能操作系統(tǒng)負(fù)責(zé)管理計算機(jī)系統(tǒng)的所有資源,并調(diào)度這些資源的使用。具體來說,其主要功能有:處理器管理、存儲管理、設(shè)備管理、文件管理??记榉治?.1計算機(jī)系統(tǒng)概述一、計算機(jī)系統(tǒng)1
4、、計算機(jī)系統(tǒng)定義:是按用戶的要求接收和存儲信息、自動進(jìn)行數(shù)據(jù)處理并輸出結(jié)果信息的系統(tǒng)。2、計算機(jī)系統(tǒng)構(gòu)成:硬件系統(tǒng)和軟件系統(tǒng)。軟件系統(tǒng):系統(tǒng)軟件(操作系統(tǒng)、編譯系統(tǒng))、支撐軟件、應(yīng)用軟件。3、硬件系統(tǒng)組成:中央處理器(CPU、主存儲器、輔助存儲器、各種輸入/輸出設(shè)備。計算機(jī)之父:馮.諾依曼馮.諾依曼的貢獻(xiàn):(1)提出用二進(jìn)制表示數(shù);(2)提出五大部件組成計算機(jī);(3)提出“存儲程序”思想,即把程序和數(shù)據(jù)都存放在存儲器,早期的程序是由開關(guān)控制實(shí)現(xiàn)的,數(shù)據(jù)是存放在存儲器中。二、操作系統(tǒng)1、操作系統(tǒng)定義:是一種管理計算機(jī)系統(tǒng)資源、控制程序執(zhí)行、改善人機(jī)界面和為其他軟件提供支持的系統(tǒng)軟件。從用戶觀點(diǎn)理
5、解,操作系統(tǒng)是人機(jī)交互接口;從資源管理角度,操作系統(tǒng)是管理計算機(jī)的軟、硬件資源;從程序控制觀點(diǎn),操作系統(tǒng)控制計算機(jī)程序的執(zhí)行。總結(jié)為:操作系統(tǒng)是:(1)管理計算機(jī)的軟件、硬件資源;(2)合理組織計算機(jī)工作流程;(3)提供方便用戶操作的接口和軟件的集合。計算機(jī)配置操作系統(tǒng)的目的是提高資源的利用率。操作使用者認(rèn)為操作系統(tǒng)認(rèn)為操作是一組命令的集合,它接收輸入的命令,程序設(shè)計人員認(rèn)為操作系統(tǒng)是一組功能調(diào)用程序(系統(tǒng)調(diào)用)的集合。2、操作系統(tǒng)兩個主要設(shè)計原則:(1)能使得計算機(jī)系統(tǒng)使用方便。即方便(2)提高計算機(jī)工作效率。即效率1.2操作系統(tǒng)的發(fā)展1、控制臺:早期,程序的裝入、調(diào)試以及控制程序的運(yùn)行都是
6、程序員通過控制臺上的開關(guān)來實(shí)現(xiàn)。(第一階段,人工階段)2、原始匯編系統(tǒng):用匯編語言編寫的程序稱為源程序,它不能直接在機(jī)器上執(zhí)行,只有通過匯編語言解釋程序把源程序轉(zhuǎn)換成用機(jī)器指令序列表示的目標(biāo)程序后才能在計算機(jī)上運(yùn)行。3、設(shè)備驅(qū)動程序:是最原始的操作系統(tǒng)。是一種控制設(shè)備工作的程序。4、管理程序:是初級的操作系統(tǒng)。是一種能對計算機(jī)硬件和軟件進(jìn)行管理和調(diào)度的程序。(第二階段)5、操作系統(tǒng):采用了SPOOLIN的處理形式。SPOOLING稱“斯普林”(翻譯為聯(lián)機(jī)的同時外圍設(shè)備操作)。從本質(zhì)上說,SPOOLING是把磁盤作為一個巨大的緩沖器。在一個計算問題開始之前,把計算所需要的程序和數(shù)據(jù)從讀卡機(jī)或其他
7、輸入設(shè)備上預(yù)先輸入到磁盤上存放。這樣,在進(jìn)行計算時不再需要訪問讀卡機(jī)等慢速的輸入設(shè)備,而可以從速度快得多的磁盤上讀取程序和數(shù)據(jù)。同樣,對于計算的結(jié)果也是先在磁盤上緩沖存放,待計算完成后,再從打印機(jī)上打印出該計算問題的所有計算結(jié)果。(第三階段)操作系統(tǒng)發(fā)展的歷史:(1)無操作系統(tǒng)階段(第一代)這個階段有卡片、磁帶機(jī)和打印機(jī)。通過各種開關(guān)操作計算機(jī)。特點(diǎn):用戶獨(dú)占計算機(jī)CPUW寺人工操作缺點(diǎn):資源利用率低,CPUJ用不充分(人機(jī)矛盾,隨著計算機(jī)速度的提高日益顯著)。(2)管理程序階段(第二代)出現(xiàn)了編程語言:FORTRANCOBOL第一個完整操作系統(tǒng)在舊M360上。特點(diǎn):半自動方式管理部分資源資源
8、可實(shí)現(xiàn)簡單共享這個階段提供了一套控制命令一一控制卡,以此來成批地處理用戶程序,使其能自動有序執(zhí)行。缺點(diǎn):cpiMI/O設(shè)備速度不匹配,系統(tǒng)效率較低。(3)初級操作系統(tǒng)階段(第三階段)出現(xiàn)大容量的磁盤,主存容量增大,CPU1度加快。軟件有了較大的發(fā)展。聯(lián)機(jī)輸入輸出:在主機(jī)控制之下的輸入輸出操作。只有一臺主機(jī)。脫機(jī)輸入輸出:一臺主機(jī),兩臺外圍機(jī),分開的輸入輸出操作。采用多種典型技術(shù):多道批處理技術(shù):不完善,解決了人機(jī)矛盾及CPIMI/O設(shè)備速度不匹配,提高了資源利用率。多道程序設(shè)計技術(shù)利用并發(fā)揮了計算機(jī)硬件資源的并行能力。SPOOLIN使術(shù):預(yù)輸入和緩輸出(脫機(jī)輸入輸出)。(作業(yè)調(diào)度各程序調(diào)用井管
9、理程序,井管理讀程序(從輸入井讀)和井管理寫程序(向輸出井寫)多道程序設(shè)計技術(shù):內(nèi)存若只有一道程序,若該程序請求I/O操作,則CP處于等待I/O完成狀態(tài),即空閑。為改善CPU:利用率,同時把若干作業(yè)放入主存,允許其交替執(zhí)行,共享系統(tǒng)的軟、硬件資源。(4)現(xiàn)代操作系統(tǒng)階段(第四代)代表性的UNIX(多用戶分時操作系統(tǒng))。(5)智能計算和網(wǎng)絡(luò)計算階段。1.3操作系統(tǒng)的分類按照操作系統(tǒng)所提供的服務(wù)進(jìn)行分類,可分為批處理操作系統(tǒng)、分時操作系統(tǒng)、實(shí)時操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)、分布式操作系統(tǒng)、多機(jī)操作系統(tǒng)和嵌入式操作系統(tǒng)等。其中批處理操作系統(tǒng)、分時操作系統(tǒng)、實(shí)時操作系統(tǒng)是基本的操作系統(tǒng)。一、批處理操作系統(tǒng)1
10、、定義:用戶為作業(yè)準(zhǔn)備好程序和數(shù)據(jù)后,再寫一份控制作業(yè)執(zhí)行的說明書(作業(yè)說明書)。然后把作業(yè)說明書連同相應(yīng)的程序和數(shù)據(jù)一起交給操作員。操作員將收到的一批作業(yè)的有關(guān)信息輸入到計算機(jī)系統(tǒng)中等待處理,由操作系統(tǒng)選擇作業(yè),并按其操作說明書的要求自動控制作業(yè)的執(zhí)行。采用這種批量化處理作業(yè)的操作系統(tǒng)稱為批處理操作系統(tǒng)。2、分類:(1)批處理單道系統(tǒng):一次只選擇一個作業(yè)裝入計算機(jī)系統(tǒng)的主存儲器運(yùn)行。(2)批處理多道系統(tǒng):允許多個作業(yè)同時裝入主存儲器,使中央處理器輪流地執(zhí)行各個作業(yè),各個作業(yè)可以同時使用各自所需要的外圍設(shè)備。09年7月填空題中考了本知識點(diǎn)。3、批處理多道系統(tǒng)優(yōu)點(diǎn):(1)多道作業(yè)并行工作減少了處
11、理器的空閑時間,即提高了處理器的利用率。(2)作業(yè)調(diào)度可以按一定的組合選擇裝入主存儲器的作業(yè),只要搭配合理。(3)作業(yè)執(zhí)行過程中,不再訪問低速的設(shè)備,而是直接從高速的磁盤上存取信息,從而縮短了作業(yè)執(zhí)行時間,使單位時間內(nèi)的處理能力得到提高。(4)作業(yè)成批輸入、自動選擇和控制作業(yè)執(zhí)行,減少了人工操作時間和作業(yè)交接時間,有利于提高系統(tǒng)的吞吐率。4、缺點(diǎn)(1)平均周轉(zhuǎn)時間長(從進(jìn)入系統(tǒng)到完成所經(jīng)歷的時間)一個作業(yè)一旦運(yùn)行便運(yùn)行到完成,使許多短作業(yè)的周轉(zhuǎn)時間顯著增長。(2)不提供交互能力:用戶將作業(yè)交給系統(tǒng)后,無法再與之交互作用,因此必須提供一份詳細(xì)的作業(yè)說明書。二、分時操作系統(tǒng)1、定義:能使用戶通過與
12、計算機(jī)相連的終端來使用計算機(jī)系統(tǒng),允許多個用戶同時與計算機(jī)系統(tǒng)進(jìn)行一系列的交互,并使得每個用戶感到好像自己獨(dú)占一臺支持自己請求服務(wù)的計算機(jī)系統(tǒng)。具有這種功能的操作系統(tǒng)稱為分時操作系統(tǒng),簡稱分時系統(tǒng)。2、分時技術(shù):即把CPU寸間劃分成許多時間片,每個終端用戶每次可以使用一個由時間片規(guī)定的CPU寸間。這樣,多個終端用戶就輪流地使用CPU寸間。如果某個用戶在規(guī)定的一個時間片內(nèi)還沒有完成它的全部工作,這時也要把cpu:給其他用戶,等待下一輪再使用一個時間片的時間,循環(huán)輪轉(zhuǎn),直至結(jié)束。3、分時系統(tǒng)主要特點(diǎn):(1)同時性。允許多個終端用戶同時使用一個計算機(jī)系統(tǒng)。(2)獨(dú)立性。用戶在各自的終端上請求系統(tǒng)服務(wù)
13、,彼此獨(dú)立,互不干擾。(3)及時性。對用戶的請求能在較短時間內(nèi)給出應(yīng)答。響應(yīng)時間與用戶數(shù)目和時間片長度有關(guān)。(4)交互性。采用人機(jī)對話的方式工作。4.前臺與后臺由分時系統(tǒng)控制的作業(yè)稱為前臺作業(yè)(終端作業(yè)),而那些由批處理系統(tǒng)控制的作業(yè)稱為“后臺”作業(yè)(批處理作業(yè))。具體前臺和后臺的0雕高了系統(tǒng)的效率。5、分時OSf多道批處理區(qū)別(1)目標(biāo)不同:批處理0為提高系統(tǒng)效率,分時OSJ對應(yīng)用請求的快速響應(yīng)。(2)作業(yè)性質(zhì):批OSS用于需長時間白大型作業(yè),分OSS用于時間較短的小作業(yè)。(3)批OST同時接收經(jīng)合理安排的各種不同功能的作業(yè),分時OSS合于運(yùn)行執(zhí)行相同功能的作業(yè)。三、實(shí)時操作系統(tǒng)1、定義:能
14、使計算機(jī)系統(tǒng)接收到外部信號后及時進(jìn)行處理,并且在嚴(yán)格的規(guī)定時間內(nèi)處理結(jié)束,再給出反饋信號的操作系統(tǒng)稱為實(shí)時操作系統(tǒng),簡稱為實(shí)時系統(tǒng)。2、實(shí)時操作系統(tǒng)的應(yīng)用十分廣泛,如控制科學(xué)實(shí)驗(yàn)、控制生產(chǎn)流水,監(jiān)督病人的臨床功能、監(jiān)督和控制飛機(jī)的飛行狀態(tài),進(jìn)行工業(yè)過程控制等。3、設(shè)計實(shí)時系統(tǒng)注意點(diǎn):(1)要及時響應(yīng)、快速處理。(2)實(shí)時系統(tǒng)要求高可靠性和安全性,不強(qiáng)求系統(tǒng)資源的利用率。4、實(shí)時OS寺點(diǎn)及時性:首先必須考慮,其次才是資源的利用率,確保任何時候都能及時響應(yīng)。可靠性:常用雙工體制,兩臺計算機(jī)同時運(yùn)行,一臺為主機(jī),另一臺為備用機(jī)。四、操作系統(tǒng)的發(fā)展1、單用戶微機(jī)操作系統(tǒng):是指早期的微型計算機(jī)上運(yùn)行的操
15、作系統(tǒng)每次只允許一個用戶使用計算機(jī)。2、網(wǎng)絡(luò)操作系統(tǒng):為計算機(jī)網(wǎng)絡(luò)配置的操作系統(tǒng)稱為網(wǎng)絡(luò)操作系統(tǒng)。網(wǎng)絡(luò)操作系統(tǒng)把計算機(jī)網(wǎng)絡(luò)中各臺計算機(jī)系統(tǒng)有機(jī)地聯(lián)合起來,為用戶提供一種統(tǒng)一、經(jīng)濟(jì)而有效地使用各臺計算機(jī)系統(tǒng)的方法,可使各臺計算機(jī)系統(tǒng)相互間傳送數(shù)據(jù),實(shí)現(xiàn)各臺計算機(jī)系統(tǒng)之間的通信以及網(wǎng)絡(luò)中各種資源的共享。3、分布式操作系統(tǒng):為分布式計算機(jī)系統(tǒng)配置的操作系統(tǒng)稱為分布式操作系統(tǒng)。分布式操作系統(tǒng)能使系統(tǒng)中若干臺計算機(jī)相互協(xié)作完成一個共同的任務(wù),或者說把一個計算問題可以分成若干個子計算,每個子計算可以在計算機(jī)系統(tǒng)中的各計算機(jī)上并行執(zhí)行。網(wǎng)絡(luò)OST分布式O次別:網(wǎng)絡(luò)O睬用集中式,著重于信息共享,有專門的共享服
16、務(wù)器(集中式),而分布式OS可把一個大作業(yè)分解成多個小任務(wù)運(yùn)行于網(wǎng)絡(luò)的多臺計算機(jī)上,著重于并行處理(分布式)。4、多機(jī)操作系統(tǒng):為多處理器系統(tǒng)配置的操作系統(tǒng)稱為多機(jī)操作系統(tǒng)。5、嵌入式操作系統(tǒng):是指運(yùn)行在嵌入式系統(tǒng)中對各種部件、裝置等資源進(jìn)行統(tǒng)一協(xié)調(diào)、處理和控制的系統(tǒng)軟件。(主要特點(diǎn)是微型化和實(shí)時性)1.4操作系統(tǒng)的特征1、共享性2、并發(fā)性3、移植性4、不確定性1.6操作系統(tǒng)的功能1、操作系統(tǒng)的功能:(從資源管理的角度來分)(1)處理器管理:對CP進(jìn)行管理。(2)存儲管理:對主存儲器進(jìn)行管理。(3)文件管理:通過對磁盤進(jìn)行管理,實(shí)現(xiàn)對軟件資源進(jìn)行管理。(4)設(shè)備管理:對各類輸入/輸出設(shè)備進(jìn)行管
17、理。(5)接口管理2、操作系統(tǒng)為用戶提供的使用接口:(1)程序員接口:通過“系統(tǒng)調(diào)用”使用操作系統(tǒng)功能。(開發(fā)者,系統(tǒng)級,程序接(2)操作員接口:通過操作控制命令提出控制要求。(應(yīng)用者,用戶級,命令接口)第三章處理器管理內(nèi)容概要本章介紹了處理器管理的基本概念和方法。主要包括:多道程序設(shè)計系統(tǒng)必須做好存儲保護(hù)、程序浮動及資源分配與調(diào)度工作。多道程序設(shè)計系統(tǒng)利用和發(fā)揮了處理器與外圍設(shè)備以及外圍設(shè)備之間的并行工作能力,從而極大地提高了處理器和其他各種資源的利用率,增加了單位時間內(nèi)的算題能力。但是,多道程序設(shè)計可能會延長程序的執(zhí)行時間。尤其要注意的是:并行工作道數(shù)與系統(tǒng)效率不成正比。把一個程序在一個數(shù)
18、據(jù)集合上的一次執(zhí)行稱為一個“進(jìn)程”。進(jìn)程是有生命期的,每個進(jìn)程都有一個進(jìn)程控制塊記錄進(jìn)程的執(zhí)行情況。隨著進(jìn)程狀態(tài)的變化,進(jìn)程經(jīng)常要從一個隊列退出,進(jìn)入另一個隊列,直至進(jìn)程消亡。重點(diǎn)內(nèi)容(一)多道程序設(shè)計1,讓多個計算問題同時裝入一個計算機(jī)系統(tǒng)的主存儲器并行執(zhí)行,這種程序設(shè)計技術(shù)稱為多道程序設(shè)計。2.注意三個問題(1)存儲保護(hù);(2)程序浮動;(3)資源的分配和調(diào)度。調(diào)度分為處理器調(diào)度(或進(jìn)程調(diào)度)和作業(yè)調(diào)度。對具有處理器與外設(shè)并行工作能力的計算機(jī)系統(tǒng)來說,采用了多道程序設(shè)計技術(shù)后,能提高整個系統(tǒng)的效率。具體表現(xiàn)為:(1)提高了處理器的利用率。(2)充分利用外圍設(shè)備資源。(3)發(fā)揮了處理器與外圍
19、設(shè)備以及外圍設(shè)備之間的并行工作能力。采用多道程序設(shè)計能改善資源使用情況,提高系統(tǒng)效率,但是要注意兩個問題:(1)可能延長程序執(zhí)行時間。(2)并行工作道數(shù)與系統(tǒng)效率不成正比。3.引入多道程序設(shè)計的目的(1)提高了系統(tǒng)的效率,實(shí)現(xiàn)了處理器和外設(shè)的并行工作。(2)增加了系統(tǒng)吞吐量(單位時間內(nèi)運(yùn)行作業(yè)的道數(shù)),但作業(yè)周轉(zhuǎn)時間(作業(yè)的完成時間與作業(yè)提交時間的差)延長了。(二)進(jìn)程管理把一個程序在一個數(shù)據(jù)集上的一次執(zhí)行稱為一個進(jìn)程。引入進(jìn)程的原因有以下兩個方面:(1)提高資源的利用率。(2)正確描述程序的執(zhí)行情況。進(jìn)程有如下一些基本屬性:(1)進(jìn)程的動態(tài)性。(2)多個不同的進(jìn)程可以包含相同的程序。(3)進(jìn)
20、程可以并發(fā)執(zhí)行。(4)進(jìn)程有三種基本狀態(tài)。為了便于管理進(jìn)程,我們按進(jìn)程在執(zhí)行過程中不同時刻的不同情況定義三種基本狀態(tài):(1)等待態(tài)一等待某一事件。(2)就緒態(tài)一等待系統(tǒng)分配處理器以便運(yùn)行。(3)運(yùn)行態(tài)一正在占用處理器運(yùn)行。根據(jù)進(jìn)程的四個基本屬性可概括出進(jìn)程具有如下三個特性:1 .動態(tài)性:進(jìn)程是程序的一次執(zhí)行過程,在執(zhí)行過程中進(jìn)程狀態(tài)不斷發(fā)生變化。2 .并發(fā)性:若干進(jìn)程是可同時執(zhí)行的,它們輪流占用處理器交替執(zhí)行。3 .異步性:進(jìn)程的執(zhí)行速度取決于自身與外界原因以及能占用處理器的時間,因此以不可預(yù)知的速度向前推進(jìn)。(三)進(jìn)程隊列為了標(biāo)識進(jìn)程,記錄各個進(jìn)程執(zhí)行時的情況,操作系統(tǒng)在創(chuàng)建進(jìn)程時為每一個進(jìn)
21、程設(shè)置一個進(jìn)程控制塊。進(jìn)程控制塊的英文名稱是ProcessControlBlock,縮寫為PCB進(jìn)程控制塊(PCB作用:標(biāo)識進(jìn)程記錄進(jìn)程執(zhí)行在一般情況下,進(jìn)程控制塊應(yīng)包含四類信息:(1)標(biāo)識信息標(biāo)識每個進(jìn)程的進(jìn)程ID。對進(jìn)程標(biāo)識的說明,進(jìn)程名。(2)說明信息進(jìn)程的當(dāng)前狀態(tài)(運(yùn)行、就緒和等待之一),若是等待態(tài),則需要進(jìn)一步說明具體的等待原因。“進(jìn)程的程序存放的位置”指出該進(jìn)程的程序存放在哪里?“進(jìn)程數(shù)據(jù)的存放位置”指出進(jìn)程執(zhí)行時的工作區(qū),用來存放被處理的數(shù)據(jù)集和處理結(jié)果。O(3)現(xiàn)場信息包括控制寄存器(程序計數(shù)器(PQ、指令寄存器(IR)、數(shù)據(jù)緩沖器(MDR、地址緩沖器(MAR)、通用寄存器(R
22、R-i)和程序狀態(tài)字寄存器(如斷點(diǎn)信息)(PSVV。(4)管理信息。包括進(jìn)程的管理和調(diào)度信息。如進(jìn)程優(yōu)先級(進(jìn)程占用CPUJ先后次序)?!瓣犃兄羔槨敝赋鎏幱跔顟B(tài)的另一個進(jìn)程的進(jìn)程控制塊地址。進(jìn)程隊列就是進(jìn)程控制塊的鏈表。程序的一個靜態(tài)的實(shí)體,進(jìn)程是一個動態(tài)的實(shí)體。一個程序在一個數(shù)據(jù)集上的一次運(yùn)行稱為一個進(jìn)程。進(jìn)程是有生命的,從創(chuàng)建而產(chǎn)生,到撤銷而消亡。操作系統(tǒng)中往往設(shè)計一些完成特定功能的,不可中斷的過程,這些不可中斷的過程稱為原語。用于控制進(jìn)程的原語有:1. “創(chuàng)建”原語:為一個程序分配一個工作區(qū)和建立一個進(jìn)程控制塊,并置該進(jìn)程為就緒狀態(tài)。2. “撤消”原語:一個進(jìn)程完成工作后,收回它的工作區(qū)
23、和進(jìn)程控制塊。3. “阻塞”原語:進(jìn)程運(yùn)行過程中發(fā)生等待事件時,把進(jìn)程狀態(tài)改為等待態(tài)。4. “喚醒”原語:當(dāng)進(jìn)程等待的事件發(fā)生時,把進(jìn)程的狀態(tài)改為就緒態(tài)。進(jìn)程從等待態(tài)到就緒態(tài),沒有進(jìn)行進(jìn)程的切換。進(jìn)程的就緒隊列可能不止一個,可以按優(yōu)先級的高、中、低分成三個就緒隊列。同樣,等待隊列也可能不止一個。進(jìn)程從等待隊列到就緒隊列,就是把PC或等待隊列刪除,插入到就緒隊列中。進(jìn)程隊列分單向鏈表和雙向鏈表,隊尾指針“0”表示不指向任何位置。(七)處理器調(diào)度如何對資源進(jìn)行管理和分配是操作系統(tǒng)中的一個重要問題。處理器調(diào)度擔(dān)負(fù)著對處理器的分配工作,它將決定誰能先占用處理器,一次能占用處理器多長時間。在設(shè)計調(diào)度算法
24、時,可考慮如下原則:(1)公平性一一對用戶公平,不能無故或無限制地拖延一個作業(yè)的執(zhí)行。(2)平衡資源使用一一盡可能地使系統(tǒng)資源都處于忙碌。(3)極大的流量一一在單位時間內(nèi)為盡可能多的作業(yè)服務(wù),保證計算機(jī)系統(tǒng)的吞吐能力。一些常用的作業(yè)調(diào)度算法:(1)先來先服務(wù)算法;(2)計算時間短的作業(yè)優(yōu)先算法;(3)響應(yīng)比高者優(yōu)先算法;(4)優(yōu)先級調(diào)度算法;(5)均衡調(diào)度算法。常用的進(jìn)程調(diào)度算法:(1)先來先服務(wù)調(diào)度算法;(2)最高優(yōu)先級調(diào)度算法;(3)時間片輪轉(zhuǎn)調(diào)度算法;(4)分級調(diào)度算法;UNIX是一個分時操作系統(tǒng),但它對進(jìn)程的調(diào)度不是采用時間片輪轉(zhuǎn)法,而是采用了動態(tài)優(yōu)先數(shù)調(diào)度算法。優(yōu)先數(shù)越小的進(jìn)程其優(yōu)先
25、權(quán)越高??记榉治霰菊轮饕疾槎嗟莱绦蛟O(shè)計時三方面注意問題,進(jìn)程的定義,進(jìn)程的三種狀態(tài)和其轉(zhuǎn)換,進(jìn)程控制塊的內(nèi)容,進(jìn)程的原語,unix進(jìn)程控制塊的內(nèi)容,進(jìn)程狀態(tài)中斷的類型,中斷的響應(yīng),中斷的優(yōu)先級,作業(yè)調(diào)度和進(jìn)程調(diào)度的方法。題型有單選題、多選題、填空題、簡答題和綜合題。2.1 進(jìn)程管理2.1.1 多道程序設(shè)計一、什么是多道程序設(shè)計1、多道程序設(shè)計定義:讓多個計算問題同時裝入一個計算機(jī)系統(tǒng)的主存儲器并行執(zhí)行,這種程序設(shè)計技術(shù)稱為多道程序設(shè)計。這種計算機(jī)系統(tǒng)稱為多道程序設(shè)計系統(tǒng),簡稱為多道系統(tǒng)。2、注意事項(xiàng):(1)存儲保護(hù):必須提供必要的手段使得在主存儲器中的各道程序只能訪問自己的區(qū)域,避免相互干擾
26、。(2)程序浮動:是指程序可以隨機(jī)地從主存儲器的一個區(qū)域移動到另一個區(qū)域,程序被移動后,仍絲毫不影響它的執(zhí)行。(可集中分散的空閑區(qū),提高主存空間的利用率)(3)資源的分配和調(diào)度:多道程序競爭使用處理器和各種資源時,多道程序設(shè)計的系統(tǒng)中必須對各種資源按一定的策略進(jìn)行分配和調(diào)度。二、為什么要采用多道程序設(shè)計1、程序的順序執(zhí)行:處理器和外圍設(shè)備,外圍設(shè)備之間都得不到高效利用。2、程序的并行執(zhí)行:讓程序的各個模塊可獨(dú)立執(zhí)行、并行工作,從而發(fā)揮處理器與外圍設(shè)備之間的并行工作能力。3、多道并行執(zhí)行:在一個程序各個模塊并行工作的基礎(chǔ)上,允許多道程序并行執(zhí)行,進(jìn)一步提高處理器與外圍設(shè)備之間的并行工作能力,具體
27、表現(xiàn)在:(1)提高了處理器的利用率。(2)充分利用外圍設(shè)備資源。(3)發(fā)揮了處理器與外圍設(shè)備以及外圍設(shè)備之間的并行工作能力。(注:并行:宏觀可同時執(zhí)行,微觀也是同時執(zhí)行。)三、采用多道程序設(shè)計應(yīng)注意的問題1、可能延長程序執(zhí)行時間:多道程序設(shè)計能提高資源使用效率,增加單位時間的算題量。但是對每個計算問題來說,從算題開始到全部完成所需的計算時間可能要延長。2、并行工作道數(shù)與系統(tǒng)效率不成正比:并不是并行工作的道數(shù)越多,系統(tǒng)的效率就越高,而要根據(jù)系統(tǒng)配置的資源和用戶對資源的要求而定。(1)主存儲器空間的大小限制了可同時裝入的程序數(shù)量。(2)外圍設(shè)備的數(shù)量也是一個制約條件。(3)多個程序同時要求使用同一
28、資源的情況也會經(jīng)常發(fā)生。2.1.2 進(jìn)程概述的引入一、進(jìn)程的定義1、程序:具有獨(dú)立功能的一組指令或一組語句的集合,或者說是指出處理器執(zhí)行操作的步驟。09年7月解答題中考查了本知識點(diǎn)。2、進(jìn)程:是指一個程序在一個數(shù)據(jù)集上的一次執(zhí)行。3、程序和進(jìn)程的區(qū)別:程序是靜態(tài)的文本,進(jìn)程是動態(tài)的過程。進(jìn)程包括程序和數(shù)據(jù)集。二、為什么要引入進(jìn)程1、提高資源的利用率:一個程序被分成若干個可獨(dú)立執(zhí)行的程序模塊,每個可獨(dú)立執(zhí)行的程序模塊的一次執(zhí)行都可看做一個進(jìn)程,通過進(jìn)程的同步可提高資源的利用率。2、正確描述程序的執(zhí)行情況:可以方便描述一個程序被執(zhí)行多次時,各自的執(zhí)行進(jìn)度。2.1.3 進(jìn)程的狀態(tài)進(jìn)程有如下一些基本屬
29、性:(1)進(jìn)程的動態(tài)性。(2)多個不同的進(jìn)程可以包含相同的程序。(3)進(jìn)程可以并發(fā)執(zhí)行。(4)進(jìn)程有三種基本狀態(tài)。為了便于管理進(jìn)程,我們按進(jìn)程在執(zhí)行過程中不同時刻的不同情況定義三種基本狀態(tài):(1)等待態(tài)一等待某一事件。(2)就緒態(tài)一等待系統(tǒng)分配處理器以便運(yùn)行。(3)運(yùn)行態(tài)一正在占用處理器運(yùn)行。進(jìn)程狀態(tài)變化的幾種情況有:(1)運(yùn)行態(tài)等待態(tài)(2)等待態(tài)-就緒態(tài)(3)運(yùn)行態(tài)-就緒態(tài)(4)就緒態(tài)-運(yùn)行態(tài)根據(jù)進(jìn)程的四個基本屬性可概括出進(jìn)程具有如下三個特性:1 .動態(tài)性:進(jìn)程是程序的一次執(zhí)行過程,在執(zhí)行過程中進(jìn)程狀態(tài)不斷發(fā)生變化。2 .并發(fā)性:若干進(jìn)程是可同時執(zhí)行的,它們輪流占用處理器交替執(zhí)行。3 .異步
30、性:進(jìn)程的執(zhí)行速度取決于自身與外界原因以及能占用處理器的時間,因此以不可預(yù)知的速度向前推進(jìn)。2.1.4進(jìn)程控制1、進(jìn)程控制塊作用:即PCB是進(jìn)程存在的標(biāo)識。2、進(jìn)程控制塊構(gòu)成:(1)標(biāo)識信息:用來標(biāo)識進(jìn)程的存在和區(qū)分各個進(jìn)程。進(jìn)程名。(2)說明信息:用于說明本進(jìn)程的情況。包括:進(jìn)程狀態(tài)、等待原因、進(jìn)程程序存放位置、進(jìn)程數(shù)據(jù)存放位置。(3)現(xiàn)場信息:用來當(dāng)進(jìn)程由于某種原因讓出處理器時,記錄與處理器有關(guān)的各種現(xiàn)場信息。包括:通用寄存器內(nèi)容、控制寄存器內(nèi)容、程序狀態(tài)字寄存器內(nèi)容。(4)管理信息:用來對進(jìn)程進(jìn)行管理和調(diào)度的信息。包括:進(jìn)程優(yōu)先級、隊列指針。2.1.5進(jìn)程隊列1、進(jìn)程隊列概念:為了便于管
31、理,經(jīng)常把處于相同狀態(tài)的進(jìn)程鏈接在一起,稱為進(jìn)程隊列。2、進(jìn)程隊列分類:(1)就緒隊列:是指把若干個等待運(yùn)行的進(jìn)程(就緒進(jìn)程)按一定的次序鏈接起來的隊列。(2)等待隊列:是指把若干個等待資源或等待某些事件的進(jìn)程按一定的次序鏈接起來的隊列。3、隊列實(shí)現(xiàn)方法:只需將狀態(tài)相同的進(jìn)程控制塊鏈接起來就可以。鏈接的方式包括單向鏈接和雙向鏈接。4、隊列管理:是指系統(tǒng)中負(fù)責(zé)進(jìn)程入隊和出隊的工作。(1)入隊:是指一個進(jìn)程進(jìn)入到指定的隊列。A.從隊首入隊成為新的隊首進(jìn)程。B.從隊尾入隊成為新的隊尾進(jìn)程。C.插入到隊列中某兩個進(jìn)程之間。(2)出隊:是指一個進(jìn)程從所在的隊列中退出。也存在三種情況。2.1.6進(jìn)程的創(chuàng)建
32、和撤銷1、進(jìn)程創(chuàng)建:當(dāng)系統(tǒng)為一個程序分配一個工作區(qū)(存放程序處理的數(shù)據(jù)集)和建立一個進(jìn)程控制塊后就創(chuàng)建了一個進(jìn)程。剛創(chuàng)建的進(jìn)程其狀態(tài)為就緒狀態(tài)(若執(zhí)行過程中還缺少資源可以再將其轉(zhuǎn)為等待狀態(tài))。2、進(jìn)程的撤銷:當(dāng)一個進(jìn)程完成了特定的任務(wù)后,系統(tǒng)收回這個進(jìn)程所占的工作區(qū)和取消該進(jìn)程的進(jìn)程控制塊,就撤銷了該進(jìn)程。3、原語:是操作系統(tǒng)設(shè)計用來完成特定功能且不可中斷的過程。包括:創(chuàng)建原語、撤銷原語、阻塞原語、喚醒原語。1. “創(chuàng)建”原語:為一個程序分配一個工作區(qū)和建立一個進(jìn)程控制塊,并置該進(jìn)程為就緒狀態(tài)。2. “撤消”原語:一個進(jìn)程完成工作后,收回它的工作區(qū)和進(jìn)程控制塊。3. “阻塞”原語:進(jìn)程運(yùn)行過程
33、中發(fā)生等待事件時,把進(jìn)程狀態(tài)改為等待態(tài)。4. “喚醒”原語:當(dāng)進(jìn)程等待的事件發(fā)生時,把進(jìn)程的狀態(tài)改為就緒態(tài)。2.1.7進(jìn)程的調(diào)度1、進(jìn)程切換:是指一個進(jìn)程讓出處理器由另一個進(jìn)程占用處理器的過程。引起進(jìn)程切換的事件:(1) 一個進(jìn)程從運(yùn)行狀態(tài)變成等待狀態(tài)。(2) 一個進(jìn)程從運(yùn)行狀態(tài)變成就緒狀態(tài)。(3) )一個進(jìn)程完成工作后被撤銷。2、進(jìn)程調(diào)度算法:(4) 先來先服務(wù)調(diào)度算法(5) 最高優(yōu)先級調(diào)度算法(6) 時間片輪轉(zhuǎn)調(diào)度算法2.2 線程一、什么是線程1、線程概念:是進(jìn)程中可獨(dú)立執(zhí)行的子任務(wù)。2、線程屬性:(1)每個線程有一個唯一的標(biāo)識符和一張線程描述表。線程描述表記錄了線程執(zhí)行時的寄存器和棧等現(xiàn)
34、場狀態(tài)。(2)不同的線程可以執(zhí)行相同的程序,即同一個服務(wù)程序被不同的用戶調(diào)用時,操作系統(tǒng)為它們創(chuàng)建成不同的線程。(3)同一進(jìn)程中的各個線程共享分配給進(jìn)程的主存地址空間。(4)線程是處理器的獨(dú)立調(diào)度單位,多個線程是可以并發(fā)執(zhí)行的。(5)一個線程被創(chuàng)建后,便開始了它的生命期,直至終止。線程在生命期內(nèi)會經(jīng)歷等待態(tài)、就緒態(tài)和運(yùn)行態(tài)等各種狀態(tài)變化。3、線程和進(jìn)程的區(qū)別:進(jìn)程是資源分配單位,而線程是調(diào)度和執(zhí)行單位。每個進(jìn)程都有自己的主存空間,同一個進(jìn)程中的各線程共享該進(jìn)程的主存空間,進(jìn)程中的所有線程對進(jìn)程的整個主存空間都有存取權(quán)限。二、進(jìn)程與線程1、進(jìn)程缺點(diǎn):(1)每個進(jìn)程要占用一個進(jìn)程控制塊和一個私有的
35、主存區(qū)域,開銷較大;(2)進(jìn)程之間的通信必須由通信機(jī)制來完成,速度較慢;(3)進(jìn)程增多會給調(diào)度和控制帶來復(fù)雜性,增加了死鎖的機(jī)會。2、線程優(yōu)點(diǎn):(1)創(chuàng)建線程無須另外分配資源,因而創(chuàng)建線程的速度比創(chuàng)建進(jìn)程的速度快,且系統(tǒng)開銷小。(2)線程間的通信在同一地址空間中進(jìn)行,故不需要額外的通信機(jī)制,使通信更簡便,信息傳遞速度也更快。(3)線程能獨(dú)立執(zhí)行,能充分利用和發(fā)揮處理器與外圍設(shè)備并行工作的能力。2.3 作業(yè)管理一、處理器的兩級調(diào)度1、作業(yè)調(diào)度:是指從輸入井中選取后備作業(yè)裝入主存儲器的工作。(作業(yè)調(diào)度應(yīng)遵循的必要條件:系統(tǒng)現(xiàn)有的尚未分配的資源可以滿足被選作業(yè)的資源要求。)2、進(jìn)程調(diào)度:是指從就緒進(jìn)
36、程中選取一個進(jìn)程,讓它占用處理器的工作。-作業(yè)調(diào)度和進(jìn)程調(diào)度的關(guān)系:任何一個作業(yè),只有先被作業(yè)調(diào)度選中才有機(jī)會去競爭處理器,然后僅當(dāng)被進(jìn)程調(diào)度選中時才能占用處理器。二、作業(yè)的狀態(tài)作業(yè)的狀態(tài):提交、后備、運(yùn)行(進(jìn)程的三個狀態(tài))和完成狀態(tài)。三、批處理作業(yè)的調(diào)度算法1、設(shè)計調(diào)度算法原則09年4月選擇題就考查本知識點(diǎn)。(1)公平性:對用戶公平,不能無故或無限制地拖延一個作業(yè)的執(zhí)行。(2)平衡資源使用:盡可能地使系統(tǒng)都處于忙碌。(3)極大的流量:在單位時間內(nèi)為盡可能多的作業(yè)服務(wù),保證計算機(jī)系統(tǒng)的吞吐能力。2、周轉(zhuǎn)時間:假定作業(yè)i進(jìn)入輸入井的時間為Si。若它被選中執(zhí)行,得到計算結(jié)果的時間為Ei,那么它的周
37、轉(zhuǎn)時間就定義為Ti=Ei-Si。3、作業(yè)調(diào)度算法:(1)先來先服務(wù)算法(2)計算時間短的作業(yè)優(yōu)先算法(3)響應(yīng)比高者優(yōu)先算法:響應(yīng)比=等待時間/計算時間。(4)優(yōu)先級調(diào)度算法(5)均衡調(diào)度算法第3章存儲管理內(nèi)容概要本章介紹了計算機(jī)系統(tǒng)存儲器管理的基本概念和方法。主要包括:重定位的概念、固定分區(qū)存儲管理、可變分區(qū)存儲管理、頁式存儲管理、單用戶連續(xù)存儲管理和虛擬存儲器。主存儲器是可被處理器直接訪問的,處理器是按絕對地址訪問主存儲器的。為了使用戶編制的程序能存放在主存儲器的任意區(qū)域執(zhí)行,用戶使用邏輯地址編輯程序,即用戶使用了邏輯上的主存儲器。存儲管理必須為用戶分配一個物理上的主存空間,于是就有一個從
38、邏輯空間到物理空間的轉(zhuǎn)換問題。具體地說,是要把邏輯地址轉(zhuǎn)換成絕對地址,把這樣的地址轉(zhuǎn)換工作稱為重定位。存儲管理必須合理地分配主存空間,為了避免主存中的各程序相互干擾還必須實(shí)現(xiàn)存儲保護(hù),為了有效利用主存空間允許多個作業(yè)工享程序和數(shù)據(jù),各種存儲管理方式實(shí)現(xiàn)這些功能的方法是不同的,并且都有相應(yīng)的硬件做支持。實(shí)現(xiàn)虛擬存儲器后,從系統(tǒng)的角度看提高了主存空間的利用率,從用戶的角度看,編制程序不受主存實(shí)際容量的限制。虛擬存儲器的容量由地址結(jié)構(gòu)決定,若地址用n位表示,則虛擬存儲器的最的容量為2no虛擬存儲器的實(shí)現(xiàn)借助于大容量的輔助存儲器(例如磁盤)存放虛存中的實(shí)際信息,操作系統(tǒng)利用程序執(zhí)行在時間上和空間上的局
39、部性特點(diǎn)把當(dāng)前需要的程序段和數(shù)據(jù)裝入主存儲器,且利用表格(例如頁表、段表)構(gòu)造一個用戶的虛擬空間。硬件根據(jù)建立的表格進(jìn)行地址轉(zhuǎn)換或發(fā)出需進(jìn)行調(diào)度的中斷信號(例如缺頁中斷、缺段中斷等)。操作系統(tǒng)處理這些中斷事件時,選擇一種合適的調(diào)度算法對主存儲器和輔助存儲器中的信息進(jìn)行調(diào)出和裝入,盡可能地避免“抖動”。UNIX采用頁式虛擬存儲管理,并把編程序時用的地址稱為虛擬地址。重點(diǎn)內(nèi)容(一)概述現(xiàn)代計算機(jī)系統(tǒng)都采用多級存儲體系。這個存儲體系主要包括主存儲器、輔助存儲器、高速緩沖存儲器和寄存器。為了提高處理器的利用率和系統(tǒng)的工作效率,主存儲器中經(jīng)常存放多個程序和數(shù)據(jù)。許多計算機(jī)系統(tǒng)都采用二級存儲的辦法,利用輔
40、助存儲器提供的大容量存儲空間,存放準(zhǔn)備運(yùn)行的程序和數(shù)據(jù),當(dāng)需要時或主存空間允許時,隨時將它們讀入主存儲器。存儲管理是對主存空間的用戶區(qū)進(jìn)行管理,其目的是盡可能地方便用戶和提高主存空間的利用率。具體地說,存儲管理的功能如下:1 .主存空間的分配與回收。(分配回收)2 .實(shí)現(xiàn)地址轉(zhuǎn)換。(地址映射)3 .主存空間的共享與保護(hù)。(共享保護(hù))4 .主存空間的擴(kuò)充。(主存擴(kuò)充)(二)重定位絕對地址:主存空間的地址編號。與絕對地址對應(yīng)的主存空間稱為物理地址空間。相對地址:用戶程序中使用的地址。與相對地址對應(yīng)的存儲空間稱為邏輯地址空間。為了保證作業(yè)的正確執(zhí)行,必須根據(jù)分配給作業(yè)的主存空間對作業(yè)中指令和數(shù)據(jù)的存
41、放地址進(jìn)行轉(zhuǎn)換,即要把相對地址轉(zhuǎn)換成絕對地址。把相對地址轉(zhuǎn)換成絕對地址的工作稱為重定位或地址轉(zhuǎn)換。重定位的方式可以有靜態(tài)重定位和動態(tài)重定位兩種。(三)單用戶連續(xù)存儲管理這是一種最簡單的存儲管理方式,系統(tǒng)是將整個主存空間除了給操作系統(tǒng)劃分出一塊空間外,其余部分的空間都分配給一個作業(yè)使用。個人計算機(jī)可采用此種管理方法,它不適宜多道程序設(shè)計系統(tǒng)。如果作業(yè)的邏輯地址空間大于用戶區(qū),采用覆蓋技術(shù)可以把作業(yè)裝入主存儲器中。某些系統(tǒng)還采用對換技術(shù)讓多個進(jìn)程輪流進(jìn)入內(nèi)存,這種技術(shù)多用于分時系統(tǒng),隨著進(jìn)程調(diào)度,將內(nèi)存中的進(jìn)程暫時移到外存,而把外存中某一進(jìn)程換進(jìn)內(nèi)存。(四)固定分區(qū)存儲管理其基本思想是將內(nèi)存劃分成
42、若干個固定大小的分區(qū),每個分區(qū)中最多只能裝入一個作業(yè)。當(dāng)作業(yè)申請內(nèi)存時,系統(tǒng)按一定的算法為其選擇一個適當(dāng)?shù)姆謪^(qū),并裝入內(nèi)存運(yùn)行。由于分區(qū)大小是事先固定的,因而可容納作業(yè)的大小受到限制,而且當(dāng)用戶作業(yè)的地址空間小于分區(qū)的存儲空間時,容易造成存儲空間浪費(fèi)。1 .主存空間的分配與回收系統(tǒng)設(shè)置一張“分區(qū)分配表”來描述各分區(qū)的使用情況。登記的內(nèi)容應(yīng)包括:分區(qū)號、起始地址、長度和占用標(biāo)志。其中占用標(biāo)志為“0”時,表示目前該分區(qū)空閑;否則登記占用作業(yè)名(或作業(yè)號)。有了“分區(qū)分配表”,空間分配與回收工作是比較簡單的。2 .地址轉(zhuǎn)換和存儲保護(hù)固定分區(qū)管理可以采用靜態(tài)重定位方式進(jìn)行地址映射。為了實(shí)現(xiàn)存儲保護(hù),處
43、理器設(shè)置了一對“下限寄存器”和“上限寄存器”。當(dāng)一個已經(jīng)裝入主存儲器的作業(yè)能夠得到處理器運(yùn)行時,進(jìn)程調(diào)度應(yīng)記錄當(dāng)前運(yùn)行作業(yè)所在的分區(qū)號,且把該分區(qū)的下限地址和上限地址分別送入下限寄存器和上限寄存器。處理器執(zhí)行該作業(yè)的指令時必須核對其要訪問的絕對地址是否越界。(五)可變分區(qū)存儲管理可變分區(qū)存儲管理不是預(yù)先將主存劃分分區(qū),而是在作業(yè)轉(zhuǎn)入主存時建立分區(qū),使分區(qū)的大小正好與作業(yè)要求的存儲空間相等。這種處理方式使內(nèi)存分配有較大的靈活性,也提高了內(nèi)存利用率。但是隨著對內(nèi)存不斷地分配、釋放操作會引起存儲碎片的產(chǎn)生。1 .主存空間的分配與回收采用可變分區(qū)存儲管理,系統(tǒng)中的分區(qū)個數(shù)與分區(qū)的大小都在不斷地變化,系
44、統(tǒng)利用“空閑區(qū)表”來管理內(nèi)存中的空閑分區(qū),其中登記空閑區(qū)的起始地址、長度和狀態(tài)。當(dāng)有作業(yè)要進(jìn)入內(nèi)存時,在“空閑區(qū)表”中查找狀態(tài)為“未分配”且長度大小或等于作業(yè)的空閑分區(qū)分配給作業(yè),并做適當(dāng)調(diào)整;當(dāng)一個作業(yè)運(yùn)行完成時,應(yīng)將該作業(yè)占用的空間作為空閑區(qū)歸還給系統(tǒng)??梢圆捎米钕冗m應(yīng)算法、最優(yōu)適應(yīng)算法和最壞適應(yīng)算法三種分配策略之一進(jìn)行內(nèi)存分配。2 .地址轉(zhuǎn)換和存儲保護(hù)可變分區(qū)存儲管理一般采用動態(tài)重定位的方式。為實(shí)現(xiàn)地址重定位和存儲保護(hù),系統(tǒng)設(shè)置了相應(yīng)的硬件;基址/限長寄存器(或上界/下界寄存器)、加法器、比較線路等。基地寄存器用來存放程序在內(nèi)存的起始地址,限長寄存器用來存放程序的長度。處理器在執(zhí)行時,用
45、程序中的相對地址加上基址寄存器中的基地址,形成一個絕對地址,并將相對地址與限長寄存器進(jìn)行計算比較,檢查是否發(fā)生地址越界。3 .移動技術(shù)所謂移動是指把作業(yè)從一個存儲區(qū)域移到另一個存儲區(qū)域的工作。采用移動技術(shù)有兩個目的:(1)集中分散的空閑區(qū);(2)便于作業(yè)動態(tài)擴(kuò)充主存。移動可集中分散的空閑區(qū),提高主存空間的利用率。移動也為作業(yè)動態(tài)擴(kuò)充主存空間提供了方便。但是采用移動技術(shù)時必須注意下列問題:(1)移動會增加系統(tǒng)開銷;(2)移動是有條件的。所以,在采用移動技術(shù)的系統(tǒng)中,應(yīng)盡可能地減少移動,以降低系統(tǒng)開銷,提高系統(tǒng)效率。為此可改變作業(yè)裝入主存儲器的方式來達(dá)到減少移動的目的。(六)頁式存儲管理1 .基本
46、原理頁式存儲管理是把主存儲器分成大小相等的許多區(qū),每個區(qū)稱為一塊。采用分頁式存儲管理時,相對地址由兩部分組成;頁號和頁內(nèi)地址。在進(jìn)行存儲空間分配時,總是以塊為單位進(jìn)行分配。頁式存儲管理必須解決兩個關(guān)鍵的問題:第一,怎樣知道主存儲器上哪些塊已被占用,哪些塊是空閑的;第二,作業(yè)信息被分散存放后如何保證作業(yè)的正確執(zhí)行。2 .頁式主存空間的分配與回收采用頁式存儲管理,可用一張“位示圖”來構(gòu)成主存分配表。進(jìn)行主存分配時,先查空閑塊數(shù)能否滿足作業(yè)要求。若不能滿足,則作業(yè)不能裝入。作業(yè)執(zhí)行結(jié)束后,應(yīng)收回作業(yè)所占的主存塊。3 .頁表和地址轉(zhuǎn)換當(dāng)主存中空閑塊數(shù)能滿足作業(yè)要求時,存儲管理就找出這些空閑塊分配給作業(yè)
47、,同時為作業(yè)建立一張頁表,指出相對地址中頁號與主存中塊號的對應(yīng)關(guān)系。頁式存儲管理采用動態(tài)重定位的方式裝入作業(yè),作業(yè)執(zhí)行時由硬件的地址轉(zhuǎn)換機(jī)構(gòu)來完成從相對地址到絕對地址的轉(zhuǎn)換工作。頁表是進(jìn)行地址轉(zhuǎn)換的依據(jù)。利用高速緩沖存儲器存放頁表的一部分,把存放在高速緩沖存儲器中的部分頁表稱為快表。采用快表后,使得地址轉(zhuǎn)換的時間大大下降。(七)虛擬存儲管理虛擬存儲器實(shí)際上是為擴(kuò)大主存容量而采用的一種管理技巧。采用虛擬存儲有兩個好處,第一,使主存空間能充分地被利用;第二,從用戶的角度來看,好象計算機(jī)系統(tǒng)提供了容量很大的主存儲器。虛擬存儲器的工作原理:把作業(yè)信息保留在磁盤上,當(dāng)要求裝入時,只將其中一部分先裝入主存
48、儲器,作業(yè)執(zhí)行過程中,若要訪問的信息不在主存中,則再設(shè)法把這些信息裝入主存。頁式虛擬存儲器的實(shí)現(xiàn)是借助大容量輔助存儲器(如磁盤)存放虛存中的實(shí)際信息,操作系統(tǒng)利用程序執(zhí)行時在時間上和空間上的局部性特點(diǎn),把當(dāng)前需要用的程序段和數(shù)據(jù)裝入主存儲器。且利用表格(如頁表)為用戶構(gòu)造一個虛擬空間(對不在主存的信息,指出存放在輔助存儲器中的位置)。硬件根據(jù)操作系統(tǒng)建立的表格進(jìn)行地址轉(zhuǎn)換,當(dāng)發(fā)現(xiàn)所要訪問的信息不在主存儲器中時,發(fā)出需要調(diào)度的中斷信號(如缺頁中斷)。操作系統(tǒng)處理這個中斷事件時,選擇一種好的調(diào)度算法對主存儲器和輔助存儲器中的信息進(jìn)行高效調(diào)度,盡可能避免“抖動”。頁面調(diào)度算法有最佳調(diào)度算法、最近最不
49、經(jīng)常使用調(diào)度算法等。先進(jìn)先出調(diào)度算法、最近最久未使用調(diào)度算法、3.1 概述一、存儲器的的三級結(jié)構(gòu)利用輔助存儲器提供的大容量存儲空間,存放準(zhǔn)備運(yùn)行的程序和數(shù)據(jù),當(dāng)需要時或主存空間允許時,隨時將它們讀入主存儲器。1、存儲器的三級結(jié)構(gòu):高速緩存(cache)、主存和輔存。2、高速緩存:解決CPU1存儲器的速度不匹配,是用時間換空間的技術(shù)。高速緩存是電流式,由晶體管組成(二級管和三級管),會使用溫度升高,影響數(shù)據(jù)的正確性。主存是電壓式,由電容器構(gòu)成,溫度低,便于增加密度,但速度慢。3、輔存:解決主存空間的不足,是用空間換時間的技術(shù)。二、存儲管理的功能1、主存儲器空間劃分:(1)系統(tǒng)區(qū):用來存放操作系統(tǒng)
50、與硬件的接口信息、操作系統(tǒng)的管理信息和程序、標(biāo)準(zhǔn)子程序等。(2)用戶區(qū):用來存放用戶的程序和數(shù)據(jù)。存儲管理是對主存空間的用戶區(qū)進(jìn)行管理,其目的是盡可能地方便用戶和提高主存空間的利用率。具體地說,存儲管理的功能如下:1 .主存空間的分配與回收。(分配回收)2 .實(shí)現(xiàn)地址轉(zhuǎn)換。(地址映射)3 .主存空間的共享與保護(hù)。(共享保護(hù))4 .主存空間的擴(kuò)充。(主存擴(kuò)充)三、地址重定位1 .絕對地址和相對地址絕對地址:主存空間的地址編號。與絕對地址對應(yīng)的主存空間稱為物理地址空間。相對地址:用戶程序中使用的地址。與相對地址對應(yīng)的存儲空間稱為邏輯地址空間。(用戶作業(yè)都從“0”地址開始往下編寫)為了保證作業(yè)的正確
51、執(zhí)行,必須根據(jù)分配給作業(yè)的主存空間對作業(yè)中指令和數(shù)據(jù)的存放地址進(jìn)行轉(zhuǎn)換,即要把相對地址轉(zhuǎn)換成絕對地址。把相對地址轉(zhuǎn)換成絕對地址的工作稱為重定位或地址轉(zhuǎn)換。重定位的方式可以有靜態(tài)重定位和動態(tài)重定位兩種。2 .重定位的方式(1)重定位:也稱地址轉(zhuǎn)換,是指把相對地址轉(zhuǎn)換成絕對地址的工作。(分為靜態(tài)重定位和動態(tài)重定位)(2)靜態(tài)重定位:地址轉(zhuǎn)換的時刻在入主存儲器時。(在作業(yè)裝入主存時,一次性完成地址重定位,用軟件完成)。(3)動態(tài)重定位:地址轉(zhuǎn)換的時刻在入處理器時(在指令執(zhí)行過程中重定位,需要硬件與軟件相結(jié)合)。-動態(tài)重定位支持程序浮動,即作業(yè)執(zhí)行時,被改變了存放區(qū)域的作業(yè)仍然能正確執(zhí)行。而采用靜態(tài)重
52、定位時,由于裝入主存儲器的作業(yè)信息已經(jīng)都是用絕對地址指示,故作業(yè)在執(zhí)行過程中時不能移動位置的。3.2連續(xù)分配存儲管理方式3.2.1 單用戶連續(xù)存儲管理方式一、存儲空間的分配1、主存空間劃分:系統(tǒng)區(qū)和用戶區(qū)。2、存儲空間分配方法:處理器中設(shè)置一個界限寄存器,存放當(dāng)前可供用戶使用的主存區(qū)域的起始地址。作業(yè)入主存儲器時總是存放到由界限寄存器指示的起始地址開始往下存儲。3、重定位:采用靜態(tài)重定位方式進(jìn)行地址轉(zhuǎn)換,即在作業(yè)裝入主存時,由裝入程序完成地址轉(zhuǎn)換。裝入程序只要把界限寄存器的值加到相對地址上就可完成地址轉(zhuǎn)換。4、存儲保護(hù):主存最大地址=絕對地址=界限地址,成立則可執(zhí)行,否則有地址錯誤,形成“地址
53、越界”的程序性中斷事件。5、缺點(diǎn):(1)當(dāng)作業(yè)執(zhí)行中出現(xiàn)了某個等待事件(如訪問外設(shè))時,處理器就處于空閑狀態(tài),不能被利用。(CP困用率低)(2) 一個作業(yè)獨(dú)占主存中的用戶區(qū),當(dāng)主存中有空閑區(qū)域時,也不能被其他作業(yè)利用,降低了主存空間的利用率。(主碳利用率低)(3)外圍設(shè)備也不能充分被利用。(外設(shè)利用率低,外設(shè)不能與CP訴行工作)二、覆蓋技術(shù)1、將作業(yè)劃分成若干段,其中有一個主程序段是作業(yè)執(zhí)行過程中經(jīng)常要用到的信息,而其他輔程序段是不會同時工作的。2、主程序段入駐留區(qū);其他輔程序段輪流入覆蓋區(qū)。三、對換技術(shù)在分時系統(tǒng)中,單用戶連續(xù)存儲管理可用對換方式讓多個用戶的作業(yè)輪流進(jìn)入主存儲器執(zhí)行。系統(tǒng)中必
54、須要有一個大容量的高速輔助存儲器,多個用戶的作業(yè)信息都被保留在磁盤上,把一個作業(yè)先裝入主存儲器讓它執(zhí)行。當(dāng)執(zhí)行中出現(xiàn)等待事件或用完一個時間片時,把該作業(yè)從存儲器換出,再把由調(diào)度程序選中的另一個作業(yè)換入到主存儲器中。四、擴(kuò)展知識1、計算機(jī)啟動的四大模塊(1)基本輸入輸出模塊(主板BIOSK片)(2) IO.SYS輸入輸出模塊(3) MSDOS.SYS!#管理模塊(核心)(4) COMMAND.COM處理模擬(人機(jī)交互的接口)2、計算機(jī)啟動變慢的原因(1)虛擬內(nèi)存文件(pagefile.sys)中垃圾信息太多(2)啟動加載項(xiàng)太多,特別是殺毒軟件(實(shí)時監(jiān)測工具)加載多個(3)硬盤碎片太多。3、主存空
55、間大小=物理內(nèi)存大小+各分區(qū)上虛擬內(nèi)存大小之和3.2.2固定分區(qū)存儲管理一、基本原理為解決主存空間利用率低和cpiJ用率低及外外設(shè)的利用低,而引入固定分區(qū)存儲管理。這種分區(qū)存儲管理與多道程序設(shè)計技術(shù)一起出現(xiàn)。將主存儲器中可分配的用戶區(qū)域預(yù)先劃分成若干個連續(xù)區(qū),每個連續(xù)區(qū)成為一個分區(qū)。每個分區(qū)的大小可以相同,也可以不同。每個分區(qū)僅可用來裝入一個作業(yè),但不允許在一個分區(qū)中同時裝入多個作業(yè)。二、主存空間的分配與回收系統(tǒng)設(shè)置一張“分區(qū)分配表”,用來說明各分區(qū)的分配和使用情況。表中指出各分區(qū)的起始地址和長度,并為每個分區(qū)設(shè)置一個標(biāo)志位。當(dāng)標(biāo)志位為“0”時表示分區(qū)空閑,當(dāng)標(biāo)志位非“0”時表示分區(qū)已被占用。三、地址轉(zhuǎn)換和存儲保護(hù)1、地址轉(zhuǎn)換:采用靜態(tài)重定位方式。2、存儲保護(hù):處理器設(shè)置一對寄存器,即“下限寄存器”和“上限寄存器”用來存放當(dāng)前進(jìn)程所對應(yīng)分區(qū)的下限地址和上限地址分別送入下限寄存器和上限寄存器。下限地址=絕對地址=上限地址成立則執(zhí)行,否則產(chǎn)生“地址越界”中斷。四、缺點(diǎn)出現(xiàn)了“內(nèi)零頭”,又稱碎片,是指主存中無法被利用的小空閑區(qū)。3.2.3可變分區(qū)存儲管理一、主存空間的分配與回收1、為解決內(nèi)零頭問題而引入可變分區(qū)存儲管理。2、分區(qū)的劃分:系統(tǒng)初始啟動時,主存儲器中除操作系統(tǒng)占用部分外,把整個用戶區(qū)看做一個大的空閑區(qū)。當(dāng)有作業(yè)要裝入主存儲器時,根據(jù)作業(yè)對主存空間的需要量,從空閑區(qū)中劃出
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專利代理居間合同樣本
- 物業(yè)管理委托合同
- 家庭室內(nèi)外裝修合同書
- 多模式跨境電子商務(wù)解決方案策劃與設(shè)計全案指南
- 研發(fā)項(xiàng)目管理作業(yè)指導(dǎo)書
- 生物技術(shù)與實(shí)驗(yàn)室技能作業(yè)指導(dǎo)書
- 電線電纜購銷合同
- 2025年天津年貨運(yùn)從業(yè)資格證考試從業(yè)從業(yè)資格資格題庫及答案
- 2025年烏魯木齊貨運(yùn)從業(yè)資格考試題目大全
- 小學(xué)青島版一年級數(shù)學(xué)上冊口算練習(xí)題總匯
- 《配電網(wǎng)設(shè)施可靠性評價指標(biāo)導(dǎo)則》
- 2024年國家電網(wǎng)招聘之通信類題庫附參考答案(考試直接用)
- ## 外事領(lǐng)域意識形態(tài)工作預(yù)案
- CJJ 169-2012城鎮(zhèn)道路路面設(shè)計規(guī)范
- 第八單元金屬和金屬材料單元復(fù)習(xí)題-2023-2024學(xué)年九年級化學(xué)人教版下冊
- 鋼鐵是怎樣煉成的保爾成長史
- 精神科護(hù)理技能5.3出走行為的防范與護(hù)理
- 煤礦機(jī)電運(yùn)輸培訓(xùn)課件
- 采購管理學(xué)教學(xué)課件
- 《供應(yīng)商質(zhì)量會議》課件
- 江蘇省科技企業(yè)孵化器孵化能力評價研究的中期報告
評論
0/150
提交評論