操作系統(tǒng)教程(其次版) OS習(xí)題答案_第1頁(yè)
操作系統(tǒng)教程(其次版) OS習(xí)題答案_第2頁(yè)
操作系統(tǒng)教程(其次版) OS習(xí)題答案_第3頁(yè)
操作系統(tǒng)教程(其次版) OS習(xí)題答案_第4頁(yè)
操作系統(tǒng)教程(其次版) OS習(xí)題答案_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——操作系統(tǒng)教程(其次版)OS習(xí)題答案

操作系統(tǒng)習(xí)題解答

1.存儲(chǔ)程序式計(jì)算機(jī)的主要特點(diǎn)是什么?

答:主要特點(diǎn)是以順序計(jì)算為基礎(chǔ),根據(jù)程序規(guī)定的順序依次執(zhí)行每一個(gè)操作,控制部件根據(jù)程序?qū)φ麄€(gè)計(jì)算機(jī)的活動(dòng)實(shí)行集中過(guò)程控制,即為集中順序過(guò)程控制。這類(lèi)計(jì)算是過(guò)程性的,實(shí)際上這種計(jì)算機(jī)是模擬人們的手工計(jì)算的產(chǎn)物。即首先取原始數(shù)據(jù),執(zhí)行一個(gè)操作,將中間結(jié)果保存起來(lái);再取一個(gè)數(shù),和中間結(jié)果一起又執(zhí)行一個(gè)操作,如此計(jì)算下去。在遇到多個(gè)可能同時(shí)執(zhí)行的分支時(shí),也是先執(zhí)行完一個(gè)分支,然后再執(zhí)行其次個(gè)分支,直到計(jì)算完畢。

2.批處理系統(tǒng)和分時(shí)系統(tǒng)各具有什么特點(diǎn)?答:批處理系統(tǒng)是在解決人—機(jī)矛盾以及高速度的中央處理機(jī)和低速度的I/O設(shè)備這兩對(duì)矛盾的過(guò)程中發(fā)展起來(lái)的。它的出現(xiàn)改善了CPU和外設(shè)的使用狀況,其特點(diǎn)是實(shí)現(xiàn)了作業(yè)的自動(dòng)定序、自動(dòng)過(guò)渡,從而使整個(gè)計(jì)算機(jī)系統(tǒng)的處理能力得以提高。

在多道系統(tǒng)中,若采用了分時(shí)技術(shù),就是分時(shí)操作系統(tǒng),它是操作系統(tǒng)的另一種類(lèi)型。它一般采用時(shí)間片輪轉(zhuǎn)的方法,使一臺(tái)計(jì)算機(jī)同時(shí)為多個(gè)任務(wù)服務(wù)。對(duì)用戶都能保證足夠快的響應(yīng)時(shí)間,并提供交互會(huì)話功能。它與批處理系統(tǒng)之間的主要區(qū)別在于,分時(shí)系統(tǒng)是人機(jī)交互式系統(tǒng),響應(yīng)時(shí)間快;而批處理系統(tǒng)是作業(yè)自動(dòng)定序和過(guò)渡,無(wú)人機(jī)交互,周轉(zhuǎn)時(shí)間長(zhǎng)。

3.實(shí)時(shí)系統(tǒng)的特點(diǎn)是什么?一個(gè)實(shí)時(shí)信息處理系統(tǒng)和一個(gè)分時(shí)系統(tǒng)從外表看來(lái)很相像,它們有什么本質(zhì)的區(qū)別呢?

答:實(shí)時(shí)系統(tǒng)對(duì)響應(yīng)時(shí)間的要求比分時(shí)系統(tǒng)更高,一般要求響應(yīng)時(shí)間為秒級(jí)、毫秒級(jí)甚至微秒級(jí)。將電子計(jì)算機(jī)應(yīng)用到實(shí)時(shí)領(lǐng)域,配置上實(shí)時(shí)監(jiān)控系統(tǒng),便組成各種各樣的專(zhuān)用實(shí)時(shí)系統(tǒng)。實(shí)時(shí)系統(tǒng)按其使用方式不同分為兩類(lèi):實(shí)時(shí)控制系統(tǒng)和實(shí)時(shí)信息處理系統(tǒng)。實(shí)時(shí)控制是指利用計(jì)算機(jī)對(duì)實(shí)時(shí)過(guò)程進(jìn)行控制和提供監(jiān)視環(huán)境。實(shí)時(shí)信息處理系統(tǒng)是指利用計(jì)算機(jī)對(duì)實(shí)時(shí)數(shù)據(jù)進(jìn)行處理的系統(tǒng)。實(shí)時(shí)系統(tǒng)大部分是為特別的實(shí)時(shí)任務(wù)設(shè)計(jì)的,這類(lèi)任務(wù)對(duì)系統(tǒng)的可靠性和安全性要求很高。

與分時(shí)系統(tǒng)相比,實(shí)時(shí)系統(tǒng)沒(méi)有那樣強(qiáng)的交互會(huì)話功能,尋常不允許用戶通過(guò)實(shí)時(shí)終端設(shè)備去編寫(xiě)新的程序或修改已有的程序。實(shí)時(shí)終端設(shè)備尋常只是作為執(zhí)行裝置或詢問(wèn)裝置,屬專(zhuān)用系統(tǒng)。

4.什么是多道程序設(shè)計(jì)技術(shù)?試述多道程序運(yùn)行的特征。答:多道程序設(shè)計(jì)技術(shù)是在計(jì)算機(jī)內(nèi)存中同時(shí)存放幾道相互獨(dú)立的程序,使它們?cè)诠芾沓绦蚩刂葡拢嗷ゴ┎宓剡\(yùn)行。

多道程序運(yùn)行的特征如下:

(1)多道:計(jì)算機(jī)內(nèi)存中同時(shí)存放幾道相互獨(dú)立的程序。(2)宏觀上并行:同時(shí)進(jìn)入系統(tǒng)的幾道程序都處于運(yùn)行過(guò)程中,即它們先后開(kāi)始了各自

的運(yùn)行,但都未運(yùn)行完畢。

(3)微觀上串行:從微觀上看,內(nèi)存中的多道程序輪番地或分時(shí)地占有處理機(jī),交替執(zhí)

行(單處理機(jī)狀況)。

5.什么是操作系統(tǒng)?從資源管理的角度去分析操作系統(tǒng),它的主要功能是什么?答:操作系統(tǒng)是一個(gè)大型的程序系統(tǒng),它負(fù)責(zé)計(jì)算機(jī)的全部軟、硬件資源的分派與回收,控制與協(xié)調(diào)等并發(fā)活動(dòng),實(shí)現(xiàn)信息的存取和保護(hù)。它提供用戶接口,使用戶獲得良好的工作環(huán)境,為用戶擴(kuò)展新的系統(tǒng)功能提供軟件平臺(tái),操作系統(tǒng)使整個(gè)計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)了高效率和高度自動(dòng)化。

