【MOOC】华中科技大学操作系统慕课答案-第4~6章+第7章单元测试
文章目錄
- 單選
- 填空
- 判斷
- 第七章答案
單選
1 ?關(guān)于進(jìn)程錯(cuò)誤的說(shuō)法是 。
A. 進(jìn)程的運(yùn)行全過(guò)程不可重現(xiàn)。
√B. 一個(gè)程序只能生成一個(gè)進(jìn)程。
C. 進(jìn)程具有異步性。
D. 多個(gè)并發(fā)進(jìn)程共享CPU。
B一定錯(cuò),一個(gè)程序可以生成多個(gè)進(jìn)程。
A可對(duì)可錯(cuò),A因?yàn)楝F(xiàn)在的操作系統(tǒng)進(jìn)程調(diào)度過(guò)程都非常復(fù)雜,所以全過(guò)程不可重現(xiàn)。C/D一般情況是正確的。
2 ?關(guān)于進(jìn)程狀態(tài)說(shuō)法錯(cuò)誤的是 。
√A. 單CPU的系統(tǒng)中處于運(yùn)行態(tài)的進(jìn)程可以有多個(gè)。
B. 進(jìn)程在整個(gè)生存期間會(huì)根據(jù)不同條件轉(zhuǎn)換狀態(tài)。
C. 阻塞態(tài)的進(jìn)程即便給它CPU它也無(wú)法運(yùn)行。
D. 處于就緒態(tài)的進(jìn)程都在等待CPU。
A. 運(yùn)行態(tài)它就是占用CPU的進(jìn)程,像申請(qǐng)了I/O設(shè)備的就是阻塞態(tài)了。
3 ?關(guān)進(jìn)程控制塊PCB說(shuō)法錯(cuò)誤的是 。
A. PCB是進(jìn)程存在的標(biāo)志
B. Linux中定義PCB的數(shù)據(jù)結(jié)構(gòu)是task_struct。
√C. 進(jìn)程生存期間PCB成員變量的值一直保持不變。
D. 創(chuàng)建進(jìn)程的時(shí)候創(chuàng)建PCB數(shù)據(jù)結(jié)構(gòu)。
4 ?進(jìn)程創(chuàng)建后的狀態(tài)是 。
√A. 就緒態(tài)
B. 運(yùn)行態(tài)
C. 阻塞態(tài)
D. 核態(tài)
5 ?關(guān)于進(jìn)程控制說(shuō)法錯(cuò)誤的是 。?
A. 進(jìn)程生存期間都受操作系統(tǒng)控制。
B. 進(jìn)程控制采用原語(yǔ)實(shí)現(xiàn)。
C. 進(jìn)程被喚醒的條件和被阻塞的原因一致。
√D. 進(jìn)程被撤銷(xiāo)時(shí)操作系統(tǒng)收回其占用資源,但是不釋放相應(yīng)的PCB。
D. 根據(jù)進(jìn)程撤銷(xiāo)原語(yǔ),撤銷(xiāo)的時(shí)候是要釋放相應(yīng)的PCB的。
C選項(xiàng)可以理解成:解鈴還須系鈴人。
6 ?下列應(yīng)用場(chǎng)景中不適合采用線(xiàn)程的是 。
A. 多個(gè)功能需要并發(fā)的地方
B. 需要改善窗口交互性的地方
C. 需要改善程序結(jié)構(gòu)的地方
√D. 應(yīng)用程序的初始化
C可以把一個(gè)任務(wù)分成多個(gè)子任務(wù)并行完成,改善程序結(jié)構(gòu),使用多線(xiàn)程。
D可能它就是主線(xiàn)程的任務(wù)吧。
7 ?關(guān)于臨界資源和臨界區(qū)的說(shuō)法錯(cuò)誤的是 。
A. 臨界資源是一個(gè)共享變量。
B. 臨界區(qū)是程序中的某個(gè)片段。
C. 臨界區(qū)中含有對(duì)臨界資源的存取操作。
√D. 線(xiàn)程內(nèi)定義的變量可以是臨界資源。
D. 線(xiàn)程內(nèi)定義的不是公共變量。
A中的變量應(yīng)該是廣義的“變量”,而不僅僅指程序的標(biāo)識(shí)符變量。
8 ?關(guān)于臨界資源和臨界區(qū)的說(shuō)法錯(cuò)誤的是 。
A. 臨界區(qū)不允許兩個(gè)或多個(gè)進(jìn)程同時(shí)進(jìn)入。
√B. 有限等待原則要求程序員盡量把臨界區(qū)設(shè)置大一些。
C. 讓權(quán)等待可以讓系統(tǒng)工作效率更高。
D. 同一個(gè)線(xiàn)程內(nèi)可以設(shè)置多個(gè)不同的臨界區(qū)。
B. 有限等待。 對(duì)請(qǐng)求訪(fǎng)問(wèn)的進(jìn)程,應(yīng)保證能在有限的時(shí)間內(nèi)進(jìn)入臨界區(qū)(保證不會(huì)饑餓)。
如果臨界區(qū)設(shè)置得過(guò)大,一個(gè)進(jìn)程占用的時(shí)間就會(huì)過(guò)長(zhǎng),別的進(jìn)程就會(huì)饑餓。
9 ?關(guān)于鎖進(jìn)制的說(shuō)法錯(cuò)誤的是 。
A. 鎖機(jī)制設(shè)置一個(gè)標(biāo)志表示臨界區(qū)是否可用。
B. 鎖機(jī)制只能解決進(jìn)程互斥的問(wèn)題。
C. 鎖機(jī)制滿(mǎn)足忙則等待和空閑讓進(jìn)的原則
√D. 鎖機(jī)制滿(mǎn)足有限等待和讓權(quán)等待的原則
在這個(gè)課程里面鎖機(jī)制不滿(mǎn)足讓權(quán)等待原則,emm,明明能改進(jìn)的說(shuō)。B選項(xiàng)也有點(diǎn)絕對(duì)化。
10 ?關(guān)于P-V操作的說(shuō)法錯(cuò)誤的是 。?
A. P-V操作是比鎖機(jī)制更靈活的同步進(jìn)制。
B. P-V操作可以用于控制進(jìn)程間的同步和互斥。
C. P-V操作的核心是兩個(gè)函數(shù),用來(lái)對(duì)信號(hào)燈和進(jìn)程進(jìn)行控制。
√D. P操作和V操作都會(huì)把信號(hào)量加1。
11 ?關(guān)于P-V操作的說(shuō)法錯(cuò)誤的是 。?
A. P操作可能會(huì)阻塞調(diào)用進(jìn)程。
B. V操作會(huì)把信號(hào)量加1。
√C. P操作可以喚醒一個(gè)進(jìn)程。
D. P操作和V操作在所有并發(fā)進(jìn)程中成對(duì)出現(xiàn)。
C. P操作只能保證在還剩信號(hào)量的時(shí)候,能讓這個(gè)進(jìn)程能夠繼續(xù)執(zhí)行下去;V操作才能喚醒沉睡的進(jìn)程。
D有點(diǎn)絕對(duì)。問(wèn)了老師,解答是:我們用信號(hào)量及PV操作來(lái)實(shí)現(xiàn)進(jìn)程的同步和互斥。PV操作屬于進(jìn)程的低級(jí)通信。每個(gè)程序中用戶(hù)實(shí)現(xiàn)互斥的P、V操作必須成對(duì)出現(xiàn),先做P操作,進(jìn)臨界區(qū),后做V操作,出臨界區(qū)。若有多個(gè)分支,要認(rèn)真檢查其成對(duì)性。
12 ?關(guān)于P-V操作解決同步問(wèn)題的說(shuō)法正確的是 。
A. 一般在關(guān)鍵操作之前執(zhí)行V操作。
B. 一般在關(guān)鍵操作之后執(zhí)行P操作。
C. 信號(hào)量S的定義可以隨意定義。
√D. 信號(hào)量S的初值設(shè)置不對(duì)可能導(dǎo)致進(jìn)程并發(fā)過(guò)程出錯(cuò)。
13 ?關(guān)于Windwos的同步進(jìn)制不正確的是 。
√A. 臨界區(qū)機(jī)制CRITICAL_SECTION可以用于進(jìn)程間的同步。
B. WaitForMultipleObjects函數(shù)可能會(huì)使調(diào)用線(xiàn)程阻塞。
C. 信號(hào)量機(jī)制Semaphore允許指定個(gè)數(shù)的線(xiàn)程同時(shí)訪(fǎng)問(wèn)臨界區(qū)。
D. ReleaseSemaphore函數(shù)具有P-V操作中的V操作的作用。
A. 臨界區(qū)在使用時(shí)以CRITICAL_SECTION結(jié)構(gòu)對(duì)象保護(hù)共享資源,并分別用EnterCriticalSection()和LeaveCriticalSection()函數(shù)去標(biāo)識(shí)和釋放一個(gè)臨界區(qū)。
它和鎖很像。
C選項(xiàng),臨界資源一次最多只允許一個(gè)進(jìn)程(線(xiàn)程)訪(fǎng)問(wèn),但一個(gè)臨界區(qū)對(duì)應(yīng)的可能不止一個(gè)臨界資源,因此在信號(hào)量中可做到多個(gè)線(xiàn)程同時(shí)訪(fǎng)問(wèn)臨界區(qū)。
14 ?關(guān)于Linux進(jìn)程的不正確的說(shuō)法是 。?
√A. fork函數(shù)具有兩個(gè)返回值。
B. wait函數(shù)會(huì)阻塞進(jìn)程直到其一個(gè)子進(jìn)程結(jié)束為止。
C. exit函數(shù)可以在結(jié)束進(jìn)程的時(shí)候傳遞參數(shù)給父進(jìn)程。
D. sleep函數(shù)會(huì)讓調(diào)用者進(jìn)程掛起若干時(shí)間。
A. fork只有一個(gè)返回值,但在子進(jìn)程和父進(jìn)程都會(huì)分別返回一次,并且返回值不同。
補(bǔ)充:子進(jìn)程除了進(jìn)程標(biāo)識(shí)、時(shí)間變量等不同,其余(包括系統(tǒng)棧)均繼承于父進(jìn)程。本來(lái),父子進(jìn)程都會(huì)返回newproc(建立子進(jìn)程映像的函數(shù))的下一個(gè)單元。但父進(jìn)程返回時(shí),會(huì)使原返回地址加2,跳過(guò)匯編指令clr r0,所以返回子進(jìn)程標(biāo)識(shí)數(shù)。而子進(jìn)程會(huì)把父進(jìn)程標(biāo)識(shí)數(shù)送入棧內(nèi)r0保護(hù)單元,但不會(huì)跳過(guò)清零指令,因此返回0。
B. wait()函數(shù)用于使父進(jìn)程(也就是調(diào)用wait()的進(jìn)程)阻塞,直到一個(gè)子進(jìn)程結(jié)束或者該進(jìn)程接收到了一個(gè)指定的信號(hào)為止。
15 ?關(guān)于死鎖不正確的說(shuō)法是 。?
A. 資源數(shù)量不夠不一定產(chǎn)生死鎖。
B. 每個(gè)死鎖的進(jìn)程一定在等待某個(gè)資源。
C. 每個(gè)死鎖的進(jìn)程一定持有某個(gè)資源。
√D. 五個(gè)哲學(xué)家并發(fā)就餐的過(guò)程一定會(huì)發(fā)生死鎖。
填空
16 ?Windows中創(chuàng)建進(jìn)程的函數(shù)名是 CreateProcess 。
system,WinExec,ShellExecute,CreateProcess都錯(cuò)了,不知道答案是什么。
17 ?Linux中創(chuàng)建進(jìn)程的函數(shù)名是 fork 。
18 ?Windows中創(chuàng)建線(xiàn)程的函數(shù)名是 CreateThread 。
19 ?只考慮作業(yè)等候時(shí)間的進(jìn)程調(diào)度算法叫 先來(lái)先服務(wù)算法 。
20 ?同時(shí)考慮作業(yè)等候時(shí)間和作業(yè)大小的進(jìn)程調(diào)度算法叫 響應(yīng)比高者優(yōu)先調(diào)度算法 。
判斷
21 ?用于科學(xué)計(jì)算的進(jìn)程一般都是偏CPU的進(jìn)程。
√A. 對(duì)
B. 錯(cuò)
22 ?進(jìn)程是程序的一次具體運(yùn)行過(guò)程。
√A. 對(duì)
B. 錯(cuò)
23 ?在Winodws7中,進(jìn)程是CPU的調(diào)度單位。
A. 對(duì)
√B. 錯(cuò)
線(xiàn)程。
24 ?異步性會(huì)使得每個(gè)進(jìn)程都按自己的邏輯和速度向前運(yùn)行。
√A. 對(duì)
B. 錯(cuò)
25 ?阻塞的進(jìn)程獲得相應(yīng)服務(wù)或信號(hào)后會(huì)立即開(kāi)始運(yùn)行。
A. 對(duì)
√B. 錯(cuò)
先轉(zhuǎn)為就緒態(tài)。
26 ?進(jìn)程控制是非常重要的過(guò)程,所以采用原語(yǔ)實(shí)現(xiàn)。
√A. 對(duì)
B. 錯(cuò)
27 ?線(xiàn)程的并發(fā)粒度比進(jìn)程更細(xì),有利于提升系統(tǒng)并發(fā)效率。
√A. 對(duì)
B. 錯(cuò)
28 ?利用VS等主流IDE開(kāi)發(fā)的Windows程序缺省都是多線(xiàn)程程序。
A. 對(duì)
√B. 錯(cuò)
這題我憑直覺(jué)在選。但后來(lái)去看了一下VS的默認(rèn)設(shè)置……
如下兩圖:
不知道用了多線(xiàn)程DLL庫(kù)的算不算多線(xiàn)程程序。我去問(wèn)問(wèn)。
問(wèn)了說(shuō)是不算。
可能缺省只有main主線(xiàn)程。
29 ?線(xiàn)程函數(shù)都具有特定的函數(shù)原型。
√A. 對(duì)
B. 錯(cuò)
30 ?同步機(jī)制的實(shí)質(zhì)是當(dāng)進(jìn)程運(yùn)行條件不滿(mǎn)足時(shí),能讓進(jìn)程暫停。
√A. 對(duì)
B. 錯(cuò)
第七章答案
第七章答案。
總結(jié)
以上是生活随笔為你收集整理的【MOOC】华中科技大学操作系统慕课答案-第4~6章+第7章单元测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C#线程池核心技术:从原理到高效调优的实
- 下一篇: 【HUST】网安|计算机网络安全实验|实