TEST ANSWER
一單項選擇題
[分析]本題大部分是屬基本概念的識記層次有一些屬領會層次和簡單應用層次
第題位示圖是由一些二進制表示的字組成的每個字有若干位每一位的和分別可表示兩種不同的狀態所以位示圖只適用於表示相同長度的存儲空間的分配情況例如頁式存儲管理中主存塊是否被占用磁盤存儲空間中存儲塊(扇區)是否空閒等因而本題應選擇B
第題要求選擇使空閒區數不變且空閒區起始地址不變的情況若歸還區既無上鄰空閒區也無下鄰空閒區則歸還區將作為一個獨立的空閒區登記人空閒區表中於是增加了空閒區數若無上鄰空閒區但有下鄰空閒區則歸還區與下鄰空閒區合並後成了一個新的空閒區後雖然空閒區數沒有改變但應把歸還區的起始地址作為新空閒區的起始地址若既有上鄰空閒區又有下鄰空閒區則歸還區將與它們兩者合在一起構成新的空閒區這樣使原來分散的空閒區歸並在一起了於是就減少了空閒區數若有上鄰空閒區但無下鄰空閒區則歸還區將被連接到上鄰空閒區下端雖增加了空閒區的長度但沒有改變空閒區的起始地址和個數因而本題應選擇B
第題我們把可同時執行的進程稱為並發進程並發進程相互之間的關系有兩種情況一種是相互之間無關各自獨立另一種是相互之間有交往擁有共享變量由於作業到達的隨機性各種事件的隨機性調度算法等因素的影響都可能使相互之間無關的進程以及相互之間有交往的進程同時執行因而不能說任何兩個並發進程之間一定相互獨立或一定存在交往或都有共享變量顯然本題應該選擇C
第題對選定的算法應考慮怎樣才能方便地實現本題是對可變分區存儲管理采用最壞適應分配算法即每次總是從能滿足作業存儲量要求的那些空閒區中選擇一個最大的空閒區進行分配若在空閒區表中把空閒區按長度遞減次序排列則順序查找空閒區表只要找到第一個能滿足作業要求的空閒區便一定是能滿足作業要求的空閒區中的最大者可見選擇D能以最快速度找到符合算法要求的空閒區
第題要使系統不發生死鎖則應在任何時刻至少保證有一個進程能得到它所需的資源這樣就可保證占用資源的進程能在有限的時間內歸還資源歸還後的資源又可供其它進程使用於是每個進程都能在有限的時間內得到所需的資源也就不會出現永遠等待資源的情況即不會死鎖假設有n個進程共享m個資源若每個進程最多申請x個資源如果能使下式成立
n(x)+=<m
那麼每個進程都可在有限的時間內得到所需的資源
在本題中n=m=所以只要從下式中解出x即可
(x)+=<
從中可以得到x=<
因而X的最大值為故每個進程最多可以申請個資源
[題解].C .C .B
.C .B .A .B
.A .C .B .D
.D .C .C .B
二多項選擇題
[分析]第 題應分析每個描述的正確與否其中 ABD的說法是不正確的因為進程執行的速度是受自身或外界的情況以及進程調度策略的影響因而不能由進程自己來控制故AB兩項的描述是錯誤的在D的描述中說利用PV操作可以防止死鎖這裡首先要弄清防止死鎖的含義所謂防止死鎖是指采用某些策略後系統一定不會發生死鎖事實上從課文的例子中已經看到利用PV操作未必能防止死鎖因而D的描述也是錯誤的本題要求選擇哪些描述是錯誤的故應選擇ABD
[題解].CE
.ABD
.ABDE
.AD
.BCDE
.ACD
.ABD
.CDE
三填空題
.管
.進程控制塊(或PCB)
.中斷裝置中斷處理程序
.邏輯絕對
.物理
.鏈接(或串聯)索引
.設備分配
.作業控制語言作業控制說明書
.銀行家
.%~%%
四簡答題
.[題解]把一個程序在一個數據集合上的一次執行稱為一個進程因而進程是程序的執行過程是動態的
進程的基本狀態有運行狀態就緒狀態等待狀態
.[題解]響應比高者優先調度算法計算每個作業的響應比從資源能得到滿足的作業中選擇響應比最高者優先裝人主存儲器
響應比高者優先算法綜合考慮作業的等待時間和需計算時間把響應比定義為
響應比=等待時間/計算時間
顯然這種算法能使計算時間短的作業優先被裝人主存儲器有利於降低作業的平均周轉時間同時保證了計算時間長的作業在等待了一定的時間後也能獲得較高的響應比因而這些作業也不會被無限制地推遲執行對用戶具有一定的公平性
.[題解]組成 MS—DOS的三個模塊是
文件系統(MSDOS.SYS)它是MS—DOS的核心部分
命令處理程序(COMMAND.COM)它接收解釋和執行來自用戶的命令
輸人輸出系統(IO.SYS)接收來自MSDOS.SYS的請求並啟動設備驅動程序完成輸人輸出操作
.[題解]操作系統有五大基本功能它們是處理器管理存儲管理文件管理設備管理和作業管理
.[題解]把邏輯地址轉換成絕對地址的工作稱為重定位
重定位的方式有兩種
()靜態重定位在裝人一個作業時把該作業中的指令地址和數據地址全部轉換成絕對地址
()動態重定位在作業執行過程中由硬件的地址轉換機構把邏輯地址轉換成絕對地址
[題解]操作系統啟動和控制外圍設備完成輸入輸出操作的過程如下
()根據輸人輸出的要求組織好通道程序
()把存放通道程序的起始地址存入主存中一個稱為通道地址字的固定單元中
()中央處理器執行啟動I/O指令啟動通道工作
()通道從通道地址字中找到通道程序並逐條執行通道程序中的通道命令控制設備實現輸入輸出操作把通道程序的執行情況記錄在通道狀態字中
()通道完成輸入輸出操作後形成I/O中斷向中央處理器報告通道程序的執行情況
()中央處理器分析通道狀態字處理來自通道的情況
五綜合題
[分析]首先要注意的是不管采用哪種作業調度算法均須考慮作業調度的必要條件即系統現有的資源要能滿足被選作業的資源要求本題中作業對資源的要求僅限於對主存空間量的要求所以對主存要求能得到滿足的作業就可按先來先服務算法進行作業調度本題假設是一個多道程序設計系統因而主存中可同時裝入多個作業於是當作業J到達輸入井後就立刻可被作業調度選中而裝入主存儲器占用了開始的K空間當J到達系統後資源要求也是能滿足的所以作業 J也被裝入了主存儲器占用了在作業J之後的 K空間當作業 J到達系統時作業J已經執行結束故主存中有一個 K和一個 K的空閒區每個空閒區均小於作業J的需求量但題中的假設允許采用移動技術因而只要移動作業 J就可把兩個空閒區合並成一個長度為K的空閒區於是就可把作業J裝入主存儲器占用了其中的K後還有K的空閒區在作業 J完成之前作業 J和 J也都進人了輸入井由於作業 J僅要求 K主存量現主存中正好有一個K的空閒區故作業J也被作業調度選中而被裝入主存儲器現在主存儲器中同時容納了作業 JJJ已無空閒的主存區域因而作業J只能在作業J執行結束後才能被裝入主存儲器
可見作業調度和進程調度均使用先來先服務算法對主存空閒采用可移動的可變分區管理方式時作業被裝人主存的執行次序正好是作業進人輸人井的次序作業 JJJJ進入輸入井後就能被裝入主存儲器而作業J要在作業J執行結束(.時)才被裝入主存儲器
[題解]()作業被裝入主存執行的次序為JJJJJ
()各作業裝入主存的時間為J 時J 時J 時J 時J 時
()為裝入作業J而移動了作業J
.[分析]由於三個學生為各自的文件取了相同的文件名為了區分同名的不同文件可以采用二級目錄結構或多級目錄結構因為本題沒有提出更復雜的要求因此只要采用較簡單的二級目錄結構就行了第一級為主目錄用來區分各個學生第二級為各個學生的文件目錄用來登記學生所定義的文件
[題解]()采用二級目錄結構可以區分各個學生定義的同名程序第一級為主目錄指出各位學生的文件目錄表的存放地址第二級為學生文件目錄各個學生的文件分別登記在各自的文件目錄表中這樣就能正確區分不同學生的同名文件不會混淆
()假定三個學生的名字分別為SSS則二級目錄結構如下
()學生要讀取自己的程序時只要給出程序文件名WJ系統按該終端注冊時鍵人的學生名查主目錄找出該學生的文件目錄在這個學生的文件目錄中接給出的文件名就可得到該文件的存放地址再按得到的存放地址從磁盤上讀出程序文件則這個文件一定是該學生所需要的程序不夠其它的同名文件混淆
.[分析]按題中的要求每個進程每次只能揀一個子不允許兩個進程同時揀子兩個進程必須交替揀子因而當一個進程揀了一個子後應發出允許它進程揀子的消息而任一進程在揀子前應判斷允許自己揀子的消息是否到達所以這兩個並發進程之間的關系顯然是同步而不是互斥
PV操作是實現進程同步的良好工具在實現進程同步時應定義好信號量及初值本題中有兩個不同的消息允許揀黑子和允許揀白子可分別用兩個信號量S和S來表示若假定先由進程A揀黑子那<
From:http://tw.wingwit.com/Article/program/czxt/201311/24180.html