操作系統(tǒng)的主要功能是管理系統(tǒng)的軟、硬件資源,它們可歸為四類(lèi):處理機(jī)管理、存儲(chǔ)管理、設(shè)備管理和文件管理等。

6.操作系統(tǒng)的主要特征是什么?為什么會(huì)具有這樣的特征?答:操作系統(tǒng)的特征有:并發(fā)性,共享性,不確定性,虛擬性。

其中并發(fā)性和共享性是其主要特征。由于操作系統(tǒng)建立并控制著多個(gè)并發(fā)執(zhí)行的進(jìn)程,完成著同時(shí)進(jìn)行的幾項(xiàng)任務(wù),進(jìn)程之間相互制約,并且共享著系統(tǒng)的某些資源,進(jìn)程的這些活動(dòng)便形成了操作系統(tǒng)的主要特征。并且大量事件的產(chǎn)生是隨機(jī)的,而且事件產(chǎn)生的先后順序又有大量可能組合,但操作系統(tǒng)必需能處理任何一種可能的事件序列。所以,操作系統(tǒng)又具有不確定性。另外,操作系統(tǒng)中還廣泛使用了虛擬技術(shù),使得配備了操作系統(tǒng)之后的系統(tǒng)在資源的使用上更加自由和靈活,不受物理設(shè)備數(shù)量的限制。

7.設(shè)一計(jì)算機(jī)系統(tǒng)有輸入機(jī)一臺(tái)、打印機(jī)兩臺(tái),現(xiàn)有二道程序同時(shí)投入運(yùn)行,且程序A先開(kāi)始運(yùn)行,程序B后運(yùn)行。程序A的運(yùn)行軌跡為:計(jì)算50ms,打印信息100ms,再計(jì)算50ms,打印信息100ms,終止。程序B運(yùn)行的軌跡為:計(jì)算50ms,輸入數(shù)據(jù)80ms,再計(jì)算100ms,終止。要求:

(1)用圖畫(huà)出這二道程序并發(fā)執(zhí)行時(shí)的工作狀況。

(2)說(shuō)明在二道程序運(yùn)行時(shí),CPU有無(wú)空閑等待?若有,在哪段時(shí)間內(nèi)等待?為什么會(huì)空閑等待?

(3)程序A、B運(yùn)行時(shí)有無(wú)等待現(xiàn)象?在什么時(shí)候會(huì)發(fā)生等待現(xiàn)象?答:

(1)工作狀況如圖。5100ms5100ms程序A

計(jì)打計(jì)打

258100ms5程序B

等輸計(jì)計(jì)等

時(shí)間

051030151820

(2)CPU有空閑等待,它發(fā)生在100ms?150ms時(shí)間段內(nèi),此時(shí)間段內(nèi)程序A與程序B都在進(jìn)行I/O操作。

(3)程序A無(wú)等待現(xiàn)象,程序B在0ms?50ms時(shí)間段與180ms?200ms時(shí)間段內(nèi)有等待現(xiàn)象。

工作狀況的另一種描述形式如下:

程序A程序B輸入設(shè)備打印機(jī)1550100ms0ms182030t

進(jìn)程管理習(xí)題

1現(xiàn)代操作系統(tǒng)中為什么要引入“進(jìn)程〞概念?它與程序有什么區(qū)別?

答:之所以要引入進(jìn)程的概念,是由于在一些可以并發(fā)的程序段之間,存在著某種相互制約的關(guān)系,每個(gè)程序段的執(zhí)行不僅要受到其它程序執(zhí)行的制約,而且還要?jiǎng)討B(tài)地依靠系統(tǒng)資源的分派狀況,因此每個(gè)可以并發(fā)執(zhí)行的程序段就會(huì)因外界條件的限制而不能運(yùn)行,被迫處于阻塞狀態(tài)。僅用程序的概念無(wú)法表示程序的走走停停以及程序運(yùn)行過(guò)程中對(duì)資源的競(jìng)爭(zhēng)現(xiàn)象,因此需要采用一種動(dòng)態(tài)的概念描述并發(fā)程序這種走走停停的現(xiàn)象,這就產(chǎn)生了進(jìn)程的概念。

進(jìn)程和程序的區(qū)別:

(1)進(jìn)程是程序的執(zhí)行過(guò)程,是動(dòng)態(tài)的過(guò)程,屬于一種動(dòng)態(tài)概念。程序是一組有序靜態(tài)指令和數(shù)據(jù)的集合,用來(lái)指示處理機(jī)的操作,是一種靜態(tài)概念。

(2)從結(jié)構(gòu)上看,每個(gè)進(jìn)程實(shí)體是由程序段和相應(yīng)的數(shù)據(jù)段兩部分構(gòu)成,并且進(jìn)程結(jié)構(gòu)中還要包含PCB,即進(jìn)程控制塊。

(3)一個(gè)進(jìn)程可以涉及到一個(gè)或幾個(gè)程序的執(zhí)行;反之,同一程序可以對(duì)應(yīng)多個(gè)進(jìn)程,即同一個(gè)程序段可以在不同數(shù)據(jù)集合上運(yùn)行,可以構(gòu)成不同的進(jìn)程。

(4)進(jìn)程能真實(shí)地描述并發(fā)執(zhí)行的過(guò)程,而程序僅僅是靜態(tài)指令堆積的序列。

(5)進(jìn)程有可創(chuàng)立其他進(jìn)程的功能,而一般的程序不具有創(chuàng)立其它程序的功能。

(6)每一個(gè)程序都是在一個(gè)進(jìn)程現(xiàn)場(chǎng)中運(yùn)行的。

2表達(dá)進(jìn)程的并發(fā)性和制約性。

答:并發(fā)性是進(jìn)程的重要特征。即多道程序中多個(gè)進(jìn)程同時(shí)向前推進(jìn)的過(guò)程,沒(méi)個(gè)進(jìn)程總是與其它進(jìn)程并發(fā)地執(zhí)行的。進(jìn)程的制約性是指一個(gè)進(jìn)程的運(yùn)行受到另一進(jìn)程的制約。譬如有的進(jìn)程可能正在等待另一進(jìn)程的計(jì)算結(jié)果而無(wú)法運(yùn)行,或者進(jìn)程所需的資源被別的進(jìn)程占有而無(wú)法運(yùn)行。

