21、為什么說批處理多道系統(tǒng)能極大地提高計算機系統(tǒng)的工作效率?
① 多道作業(yè)并行工作,減少了處理器的空閑時間。
② 作業(yè)調(diào)度可以合理選擇裝入主存儲器中的作業(yè),充分利用計算機系統(tǒng)的資源。
③ 作業(yè)執(zhí)行過程中不再訪問低速設備,而直接訪問高速的磁盤設備,縮短執(zhí)行時間。
④ 作業(yè)成批輸入,減少了從操作到作業(yè)的交接時間。
22、操作系統(tǒng)為用戶提供哪些接口?
操作系統(tǒng)為用戶提供兩種類型的使用接口:
一是操作員級的,它為用戶提供控制作業(yè)執(zhí)行的途徑;
二是程序員級的,它為用戶程序提供服務功能。
23、什么是線程?多線程技術具有哪些優(yōu)越性?
線程是進程中可獨立執(zhí)行的子任務,一個進程可以有一個或多個線程,每個線程都有一個惟一的標識符。線程與進程有許多相似之處,往往把線程又稱為“輕型進程”,線程與進程的根本區(qū)別是把進程作為資源分配單位,而線程是調(diào)度和執(zhí)行單位。
多線程技術具有多個方面的優(yōu)越性:
① 創(chuàng)建速度快、系統(tǒng)開銷?。簞?chuàng)建線程不需要另行分配資源;
② 通信簡潔、信息傳送速度快:線程間的通信在統(tǒng)一地址空間進程,不需要額外的通信機制;
③ 并行性高:線程能獨立執(zhí)行,能充分利用和發(fā)揮處理器與外圍設備并行工作的能力。
24、UNIX系統(tǒng)中的優(yōu)先權和優(yōu)先數(shù)有什么關系?如何確定進程的優(yōu)先權和優(yōu)先數(shù)?
UNIX中每個進程都有一個優(yōu)先數(shù),就緒進程能否占用處理器的優(yōu)先權取決于進程的優(yōu)先數(shù),優(yōu)先數(shù)越小則優(yōu)先權越高。
UNIX以動態(tài)方式確定優(yōu)先權,如核心的進程優(yōu)先權高于進入用戶態(tài)的進程;降低用完一個時間片的進程的優(yōu)先權;對進入睡眠的進程,其等待事件越急優(yōu)先數(shù)越高;降低使用處理器時間較長的進程的優(yōu)先權。
UNIX中確定進程優(yōu)先數(shù)的方法有兩種:設置方法和計算方法。前者對要進入睡眠狀態(tài)的進程設置優(yōu)先數(shù),若等待的事件急迫,則設置較小的優(yōu)先數(shù);后者用戶進程正在或即將轉入用戶狀態(tài)運行時確定優(yōu)先數(shù)。
25、主存空間信息保護有哪些措施?
保存主存空間中的信息一般采用以下措施:
① 程序執(zhí)行時訪問屬于自己主存區(qū)域的信息,允許它既可讀,又可寫;
② 對共享區(qū)域中的信息只可讀,不可修改;
③ 對非共享區(qū)域或非自己的主存區(qū)域中的信息既不可讀,也不可寫。
26、共享設備允許多個作業(yè)同時使用,這里的“同時使用”的含義是什么?
“同時使用”的含義是多個作業(yè)可以交替地啟動共享設備,在某一時刻仍只有一個作業(yè)占有。
27、簡述“打開文件”操作的系統(tǒng)處理過程。
用戶要使用一個已經(jīng)存放在存儲介質(zhì)上的文件前,必須先提出“打開文件”要求。這時用戶也必須向系統(tǒng)提供參數(shù):用戶名、文件名、存取方式、存儲設備類型、口令等。
系統(tǒng)在接到用戶的“打開文件”要求后,找出該用戶的文件目錄,當文件目錄不在主存儲器中時還必須把它讀到主存儲器中;然后檢索文件目錄,指出與用戶要求相符合的目錄項,取出文件存放的物理地址。
對索引文件還必須把該文件的索引表存放在主存儲器中,以便后繼的讀寫操作能快速進行。
28、什么是“前臺”作業(yè)、“后臺”作業(yè)?為什么對“前臺”作業(yè)要及時響應?
批處理操作系統(tǒng)實現(xiàn)自動控制無需人為干預,分時操作系統(tǒng)實現(xiàn)了人機交互對話,這兩種操作系統(tǒng)具有各自的優(yōu)點。為了充分發(fā)揮批處理系統(tǒng)和分時系統(tǒng)的優(yōu)點,在一個計算機系統(tǒng)上配置的操作系統(tǒng)往往既具有批處理能力,又有提供分時交互的能力。這樣,用戶可以先在分時系統(tǒng)的控制下,以交互式輸入、調(diào)試和修改自己的程序;然后,可以把調(diào)試好的程序轉交給批處理系統(tǒng)自動控制其執(zhí)行而產(chǎn)生結果。這些由分時系統(tǒng)控制的作業(yè)稱為“前臺”作業(yè),而那些由批處理系統(tǒng)控制的作業(yè)稱為“后臺”作業(yè)。
在這樣的系統(tǒng)中,對前臺作業(yè)應該及時響應,使用戶滿意;對后臺作業(yè)可以按一定的原則進行組合,以提高系統(tǒng)的效率。
29、存儲型設備和輸入輸出型設備的輸入輸出操作的信息傳輸單位有何不同?
存儲型設備輸入輸出操作的信息傳輸單位是“塊”,而輸入輸出型設備輸入輸出操作的信息傳輸單位是“字符”。
30、簡述信號量S的物理含義
S>0時,S表示可使用的資源數(shù);或表示可使用資源的進程數(shù);
S=0時,表示無資源可供使用;或表示不允許進程再進入臨界區(qū);
S<0時,-S表示等待使用資源的進程個數(shù);或表示等待進入臨界區(qū)的進程個數(shù);
當S>0時,調(diào)用P(S)的進程不會等待;調(diào)用V(S)后使可用資源數(shù)加1或使可用資源的進程數(shù)加1;
當S<0時,調(diào)用P(S)的進程必須等待;調(diào)用V(S)后將釋放一個等待使用資源者或釋放一個等待進入臨界區(qū)者。
31、簡述“關閉文件”操作的系統(tǒng)處理過程
執(zhí)行“關閉”操作時先要檢查讀到主存中的文件目錄或索引表是否被修改過,若被修改過,則應把修改過的文件目錄或索引表重新保存好。
用戶提出“關閉”要求時,必須說明關閉哪個文件。
32、什么是計算機系統(tǒng)?它由哪幾部分組成?
計算機系統(tǒng)是按用戶的要求接收和存儲信息,自動進行數(shù)據(jù)處理并輸出結果信息的系統(tǒng)。
計算機系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)組成。硬件系統(tǒng)是計算機系統(tǒng)賴以工作的實體,軟件系統(tǒng)保證計算機系統(tǒng)按用戶指定的要求協(xié)調(diào)地工作。
33、計算機系統(tǒng)怎樣實現(xiàn)存儲保護?
一般硬件設置了基址寄存器和限長寄存器。
中央處理器在目態(tài)下執(zhí)行系統(tǒng)中,對每個訪問主存的地址都進行核對,若能滿足:基址寄存器值≤訪問地址≤基址寄存器值+限長寄存值,則允許訪問,否則不允許訪問。并且不允許用戶程序隨意修改這兩個寄存器的值。這就實現(xiàn)了存儲保護。
34、給出系統(tǒng)總體上的中斷處理過程
CPU每執(zhí)行完一條指令就去掃描中斷寄存器,檢查是否有中斷發(fā)生,若沒有中斷就繼續(xù)執(zhí)行下條指令;若有中斷發(fā)生就轉去執(zhí)行相應的中斷處理程序。中斷處理過程可粗略的分為以下四個過程:
① 保護當前正在運行程序的現(xiàn)場;
② 分析是何種中斷,以便轉去執(zhí)行相應的中斷處理程序;
③ 執(zhí)行相應的中斷處理程序;
④ 恢復被中斷程序的現(xiàn)場。
35、死鎖發(fā)生的必要條件有哪些?
發(fā)生死鎖的必要條件有四點:互斥條件、不可搶占條件、部分分配條件和循環(huán)等待條件。
① 互斥條件:系統(tǒng)中存在一個資源一次只能被一個進程所使用;
② 非搶占條件:系統(tǒng)中存在一個資源僅能被占有它的進程所釋放,而不能被別的進程強行搶占。
③ 占有并等待條件:系統(tǒng)中存在一個進程已占有了分給它的資源,但仍然等待其他資源。
④ 循環(huán)等待條件:在系統(tǒng)中存在一個由若干進程形成的環(huán)形請求鏈,其中的每一個進程均占有若干種資源中的某一種,同時每個進程還要求(鏈上)下一個進程所占有的資源。
36、用戶程序中通常用什么方式指定要使用的設備?為什么?
用戶程序中通常用“設備類、相對號”請求要使用的設備,即不具體指定要哪一臺設備,而是提出要申請哪類設備多少臺。
這種方式使設備分配適應性好、靈活性強。
否則若用絕對號來指定設備,如果這臺設備已被占用或有故障時,該作業(yè)就無法裝入主存中。
37、進程調(diào)度中“可搶占”和“非搶占”兩種方式,哪一種系統(tǒng)的開銷更大?為什么?
可搶占式會引起系統(tǒng)的開銷更大。
可搶占式調(diào)度是嚴格保證任何時刻,讓具有最高優(yōu)先數(shù)(權)的進程占有處理機運行,因此增加了處理機調(diào)度的時機,引起為退出處理機的進程保留現(xiàn)場,為占有處理機的進程恢復現(xiàn)場等時間(和空間)開銷增大。
38、一個含五個邏輯記錄的文件,系統(tǒng)把它以鏈接結構的形式組織在磁盤上,每個記錄占用一個磁盤塊,現(xiàn)要求在第一記錄和第二記錄之間插入一個新記錄,簡述它的操作過程。
從文件目錄中找到該文件,按址讀出第一個記錄;
取出第一個記錄塊中指針,存放到新記錄的指針位置;
把新記錄占用的物理塊號填入第一個記錄的指針位置;
啟動磁盤把第一個記錄和新記錄寫到指字的磁盤塊上。
39、在SPOOL系統(tǒng)中設計了一張“緩輸出表”,請問哪些程序執(zhí)行時要訪問緩輸出表,簡單說明之。
井管理寫程序把作業(yè)執(zhí)行結果文件登記在緩輸出表中;
緩輸出程序從緩輸出表中查找結果文件并打印輸出。
40、試比較進程調(diào)度與作業(yè)調(diào)度的不同點
① 作業(yè)調(diào)度是宏觀調(diào)度,它決定了哪一個作業(yè)能進入主存。進程調(diào)度是微觀調(diào)度,它決定各作業(yè)中的哪一個進程占有中央處理器。
② 作業(yè)調(diào)度是選符合條件的收容態(tài)作業(yè)裝入主存。進程調(diào)度是從就緒態(tài)進程中選一個占用處理器。
41、試說明資源的靜態(tài)分配策略能防止死鎖的原因
資源靜態(tài)分配策略要求每個過程在開始執(zhí)行前申請所需的全部資源,僅在系統(tǒng)為之分配了所需的全部資源后,該進程才開始執(zhí)行。
這樣,進程在執(zhí)行過程中不再申請資源,從而破壞了死鎖的四個必要條件之一“占有并等待條件”,從而防止死鎖的發(fā)生。
42、簡述操作系統(tǒng)提供的服務功能
處理用戶命令;讀/寫文件;分配/回收資源;
處理硬件/軟件出現(xiàn)的錯誤;及其他控制功能。
43、簡述中斷裝置的主要職能
中斷裝置的職能主要有三點:
① 檢查是否有中斷事件發(fā)生;
② 若有中斷發(fā)生,保護好被中斷進程的斷點及現(xiàn)場信息,以便進程在適當時候能恢復執(zhí)行;
③ 啟動操作系統(tǒng)的中斷處理程序。
44、實現(xiàn)虛擬設備的硬件條件是什么?操作系統(tǒng)應設計哪些功能程序?
硬件條件是:配置大容量的磁盤,要有中斷裝置和通道。
操作系統(tǒng)應設計好“預輸入”程序,“井管理”程序,“緩輸出”程序。
45、一個具有分時兼批處理功能的操作系統(tǒng)應怎樣調(diào)度和管理作業(yè)?
① 優(yōu)先接納終端作業(yè),僅當終端作業(yè)數(shù)小于系統(tǒng)可以允許同時工作的作業(yè)數(shù)時,可以調(diào)度批處理作業(yè);
② 允許終端作業(yè)的批處理作業(yè)混合同時執(zhí)行;
③ 把終端作業(yè)的就緒進程排成一個就緒隊列,把批處理作業(yè)的就緒進程排入另外的就緒隊列中;
④ 有終端作業(yè)進程就緒時,優(yōu)先讓其按“時間片輪轉”法先運行。沒有終端作業(yè)時再按確定算法選批處理作業(yè)就緒進程運行。
46、簡述死鎖的防止與死鎖的避免的區(qū)別
死鎖的防止是系統(tǒng)預先確定一些資源分配策略,進程按規(guī)定申請資源,系統(tǒng)按預先規(guī)定的策略進行分配從而防止死鎖的發(fā)生。
而死鎖的避免是當進程提出資源申請時系統(tǒng)測試資源分配僅當能確保系統(tǒng)安全時才把資源分配給進程,使系統(tǒng)一直處于安全狀態(tài)之中,從而避免死鎖。