î 例題11
什么是多道程序?支持多道程序的軟、硬件條件是什么?
例題11解答
在主存同時存放多個程序,使它們同時處于運(yùn)行狀態(tài)的一種程序設(shè)計技術(shù),叫做多道程序設(shè)計。
支持多道程序設(shè)計的軟、硬件條件是:
(1)存儲器管理:為多道程序分配主存,提供地址轉(zhuǎn)換機(jī)構(gòu)、主存保護(hù)和主存擴(kuò)充的功能;
(2)處理機(jī)管理:使系統(tǒng)能按照某種策略把CPU分配給各個處理單元;
(3)設(shè)備管理:系統(tǒng)能根據(jù)運(yùn)行程序的要求為其分配所需設(shè)備,并控制設(shè)備完成用戶希望的數(shù)據(jù)傳輸;
(4)文件管理:為運(yùn)行程序提供所需的各種聯(lián)機(jī)處理和共享的信息等。
î 例題12
計算機(jī)系統(tǒng)中,斷點(diǎn)、恢復(fù)點(diǎn)與PC寄存器之間的關(guān)系是什么?特殊的中斷處理程序不一定從恢復(fù)點(diǎn)位置開始執(zhí)行,能舉出一個簡單的例子簡單說明一下為什么嗎?
例題12解答
一般情況下,斷點(diǎn)應(yīng)為中斷的那一瞬間PC的內(nèi)容減去前一條指令所占單元長度,即中斷發(fā)出時正在執(zhí)行的那一條指令地址。中斷時PC所指的地址(即斷點(diǎn)的邏輯后續(xù)指令)稱為恢復(fù)點(diǎn)。因為原來被中斷的用戶程序在此次中斷處理過程中可能由于某些與其相關(guān)的事件不具備當(dāng)前繼續(xù)運(yùn)行的條件,可能被降低了運(yùn)行的優(yōu)先權(quán),也可能由于此次中斷的處理使得其他程序獲得了比其更高的優(yōu)先權(quán)。為了權(quán)衡系統(tǒng)內(nèi)各道程序的運(yùn)行機(jī)會,在此時有必要進(jìn)行一次調(diào)度選擇。
î 例題13
某多道程序設(shè)計系統(tǒng)配有一臺處理器和兩臺外設(shè)IO1、IO2,現(xiàn)有三個優(yōu)先級由高到低的作業(yè)J1、J2、J3都已裝入了主存,它們使用資源的先后順序和占用時間分別是:
J1:IO2(30ms),CPU(10ms);IO1(30ms),CPU(10ms);
J2:IO1(20ms),CPU(20ms);IO2(40ms);
J3:CPU(30ms),IO1(20ms)。
處理器調(diào)度采用可搶占的優(yōu)先數(shù)算法,忽略其他輔助操作時間,回答下列問題。
(1)分別計算作業(yè)J1、J2和J3從開始到完成所用的時間。
(2)三個作業(yè)全部完成時CPU的利用率。
(3)三個作業(yè)全部完成時外設(shè)IO1的利用率。
例題13解答
為了清楚的描述作業(yè)執(zhí)行情況,我們用圖1-7表示三個作業(yè)的并行執(zhí)行情況。
(1)J1占用IO2傳輸30ms時,J1傳輸完成,搶占J2的CPU,運(yùn)行10ms,再傳輸30ms,運(yùn)行10ms,完成。由圖1-2可見,J1從開始到完成所用的時間為:30+10+30+10=80ms。
J2與其并行地在IO1上傳輸20ms,搶占J3的CPU,J2運(yùn)行10ms后,被J1搶占CPU,等待10ms之后,J2再次得到CPU,運(yùn)行10ms,J2啟動IO2傳輸,40ms完成。由圖1-2可見,J2從開始到完成所用的時間為:20+10+10+10+40=90ms。
J3在CPU上執(zhí)行20ms,被J2搶占CPU,等待30ms,再運(yùn)行10ms,等待10ms,J3啟動IO1進(jìn)行20ms的傳輸,完成。J3從開始到完成所用的時間為:20+30+10+10+20=90ms。
(2)三個作業(yè)全部完成時,CPU的利用率為:(10+20+30+10)/90=7/9=78%。
(3)三個作業(yè)全部完成時,外設(shè)IO1的利用率為:(20+30+20)/90=7/9=78%。
î 例題14
A、B兩個程序,程序A按順序使用CPU 10s,使用設(shè)備甲5s,使用CPU 5s,使用設(shè)備乙5s,最后使用CPU 10s。程序B按順序使用設(shè)備甲10s,使用CPU 10s,使用設(shè)備乙5s,使用CPU 5s,使用設(shè)備乙10s,試問:
(1)在順序環(huán)境下執(zhí)行程序A和程序B,CPU的利用率是多少?
(2)在多道程序環(huán)境下,CPU的利用率是多少?
例題14解答
(1)程序A和程序B順序執(zhí)行時,程序A執(zhí)行完畢,程序B才開始執(zhí)行。兩個程序共耗時75s,其中占用CPU的時間為40s,因此順序執(zhí)行時CPU的利用率為40/75=53%。
(2)在多道程序環(huán)境下,兩個程序并發(fā)執(zhí)行,其執(zhí)行情況如表1-1所示?梢钥闯,兩個程序共耗時40s,其中CPU運(yùn)行時間為40s,故此時的CPU的利用率為40/40=100%。
表1-1 在多道程序環(huán)境下A、B執(zhí)行情況
CPU |
程序A(10s) |
程序B(10s) |
程序A(5s) |
程序B(5s) |
設(shè)備A(10s) |
程序A |
CPU |
設(shè)備甲+等待 |
CPU |
設(shè)備乙 |
CPU |
程序B |
設(shè)備甲 |
CPU |
設(shè)備乙 |
CPU |
設(shè)備乙 |
點(diǎn)擊查看:2011計算機(jī)考研《操作系統(tǒng)》知識點(diǎn)分析完整版