3進(jìn)程的含義是什么?如何構(gòu)造和描述進(jìn)程?

答:進(jìn)程是程序的一次執(zhí)行。進(jìn)程由“進(jìn)程控制塊+程序+數(shù)據(jù)〞構(gòu)成,用進(jìn)程控制塊描述進(jìn)程。

4有三個(gè)并發(fā)進(jìn)程,R負(fù)責(zé)從輸入設(shè)備讀入信息并傳送給M,M將信息加工并傳送給P,P將打印輸出,寫(xiě)出以下條件下的并發(fā)程序。

(1)雙緩沖區(qū),每個(gè)區(qū)大小為K。(2)單緩沖區(qū),其大小為K。答:

(1)雙緩沖區(qū),每個(gè)區(qū)大小為K,信號(hào)量初值如下:mutexR=mutexP=1;emptyR=emptyP=k;

fullR=fullP=0;變量的初值如下:

inR=outR=inP=outP=0;用類(lèi)Pascal編寫(xiě)程序如下:var

mutexR,mutexP,emptyR,fullR,emptyP,fullP:semaphere;inR,outR,inP,outP:integer;buffer:array0..k-1ofitem;bufferP:array0..k-1ofitem;procedureRbegin

whiletruedobegin

輸入數(shù)據(jù)data1;P(emptyR);P(mutexR);

bufferR(inR):=data1;inR:=(inR+1)mod(k);V(mutexR);

V(fullR);

endend;

procedureMbegin

whiletruedobegin

P(fullR);P(mutexR);

data2:=bufferR(outR);outR:=(outR+1)mod(k);V(mutexR);V(emptyR);

對(duì)data2進(jìn)行加工;P(emptyP);P(mutexP);

bufferP(inP):=data2;inP:=(inP+1)mod(k);V(mutexP);V(fullP);endend;

procedureP:begin

whiletruedo

begin

P(fullP);P(mutexP)

data3:=bufferP(outP);outP:=(outP+1)mod(k);V(mutexP);V(emptyP);打印data3;endend;begin

seminitinal(mutexR.v,1;mutexP.v,1;emptyR.v,k;fullR.v,0;emptyP.v,k;fullP.v,0);

inR:=0;outR:=0;inP:=0;outP:=0;cobegin

R;M;P;coendend.

(2)單緩沖區(qū),大小為kvar

empty,full,ok,mutex:semaphere;inR,outR,inP,outP:integer;

buffer:array0..k-1ofitem;procedureR:begin

whiletruedo

begin

輸入數(shù)據(jù)data1;P(empty);P(mutex);

buffer(inR):=data1;inR:=(inR+1)mod(k);

V(mutex);

V(full)endend;

procedureM:begin

whileturedo

begin

P(full);

P(mutex);

data2:==buffer(outR);outR:=(outR+1)mod(k);V(mutex);對(duì)data2加工;P(mutex);

buffer(inP):=data2;inP:=(inP+1)mod(k);

V(mutex);V(ok);end

end;

proedureP:begin

whileturedobeginP(ok);P(mutex);

data3:=buffer(outP);outP:=(outP+1)mod(k);V(mutex);V(empty);打印data3;end;endbegin

seminitial(empty.v,k;full.v,0;ok.v,0;mutex.v,1);inR:=0;outR:=0;inP:=0;outP:=0;cobegin

R;

M;P;coend

end.

5在生產(chǎn)者與消費(fèi)者問(wèn)題的算法中,交換兩個(gè)V操作的次序會(huì)有什么結(jié)果?交換兩P操作的次序呢?說(shuō)明理由。

答:交換兩P操作的次序有可能造成死鎖。例如,當(dāng)無(wú)空緩沖區(qū)時(shí),假使此時(shí)生產(chǎn)者先做互斥操作,即:P(mutex),然后才做同步操作P(empty),由于此時(shí)empty=-1造成生產(chǎn)者被阻塞。當(dāng)消費(fèi)者執(zhí)行到互斥操作P(mutex)時(shí),由于生產(chǎn)者已執(zhí)行過(guò)P(mutex)并未作釋放,所以此時(shí)mutex=-1,造成消費(fèi)者也被阻塞,生產(chǎn)者等消費(fèi)者釋放空緩沖區(qū),而消費(fèi)者則等待生產(chǎn)者釋放臨界資源的使用權(quán),所以兩個(gè)進(jìn)程都無(wú)法向前推進(jìn)而造成死鎖。交換兩個(gè)V操作的次序不會(huì)發(fā)生死鎖。

6設(shè)有三個(gè)進(jìn)程A、B、C,其中A與B構(gòu)成一對(duì)生產(chǎn)者與消費(fèi)者(A為生產(chǎn)者,B為消費(fèi)者),共享一個(gè)由n個(gè)緩沖塊組成的緩沖池;B與C也構(gòu)成一對(duì)生產(chǎn)者與消費(fèi)者(此時(shí)B為生產(chǎn)者,C為消費(fèi)者),共享另一個(gè)由m個(gè)緩沖塊組成的緩沖池。用P、V操作描述它們之間的同步關(guān)系。答:

var

mutexA,emptyA,fullA,mutexC,emptyC,fullC:semaphere;i,j,a,b:integer;

bufferA:array0..n-1ofitembufferC:array0..m-1ofitem;procedureproduceA:生產(chǎn)者進(jìn)程Abegin

whileturedo

begin

Producenextproduct;P(emptyA);P(mutexA);

bufferA(i):=products;i:=(i+1)mod(n);

V(mutexA);V(fullA)endend

procedureconsumer_procedurerB:消費(fèi)者和生產(chǎn)者進(jìn)程Bbegin

whileturedobegin

P(fullA);P(mutexA);

Goods:=buffer(j);

j:=(j+1)mod(n);

V(mutexA);V(emptyA);

ConsumegoodsandProducenextproductC;P(emptyC);P(mutexC);

BufferC(a):=productC;a:=(a+1)mod(m);V(mutexC);V(fullC)

endend;

procedureconsumerC;消費(fèi)者C進(jìn)程begin

whileturedobeginP(fullC);P(mutexC);

Goods:=bufferC(b);b:=(b+1)mod(m);V(mutexC);V(emptyC);

Consumeproduct;endend;begin

Seminitsal(mutexA.v,1;mutexC.v,1;

emptyA.v,n;emptyC.v,m;fullA.V,0;fullC.V,0);

i:=0;j:=0;a:=0;b:=0;cobeginproduceA

consumer_procedurerB;consumerCcoend

end.

