2011年度自學(xué)考試《操作系統(tǒng)》概述
1、操作系統(tǒng)的分類
按照操作系統(tǒng)提供的服務(wù),大致可以把操作系統(tǒng)分為有單道和多道之分的批處理系統(tǒng),有同時(shí)性和獨(dú)立性的分時(shí)系統(tǒng),有嚴(yán)格時(shí)間規(guī)定的實(shí)時(shí)系統(tǒng),可實(shí)現(xiàn)資源共享的網(wǎng)絡(luò)系統(tǒng),可協(xié)調(diào)多個(gè)計(jì)算機(jī)以完成一個(gè)共同任務(wù)的分布式系統(tǒng)。我們使有的windows是網(wǎng)絡(luò)式系統(tǒng)。
2、操作系統(tǒng)的結(jié)構(gòu)
操作系統(tǒng)具有層次結(jié)構(gòu)……轉(zhuǎn)自環(huán) 球 網(wǎng) 校edu24ol.com
層次結(jié)構(gòu)最大特點(diǎn)是整體問題局部化來(lái)優(yōu)化系統(tǒng),提高系統(tǒng)的正確性、高效性使系統(tǒng)可維護(hù)、可移植。
主要優(yōu)點(diǎn)是有利于系統(tǒng)設(shè)計(jì)和調(diào)試;主要困難在于層次的劃分和安排。
3、操作系統(tǒng)與用戶
(1)作業(yè)執(zhí)行步驟
操作系統(tǒng)提供給用戶表示作業(yè)執(zhí)行步驟的手段有兩種:作業(yè)控制語(yǔ)言和操作控制命令。
作業(yè)控制語(yǔ)言形成批處理作業(yè)。操作控制命令進(jìn)行交互處理。
(2)系統(tǒng)調(diào)用
操作系統(tǒng)提供的系統(tǒng)調(diào)用主要有:文件操作類,資源申請(qǐng)類,控制類,信息維護(hù)類系統(tǒng)調(diào)用往往在管態(tài)下執(zhí)行。
當(dāng)操作系統(tǒng)完成了用戶請(qǐng)求的“系統(tǒng)調(diào)用”功能后,應(yīng)使中央處理器從管態(tài)轉(zhuǎn)換到目態(tài)工作。
4、移動(dòng)技術(shù)
移動(dòng)技術(shù)是把某個(gè)作業(yè)移到另一處主存空間去(在磁盤整理中我們應(yīng)用的也是類似的移動(dòng)技術(shù))。最大好處是可以合并一些空閑區(qū)。
處理器管理
一、 多道程序設(shè)計(jì)系統(tǒng)
“多道程序設(shè)計(jì)系統(tǒng)” 簡(jiǎn)稱“多道系統(tǒng)”,即多個(gè)作業(yè)可同時(shí)裝入主存儲(chǔ)器進(jìn)行運(yùn)行的系統(tǒng)。在多道系統(tǒng)中一點(diǎn)必須的是系統(tǒng)須能進(jìn)行程序浮動(dòng)。所謂程序浮動(dòng)是指程序可以隨機(jī)地從主存的一個(gè)區(qū)域移動(dòng)到另一個(gè)區(qū)域,程序被移動(dòng)后仍不影響它的執(zhí)行。多道系統(tǒng)的好處在于提高了處理器的利用率;充分利用外圍設(shè)備資源;發(fā)揮了處理器與外圍設(shè)備以及外圍設(shè)備之間的并行工作能力??梢杂行У靥岣呦到y(tǒng)中資源的利用率,增加單位時(shí)間內(nèi)的算題量,從而提高了吞吐率。(關(guān)鍵詞:處理器,外圍設(shè)備,資源利用率,單位算題量,吞吐率),但要注意對(duì)每個(gè)計(jì)算問題來(lái)說(shuō)所需要的時(shí)間可能延長(zhǎng),另外由于系統(tǒng)的資源有限,會(huì)產(chǎn)生飽和,因此并行工作道數(shù)與系統(tǒng)效率不成正比。
二、進(jìn)程
1、概念
進(jìn)程是一個(gè)程序在一個(gè)數(shù)據(jù)集上的一次執(zhí)行。由定義知進(jìn)程關(guān)鍵組成是程序、數(shù)據(jù)集。
進(jìn)程通過一個(gè)控制塊來(lái)被系統(tǒng)所指揮,因此進(jìn)程由程序、數(shù)據(jù)集和進(jìn)程控制塊三部分組成。進(jìn)程控制塊是進(jìn)程存在的唯一標(biāo)志 .進(jìn)程是要執(zhí)行的,據(jù)這點(diǎn)可分將進(jìn)程的狀態(tài)分為等待態(tài)然后是就緒態(tài)最后是運(yùn)行態(tài)。
進(jìn)程的基本隊(duì)列也就是就緒隊(duì)列和等待隊(duì)列,(因?yàn)檫M(jìn)程運(yùn)行了,也就用不上排隊(duì)了,也就沒有運(yùn)行隊(duì)列了。)
如果進(jìn)程由一所在隊(duì)列退出的操作稱為出隊(duì),排入到一個(gè)指定的隊(duì)列的操作稱為入隊(duì)。系統(tǒng)中負(fù)責(zé)進(jìn)程入隊(duì)和出隊(duì)的工作稱為隊(duì)列管理。轉(zhuǎn)自環(huán) 球 網(wǎng) 校edu24ol.com
2、進(jìn)程的調(diào)度
我們使用不同的調(diào)度是為了優(yōu)化,具體說(shuō)來(lái)是提高處理器利用率,增大吞吐量,減少等待時(shí)間,縮短響應(yīng)時(shí)間。常用的算法有先來(lái)先服務(wù)、優(yōu)先數(shù)調(diào)度法、時(shí)間片輪轉(zhuǎn)調(diào)度法、分級(jí)調(diào)度(分級(jí)調(diào)度法可理解為多隊(duì)列法)。顧名思義來(lái)先服務(wù)調(diào)度是先來(lái)者,先服務(wù);優(yōu)先數(shù)算法是對(duì)每個(gè)進(jìn)程確定一個(gè)優(yōu)先數(shù),以決定先后。時(shí)間片輪轉(zhuǎn)法是把規(guī)定進(jìn)程一次使用處理器的最長(zhǎng)時(shí)間稱為“時(shí)間片”。讓就緒進(jìn)程按就緒的先后次序排成隊(duì)列,依次運(yùn)行。分級(jí)調(diào)度算法是由系統(tǒng)設(shè)置多個(gè)就緒隊(duì)列,每個(gè)就緒隊(duì)列中的進(jìn)程按時(shí)間片輪轉(zhuǎn)法占用處理器,這就是分級(jí)調(diào)度算法。
3、進(jìn)程的切換
進(jìn)程切換指一個(gè)進(jìn)程進(jìn)處理器,另一個(gè)進(jìn)程出處理器的過程。
若有一個(gè)進(jìn)程從運(yùn)行態(tài)變成等待態(tài),或完成工作后就撤消,則必定會(huì)發(fā)生進(jìn)程切換。
4、進(jìn)程同步和通信
進(jìn)程同步實(shí)際上是指并發(fā)進(jìn)程之間的制約關(guān)系。即一個(gè)進(jìn)程的執(zhí)行依賴另一個(gè)進(jìn)程的消息。沒有消息時(shí)等待,有消息進(jìn)被喚醒。
進(jìn)程通信是進(jìn)程之大量信息的方式。
5、進(jìn)程和死鎖(詳細(xì)見后)
三、可再入程序
一個(gè)能被多個(gè)用戶同時(shí)調(diào)用的程序稱做“可再入”的程序。
可再入程序必須是純代碼,即在執(zhí)行時(shí)自身不改變。
編譯程序和操作系統(tǒng)程序通常都是“可再入”程序。
存儲(chǔ)管理
一、中央處理器存儲(chǔ)下列中信息的速度依次為:寄存器最快;通過系統(tǒng)總線存取主存儲(chǔ)器的速度居中;輔助存儲(chǔ)器最慢。
寄存器用來(lái)存放臨時(shí)的工作信息和系統(tǒng)必須的控制信息。
主存儲(chǔ)器是CPU能直接訪問的惟一的存儲(chǔ)空間。
主存儲(chǔ)器中存放操作系統(tǒng)的核心部分,以及當(dāng)前需執(zhí)行的程序和數(shù)據(jù)。
主存儲(chǔ)器以“字節(jié)(BYTE)”為單位進(jìn)行編址
輔助存儲(chǔ)器是存放操作下的非核心部分和其他程序和數(shù)據(jù)。容量大且能永久保存信息
磁盤的信息可隨機(jī)存取,磁帶上的信息只能順序存取。
二、儲(chǔ)器的地址:
主存儲(chǔ)器以字節(jié)為編址單位
1、物理地址與邏輯地址。
物理地址(絕對(duì)地址):128MB的主存器有128×1024×1024=134217728 字節(jié),所以它的內(nèi)存絕對(duì)地址就是從0到134217727。
邏輯地址: 用戶程序中使用的從“0”地址開始的連續(xù)地址。
三、重定位
重定位即把邏輯地址轉(zhuǎn)換成絕對(duì)地址。
重定位的方式有“靜態(tài)重定位”和“動(dòng)態(tài)重定位”兩種。
(1)靜態(tài)重定位
在裝入一個(gè)作業(yè)時(shí),把作業(yè)中的指令地址和數(shù)據(jù)地址全部轉(zhuǎn)換成絕對(duì)地址。這種轉(zhuǎn)換工作是在作業(yè)開始前集中完成的,在作業(yè)執(zhí)行過程中無(wú)需再進(jìn)行地址轉(zhuǎn)換。所以稱為“靜態(tài)重定位”。
(2)動(dòng)態(tài)重定位
在裝入一個(gè)作業(yè)時(shí),不進(jìn)行地址轉(zhuǎn)換,而是直接把作業(yè)裝到分配的主區(qū)域中。在作業(yè)執(zhí)行過程中,每當(dāng)執(zhí)行一條指令時(shí)都由硬件的地址轉(zhuǎn)換機(jī)構(gòu)轉(zhuǎn)換成絕對(duì)地址。這種方式的地址轉(zhuǎn)換是在作業(yè)執(zhí)行時(shí)動(dòng)態(tài)完成的,所以稱為動(dòng)態(tài)重定位。
動(dòng)態(tài)重定位由軟件(操作系統(tǒng))和硬件(地址轉(zhuǎn)換機(jī)構(gòu))相互配合來(lái)實(shí)現(xiàn)。動(dòng)態(tài)重定位的系統(tǒng)支持“程序浮動(dòng)”,而靜態(tài)重定位則不能。
頁(yè)式管理
(1)采用頁(yè)式管理,使主存空間充分利用,頁(yè)不必為了得到連續(xù)空間而進(jìn)行移動(dòng)??梢蕴岣呦到y(tǒng)效率。
(2)頁(yè)式存儲(chǔ)管理中為什么要設(shè)置頁(yè)表和快表?
在頁(yè)式存儲(chǔ)管理中,主存被分成大小相等的若干塊,同時(shí)程序邏輯地址也分成與塊大小一致的若干頁(yè),這樣就可以按頁(yè)面為單位把作業(yè)的信息放入主存,并且可以不連續(xù)存放,為了表示邏輯地址中的頁(yè)號(hào)與主存中塊號(hào)的對(duì)應(yīng)關(guān)系,就需要為每個(gè)作業(yè)建立一張頁(yè)表。
頁(yè)表一般存放在主存中,當(dāng)要按給定的邏輯地址訪問主存時(shí),要先訪問頁(yè)表,計(jì)算出絕對(duì)地址,這樣兩次訪主存延長(zhǎng)了指令執(zhí)行周期,降低了執(zhí)行速度,而設(shè)置一個(gè)高速緩沖寄存器將頁(yè)表中的一部分存放進(jìn)去,這部分頁(yè)表就是快表,訪問主存時(shí)二者同時(shí)進(jìn)行,由于快表存放的是經(jīng)常使用的頁(yè)表內(nèi)容,訪問速度很快,這樣可以大大加快查找速度和指令執(zhí)行速度。
虛擬存儲(chǔ)
一、虛擬存儲(chǔ)器
虛擬存儲(chǔ)器是為“擴(kuò)大”主存容量而采用的一種設(shè)計(jì)技巧,就是它只裝入部分作業(yè)信息來(lái)執(zhí)行,好處在于借助于大容量的輔助存儲(chǔ)器實(shí)現(xiàn)小主存空間容納大邏輯地址空間的作業(yè)。
虛擬存儲(chǔ)器的容量由計(jì)算機(jī)的地址結(jié)構(gòu)(地址總線位數(shù))決定。如32位的,則最大的虛存容量為2^32=4294967296B=4GB。
二、敘述頁(yè)式虛擬存儲(chǔ)器的基本原理
頁(yè)式虛擬存儲(chǔ)器是在頁(yè)式存儲(chǔ)的基礎(chǔ)上實(shí)現(xiàn)虛擬存儲(chǔ)器的,其工作原理是:
首先把作業(yè)信息作為副本存放在磁盤上,作業(yè)執(zhí)行時(shí),把作業(yè)信息的部分頁(yè)面裝入主存,并在頁(yè)表中對(duì)相應(yīng)的頁(yè)面是否裝入主存作出標(biāo)志。
作業(yè)執(zhí)行時(shí)若所訪問的頁(yè)面已經(jīng)在主存中,則按頁(yè)式存儲(chǔ)管理方式進(jìn)行地址轉(zhuǎn)換,得到絕對(duì)地址,否則產(chǎn)生“缺頁(yè)中斷”由操作系統(tǒng)把當(dāng)前所需的頁(yè)面裝入主存。
若在裝入頁(yè)面時(shí)主存中無(wú)空閑塊,則由操作系統(tǒng)根據(jù)某種“頁(yè)面調(diào)度”算法選擇適當(dāng)?shù)捻?yè)面調(diào)出主存換入所需的頁(yè)面。
三、常用的頁(yè)面調(diào)度算法:FIFO、LRU、LFU
頁(yè)面調(diào)度:當(dāng)主頁(yè)中無(wú)空閑塊時(shí),為了裝入一個(gè)頁(yè)面,就必須按某種算法將主存中某個(gè)頁(yè)調(diào)出,調(diào)入所需裝入的頁(yè)面。
常用的算法有:先進(jìn)先出調(diào)度算法(FIFO)、最近最少使用調(diào)度算法(LRU)和最近最不常用調(diào)度算法(LFU)。
特別要注意掌握的就是LRU(最近最少使用調(diào)度算法)的算法,如何進(jìn)行調(diào)度。
5、缺頁(yè)中斷率
f=F/A,這里的f就稱為缺頁(yè)中斷率。
A為作業(yè)執(zhí)行中調(diào)入頁(yè)面的總次數(shù),F(xiàn)為訪問的頁(yè)面尚未裝入主存的次數(shù)。
四、段式虛擬存儲(chǔ)器的實(shí)現(xiàn)
段式虛擬存儲(chǔ)管理以段式存儲(chǔ)管理為基礎(chǔ),即在磁盤上保留作業(yè)的各個(gè)分段信息,作業(yè)執(zhí)行時(shí)把需要執(zhí)行的一段或幾段裝入主存。
在實(shí)際使用中,也要進(jìn)行查表和地址轉(zhuǎn)換以及“缺段中斷” 和調(diào)度(包括調(diào)出、裝入、移動(dòng)等)工作。
五、比較各種存儲(chǔ)管理方式的特征
單分區(qū)管理
除操作系統(tǒng)占用的一部分存儲(chǔ)空間外,其余的用戶區(qū)域作為一個(gè)連續(xù)的分區(qū)分配給用戶使用。
界限寄存器值+邏輯地址→絕對(duì)地址。
固定分區(qū)的管理分區(qū)數(shù)目、大小固定。
設(shè)置上、下限寄存器
邏輯地址+下限地址→絕對(duì)地址。
可變分區(qū)的管理 可變分區(qū)管理方式不是把作業(yè)裝入到已經(jīng)劃分好的分區(qū)中,而是在作業(yè)要求裝入主存儲(chǔ)器時(shí),根據(jù)作業(yè)需要的主存量和當(dāng)時(shí)的主存情況決定是否可以裝入該作業(yè)。
分區(qū)數(shù)目大小不定
設(shè)置基址、限長(zhǎng)寄存器
邏輯地址+基址寄存器的值→絕對(duì)地址。 基址值≤絕對(duì)地址≤基址值+限長(zhǎng)值。
頁(yè)式存儲(chǔ)管理 主存儲(chǔ)器分為大小相等的“塊”。
程序中的邏輯地址進(jìn)行分“頁(yè)”,頁(yè)的大小與塊的大小一致。
用頁(yè)表登記塊頁(yè)分配情況
邏輯地址的頁(yè)號(hào)部分→頁(yè)表中對(duì)應(yīng)頁(yè)號(hào)的起始地址→與邏輯地址的頁(yè)內(nèi)地址部分拼成絕對(duì)地址。 由頁(yè)表中的標(biāo)志位驗(yàn)證存取是否合法,根據(jù)頁(yè)表長(zhǎng)度判斷是否越界。
段存儲(chǔ)管理程序分段
每一段分配一個(gè)連續(xù)的主存區(qū)域,作業(yè)的各段可被裝到不相連的幾個(gè)區(qū)域中。
設(shè)置段表記錄分配情況
邏輯地址中的段號(hào)→查段表得到本段起始地址+段內(nèi)地址→絕對(duì)地址 由段表中的標(biāo)志位驗(yàn)證存取是否合法,根據(jù)段表長(zhǎng)度判斷是否越界。
頁(yè)式虛擬存儲(chǔ)管理 類似頁(yè)式管理將作業(yè)信息保存在磁盤上部分裝入主存。
類似頁(yè)式管理:
邏輯地址的頁(yè)號(hào)部分→頁(yè)表中對(duì)應(yīng)頁(yè)號(hào)的起始地址→與邏輯地址的頁(yè)內(nèi)地址部分拼成絕對(duì)地址。
若該頁(yè)對(duì)應(yīng)標(biāo)志為0,則硬件形成“缺頁(yè)中斷”先將該頁(yè)調(diào)入主存 類似頁(yè)式管理。
段式虛擬存儲(chǔ)管理 類似段式管理將作業(yè)信息保存在磁盤上部分裝入主存。
類似段式管理
只有單分區(qū)適用于單道系統(tǒng)。
只有單分區(qū)和固定分區(qū)的為靜態(tài)重定位,不需要硬件轉(zhuǎn)換機(jī)構(gòu)。其余為動(dòng)態(tài)重定位,需要硬件轉(zhuǎn)換。
六、可變分區(qū)經(jīng)常采用的主存分配算法
最先適應(yīng)分配算法:簡(jiǎn)單地說(shuō),就是在分區(qū)表中順序查找,找到夠大的空閑區(qū)就分配。
最優(yōu)適應(yīng)分配算法:挑選一個(gè)能滿足作業(yè)要求的最小空閑區(qū)。
最壞適應(yīng)分配算法:挑一個(gè)最大的空閑區(qū)分給作業(yè)使用。
七 、I/O保護(hù)
<1>特權(quán)指令:即可能影響系統(tǒng)安全的指令。全文是為保護(hù)輸入輸出的完整性,把“啟動(dòng)I/O”等的一類可能影響系統(tǒng)安全的指令定義為特權(quán)指令。
特權(quán)指令的使用權(quán)限:特權(quán)指令只允許操作系統(tǒng)使用,用戶程序不能使用特權(quán)指令。
用戶程序若要啟動(dòng)I/O,必須請(qǐng)求操作系統(tǒng)代為啟動(dòng)。優(yōu)點(diǎn)在于:這種方式不但保證安全地使用外圍設(shè)備,正確地傳送信息,而且可減少用戶為啟動(dòng)設(shè)備而必須了解外圍設(shè)備特性以及啟動(dòng)等工作,大大方便了用戶。
<2> 管態(tài)和目態(tài)
中央處理器的兩種工作方式:管態(tài)和目態(tài)。
在管態(tài)下,中央處理器可執(zhí)行包含特權(quán)指令在內(nèi)的一切指令;
目態(tài)次于管態(tài),在目態(tài)下,中央處理器不準(zhǔn)執(zhí)行特權(quán)指令。
操作系統(tǒng)在管態(tài)下工作,用戶程序在目態(tài)下工作。
<3> 存儲(chǔ)保護(hù)
操作系統(tǒng)與硬件如何配合來(lái)實(shí)現(xiàn)存儲(chǔ)保護(hù)的?
答:硬件中設(shè)置了兩個(gè)寄存器來(lái)限定用戶程序執(zhí)行時(shí)可以訪問的空間范圍。這兩個(gè)寄存器是基址寄存器和限長(zhǎng)寄存器,用來(lái)限定用戶程序執(zhí)行時(shí)可以訪問的主存空間范圍。
程序執(zhí)行時(shí),系統(tǒng)對(duì)每一個(gè)訪問內(nèi)存的地址進(jìn)行核對(duì):
“基址寄存器值≤訪問地址≤基址寄存器值+限長(zhǎng)寄存器值”成立,則允許訪問;否則,不允許訪問。
這樣就保護(hù)了該區(qū)域以外的存儲(chǔ)信息不受到破壞,一旦程序執(zhí)行中出錯(cuò)也不會(huì)涉及其他程序。
注:中央處理器在管態(tài)下執(zhí)行程序時(shí)候,對(duì)訪問主存的地址不進(jìn)行核對(duì)。
文件管理
一、存儲(chǔ)介質(zhì)是指可用來(lái)記錄信息的磁帶、硬磁盤組、軟磁盤片、卡片等。存儲(chǔ)介質(zhì)的物理單位定義為“卷”。
存儲(chǔ)設(shè)備與主存儲(chǔ)器之間進(jìn)行信息交換的物理單位是塊。塊定義為存儲(chǔ)介質(zhì)上存放的連續(xù)信息所組成的一塊區(qū)域。
邏輯上具有完整意義的信息集合稱為“文件”。
用戶對(duì)文件內(nèi)的信息按邏輯上獨(dú)立的含義劃分的信息單位是記錄,每個(gè)單位為一個(gè)邏輯記錄。
二、文件
1、文件的目錄
(1)文件目錄是用來(lái)檢索文件的。文件目錄由若干目錄項(xiàng)組成。目錄項(xiàng)記錄文件的有關(guān)信息。
(2)文件目錄的結(jié)構(gòu)
包括一級(jí)目錄結(jié)構(gòu)、二級(jí)目錄結(jié)構(gòu)和樹形(多級(jí))目錄結(jié)構(gòu)。
樹形目錄允許用戶在自己的文件中再建立子目錄。從根目錄到文件之間所有各級(jí)子目錄名和該文件名的順序組合稱為文件的“路徑名”,路徑分為絕對(duì)路徑,相對(duì)路徑。
2、文件的分類
文件可以按各種方法進(jìn)行分類:
按用途:系統(tǒng)文件、庫(kù)文件、用戶文件
按保護(hù)級(jí)別:可執(zhí)行文件、只讀文件、讀寫文件
按信息流向:輸入文件、輸出文件、輸入輸出文件
按存放時(shí)限:臨時(shí)文件、永久文件、檔案文件
按設(shè)備類型:磁盤文件、磁帶文件、卡片文件、打印文件
按文件組織結(jié)構(gòu):邏輯文件、物理文件(順序文件、鏈接文件、索引文件)
3、文件的存取方式
順序存取,隨機(jī)存取。
文件的存取方式有順序存取和隨機(jī)存取兩種。磁帶上的文件只能順序存取,磁盤上的文件既可采用順序方式也可用隨機(jī)方式存取。
4、文件的結(jié)構(gòu)
1、邏輯結(jié)構(gòu)
用戶構(gòu)造的文件稱為文件的邏輯結(jié)構(gòu)。如用戶的一篇文檔、一個(gè)數(shù)據(jù)庫(kù)記錄文件等。邏輯文件有兩種形式:流式文件和記錄式文件。
流式文件是指用戶對(duì)文件內(nèi)信息不再劃分的可獨(dú)立的單位,如我們的word文件,圖片文件等。整個(gè)文件是以順序的一串信息組成。
記錄式文件:是指用戶對(duì)文件內(nèi)信息按邏輯上獨(dú)立的含義再劃分信息單位,每個(gè)單位為一個(gè)邏輯記錄。記錄式文件可以存取的最小單位是記錄項(xiàng)。每個(gè)記錄可以獨(dú)立存取。這個(gè)在數(shù)據(jù)庫(kù)中我們學(xué)得比較多,容易理解。
2、物理結(jié)構(gòu)
由文件系統(tǒng)在存儲(chǔ)介質(zhì)上的文件構(gòu)造方式稱為文件的物理結(jié)構(gòu)。物理結(jié)構(gòu)有:
1)順序結(jié)構(gòu):在磁盤上就是一塊接著一塊地放文件。邏輯記錄的順序和磁盤順序文件塊的順序一致。順序文件的最大優(yōu)點(diǎn)是存取速度快(可以連續(xù)訪問)。
2)鏈接結(jié)構(gòu):把磁盤分塊,把文件任意存入其中,再用指針把各個(gè)塊按順序鏈接起來(lái)。這樣所有空閑塊都可以被利用,在順序讀取時(shí)效率較高但需要隨機(jī)存取時(shí)效率低下(因?yàn)橐獜牡谝粋€(gè)記錄開始讀取查找)。
3)索引結(jié)構(gòu):磁盤不分塊,文件的邏輯記錄任意存放在磁盤中,通過一張“索引表”指示每個(gè)邏輯記錄存放位置。這樣,訪問時(shí)根據(jù)索引表中的項(xiàng)來(lái)查找磁盤中的記錄,既適合順序存取記錄,也可以隨機(jī)存取記錄,并且容易實(shí)現(xiàn)記錄的增刪和插入,所以索引結(jié)構(gòu)被廣泛應(yīng)用。
5、文件的保護(hù)與保密
1)文件的保護(hù)是防止文件被破壞,。文件的保密是防止文件被竊取。
2)文件的保護(hù)措施:
防止系統(tǒng)故障造成的破壞,可以采建立副本和定時(shí)轉(zhuǎn)儲(chǔ)的方法;為了防止用戶共享文件可能造成的文件破壞,可以采用樹形目錄結(jié)構(gòu)、存取控制表和規(guī)定文件使用權(quán)限的方法。
3)文件的常用保密措施:隱藏文件目錄、設(shè)置口令和使用密碼(加密)等。
三、記錄的成組與分解
1、記錄的成組與分解的原因:由于磁盤塊的大小是預(yù)先劃分好的,大小固定,而邏輯記錄的大小是用戶文件性質(zhì)決定的,不一定和塊大小一致。
2、記錄的成組:把若干個(gè)邏輯記錄存入一個(gè)塊的工作稱為“記錄的成組”。每塊中邏輯記錄的個(gè)數(shù)稱“塊因子”。
3、記錄的分解:這是記錄成組的一個(gè)逆過程。經(jīng)程是先從磁盤中找到記錄所在的塊,并將本塊讀入主存緩沖區(qū),再?gòu)木彌_區(qū)取出所需要的記錄送到用戶工作區(qū)。如果用戶所需的記錄已經(jīng)在緩沖區(qū)中,則不需要啟動(dòng)外設(shè)讀塊信息,這也可以提高系統(tǒng)工作效率。
四、存儲(chǔ)空間的分配與回收
1、用位示圖進(jìn)行磁盤存儲(chǔ)空間的分配與回收。
2、用空閑塊表進(jìn)行磁盤存儲(chǔ)空間的分配與回收:如同主存管理中的空閑區(qū)表,表每一行記錄一組連續(xù)空閑塊的首塊號(hào)和空閑塊數(shù),空閑塊數(shù)為“0”的登記項(xiàng)為“空”登記項(xiàng)。
一、作業(yè)和作業(yè)步
1、作業(yè):我們把用戶要求計(jì)算機(jī)系統(tǒng)處理的一個(gè)問題稱為一個(gè)“作業(yè)”。
2、作業(yè)步:完成作業(yè)的每一個(gè)步聚稱為“作業(yè)步”。
二、作業(yè)控制方式
1、作業(yè)控制方式,包括批處理方式和交互方式。
批處理控制方式:也稱脫機(jī)控制方式或自動(dòng)控制方式。就是一下子交待任務(wù),執(zhí)行過程中不再干涉。
交互控制方式:也稱聯(lián)機(jī)控制方式。就是一步一步地交待任務(wù)。做好了一步,再做下一步。
2、批處理作業(yè)的控制(領(lǐng)會(huì))
1)按用戶提交的作業(yè)控制說(shuō)明書控制作業(yè)的執(zhí)行。
2)一個(gè)作業(yè)步的工作往往由多個(gè)進(jìn)程的合作來(lái)完成。
3)一個(gè)作業(yè)步的工作完成后,繼續(xù)下一個(gè)作業(yè)步的作業(yè),直至作業(yè)執(zhí)行結(jié)束。
3、交互式作業(yè)的管理(領(lǐng)會(huì))
1)交互式作業(yè)的特點(diǎn): 交互式作業(yè)的特點(diǎn)主要表現(xiàn)在交互性上,它采用人機(jī)對(duì)話的方式工作。
2)交互式作業(yè)的控制:一種是操作使用接口,另一種是命令解釋執(zhí)行。
操作使用接口包括操作控制命令,菜單技術(shù),窗口技術(shù)。
命令的解釋執(zhí)行 一類是操作系統(tǒng)中的相應(yīng)處理模塊直接解釋執(zhí)行; 另一類必須創(chuàng)建用戶進(jìn)程去解釋執(zhí)行。
3、終端用戶控制終端作業(yè)的執(zhí)行大致有四個(gè)階段:終端的連接、用戶注冊(cè)、控制作業(yè)執(zhí)行和用戶退出。
三、批處理作業(yè)的調(diào)度及調(diào)度算法(綜合應(yīng)用)
1、批處理作業(yè):采用批處理控制方式的作業(yè)稱為“批處理作業(yè)”。
2、批處理作業(yè)進(jìn)入系統(tǒng)時(shí)必須提交:源程序、運(yùn)行時(shí)的數(shù)據(jù)、用作業(yè)控制語(yǔ)言書寫的作業(yè)控制說(shuō)明書。
3、批處理作業(yè)的輸入:操作員只要用“預(yù)輸入命令”啟動(dòng)SPOOL系統(tǒng)中的“預(yù)輸入程序”工作就可把作業(yè)流中的作業(yè)信息存放到“輸入井”中。等待系統(tǒng)的調(diào)度。
4、什么叫作業(yè)調(diào)度?作業(yè)調(diào)度選擇作業(yè)的必要條件是什么?
答:作業(yè)調(diào)度是指按一定的策略從“輸入井”中選擇資源能得到滿足的作業(yè)裝入主存儲(chǔ)器,使作業(yè)能有機(jī)會(huì)占用處理器執(zhí)行。作業(yè)調(diào)度選擇作業(yè)的必要條件是系統(tǒng)中現(xiàn)有的尚未分配的資源能夠滿足該作業(yè)的資源要求。
5、作業(yè)調(diào)度與進(jìn)程調(diào)度
作業(yè)調(diào)度的職責(zé)是把輸入井中的作業(yè)裝入主存。
進(jìn)程調(diào)度的職責(zé)就是選擇當(dāng)前可占用處理器的進(jìn)程。
設(shè)備管理
一、輸入輸出操作(要求達(dá)到“識(shí)記”層次)
1、什么是輸入輸出操作:主存儲(chǔ)器與外圍設(shè)備之間的信息傳送操作稱為輸入輸出操作。
2、對(duì)于存儲(chǔ)型設(shè)備,輸入輸出操作的信息傳輸單位為“塊”。對(duì)輸入輸出型設(shè)備,輸入輸出操作的信息傳輸單位為“字符”。
二、獨(dú)占設(shè)備和共享設(shè)備(識(shí)記)
1、獨(dú)占設(shè)備是指每次只能供一個(gè)作業(yè)執(zhí)行期間單獨(dú)使用的設(shè)備。如輸入機(jī)、磁帶機(jī)、打印機(jī)等。
2、共享設(shè)備是指允許幾個(gè)作業(yè)執(zhí)行期間可同時(shí)使用的設(shè)備。共享設(shè)備的“同時(shí)使用”的含義是指多個(gè)作業(yè)可以交替啟動(dòng)共享設(shè)備,其實(shí)是當(dāng)一個(gè)用業(yè)正在使用設(shè)備時(shí)其他作業(yè)暫不能使用,即每一時(shí)刻仍只有一個(gè)作業(yè)占用,但當(dāng)一個(gè)作業(yè)正在使用設(shè)備時(shí)其他作業(yè)就可使用。
三、獨(dú)占設(shè)備的分配(領(lǐng)會(huì))
1、獨(dú)占設(shè)備的絕對(duì)號(hào)與相對(duì)號(hào)
這和絕對(duì)地址/相對(duì)地址的概念類似。絕對(duì)號(hào)就是將每一臺(tái)設(shè)備確定一個(gè)編號(hào)(相當(dāng)于一個(gè)絕對(duì)地址)。相對(duì)號(hào)就是為了用戶程序的方便而設(shè)的,在用戶請(qǐng)求使用時(shí),采用“設(shè)備類-相對(duì)號(hào)”來(lái)提出使用設(shè)備要求。由系統(tǒng)建立絕對(duì)號(hào)與“設(shè)備類-相對(duì)號(hào)”之間的關(guān)系,就能正確啟用設(shè)備了。
2、設(shè)備的指定方式
1) 設(shè)備絕對(duì)號(hào):系統(tǒng)為每一個(gè)設(shè)備確定一個(gè)唯一的編號(hào)。
2)設(shè)備相對(duì)號(hào):不具體指定是哪臺(tái)設(shè)備,只說(shuō)明要某類設(shè)備多少臺(tái),這樣可以由系統(tǒng)靈活分配。
3)設(shè)備獨(dú)立性:采用“設(shè)備類、相對(duì)號(hào)”方式使用設(shè)備時(shí),用戶編程時(shí)使用的設(shè)備與實(shí)際使用哪臺(tái)設(shè)備無(wú)關(guān),這就是“設(shè)備獨(dú)立性”。
4)如何實(shí)現(xiàn)獨(dú)占性設(shè)備分配:對(duì)于獨(dú)占性設(shè)備,系統(tǒng)采用“靜態(tài)分配”的策略,就是當(dāng)一個(gè)作業(yè)所需使用的獨(dú)占設(shè)備能得到滿足時(shí),該作業(yè)才能被裝入主存儲(chǔ)器執(zhí)行。
在操作系統(tǒng)中,設(shè)置“設(shè)備分配表”來(lái)記錄計(jì)算機(jī)系統(tǒng)所配置的獨(dú)占設(shè)備類型、臺(tái)數(shù)和分配情況等。設(shè)備分配表由“設(shè)備類表”和“設(shè)備表”兩部分組成。通過查表和修改表的操作完成設(shè)備分配工作。
四、磁盤的驅(qū)動(dòng)調(diào)度(領(lǐng)會(huì))
1、 磁盤的結(jié)構(gòu)
還記得小學(xué)時(shí)的作業(yè)嗎?秒,分,小時(shí)?)這也一樣,扇區(qū)套在磁道里,磁道套在柱面里,柱面套在一個(gè)磁盤里。接下來(lái)的問題就是被除數(shù)=除數(shù)×商+余數(shù)了。明白了嗎?
2、訪問磁盤的操作時(shí)間
3、磁盤的驅(qū)動(dòng)調(diào)度:系統(tǒng)決定等待磁盤訪問者的執(zhí)行次序的工作就是磁盤的“驅(qū)動(dòng)調(diào)度”。
4、對(duì)磁盤進(jìn)行驅(qū)動(dòng)調(diào)度的目的:有利于系統(tǒng)效率的提高。
5、磁盤調(diào)度分為移臂調(diào)度和旋轉(zhuǎn)調(diào)度。
6、移臂調(diào)度算法包括以下四種:
1) 先來(lái)先服務(wù)算法;
根據(jù)訪問者提出訪問請(qǐng)求的先后次序來(lái)決定執(zhí)行次序。
2) 最短尋找時(shí)間優(yōu)先調(diào)度算法;
從等待的訪問者中挑選尋找時(shí)間最短的那個(gè)請(qǐng)求執(zhí)行,而不管訪問者的先后次序。
3) 電梯調(diào)度算法;
從移動(dòng)臂當(dāng)前位置沿移動(dòng)方向選擇最近的那個(gè)柱面的訪問者來(lái)執(zhí)行,若該方向上無(wú)請(qǐng)求訪問時(shí),就改變移動(dòng)方向再選擇。
4) 單向掃描調(diào)度算法。
從0柱面開始往里單向掃描,掃到哪個(gè)執(zhí)行哪個(gè)。
7、信息的優(yōu)化分布:知道信息在磁盤上排列不一定是按順序最優(yōu),對(duì)于一些能預(yù)知處理要求的信息采用優(yōu)化分頁(yè)可以縮短輸入輸出操作時(shí)間,提高系統(tǒng)效率。
五、外圍設(shè)備的啟動(dòng)(識(shí)記)
1、通道(channel):計(jì)算機(jī)系統(tǒng)中能夠獨(dú)立完成輸入輸出操作的硬件裝置。是CPU與設(shè)備的橋梁。
注解:CPU并不直接操作外圍設(shè)備,他連接通道(I/O處理機(jī)),通道連接設(shè)備控制器,設(shè)備控制器連接設(shè)備。CPU只需把“I/O”設(shè)備啟動(dòng),并給出相關(guān)的操作要求。然后就由通道來(lái)處理輸入輸出事宜,做完后報(bào)告CPU。
2、通道地址字(CAW)和通道狀態(tài)字(CSW)
用來(lái)存放通道程序首地址的主存固定單元稱為“通道地址字”。
通道狀態(tài)字:用于記錄通道和設(shè)備執(zhí)行情況的主存單元。
3、I/O中斷:是指中央處理器和通道協(xié)調(diào)工作的一種手段。通道借助I/O中斷請(qǐng)求CPU進(jìn)行干預(yù),CPU根據(jù)產(chǎn)生的I/O中斷事件了解輸入輸出操作的執(zhí)行情況,I/O中斷事件是由于通道程序的執(zhí)行或其他外界原因引起的,對(duì)通道操作而言,當(dāng)操作正常結(jié)束或異常結(jié)束(如設(shè)備故障、設(shè)備特殊情況引起異常結(jié)束)形成I/O中斷,由CPU根據(jù)相應(yīng)情況分別處理。
六、虛擬設(shè)備SPOOL系統(tǒng)(領(lǐng)會(huì))
1、實(shí)現(xiàn)虛擬設(shè)備的目的:用一種物理設(shè)備模擬另一類物理設(shè)備,使各作業(yè)在執(zhí)行期間只使用虛擬的設(shè)備而不直接使用物理的獨(dú)占設(shè)備。這種技術(shù)可使獨(dú)占的設(shè)備變成可共享的設(shè)備,使得設(shè)備的利用率和系統(tǒng)效率都能得到提高。
2、實(shí)現(xiàn)虛擬設(shè)備的硬件條件:大容量磁盤;中斷裝置和通道;中央處理器與通道并行工作的能力。
實(shí)現(xiàn)虛擬設(shè)備的軟件條件是要求操作系統(tǒng)采用多道程序設(shè)計(jì)技術(shù)。
3、虛擬設(shè)備的實(shí)現(xiàn)原理:對(duì)于多道程序,輸入時(shí)將一批作業(yè)的信息通過輸入設(shè)備預(yù)先傳送到磁盤上。輸出時(shí)將作業(yè)產(chǎn)生的結(jié)果也全部暫時(shí)存在磁盤上而不直接輸出,直到一個(gè)作業(yè)得到全部結(jié)果而執(zhí)行結(jié)束時(shí)再行輸出。這樣在執(zhí)行過程中,不需要使用輸入機(jī)和打印機(jī)。因此在配置一臺(tái)輸入機(jī)和打印機(jī)的情況下,可以讓多個(gè)作業(yè)同時(shí)執(zhí)行,并且各個(gè)作業(yè)請(qǐng)求輸入信息和輸出結(jié)果的要求都能及時(shí)得到滿足和實(shí)現(xiàn)。
4、SPOOL系統(tǒng)的組成和實(shí)現(xiàn):
井:為實(shí)現(xiàn)虛擬設(shè)備在磁盤上劃出的專用存儲(chǔ)空間,用于存放作業(yè)的初始信息和執(zhí)行結(jié)果。
SPOOL系統(tǒng)由三部分程序組成:
1、預(yù)輸入程序。通過該程序把作業(yè)流中每個(gè)作業(yè)的初始信息傳送到輸入井保存,以備作業(yè)執(zhí)行時(shí)使用。
2、井管理程序:根據(jù)作業(yè)的請(qǐng)求,保證作業(yè)正確及時(shí)地從“井”中讀取或?qū)懗鲂畔ⅰ?/p>
3、緩輸出程序。它負(fù)責(zé)查看“輸出井”中是否有待輸出的結(jié)果信息,若有則啟動(dòng)打印機(jī)把作業(yè)結(jié)果輸出。
4、spool系統(tǒng)可以縮短作業(yè)執(zhí)行時(shí)間的原因。
作業(yè)的執(zhí)行時(shí)間是指作業(yè)被裝入主存儲(chǔ)器到產(chǎn)生全部結(jié)果所需要的時(shí)間。在SP在SPOOL系統(tǒng)控制下,作業(yè)執(zhí)行時(shí)從磁盤上讀/寫信息代替低速的輸入機(jī)和打印機(jī)的讀/寫操作,信息傳送的速率顯然是快得多。因此作業(yè)的執(zhí)行時(shí)間就縮短了。
死鎖:(就是路口的塞車現(xiàn)象 )
若系統(tǒng)中存在一組進(jìn)程(兩個(gè)或多個(gè)進(jìn)程),它們中的每一個(gè)進(jìn)程都占用了某種資源而又都在等待其中另一個(gè)進(jìn)程所占用的資源,這種等待永遠(yuǎn)不能結(jié)束,則說(shuō)系統(tǒng)出現(xiàn)了“死鎖”?;蛘f(shuō)這組進(jìn)程處于“死鎖”狀態(tài)。
一、死鎖的防止(簡(jiǎn)單應(yīng)用)
1、系統(tǒng)出現(xiàn)死鎖必然出現(xiàn)以下情況:
1)互斥使用資源
2)占有并等待資源
3)不可搶奪資源
4)循環(huán)等待資源
2、死鎖的防止策略:破壞產(chǎn)生死鎖的條件中的一個(gè)就可以了。
常用的方法有:靜態(tài)分配、按序分配、搶奪式分配3種。
二、死鎖的避免(簡(jiǎn)單應(yīng)用)
1、死鎖的避免是讓系統(tǒng)處于安全狀態(tài),來(lái)避免發(fā)生死鎖。
安全狀態(tài):如果操作系統(tǒng)能保證所有的進(jìn)程在有限的時(shí)間內(nèi)得到需要的全部資源,則稱系統(tǒng)處于“安全狀態(tài)”。
2、銀行算法是怎樣避免死鎖的:
計(jì)算機(jī)銀行家算法是通過動(dòng)態(tài)地檢測(cè)系統(tǒng)中資源分配情況和進(jìn)程對(duì)資源的需求情況,在保證到少有一個(gè)進(jìn)程能得到所需要的全部資源,從而能確保系統(tǒng)處于安全狀態(tài)進(jìn),才把資源分配給申請(qǐng)者,從而避免了進(jìn)程共享資源時(shí)系統(tǒng)發(fā)生死鎖。
采用銀行家算法時(shí)為進(jìn)程分配資源的方式:
1)對(duì)每一個(gè)首次申請(qǐng)資源的進(jìn)程都要測(cè)試該進(jìn)程對(duì)資源的最大的需求量。如果系統(tǒng)現(xiàn)存資源可以滿足他的最大需求量,就按當(dāng)前申請(qǐng)量為分配資源。 否則推遲分配。
2)進(jìn)程執(zhí)行中繼續(xù)申請(qǐng)資源時(shí),先測(cè)試該進(jìn)程已占用資源數(shù)和本次申請(qǐng)資源總數(shù)有沒有超過最大需求量。超過就不分配。
若沒有超過,再測(cè)試系統(tǒng)現(xiàn)存資源是否滿足進(jìn)程尚需的最大資源量,滿足則按當(dāng)前申請(qǐng)量分配,否則也推遲分配。
總之,銀行家算法要保證分配資源時(shí)系統(tǒng)現(xiàn)存資源一定能滿足至少一個(gè)進(jìn)程所需的全部資源。
(銀行家算法在操作系統(tǒng)的實(shí)踐考試中可能會(huì)用到)
三、死鎖的檢測(cè)和解除(領(lǐng)會(huì))
死鎖的檢測(cè)
就是既不打預(yù)防針,也不去避免得病,而是經(jīng)常去體檢,如果發(fā)現(xiàn)有病了就治療。這是一種事后解決的辦法,也算是解決死鎖問題的一條途徑。但這畢竟要付出較大代價(jià)。
重點(diǎn)是:分析與時(shí)間有關(guān)的錯(cuò)誤;用PV操作實(shí)現(xiàn)進(jìn)程的同步與互斥;用信箱實(shí)現(xiàn)進(jìn)程通信。
一、進(jìn)程的順序性與并發(fā)性(領(lǐng)會(huì))
1、進(jìn)程的順序性:任何進(jìn)程在順序的處理器上的執(zhí)行是嚴(yán)格按照順序進(jìn)行的,每次只能執(zhí)行一個(gè)操作。這就是進(jìn)程的順序性。
當(dāng)一個(gè)進(jìn)程獨(dú)占處理器順序執(zhí)行時(shí),具有兩個(gè)特性:一、封閉性 二、可再現(xiàn)性。封閉性是說(shuō)進(jìn)程的執(zhí)行結(jié)果只取決于進(jìn)程本身,不受外界影響。可再現(xiàn)性是說(shuō)當(dāng)進(jìn)程重復(fù)執(zhí)行時(shí),必定獲得相同的結(jié)果。
2、進(jìn)程的可同時(shí)執(zhí)行:指一個(gè)進(jìn)程沒有完,另一個(gè)就可以開始。在時(shí)間上是可重疊的,我們把這個(gè)叫做進(jìn)程的可同時(shí)執(zhí)行。
3、進(jìn)程的并發(fā)性:系統(tǒng)中存在一組可同時(shí)執(zhí)行的進(jìn)程。并發(fā)進(jìn)程相互之間可能是無(wú)關(guān)的,也可能是交往的。
并發(fā)進(jìn)程的執(zhí)行速度取決于自身和進(jìn)程調(diào)度策略。二者缺一不可,執(zhí)行速度不能由自己決定。
4、與時(shí)間有關(guān)的錯(cuò)誤 :有交往的并發(fā)進(jìn)程交替使用共享資源時(shí)會(huì)出現(xiàn)錯(cuò)誤,錯(cuò)誤與時(shí)間有關(guān),稱為與時(shí)間有關(guān)的錯(cuò)誤。其錯(cuò)誤的根本原因是這些進(jìn)程交叉使用了共享變量。
二、相關(guān)臨界區(qū)
1、并發(fā)進(jìn)程中與共享變量有關(guān)的程序段稱為“臨界區(qū)”。并發(fā)進(jìn)程中涉及到相同變量的那些程序段是相關(guān)臨界區(qū)。
2、對(duì)相關(guān)臨界區(qū)的管理的基本要求。
對(duì)相關(guān)臨界區(qū)管理的基本原則是:如果有進(jìn)程在相關(guān)臨界區(qū)執(zhí)行,則不讓另一個(gè)進(jìn)程進(jìn)入相關(guān)的臨界區(qū)執(zhí)行。
五、進(jìn)程的同步(綜合應(yīng)用)
1、進(jìn)程同步的含義:進(jìn)程的同步是指并發(fā)進(jìn)程之間存在一種制約關(guān)系,一個(gè)進(jìn)程的執(zhí)行依賴另一個(gè)進(jìn)程的消息,當(dāng)一個(gè)進(jìn)程沒有得到另一個(gè)進(jìn)程的消息時(shí)應(yīng)等待,直到消息到達(dá)才被喚醒。
“生產(chǎn)者”與“消費(fèi)者”是同步問題的典型例子。
這里有兩個(gè)消息量:一是“緩沖器里有物品”,二是“可把物品存入緩沖器”,這兩個(gè)消息量對(duì)應(yīng)需要兩個(gè)信號(hào)量SPut和SGet.SP的初始值為1,如果初始時(shí)可用的緩沖器為n個(gè),則SP=n;SG的初始值為0。
生產(chǎn)者進(jìn)程調(diào)用P(SP)和V(SG),消費(fèi)者進(jìn)程調(diào)用P(SG)和V(SP),根據(jù)SG和SP的值來(lái)決定是否可以存或取物。
2、正確使用PV操作實(shí)現(xiàn)進(jìn)程同步。
(1)用一個(gè)信號(hào)量與一個(gè)消息聯(lián)系起來(lái),當(dāng)信號(hào)量的值為0時(shí)表示期望的消息尚未產(chǎn)生,當(dāng)信號(hào)量值為非0時(shí)表示期望的消息已經(jīng)存在。
(2)在用PV操作實(shí)現(xiàn)同步時(shí),一個(gè)信號(hào)量與一個(gè)消息量聯(lián)系在一起,當(dāng)有多個(gè)消息時(shí)必須定義多個(gè)信號(hào)量;測(cè)試不同的消息是否到達(dá)或發(fā)送不同消息時(shí),應(yīng)對(duì)不同的信號(hào)調(diào)用P操作或V操作。
(3)仔細(xì)領(lǐng)會(huì)教材中的例子,關(guān)于PV操作,在考試中出現(xiàn)的可能性極大,但是難度基本不超過教材上例題。見本欄的高手切磋。
3、使用PV操作實(shí)現(xiàn)進(jìn)程同步與互斥的混合問題。
進(jìn)程的同步與進(jìn)程的互斥都涉及到并發(fā)進(jìn)程訪問共享資源的問題??梢钥吹竭M(jìn)程的互斥實(shí)際上是進(jìn)程同步的一種特殊情況。若干進(jìn)程互斥使用資源時(shí),一個(gè)等待使用資源的的進(jìn)程在得到占用資源的進(jìn)程發(fā)出“歸還資源”的消息(調(diào)用了V操作)后,它就可去使用資源。因此,互斥使用資源的進(jìn)程之間實(shí)際上也存在一個(gè)進(jìn)程依賴另一個(gè)進(jìn)程發(fā)出信息的制約關(guān)系。所以,也把進(jìn)程的互斥與進(jìn)程的同步稱為進(jìn)程的同步。
六、進(jìn)程通信(領(lǐng)會(huì))
1、進(jìn)程通信的含義:通過專門的通信機(jī)制實(shí)現(xiàn)進(jìn)程間交換大量信息的通信方式稱為“進(jìn)程通信”
2、實(shí)現(xiàn)進(jìn)程通信的基本原語(yǔ):有兩條:“send(發(fā)送)”和“receive(接收)”原語(yǔ)。
3、利用信箱通信時(shí)“發(fā)送”和“接收”原語(yǔ)的功能。
send(N,M) 功能:把信件M送到指定的信箱N中。
receive(N,X) 功能:從指定信箱N中取出一封信,存放到指定的地址X中。
4、信箱的基本結(jié)構(gòu):一個(gè)信箱由“信箱說(shuō)明”和“信箱體”兩部分組成。
七、線程的概念(識(shí)記)
線程是進(jìn)程中可獨(dú)立執(zhí)行的子任務(wù),一個(gè)進(jìn)程中可以有一個(gè)或多個(gè)線程,每個(gè)線程都有一個(gè)唯一的標(biāo)識(shí)符。
支持線程管理的操作系統(tǒng)有Mach,OS/2,WindowsNT,UNIX等。
中斷及中斷機(jī)制
一、中斷
1、中斷。
2、中斷的類型。
從中斷事件的性質(zhì)出發(fā),中斷可以分為兩大類:
1)強(qiáng)迫性中斷事件 包括硬件故障中斷,程序性中斷,外部中斷和輸入輸出中斷等。
2)自愿性中斷事件 是由正在運(yùn)行的進(jìn)程執(zhí)行一條訪管指令用以請(qǐng)求系統(tǒng)調(diào)用而引起的中斷,這種中斷也稱為“訪管中斷”。
一般情況下,優(yōu)先級(jí)的高低順序依次為:硬件故障中斷、自愿中斷、程序性中斷,外部中斷和輸入輸出中斷。
自愿中斷的斷點(diǎn)是確定的,而強(qiáng)迫性中斷的斷點(diǎn)可能發(fā)生在任何位置。
3、中斷的響應(yīng)。
中斷響應(yīng) (硬件即中斷裝置操作)
處理器每執(zhí)行一條指令后,硬件的中斷位置立即檢查有無(wú)中斷事件發(fā)生,若有中斷事件發(fā)生,則暫?,F(xiàn)行進(jìn)程的執(zhí)行,而讓操作系統(tǒng)的中斷處理程序占用處理器,這一過程稱為“中斷響應(yīng)”。
中斷響應(yīng)過程中,中斷裝置要做以下三項(xiàng)工作:
1)是否有中斷事件發(fā)生
2)若有中斷發(fā)生,保護(hù)斷點(diǎn)信息
3)啟動(dòng)操作系統(tǒng)的中斷處理程序工作
中斷裝置通過“交換PSW”過程完成此項(xiàng)任務(wù)。
4、中斷處理 (軟件即操作系統(tǒng)操作)
操作系統(tǒng)的中斷處理程序?qū)χ袛嗍录M(jìn)行處理時(shí),大致要做三方面的工作:
1)保護(hù)被中斷進(jìn)程的現(xiàn)場(chǎng)信息
2)分析中斷原因
根據(jù)舊PSW的中斷碼可知發(fā)生該中斷的具體原因。
3)處理發(fā)生的中斷事件
請(qǐng)求系統(tǒng)創(chuàng)建相應(yīng)的處理進(jìn)程進(jìn)入就緒隊(duì)列。
5、中斷屏蔽
中斷屏蔽技術(shù)是在一個(gè)中斷處理沒有結(jié)束之前不響應(yīng)其他中斷事件,或者只響應(yīng)比當(dāng)前級(jí)別高的中斷事件。
如當(dāng)中斷裝置檢查到有中斷事件后,便去查看PSW中中斷屏蔽標(biāo)志,如果沒有屏蔽就響應(yīng)該中斷;否則,暫時(shí)不響應(yīng)該中斷,待屏蔽標(biāo)志消除后再響應(yīng)。自愿中斷是不能屏蔽的。
中斷機(jī)制
在它執(zhí)行程序的時(shí)候,如果有另外的事件發(fā)生(比如用戶又打開了一個(gè)程序)那么這時(shí)候就需要由計(jì)算機(jī)系統(tǒng)的中斷機(jī)制來(lái)處理了。
中斷機(jī)制包括硬件的中斷裝置和操作系統(tǒng)的中斷處理服務(wù)程序。
闡述硬件的中斷裝置的作用。
答:中斷是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)一個(gè)重要的組成部分。在中斷機(jī)制中的硬件部分(中斷裝置)的作用就是在CPU每執(zhí)行完一條指令后,判別是否有事件發(fā)生,如果沒有事件發(fā)生,CPU繼續(xù)執(zhí)行;若有事件發(fā)生,中斷裝置中斷原先占用CPU的程序的執(zhí)行,把被中斷程序的斷點(diǎn)保存起來(lái),讓操作系統(tǒng)的處理服務(wù)程序占用CPU對(duì)事件進(jìn)行處理,處理完后,再讓被中斷的程序繼續(xù)占用CPU執(zhí)行下去。
(所以中斷裝置的作用總的來(lái)說(shuō)就是使操作系統(tǒng)可以控制各個(gè)程序的執(zhí)行。)
操作系怎樣讓多個(gè)程序同時(shí)執(zhí)行?
答:中央處理器在任何時(shí)刻最多只能被一個(gè)程序占用。通過中斷裝置
系統(tǒng)中若干程序可以交替地占用處理器,形成多個(gè)程序同時(shí)執(zhí)行的狀態(tài)。利用CPU與外圍設(shè)備的并行工作能力,以及各外圍設(shè)備之間的并行工作能力,操作系統(tǒng)能讓多個(gè)程序同時(shí)執(zhí)行。
UNIX系統(tǒng)
一、UNIX系統(tǒng)結(jié)構(gòu)
1、UNIX的層次結(jié)構(gòu)
UNIX可以分為內(nèi)核層和外殼層兩部分。//內(nèi)核層是UNIX是核心。/外殼層由shell解釋程序(即為用戶提供的各種命令。)、支持程序設(shè)計(jì)的各種語(yǔ)言(如C、PASCAL和BASIC等)、編譯程序和解釋程序、實(shí)用程序和系統(tǒng)庫(kù)等組成。
2、UNIX系統(tǒng)的主要特點(diǎn)
短小精悍 //簡(jiǎn)潔有效 //易移植 //可擴(kuò)充 //開放性
3、UNIX的程序員接口和用戶接口
UNIX的程序員接口就是其內(nèi)核提供的系統(tǒng)調(diào)用。
系統(tǒng)調(diào)用是用戶程序請(qǐng)求操作系統(tǒng)為其服務(wù)的唯一形式。
一個(gè)在終端上登錄成功的用戶可以用shell命令來(lái)得到用戶程序,用戶程序用“trap”指令請(qǐng)求服務(wù)。
二、UNIX系統(tǒng)的進(jìn)程
在UNIX系統(tǒng)中進(jìn)程由三部分組成:進(jìn)程控制塊、正文段和數(shù)據(jù)段。
三、UNIX系統(tǒng)的存儲(chǔ)管理
1、對(duì)換(Swapping)技術(shù):這就是前面我們所學(xué)的虛擬存儲(chǔ)器在UNIX中的應(yīng)用。磁盤上設(shè)置開辟一個(gè)足夠大的區(qū)域,為對(duì)換區(qū)。當(dāng)內(nèi)存中的進(jìn)程要擴(kuò)大內(nèi)存空間,而當(dāng)前的內(nèi)存空間又不能滿足時(shí),則可把內(nèi)存中的某些進(jìn)程暫換出到對(duì)換區(qū)中,在適當(dāng)?shù)臅r(shí)候又可以把它們換進(jìn)內(nèi)存。因而,對(duì)換區(qū)可作為內(nèi)存的邏輯擴(kuò)充,用對(duì)換技術(shù)解決進(jìn)程之間的內(nèi)存競(jìng)爭(zhēng)。
UNIX對(duì)內(nèi)存空間和對(duì)換區(qū)空間的管理都采用最先適應(yīng)分配算法。
2、虛擬頁(yè)式存儲(chǔ)管理技術(shù)。 UNIX把進(jìn)程的地址空間劃分成三個(gè)功能區(qū)段:系統(tǒng)區(qū)段、進(jìn)程控制區(qū)段、進(jìn)程程序區(qū)段。系統(tǒng)區(qū)段占用系統(tǒng)空間,系統(tǒng)空間中的程序和數(shù)據(jù)常駐內(nèi)存。其余兩個(gè)區(qū)段占用進(jìn)程空間,是進(jìn)程中非常駐內(nèi)存部分。
通過頁(yè)表和硬件的地址轉(zhuǎn)換機(jī)構(gòu)完成虛擬地址和物理地址之間的轉(zhuǎn)換。
四、UNIX系統(tǒng)的文件系統(tǒng)(領(lǐng)會(huì))
1、UNIX系統(tǒng)中的邏輯文件采用流式文件組織
在UNIX系統(tǒng)中,文件的邏輯結(jié)構(gòu)是由一串順序的字符組成的流式文件。文件的物理結(jié)構(gòu)是采用索引結(jié)構(gòu)方式,每個(gè)文件都有一張索引表記錄文件占用的磁盤空間塊號(hào)……UNIX的文件系統(tǒng)分成基本文件和可裝卸的子文件系統(tǒng)兩部分。
2、UNIX的樹形目錄結(jié)構(gòu): UNIX采用樹形目錄。
UNIX把普通文件、目錄文件保存在磁盤上,一個(gè)具體的文件可以用路徑名確定。
磁盤被分成塊(扇區(qū)),每塊為512個(gè)字節(jié)或1K字節(jié)……。
4、UNIX的索引節(jié)點(diǎn)。UNIX中每個(gè)文件有一個(gè)唯一的索引節(jié)點(diǎn),索引節(jié)點(diǎn)靜態(tài)地存放在磁盤上,故稱為磁盤索引節(jié)點(diǎn)。為了加快文件訪問速度而在內(nèi)存中對(duì)磁盤索引節(jié)點(diǎn)進(jìn)行復(fù)制形成活動(dòng)索引節(jié)點(diǎn)。
UNIX中可分配的磁盤空間有兩類:一類是索引節(jié)點(diǎn)區(qū),另一類是存放文件的存儲(chǔ)區(qū)。
五、UNIX系統(tǒng)的I/O系統(tǒng)(領(lǐng)會(huì) 了解大意即可)
1、塊設(shè)備和字符設(shè)備
塊設(shè)備以塊為單位每次與內(nèi)存交換一組信息。塊設(shè)備是用來(lái)存儲(chǔ)信息的設(shè)備。字符設(shè)備以字節(jié)為單位與內(nèi)存交換信息。字符設(shè)備是計(jì)算機(jī)用來(lái)接收外部信息或把處理好的信息傳向外部的設(shè)備。
塊設(shè)備包括硬盤、軟盤、磁帶等,字符設(shè)備包括終端、打印機(jī)等。
2、設(shè)備文件: UNIX系統(tǒng)把設(shè)備也當(dāng)作文件來(lái)對(duì)待,每個(gè)設(shè)備都有一個(gè)文件名,并對(duì)它像文件那樣進(jìn)行操作。
3、塊設(shè)備的管理:通過啟動(dòng)驅(qū)動(dòng)程序完成相應(yīng)的打開、關(guān)閉、讀和寫等操作。
4、字符設(shè)備的管理:
字符設(shè)備工作速度低,一次輸入輸出要求傳送的字節(jié)數(shù)少而且不固定。因此不適宜采用塊設(shè)備管理中的緩沖技術(shù),而是采用緩沖區(qū)容量較小的、易管理的字符緩沖技術(shù)。
5、緩沖技術(shù):這個(gè)技術(shù)就是前面我們學(xué)過的虛擬設(shè)備(SPOOL技術(shù))在UNIX中的實(shí)際應(yīng)用UNIX采用緩沖技術(shù)實(shí)現(xiàn)設(shè)備的讀寫操作。
·2010年10月自學(xué)考試成績(jī)查詢時(shí)間及方式匯總
·2011年各地1、4月自學(xué)考試報(bào)名匯總
更多信息請(qǐng)?jiān)L問:自學(xué)考試頻道 自學(xué)考試論壇 自學(xué)考試博客
最新資訊
- 考前必背!自學(xué)考試《中國(guó)近現(xiàn)代史綱要》論述題高頻考點(diǎn)2024-10-19
- 自考報(bào)考策略:科學(xué)搭配科目,加速畢業(yè)進(jìn)程2024-07-20
- 2025年考研考生五一假期,英語(yǔ)科目應(yīng)該如何復(fù)習(xí)?2024-05-03
- 備考指南!2024年4月自學(xué)考試考前要做哪些準(zhǔn)備?2024-03-31
- 考前備考沖刺!自考如何一次就過?2024-03-30
- 考點(diǎn)匯總:《中國(guó)近現(xiàn)代史綱要》論述題2024-03-25
- 備考資料:《中國(guó)近現(xiàn)代史綱要》簡(jiǎn)答題考點(diǎn)匯總2024-03-25
- 自考可以從哪些維度進(jìn)行備考?2024-02-17
- @自考生,這里有備考技巧2024-02-17
- 自學(xué)考試備考復(fù)習(xí)方法!建議收藏2024-02-16