7有一閱覽室,共有100個(gè)座位。讀者進(jìn)入時(shí)必需先在一張登記表上登記,該表為每一座位列一表目,包括座號(hào)和讀者姓名。讀者離開(kāi)時(shí)要消掉登記內(nèi)容。試用P、V操作描述讀者進(jìn)程的同步結(jié)構(gòu)。答:

var

mutex:semaphere;信號(hào)量,用于互斥

full:semaphere;信號(hào)量,用于同步table:array0..n-1ofitem;登記表

procedurereader;讀者進(jìn)程begin

P(full);P(mutex);

Register_name(table);V(mutex);Reading;P(mutex);

Delet_name(table);V(mutex);V(full)

end;begin

seminitsal(mutex.v,1;full.v,100);初始化cobeginreader;reader;...coendend.

8.引入線程的目的是什么?

答:引入線程的目的是提高程序執(zhí)行的并行度。

9引入管程的目的是什么?

答:引入管程的目的把分散的臨界區(qū)集中起來(lái)管理,為每個(gè)可共享的資源設(shè)立一個(gè)專(zhuān)門(mén)的機(jī)構(gòu)來(lái)統(tǒng)一管理各進(jìn)程對(duì)該共享資源的訪問(wèn)。這樣使互斥操作更安全,既便于系統(tǒng)管理共享資源,又能保證互斥訪問(wèn)。

10用管程實(shí)現(xiàn)讀者與寫(xiě)者關(guān)系。管程部分描述如下:monitorrw;conditionwrt;

varreadcount:integer;

procedureentryread_start();begin

readcount:=readcount+1;end;

procedureentryread_finish();begin

readcount:=readcount-1;

ifreadcount=0thensingal(wrt)end;

procedureentrywrite();begin

ifreadcount>0thenwait(wrt);performwriting;end

begin

readcount:=0endend;

主程序部分:

procedurewritter:

begin

repeat

rw.write();untilfalse;end

procedurereader:

begin

repeat

rw.read_start();performreading;rw.read_finish();untilfalse;

end

cobeginreader;writter;coend.

11何謂進(jìn)程通信?

答:進(jìn)程通信是指進(jìn)程之間的信息交換。

12消息通信機(jī)制中應(yīng)設(shè)置哪些基本通信原語(yǔ)?答:應(yīng)設(shè)置send(A)(發(fā)送消息)原語(yǔ),A是原語(yǔ)的參數(shù),表示發(fā)送區(qū)的起始地址。

receive(B)(接受消息)原語(yǔ),B是接受進(jìn)程提供的接收區(qū)起始地址。

13何謂死鎖?舉例說(shuō)明之。

答:兩個(gè)以上的進(jìn)程相互等待一個(gè)永遠(yuǎn)不可能發(fā)生的條件而無(wú)法向前推進(jìn),這種僵局稱(chēng)為死鎖。例如:如下圖的單行道上的交通阻塞。

存儲(chǔ)管理習(xí)題

1.何謂名字空間?何謂地址空間?何謂存儲(chǔ)空間?

答:名字空間:程序中符號(hào)名的集合。

地址空間:在目標(biāo)模塊中的地址的集合。存儲(chǔ)空間:實(shí)際內(nèi)存地址的集合。符號(hào)源匯編編譯相對(duì)目標(biāo)程地址重定位絕對(duì)目標(biāo)程序序連接程序名字空間地址空間存儲(chǔ)空間

2.在分區(qū)分派方案能用于實(shí)現(xiàn)虛擬內(nèi)存嗎?

答:不能,由于虛擬存儲(chǔ)最重要的特點(diǎn)就是離散性,而分區(qū)分派方案只適用于連續(xù)分派方式,即全部程序都放在內(nèi)存,而不允許程序運(yùn)行時(shí)一部分在內(nèi)存、一部分在外存。所以,無(wú)法提供內(nèi)存的規(guī)律擴(kuò)展功能。

3.為什么要引入動(dòng)態(tài)重定位?如何實(shí)現(xiàn)?

答:動(dòng)態(tài)重定位便于程序浮動(dòng)。由于在目標(biāo)模塊裝入內(nèi)存時(shí)無(wú)需對(duì)其進(jìn)行任何修改,因而裝入之后再搬遷也不會(huì)影響其正確執(zhí)行。

實(shí)現(xiàn)時(shí),需要采用動(dòng)態(tài)重定位硬件機(jī)構(gòu):重定位寄放器和加法器。如下圖。

1000

1?1000?

LOADLOAD1,30000

311001,30015678某程序的地址空

5678?內(nèi)

?

動(dòng)態(tài)重定位示意圖

4.請(qǐng)?jiān)敿?xì)說(shuō)明,引入分頁(yè)存儲(chǔ)管理是為了滿足用戶哪幾方面的需求?答:1、為了充分利用空閑的存儲(chǔ)空間,采取內(nèi)存的不連續(xù)分派;2、為了消除外零頭,采用等分內(nèi)存;

3、為了程序的浮動(dòng)便利,采用動(dòng)態(tài)地址重定位;

4、為了從規(guī)律上擴(kuò)展內(nèi)存,依照規(guī)律地址空間來(lái)訪問(wèn)程序,采用了虛擬存儲(chǔ)管理。

5.為什么說(shuō)分段系統(tǒng)較之分頁(yè)系統(tǒng)更易于實(shí)現(xiàn)地址變換?答:由于分段是依照規(guī)律功能分段,這樣在地址變換時(shí),針對(duì)的是一個(gè)完整的規(guī)律功能段,所以可以在實(shí)際需要時(shí)進(jìn)行動(dòng)態(tài)連接。而分頁(yè)則是依照物理頁(yè)的大小劃分所以一定要事先將

所有的頁(yè)面聯(lián)接成一個(gè)整體后才能實(shí)現(xiàn)地址變換。

6.分頁(yè)存儲(chǔ)管理中有哪幾種常用的頁(yè)面置換算法?試比較它們的優(yōu)缺點(diǎn)。答:

(1)先進(jìn)先出(FIFO)(2)最近最少使用的淘汰算法(LRU)(3)最近不經(jīng)常使用的淘汰算法(LFU)(4)最優(yōu)算法(OPT)

FIFO算法最簡(jiǎn)單,但效率不高。LRU的近似算法和LFU是較為實(shí)用的算法,效果較好,實(shí)現(xiàn)也不難。OPT算法是最正確算法,但并不實(shí)用,由于要跟蹤各頁(yè)面方可預(yù)計(jì)未來(lái),而這種預(yù)計(jì)往往是困難的。

輸入/輸出系統(tǒng)習(xí)題

1.設(shè)備管理的目標(biāo)和功能是什么?答:設(shè)備管理的主要目標(biāo)是:

1)選擇和分派輸入/輸出設(shè)備以便進(jìn)行數(shù)據(jù)傳輸操作;2)控制輸入/輸出設(shè)備和CPU(或內(nèi)存)之間交換數(shù)據(jù);

3)為用戶提供一個(gè)友好的透明接口,把用戶和設(shè)備的硬件特性分開(kāi),使得用戶在編制應(yīng)用程序時(shí)不必涉及具體設(shè)備,系統(tǒng)按用戶要求控制設(shè)備工作;

4)提高設(shè)備和設(shè)備之間、CPU和設(shè)備之間以及進(jìn)程和進(jìn)程之間的并行操作度,以使操作系統(tǒng)獲得最正確效率。

設(shè)備管理程序的主要功能是:

1)提供和進(jìn)程管理系統(tǒng)的接口。當(dāng)進(jìn)程申請(qǐng)?jiān)O(shè)備資源時(shí),該接口將進(jìn)程的請(qǐng)求轉(zhuǎn)送給設(shè)備管理程序;

2)進(jìn)行設(shè)備分派;

3)實(shí)現(xiàn)設(shè)備和設(shè)備、設(shè)備和CPU等之間的并行操作;4)進(jìn)行緩沖區(qū)管理。

2.?dāng)?shù)據(jù)傳送控制方式有哪幾種?試比較它們各自的優(yōu)缺點(diǎn)。

答:外部設(shè)備和內(nèi)存之間的常用數(shù)據(jù)傳送控制方式有四種。它們是:

1)程序直接控制方式;其優(yōu)點(diǎn)是控制簡(jiǎn)單,所需硬件支持少。其缺點(diǎn)是CPU和外部設(shè)備只能串行工作,CPU的利用率低;不能實(shí)現(xiàn)設(shè)備之間的并行工作;只適用于那些CPU執(zhí)行速度較慢,而且外部設(shè)備較少的系統(tǒng)。

2)中斷控制方式;其優(yōu)點(diǎn)是所需硬件支持較少,與程序直接控制方式相比,使CPU的利用率大大提高且能支持多道程序和設(shè)備的并行操作。其缺點(diǎn)是消耗的CPU處理時(shí)間較多;隨著外部I/O設(shè)備的增多和速度的提高,可能會(huì)造成CPU無(wú)法響應(yīng)中斷和出現(xiàn)數(shù)據(jù)丟失現(xiàn)象。

3)DMA方式;其優(yōu)點(diǎn)是I/O速度較快,大大減少了CPU進(jìn)行中斷處理的次數(shù);排除了因并行操作設(shè)備過(guò)多時(shí)CPU來(lái)不及處理或因速度不匹配而造成數(shù)據(jù)丟失等現(xiàn)象。其缺點(diǎn)是所需硬件較多;多個(gè)DMA控制器的同時(shí)使用會(huì)引起內(nèi)存地址的沖突并使得控制過(guò)程進(jìn)一步

繁雜化。

4)通道方式;其優(yōu)點(diǎn)是I/O速度快,進(jìn)一步減輕了CPU的工作負(fù)擔(dān)和增加了計(jì)算機(jī)系統(tǒng)的并行工作能力。其缺點(diǎn)是控制較繁雜,所需的硬件最繁雜。

3.何謂通道?試畫(huà)出通道控制方式時(shí)的CPU、通道和設(shè)備的工作流程圖。

答:通道是一個(gè)獨(dú)立于CPU的專(zhuān)管輸入/輸出控制的處理機(jī),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換。它有自己的通道指令,可由CPU執(zhí)行相應(yīng)指令來(lái)啟動(dòng)通道,并在操作終止時(shí)向CPU發(fā)中斷信號(hào)。在運(yùn)行的時(shí)候,通道有自己的總線控制部分,可以進(jìn)行總線操作。在有了通道之后,CPU僅需發(fā)出一條I/O指令給通道,說(shuō)明要執(zhí)行的I/O操作和要訪問(wèn)的I/O設(shè)備。通道接到指令后,就啟動(dòng)相應(yīng)的通道程序來(lái)完成I/O操作。如下圖:

設(shè)C指定通道接收到start指令通道設(shè)置設(shè)備的控制寄放器當(dāng)前進(jìn)程等待,調(diào)數(shù)據(jù)入數(shù)據(jù)緩沖寄放器被調(diào)度進(jìn)程緩沖寄放器的內(nèi)容入內(nèi)存接收到中斷信號(hào)嗎?否改變?cè)O(shè)備控制寄放器的內(nèi)容度程序調(diào)度其它進(jìn)程發(fā)start指令,指明I/O操作、設(shè)備號(hào)和對(duì)應(yīng)通道,允許中斷位與啟動(dòng)位置1是傳送完畢?是發(fā)中斷信號(hào),中止I/O操作否轉(zhuǎn)中斷處理

4.何謂中斷?何謂中斷處理?何謂中斷響應(yīng)?

答:中斷是指計(jì)算機(jī)在執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋常的或非預(yù)期的急需處理事件,使得CPU暫時(shí)中斷當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序,待處理完畢后,又返回原來(lái)被中斷處繼續(xù)執(zhí)行的過(guò)程。

CPU轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序的過(guò)程稱(chēng)為中斷處理。

CPU收到中斷請(qǐng)求后轉(zhuǎn)到相應(yīng)的事件處理程序稱(chēng)為中斷響應(yīng)。

5.何謂開(kāi)中斷?何謂關(guān)中斷?何謂中斷屏蔽?

答:盡管產(chǎn)生了中斷源和發(fā)出了中斷請(qǐng)求,但CPU內(nèi)部的處理機(jī)狀態(tài)字PSW的中斷允許位已被清除,從而不允許CPU響應(yīng)中斷。這種狀況稱(chēng)為阻止中斷,也稱(chēng)為關(guān)中斷。CPU阻止中斷后只有等到PSW的中斷允許位被重新設(shè)置后才能接收中斷,PSW的中斷允許位的設(shè)置被稱(chēng)為開(kāi)中斷。

中斷屏蔽是指在中斷請(qǐng)求產(chǎn)生之后,系統(tǒng)用軟件方式有選擇地封鎖部分中斷而允許其余部分的中斷仍能得到響應(yīng)。

6.何謂陷入?何謂軟中斷?試述中斷、陷入和軟中斷之間異同。

答:陷入是指中斷指令造成中斷;而由程序運(yùn)算引起的各種錯(cuò)誤,如地址非法等稱(chēng)為異常。軟中斷是通信進(jìn)程之間用來(lái)模擬硬中斷的一種信號(hào)通信方式,它的處理過(guò)程類(lèi)似于中斷過(guò)程,但不需要通過(guò)硬件來(lái)產(chǎn)生中斷請(qǐng)求。中斷則是指外部設(shè)備發(fā)出的中斷;

中斷與陷入除在優(yōu)先級(jí)設(shè)置方面有區(qū)別之外,還有如下區(qū)別:

(1)陷入尋常由處理機(jī)正在執(zhí)行的現(xiàn)行指令引起,而中斷則是由與現(xiàn)行指令無(wú)關(guān)的中斷源引起的。也即:對(duì)處理機(jī)來(lái)說(shuō),陷入是主動(dòng)的,而中斷是被動(dòng)的。

(2)陷入處理程序提供的服務(wù)為當(dāng)前進(jìn)程所用,而中斷處理程序提供的服務(wù)則不是為了當(dāng)前進(jìn)程的。

(3)CPU在執(zhí)行完一條指令之后,下一條指令開(kāi)始之前響應(yīng)中斷,而在一條指令執(zhí)行中響應(yīng)陷入。

中斷與陷入都可以看作是硬中斷,而軟中斷則不然,它是通信進(jìn)程之間用來(lái)模擬硬中斷的一種信號(hào)通信方式。

軟中斷和硬中斷一致的地方是:其中斷源發(fā)中斷請(qǐng)求或軟中斷信號(hào)后,由接收進(jìn)程在適當(dāng)?shù)臅r(shí)機(jī)自動(dòng)進(jìn)行中斷處理或完成軟中斷信號(hào)所對(duì)應(yīng)的功能。

7.描述中斷控制方式時(shí)的CPU動(dòng)作過(guò)程。

答:

CPU

向設(shè)備發(fā)start命令

將中斷允許位置

調(diào)度程序調(diào)度其他進(jìn)程執(zhí)行

受到中斷否

信號(hào)了

中斷處

被中斷程序繼續(xù)

執(zhí)行

8.何謂緩沖區(qū)?為什么要引入緩沖?

答:緩沖即是使用專(zhuān)用硬件緩沖器或在內(nèi)存中劃出一個(gè)區(qū)域用來(lái)暫時(shí)存放輸入輸出數(shù)據(jù)的地方.

引入緩沖是為了匹配外設(shè)和CPU之間的處理速度,減少中斷次數(shù)和CPU的中斷處理

時(shí)間。

9.在對(duì)緩沖隊(duì)列em(空緩沖區(qū)),in(輸入緩沖區(qū))和out(輸出緩沖區(qū))進(jìn)行管理時(shí),采用最近最少使用算法存取緩沖區(qū),即在把一個(gè)緩沖區(qū)分派給進(jìn)程之后,只要不是所有其它的緩沖區(qū)都在更近的時(shí)間內(nèi)被使用過(guò)了,則該緩沖區(qū)不再被分派出去。試描述過(guò)程take_buf(type,number)和add_buf(type,number)。

structbuffer{inttype;

intaccess_time;type*next_element;}em,in,out;

take_buf(type,number);{

buffer*p,number;

p=get_the_head_of_thequeue(type);while(pnull){

if(number.access_time>p.access_time)return*p;else

p=p.next_element;}

returnnumber;}

add_buf(type,number);{

buffer*p,number;

p=get_the_head_of_thequeue(type);while(pnull)

p=p.next_element;p.next_element=number;}

10.用于設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)有哪些?它們之間的關(guān)系是什么?

答:用于設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)有:設(shè)備控制表DCT、系統(tǒng)設(shè)備表SDT、控制器表COCT和通道控制表CHCT。

SDT整個(gè)系統(tǒng)一張,每個(gè)設(shè)備有一張DCT,每個(gè)控制器有一張COCT,每個(gè)通道有一張CHCT。SDT中有一個(gè)DCT指針,DCT中有一個(gè)COCT指針,COCT中有一個(gè)CHCT指針。

11.設(shè)計(jì)一個(gè)設(shè)備分派的安全檢查程序,以保證把某臺(tái)設(shè)備分派給某進(jìn)程是不會(huì)出現(xiàn)死鎖。

答:參見(jiàn)任愛(ài)華主編的“計(jì)算機(jī)操作系統(tǒng)〞,由科學(xué)出版社出版的教材4.5.2節(jié)設(shè)備分派策略和4.5.3節(jié)圖4.16。

12.何謂I/O控制?它的主要任務(wù)是什么?

答:I/O控制是指從用戶進(jìn)程提出輸入/輸出請(qǐng)求開(kāi)始,到為用戶進(jìn)程分派設(shè)備和啟動(dòng)有關(guān)設(shè)備進(jìn)行I/O操作,并在I/O操作完成之后響應(yīng)中斷,直至善后處理為止的整個(gè)系統(tǒng)控制過(guò)程。主要任務(wù)就是完成進(jìn)程提出的I/O請(qǐng)求,實(shí)現(xiàn)對(duì)外設(shè)的分派和控制。

13.I/O控制可用哪幾種方式實(shí)現(xiàn)?各有什么優(yōu)缺點(diǎn)?答:I/O控制過(guò)程在系統(tǒng)中可以按三種方式實(shí)現(xiàn):

1)作為請(qǐng)求I/O操作的進(jìn)程的一部分實(shí)現(xiàn)。這種狀況下,請(qǐng)求I/O進(jìn)程應(yīng)具有良好的實(shí)時(shí)性,且系統(tǒng)應(yīng)能根據(jù)中斷信號(hào)的內(nèi)容確鑿地調(diào)度對(duì)應(yīng)I/O請(qǐng)求的進(jìn)程占據(jù)處理機(jī),由于在大多數(shù)狀況下,當(dāng)一個(gè)進(jìn)程發(fā)出I/O請(qǐng)求命令之后,都被阻塞睡眠。

2)作為當(dāng)前進(jìn)程的一部分實(shí)現(xiàn)。作為當(dāng)前進(jìn)程的一部分實(shí)現(xiàn)時(shí),不要求系統(tǒng)具有高的實(shí)時(shí)性。但由于當(dāng)前進(jìn)程與完成的I/O操作無(wú)關(guān),所以當(dāng)前進(jìn)程不能接受I/O請(qǐng)求命令的處理,因此,假使讓請(qǐng)求I/O操作的進(jìn)程調(diào)用I/O操作控制部分(I/O請(qǐng)求處理、設(shè)備分派、緩沖區(qū)分派等),而讓當(dāng)前進(jìn)程負(fù)責(zé)調(diào)用中斷處理部分也是一種可行的I/O控制方案。

3)I/O控制由專(zhuān)門(mén)的系統(tǒng)進(jìn)程——I/O進(jìn)程完成。在用戶進(jìn)程發(fā)出I/O請(qǐng)求命令之后,系統(tǒng)調(diào)度I/O進(jìn)程執(zhí)行,控制I/O操作。同樣,在外設(shè)發(fā)出中斷請(qǐng)求之后,I/O進(jìn)程也被調(diào)度執(zhí)行以響應(yīng)中斷。I/O請(qǐng)求處理模塊、設(shè)備分派模塊以及緩沖區(qū)管理模塊和中斷原因分析、中斷處理模塊和設(shè)備驅(qū)動(dòng)程序模塊等都是I/O進(jìn)程的一部分。

14.設(shè)備驅(qū)動(dòng)程序是什么?為什么要有設(shè)備驅(qū)動(dòng)程序?用戶進(jìn)程怎樣使用驅(qū)動(dòng)程序?答:設(shè)備驅(qū)動(dòng)程序是驅(qū)動(dòng)物理設(shè)備直接進(jìn)行I/O操作的控制程序。它負(fù)責(zé)設(shè)置與相應(yīng)設(shè)備有關(guān)的寄放器的值,啟動(dòng)設(shè)備進(jìn)行I/O操作,指定操作的類(lèi)型和數(shù)據(jù)流向等。

設(shè)備驅(qū)動(dòng)程序作為輸入/輸出軟件中的一個(gè)層次,用于把軟件的設(shè)備操作指令轉(zhuǎn)換為相應(yīng)的設(shè)備控制的機(jī)械操作命令,以實(shí)現(xiàn)用戶軟件的設(shè)備無(wú)關(guān)性。

當(dāng)用戶進(jìn)程發(fā)出輸入/輸出請(qǐng)求時(shí),系統(tǒng)把請(qǐng)求處理的權(quán)限放在文件系統(tǒng),文件系統(tǒng)通過(guò)驅(qū)動(dòng)程序提供的接口將任務(wù)下放到驅(qū)動(dòng)程序,驅(qū)動(dòng)程序?qū)υO(shè)備控制器進(jìn)行操作,設(shè)備控制器再去控制設(shè)備本身。通過(guò)這種層層隔離的方式,用戶不必了解設(shè)備的各種特性,使用戶的操作簡(jiǎn)單易行。

文件系統(tǒng)習(xí)題

1.說(shuō)明以下術(shù)語(yǔ):記錄、文件、文件系統(tǒng)、特別文件、目錄文件、路徑、文件描述符。答:記錄:記錄是一種數(shù)據(jù)結(jié)構(gòu),它是一些相關(guān)數(shù)據(jù)項(xiàng)的集合。數(shù)據(jù)項(xiàng)是一些相關(guān)字符的集合。例如,在“學(xué)生登記表〞文件中一個(gè)學(xué)生的所有數(shù)據(jù)項(xiàng)的集合就是一個(gè)學(xué)生狀況記錄,學(xué)生狀況記錄可以包括姓名、性別、年齡、成績(jī)等數(shù)據(jù)項(xiàng),而姓名、年齡、性別、成績(jī)等數(shù)據(jù)項(xiàng)則由若干個(gè)字符組成。

文件:所謂文件是指具有符號(hào)名的數(shù)據(jù)信息的集合。該符號(hào)名是用以標(biāo)識(shí)文件的,稱(chēng)為文件名。

文件系統(tǒng):所謂文件系統(tǒng)是指在操作系統(tǒng)中專(zhuān)門(mén)負(fù)責(zé)存取和管理外部存儲(chǔ)器上目錄或文件信息的程序部分。

特別文件:在UNIX系統(tǒng)中,所有硬件設(shè)備也作為文件系統(tǒng)中的文件統(tǒng)一管理,這些硬件設(shè)備文件稱(chēng)為特別文件,分為字符設(shè)備特別文件和數(shù)據(jù)塊設(shè)備特別文件兩類(lèi)。

目錄文件:目錄文件是保存目錄結(jié)構(gòu)信息的文件,在目錄文件中保存著該目錄所包含的目錄或文件記錄,每個(gè)記錄包括目錄或文件的名字、大小、存儲(chǔ)位置、存取權(quán)限及其它相關(guān)數(shù)據(jù)項(xiàng)。

路徑:在層次(樹(shù)狀)目錄結(jié)構(gòu)中,最高層的目錄稱(chēng)為根目錄。每個(gè)目錄又可以包含目錄或文件,稱(chēng)為枝節(jié)點(diǎn)。每個(gè)文件是數(shù)據(jù)信息的集合,在其下面不能再包含目錄或文件,稱(chēng)為葉節(jié)點(diǎn)。表示一個(gè)文件的從某個(gè)目錄開(kāi)始直到該文件的路徑描述,稱(chēng)為一個(gè)文件的路徑。

文件描述符:文件描述符是文件的標(biāo)識(shí)符,文件系統(tǒng)通過(guò)文件描述符訪問(wèn)文件。每個(gè)文件描述符與一個(gè)實(shí)際要開(kāi)啟的文件信息結(jié)構(gòu)相聯(lián)系,在文件信息結(jié)構(gòu)中包含文件的各種屬性和標(biāo)志。在UNIX系統(tǒng)中,當(dāng)用戶啟動(dòng)一個(gè)進(jìn)程時(shí),系統(tǒng)會(huì)自動(dòng)分派三個(gè)標(biāo)準(zhǔn)輸入輸出文件的文件描述符0,1,2,文件描述符0代表標(biāo)準(zhǔn)輸入設(shè)備(缺省為鍵盤(pán)),文件描述符1代表標(biāo)準(zhǔn)輸出設(shè)備(缺省為顯示器),文件描述符2代表標(biāo)準(zhǔn)錯(cuò)誤輸出設(shè)備(缺省為顯示器)。

2.文件系統(tǒng)的功能是什么?有哪些基本操作?答:一個(gè)文件系統(tǒng)應(yīng)具有以下功能:

(1)使用戶能建立、修改和刪除一個(gè)文件;

(2)使用戶能在系統(tǒng)控制下共享其他用戶的文件,以便于用戶可以利用其他人的工作成果;

(3)使用戶能便利地建立文件;

(4)使用戶能在文件之間進(jìn)行數(shù)據(jù)傳輸;

(5)使用戶能通過(guò)符號(hào)文件名對(duì)文件進(jìn)行訪問(wèn),而不應(yīng)要求用戶使用物理地址來(lái)訪問(wèn)文件;

(6)為防止意外系統(tǒng)故障,文件系統(tǒng)應(yīng)具有轉(zhuǎn)儲(chǔ)和恢復(fù)重要文件的能力;(7)為用戶文件提供可靠的保護(hù)和保密措施。

文件系統(tǒng)的基本操作包括對(duì)文件的操作和對(duì)目錄的操作。

對(duì)文件的操作主要包括開(kāi)啟文件、關(guān)閉文件、建立文件、撤消文件、復(fù)制文件、文件換名、文件列表、打印或顯示文件等。

對(duì)目錄的操作主要包括創(chuàng)立目錄、刪除目錄、開(kāi)啟目錄、關(guān)閉目錄、讀目錄項(xiàng)、目錄換

名、目錄鏈接、刪除目錄項(xiàng)等。

3.文件按其用途和性質(zhì)可分成幾類(lèi),有何特點(diǎn)?答:一.按文件用途分類(lèi)

(1)系統(tǒng)文件:由與操作系統(tǒng)本身相關(guān)的一些信息(程序或數(shù)據(jù))所組成的文件。(2)庫(kù)文件:由系統(tǒng)提供的可供用戶調(diào)用的各種標(biāo)準(zhǔn)過(guò)程、函數(shù)和應(yīng)用程序等。(3)用戶文件:由用戶的信息(程序或數(shù)據(jù))所組成的文件。

二.按文件中數(shù)據(jù)分類(lèi)

(1)源文件:從終端或其它輸入設(shè)備輸入的源程序和數(shù)據(jù),以及作為處理結(jié)果的輸出數(shù)據(jù)文件。

(2)相對(duì)地址目標(biāo)文件:源程序文件通過(guò)各種語(yǔ)言編譯程序編譯后所輸出的相對(duì)地址形式的目標(biāo)程序文件。

(3)可執(zhí)行程序文件:相對(duì)地址目標(biāo)文件通過(guò)鏈接裝配程序鏈接后所生成的可執(zhí)行程序文件。

三.按文件保護(hù)方式分類(lèi)

(1)只讀文件:僅允許對(duì)其進(jìn)行讀操作的文件。

(2)讀寫(xiě)文件:有控制地允許不同用戶對(duì)其進(jìn)行讀或?qū)懖僮鞯奈募#?)不保護(hù)文件:沒(méi)有任何存取限制的文件。

四.按文件保存時(shí)間分類(lèi)

(1)臨時(shí)文件:批處理中從作業(yè)開(kāi)始運(yùn)行到作業(yè)終止,或是在分時(shí)處理中從會(huì)話開(kāi)始到會(huì)話終止期間所保存的臨時(shí)性文件。一旦這些作業(yè)終止,其相應(yīng)的臨時(shí)文件也被系統(tǒng)自動(dòng)撤消。

(2)永久文件:在用戶沒(méi)有發(fā)出撤消該文件的命令前,一直需要在系統(tǒng)中保存的文件。

4.有些文件系統(tǒng)要求文件名在整個(gè)文件系統(tǒng)中是唯一的,有些系統(tǒng)只有要求文件名在其用戶的范圍內(nèi)是唯一的,請(qǐng)指出這兩種方法在實(shí)現(xiàn)和應(yīng)用這兩方面有何優(yōu)缺點(diǎn)?

答:文件系統(tǒng)目錄組織可以分為一級(jí)目錄、二級(jí)目錄和多級(jí)目錄。在單用戶系統(tǒng)中,文件系統(tǒng)可以采用一級(jí)目錄。在這種狀況下,只有一級(jí)目錄,所以文件名在整個(gè)文件系統(tǒng)中必需是唯一的,不能出現(xiàn)重名。在多用戶系統(tǒng)中,可采用二級(jí)目錄,第一級(jí)目錄作為根目錄,每個(gè)用戶的文件目錄作為二級(jí)目錄。由于每個(gè)用戶的文件都分別保存在各自的目錄中,所以不同用戶可使用一致的文件名。多級(jí)目錄文件系統(tǒng)與二級(jí)目錄文件系統(tǒng)類(lèi)似,只不過(guò)目錄層次更多更繁雜而已。現(xiàn)代操作系統(tǒng)大多采用多級(jí)目錄文件系統(tǒng)。前者實(shí)現(xiàn)起來(lái)簡(jiǎn)單,由于只需要單級(jí)目錄,后者應(yīng)用起來(lái)更加便利。

5.什么是文件的規(guī)律組織?什么是文件的物理組織?文件的規(guī)律組織有幾種形式?答:從用戶的觀點(diǎn)出發(fā),需要文件系統(tǒng)提供一種規(guī)律結(jié)構(gòu)明了、使用便利的規(guī)律文件結(jié)構(gòu),這種規(guī)律文件結(jié)構(gòu)稱(chēng)為文件的規(guī)律組織。從系統(tǒng)實(shí)現(xiàn)的觀點(diǎn)出發(fā),需要為文件系統(tǒng)設(shè)計(jì)一種在外存儲(chǔ)器上存放有效的、實(shí)際的物理文件結(jié)構(gòu),這種物理文件結(jié)構(gòu)稱(chēng)為文件的物理組織。

常見(jiàn)的文件規(guī)律組織有以下三種形式:(1)順序結(jié)構(gòu)的定長(zhǎng)記錄。

(2)順序結(jié)構(gòu)的變長(zhǎng)記錄。

(3)按關(guān)鍵字存取記錄。

6.文件的物理組織常見(jiàn)的有幾種?它們與文件的存取方式有什么關(guān)系?為什么?答:常見(jiàn)的文件物理組織有以下形式:

(1)順序文件結(jié)構(gòu):順序文件結(jié)構(gòu)是計(jì)算機(jī)中最早使用的一種文件結(jié)構(gòu)。順序文件是根據(jù)記錄中某一公共的屬性,把一個(gè)由規(guī)律上連續(xù)的記錄分派到連續(xù)的物理塊中,即用物理上的順序存儲(chǔ)來(lái)實(shí)現(xiàn)文件的規(guī)律次序。在這種狀況下,物理順序和規(guī)律順序是一致的。(2)隨機(jī)文件結(jié)構(gòu):在隨機(jī)結(jié)構(gòu)中,文件存放在直接存取型存儲(chǔ)設(shè)備上,例如磁盤(pán)。磁盤(pán)文件由若干個(gè)不一定連續(xù)的磁盤(pán)扇區(qū)組成。隨機(jī)文件在數(shù)據(jù)記錄的關(guān)鍵字與其地址之間建立了某種對(duì)應(yīng)關(guān)系。隨機(jī)文件的記錄就是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論