




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上第三章 內(nèi)存管理 習(xí)題1.IBM360有一個(gè)設(shè)計(jì),為了對(duì)2KB大小的塊進(jìn)行加鎖,會(huì)對(duì)每個(gè)塊分配一個(gè)4bit的密鑰,這個(gè)密鑰存在PSW(程序狀態(tài)字)中,每次內(nèi)存引用時(shí),CPU都會(huì)進(jìn)行密鑰比較。但該設(shè)計(jì)有諸多缺陷,除了描述中所言,請(qǐng)另外提出至少兩條缺點(diǎn)。A:密鑰只有四位,故內(nèi)存只能同時(shí)容納最多十六個(gè)進(jìn)程;需要用特殊硬件進(jìn)行比較,同時(shí)保證操作迅速。2.在圖3-3中基址和界限寄存器含有相同的值16384,這是巧合,還是它們總是相等?如果這只是巧合,為什么在這個(gè)例子里它們是相等的?A:巧合?;刂芳拇嫫鞯闹凳沁M(jìn)程在內(nèi)存上加載的地址;界限寄存器指示存儲(chǔ)區(qū)的長(zhǎng)度。3.交換系統(tǒng)通過緊
2、縮來消除空閑區(qū)。假設(shè)有很多空閑區(qū)和數(shù)據(jù)段隨機(jī)分布,并且讀或?qū)?2位長(zhǎng)的字需要10ns的時(shí)間,緊縮128MB大概需要多長(zhǎng)時(shí)間?為了簡(jiǎn)單起見,假設(shè)空閑區(qū)中含有字0,內(nèi)存中最高地址處含有有效數(shù)據(jù)。A:32bit=4Byte=>每字節(jié)10/4=2.5ns 128MB=128220=227Byte 對(duì)每個(gè)字節(jié)既要讀又要寫,22.5*227=671ms4.在一個(gè)交換系統(tǒng)中,按內(nèi)存地址排列的空閑區(qū)大小是10MB,4MB,20MB,18MB,7MB,9MB,12MB,和15MB。對(duì)于連續(xù)的段請(qǐng)求:(a) 12MB(b) 10MB(c) 9MB使用首次適配算法,將找出哪個(gè)空閑區(qū)?使用最佳適配、最差適配、下
3、次適配算法呢?A: 首次適配算法:20MB,10MB,18MB; 最佳適配算法:12MB,10MB,9MB; 最差適配算法:20MB;18MB;15MB; 下次適配算法:20MB;18MB;9MB;5.物理地址和虛擬地址有什么區(qū)別?A:實(shí)際內(nèi)存使用物理地址。這些是存儲(chǔ)器芯片在總線上反應(yīng)的數(shù)字。虛擬地址是指一個(gè)進(jìn)程的地址空間的邏輯地址。因此,具有32位字的機(jī)器可以生成高達(dá)4GB的虛擬地址,而不管機(jī)器的內(nèi)存是否多于或少于4GB。6.對(duì)下面的每個(gè)十進(jìn)制虛擬地址,分別使用4KB頁(yè)面和8KB頁(yè)面計(jì)算虛擬頁(yè)號(hào)和偏移量:20000,32768,60000。A:轉(zhuǎn)換為二進(jìn)制分別為:00000 虛擬地址應(yīng)該是1
4、6位 00000 00000 4KB頁(yè)面偏移量范圍04027,需要12位來存儲(chǔ)偏移量,剩下4位作為頁(yè)號(hào); 同理8KB頁(yè)面需要13位來存儲(chǔ)偏移量,剩下3位作為頁(yè)號(hào); 所以, 4KB | 8KB 頁(yè)號(hào) | 偏移量 | 頁(yè)號(hào) | 偏移量 20000 | 0100 0 | 010 00 32768 | 1000 0 | 100 00 60000 | 1110 0 | 111 007. 使用圖3-9的頁(yè)表,給出下面每個(gè)虛擬地址對(duì)應(yīng)的物理地址:(a) 20(b) 4100(c) 8300A: (a)20+40962=8212 (b)4100=4096+(4100-4096)=4100 (c)8300=64
5、096+(8300-4096*2)=246848. Inlel 8086處理器不支持虛擬內(nèi)存,然而一些公司曾經(jīng)設(shè)計(jì)過包含未作任何改動(dòng)的8086 CPU的分頁(yè)系統(tǒng)。猜想一下,他們是如何做到這一點(diǎn)的。(提示:考慮MMU的邏輯位置。)A:他們制作了MMU,并連接在CPU與地址總線之間,這樣從處理器進(jìn)入MMU的地址全部被視為虛擬地址,并被轉(zhuǎn)換為物理地址,然后被送到地址總線,映射到內(nèi)存中。9.為了讓分頁(yè)虛擬內(nèi)存工作,需要怎樣的硬件支持?A:需要一個(gè)MMU能夠?qū)⑻摂M頁(yè)面重新映射到物理頁(yè)面。此外,當(dāng)缺頁(yè)中斷時(shí),需要對(duì)操作系統(tǒng)設(shè)置陷阱,以便可以獲取頁(yè)面。10.寫時(shí)復(fù)制是使用在服務(wù)器系統(tǒng)上的好方法,它能否在手機(jī)
6、上起作用。A: “寫時(shí)復(fù)制“技術(shù),也就是只有進(jìn)程空間的各段的內(nèi)容要發(fā)生變化時(shí),才會(huì)將父進(jìn)程的內(nèi)容復(fù)制一份給子進(jìn)程。 如果智能手機(jī)支持多重編程,iPhone、Android和Windows手機(jī)都支持多重編程,那么支持多個(gè)進(jìn)程。如果進(jìn)程發(fā)出fork()系統(tǒng)調(diào)用和頁(yè)面在父進(jìn)程和子進(jìn)程之間共享,則復(fù)制對(duì)寫是有意義的。智能手機(jī)比服務(wù)器小,但從邏輯上講,它并沒有什么不同。11.考慮下面的C程序:int XN; int step = M; /M是某個(gè)預(yù)定義的常量 for (int i = 0; i < N; i += step) Xi = Xi + 1;a)如果這個(gè)程序運(yùn)行在一個(gè)頁(yè)面大小為4KB且有6
7、4 個(gè)TLB 表項(xiàng)的機(jī)器上時(shí),M和N取什么值會(huì)使得內(nèi)層循環(huán)的每次執(zhí)行都會(huì)引起TLB失效?b)如果循環(huán)重復(fù)很多遍,結(jié)果會(huì)和a)的答案相同嗎?請(qǐng)解釋。A: a)M必須至少為1024,以確保對(duì)X元素的每一次訪問都有一個(gè)TLB缺失。因?yàn)镹只影響X訪問多少次,N取大于M的任何值都可以。 b)M應(yīng)該至少是1024,以確保對(duì)X元素的每次訪問都遺漏TLB。但是現(xiàn)在N應(yīng)該大于64K,以便處理TLB,也就是說,X應(yīng)該超過256KB。12.存儲(chǔ)頁(yè)面必須可用的磁盤空間和下列因素有關(guān):最大進(jìn)程數(shù)n,虛擬地址空間的字節(jié)數(shù)v,RAM的字節(jié)數(shù)r,給出最壞情況下磁盤空間需求的表達(dá)式。這個(gè)數(shù)量的真實(shí)性如何?A:所有進(jìn)程的整個(gè)虛擬
8、地址空間為nv,這就是頁(yè)面存儲(chǔ)所需的。不過,可以在RAM中存儲(chǔ)量為r,因此需要的磁盤存儲(chǔ)量?jī)H為nv-r。該量比實(shí)際所需的要大得多,因?yàn)闃O少有n個(gè)進(jìn)程實(shí)際運(yùn)行,而且這些進(jìn)程也極少需要其最大允許的虛擬內(nèi)存。13.如果一條指令執(zhí)行1ns,缺頁(yè)中斷執(zhí)行額外的Nns,且每條k指令產(chǎn)生一個(gè)缺頁(yè),請(qǐng)給出一個(gè)公式,計(jì)算有效指令時(shí)間。A: (1*(k-1)+(1+N)/k = 1+N/k ns14.一個(gè)機(jī)器有32位地址空間和8KB頁(yè)面,頁(yè)表完全用硬件實(shí)現(xiàn),頁(yè)表的每一表項(xiàng)為一個(gè)32位字。進(jìn)程啟動(dòng)時(shí),以每個(gè)字100ns的速度將頁(yè)表從內(nèi)存復(fù)制到硬件中。如果每個(gè)進(jìn)程運(yùn)行100ms(包含裝入頁(yè)表的時(shí)間)用來裝人頁(yè)表的CP
9、U時(shí)間的比例是多少?A: 32位地址空間構(gòu)成4GB內(nèi)存空間,4GB/8KB=512個(gè)頁(yè)面,頁(yè)表項(xiàng)512項(xiàng),頁(yè)表大小512·32=214 bit,復(fù)制頁(yè)表的時(shí)間=214/25*10ns = 5120 ns, 時(shí)間比例5120ns/100ms=5120·10(-9) / 100·10(-3) =51.2% 8KB頁(yè)面大小,需要13位偏移量,故頁(yè)號(hào)有19位,頁(yè)面有219個(gè),頁(yè)表項(xiàng)也是219個(gè),每項(xiàng)32位字。 219·100ns/100ms=52.4288%15.假設(shè)一個(gè)機(jī)器有48位的虛擬地址和32位的物理地址。a)假設(shè)頁(yè)面大小是4
10、KB,如果只有一級(jí)頁(yè)表,那么在頁(yè)表里有多少頁(yè)表項(xiàng)? 請(qǐng)解釋。b)假設(shè)同一系統(tǒng)有32個(gè)TLB表項(xiàng),并且假設(shè)一個(gè)程序的指令正好能放入一個(gè)頁(yè),并且該程序順序地從有數(shù)千個(gè)頁(yè)的數(shù)組中讀取長(zhǎng)整型元素。在這種情況下TLB的效果如何?A: a)頁(yè)面大小4KB,偏移量有12位,則頁(yè)號(hào)有36位,有236項(xiàng)頁(yè)表項(xiàng); b)TLB訪問的命中率達(dá)100%。在指令訪問下一個(gè)頁(yè)面之前讀取數(shù)據(jù)的命中率是100%,一個(gè)4KB大小的頁(yè)面包含1024個(gè)長(zhǎng)整型數(shù)據(jù),每訪問1024個(gè)數(shù)據(jù)就會(huì)有一次TLB失效。16.給定一個(gè)虛擬內(nèi)存系統(tǒng)的如下數(shù)據(jù):(a)TLB有1024項(xiàng),可以在1個(gè)時(shí)鐘周期(1ns)內(nèi)訪問。(b)頁(yè)表項(xiàng)可以在100時(shí)鐘周
11、期(100ns)內(nèi)訪問。(c)平均頁(yè)面替換時(shí)間是6ms。如果TLB處理的頁(yè)面訪問占99%,并且0.01%的頁(yè)面訪問會(huì)發(fā)生缺頁(yè)中斷,那么有效地址轉(zhuǎn)換時(shí)間是多少?A: 99%·1ns+1%·99.99%·100ns+1%·0.01%·6ms=7.9899 99%·1ns+0.99%·100ns+0.01%·6ms=601.98ns17. 假設(shè)一個(gè)機(jī)器有38位的虛擬地址和32位的物理地址。a)與一級(jí)頁(yè)表比較,多級(jí)頁(yè)表的主要優(yōu)點(diǎn)是什么?b)若采用二級(jí)頁(yè)表,頁(yè)面大小為16KB,每個(gè)頁(yè)表項(xiàng)為4字節(jié),應(yīng)該對(duì)第
12、一級(jí)頁(yè)表域分配多少位,對(duì)第二級(jí)頁(yè)表域分配多少位?請(qǐng)解釋原因A: a)避免把全部頁(yè)表一直保存在內(nèi)存中。 b) ”16KB個(gè)頁(yè)“估計(jì)是指這個(gè)二級(jí)頁(yè)表的大小是16KB,故頁(yè)表項(xiàng)有16KB/4B=4K個(gè),二級(jí)頁(yè)表域需要12位,四字節(jié)表項(xiàng)說明頁(yè)面大小是12 頁(yè)面大小16KB,則偏移量需要14位,每個(gè)條目4字節(jié)18.在3.3.4節(jié)的陳述中,奔騰Pro將多級(jí)頁(yè)表中的每個(gè)頁(yè)表項(xiàng)擴(kuò)展到64位,但仍只能對(duì)4GB的內(nèi)存進(jìn)行尋址。請(qǐng)解釋頁(yè)表項(xiàng)為64位時(shí),為何這個(gè)陳述正確。A:雖然頁(yè)表項(xiàng)擴(kuò)展了,但是虛擬內(nèi)存地址依然只有32位。19.個(gè)32位地址的計(jì)算機(jī)使用兩級(jí)頁(yè)表。 虛擬地址被分成9位的頂級(jí)頁(yè)表域、
13、 11位的二級(jí)頁(yè)表域和一個(gè)偏移量,頁(yè)面大小是多少?在地址空間中一共有多少個(gè)頁(yè)面?A: 頁(yè)面大小與偏移量位數(shù)有關(guān)=212Byte=4KB,每個(gè)地址對(duì)應(yīng)內(nèi)存一個(gè)字節(jié), 地址空間的頁(yè)面數(shù)量=220個(gè)。20.一個(gè)計(jì)算機(jī)使用32位的虛擬地址,4KB大小的頁(yè)面。程序和數(shù)據(jù)都位于最低的頁(yè)面(04095),棧位于最高的頁(yè)面。如果使用傳統(tǒng)(一級(jí))分頁(yè),頁(yè)表中需要多少個(gè)表項(xiàng)?如果使用兩級(jí)分頁(yè),每部分有10位,需要多少個(gè)頁(yè)表項(xiàng)?A:32位地址對(duì)應(yīng)4GB內(nèi)存,有4GB/4KB=220個(gè)頁(yè)面,如果使用傳統(tǒng)(一級(jí))分頁(yè):需要220個(gè)頁(yè)表項(xiàng);如果使用兩級(jí)分頁(yè),頂級(jí)頁(yè)表有210個(gè)頁(yè)表項(xiàng),其中三項(xiàng)指向二級(jí)頁(yè)表(程序段、數(shù)據(jù)段、
14、堆棧段),二級(jí)頁(yè)表每個(gè)也有有210個(gè)頁(yè)表項(xiàng),總共212個(gè)頁(yè)表項(xiàng)。21.如下是在頁(yè)大小為512字節(jié)的計(jì)算機(jī)上,一個(gè)程序片段的執(zhí)行軌跡。這個(gè)程序在1020地址,其棧指針在8192(棧向0生長(zhǎng))。請(qǐng)給出該程序產(chǎn)生的頁(yè)面訪問串。每個(gè)指令(包括立即常數(shù))占4個(gè)字節(jié)(1個(gè)字)。指令和數(shù)據(jù)的訪問都要在訪問串中計(jì)數(shù)。將字6144載入寄存器0寄存器0壓棧調(diào)用5120處的程序,將返回地址壓棧棧指針減去立即數(shù)16比較實(shí)參和立即數(shù)4如果相等,跳轉(zhuǎn)到5152處A:程序地址范圍10201532。 頁(yè)面訪問串:6144-81915120819081845152. A:每個(gè)頁(yè)面512B,1020地址屬于5
15、121023,即頁(yè)面1;棧指針8192屬于81928704,即頁(yè)面16,但是棧向0生長(zhǎng),故寄存器壓棧到81918188,屬于頁(yè)面15;5152地址屬于51205631,即頁(yè)面10. 每條指令4個(gè)字節(jié),故第一條指令在地址范圍10201023,屬于頁(yè)面1;第二條指令在地址范圍10241027,屬于頁(yè)面2;第三條指令地址也在頁(yè)面2,但是將數(shù)據(jù)壓棧到頁(yè)面15了。 LOAD 6144,R0 1(I), 12(D) PUSH R0 2(I), 15(D) CALL 5120 2(I), 15(D) JEQ 5152 10(I) 代碼(I)指示指令引用,而(D)指示數(shù)據(jù)引用。22.一臺(tái)計(jì)算機(jī)的進(jìn)程在其地址空
16、間有1024個(gè)頁(yè)面,頁(yè)表保存在內(nèi)存中。從頁(yè)表中讀取一個(gè)字的開銷是5n。為了減小這一開銷,該計(jì)算機(jī)使用了TLB,它有32個(gè)(虛擬頁(yè)面,物理頁(yè)框)對(duì),能在1ns內(nèi)完成查找。請(qǐng)問把平均開銷降到2ns需要的命中率是多少?A:p·1+(5+1)·(1-p)< 2 =>p>0.823.TLB需要的相聯(lián)存儲(chǔ)設(shè)備如何用硬件實(shí)現(xiàn),這種設(shè)計(jì)對(duì)擴(kuò)展性意味著什么?A:相聯(lián)存儲(chǔ)器本質(zhì)上將key與多個(gè)寄存器的內(nèi)容同時(shí)進(jìn)行比較。對(duì)于每個(gè)寄存器,必須有一組比較器,將寄存器內(nèi)容中的每個(gè)位與正在搜索的鍵進(jìn)行比較。實(shí)現(xiàn)這種設(shè)備所需的門(或晶體管)的數(shù)量是寄存器數(shù)量的線性函數(shù),因此這種設(shè)計(jì)對(duì)擴(kuò)展
17、性意味著成本變得昂貴。24.一臺(tái)機(jī)器有48位虛擬地址和32位物理地址,頁(yè)面大小是8KB,試問頁(yè)表中需要多少個(gè)表項(xiàng)?A: 物理內(nèi)存是4GB,頁(yè)面數(shù)量是4GB/8KB=219項(xiàng), 頁(yè)面偏移量需要213位,頁(yè)表域總共35位。25.一個(gè)計(jì)算機(jī)的頁(yè)面大小為8KB,內(nèi)存大小為256KB,虛擬地址空間為64GB,使用倒排頁(yè)表實(shí)現(xiàn)虛擬內(nèi)存。為了保證平均散列鏈的長(zhǎng)度小于1,散列表應(yīng)該多大?假設(shè)散列表的大小為2的冪。A:(原答案)內(nèi)存有228(256KB) / 213(8KB) =(215)32768頁(yè)。32K的哈希表的平均鏈長(zhǎng)為1。為了使之小于1,必須使用下一個(gè)尺寸(216)65536項(xiàng)。將
18、32768項(xiàng)放入65536格中使其平均鏈長(zhǎng)為0.5,以保證快速的查詢。 (這個(gè)題目有錯(cuò)吧??jī)?nèi)存應(yīng)該是256MB才對(duì)) 物理頁(yè)面數(shù)=256MB/8KB=215,若散列表為215,則平均散列長(zhǎng)度為1,為保證平均散列鏈長(zhǎng)度小于1,散列表至少為216.26.一個(gè)學(xué)生在編譯器設(shè)計(jì)課程中向教授提議了一個(gè)項(xiàng)目:編寫一個(gè)編譯器,用來產(chǎn)生頁(yè)面訪問列表,該列表可以用于實(shí)現(xiàn)最優(yōu)頁(yè)面置換算法。試問這是否可能?為什么?有什么方法可以改進(jìn)運(yùn)行時(shí)的分頁(yè)效率?A:這是不可能的,除了程序的執(zhí)行過程在編譯時(shí)是完全可預(yù)測(cè)的少數(shù)情況。如果編譯器收集程序有關(guān)調(diào)用代碼中的位置信息,則可以在鏈接時(shí)使用此信息來重新排列目標(biāo)代碼,以便程序位于
19、它們調(diào)用的代碼附近。這將使得進(jìn)程更可能與所調(diào)用的代碼在同一個(gè)頁(yè)面上。當(dāng)然這從許多地方進(jìn)行調(diào)用的程序來說是無(wú)效的。27.假設(shè)虛擬頁(yè)碼索引流中有一些長(zhǎng)的頁(yè)碼索引序列的重復(fù),序列之后有時(shí)會(huì)是一個(gè)隨機(jī)的頁(yè)碼索引。例如,序列0,1,511,431,0,1,511,332, 0,1,中就包含了0,1,511的重復(fù),以及跟隨在它們之后的隨機(jī)頁(yè)碼索引431和332。a)在工作負(fù)載比該序列短的情況下,標(biāo)準(zhǔn)的頁(yè)面置換算法(LRU,F(xiàn)IFO,Clock) 在處理?yè)Q頁(yè)時(shí)為什么效果不好? b)如果一個(gè)程序分配了500個(gè)頁(yè)框,請(qǐng)描述一個(gè)效果優(yōu)于LRU、FIFO或Clock算法的頁(yè)面置換方法。A: a)標(biāo)準(zhǔn)的頁(yè)面置換算法是
20、針對(duì)已經(jīng)在內(nèi)存中的頁(yè)面研究的。當(dāng)工作負(fù)載比序列短時(shí),會(huì)出現(xiàn)內(nèi)存容量不夠而長(zhǎng)生顛簸,這種情況下LRU、Clock、FIFO算法達(dá)不到預(yù)期的效果,任何訪問都會(huì)引起缺頁(yè)除非內(nèi)存的頁(yè)框數(shù)量大于512。 b)如果分配了500個(gè)頁(yè)框,那么0498號(hào)頁(yè)框是固定的,只有一個(gè)頁(yè)框進(jìn)行頁(yè)面置換。28.如果將FIFO頁(yè)面罝換算法用到4個(gè)頁(yè)框和8個(gè)頁(yè)面上,若初始時(shí)頁(yè)框?yàn)榭?,訪問字符串為,請(qǐng)問會(huì)發(fā)生多少次缺頁(yè)中斷?如果使用LRU算法呢?A: FIFO 6 LRU 729.考慮圖3- 15b中的頁(yè)面序列。假設(shè)從頁(yè)面B到頁(yè)面A的R位分別是。 使用第二次機(jī)會(huì)算法,被移走的是哪個(gè)頁(yè)面?A:D。30. 一臺(tái)小計(jì)算機(jī)有4個(gè)頁(yè)框。在
21、第一個(gè)時(shí)鐘滴答時(shí)R位是0111(頁(yè)面0是0,其他頁(yè)面是1),在隨后的時(shí)鐘滴答中這個(gè)值是1011、1010、1101、0010、1010、 1100、0001。如果使用帶有8位計(jì)數(shù)器的老化算法,給出最后一個(gè)滴答后4個(gè)計(jì)數(shù)器的值。A: 0號(hào)頁(yè)框:; 1號(hào)頁(yè)框:; 2號(hào)頁(yè)框:; 3號(hào)頁(yè)框:。31.請(qǐng)給出一個(gè)頁(yè)面訪問序列,使得對(duì)于這個(gè)訪問序列,使用Clock和LRU 算法得到的第一個(gè)被選擇置換的頁(yè)面不同。假設(shè)一個(gè)進(jìn)程分配了3個(gè)頁(yè)框,訪問串中的頁(yè)號(hào)屬于集合0,1,2,3。A:。 LRU將第3頁(yè)替換為第2頁(yè)。 Clock將第0頁(yè)替換為第2頁(yè)。32.在圖3-21c的工作集時(shí)鐘算法中,表針指向那個(gè)R = 0的
22、頁(yè)面。如果=400,這個(gè)頁(yè)面將被移出嗎?如果= 1000呢?(當(dāng)前時(shí)間2204)A:該頁(yè)面的生存時(shí)間是2204 - 1213 = 991。如果= 400,它就不在工作集中,最近沒有被引用,所以它將被移出。= 1000的情況不同,此時(shí)頁(yè)面在工作集中,所以它不會(huì)被刪除。34.一個(gè)學(xué)生聲稱:“抽象來看,除了選取替代頁(yè)面使用的屬性不同外,基本頁(yè)面置換算法(FIFO,LRU,最優(yōu)算法)都相同。”(a)FIFO、LRU、最優(yōu)算法使用的屬性是什么?(b)請(qǐng)給出這些頁(yè)面置換算法的通用算法。A: a)FIFO:加載時(shí)間;LRU:最近訪問時(shí)間;OPT:在未來的最近訪問時(shí)間 b)有標(biāo)簽算法和替換算法。標(biāo)記算法用部分
23、a給出的屬性從大到小標(biāo)記每個(gè)頁(yè)面。替換算法刪除標(biāo)簽最小的頁(yè)面。35.從平均尋道時(shí)間10ms、旋轉(zhuǎn)延遲時(shí)間10ms、 每磁道32KB的磁盤上載入一個(gè)64KB的程序,對(duì)于下列頁(yè)面大小分別需要多少時(shí)間? a)頁(yè)面大小為2KB; b)頁(yè)面大小為4KB。 假設(shè)頁(yè)面隨機(jī)地分布在磁盤上,柱面的數(shù)目非常大以至于兩個(gè)頁(yè)面在同一個(gè)柱面的機(jī)會(huì)可以忽略不計(jì)。A: a)頁(yè)面有64KB/2KB=32個(gè),32·(10+10)=640msb)頁(yè)面16個(gè),16·
24、20=320ms原答案:(很迷啊,怎么算的傳輸時(shí)間?。浚核阉骷有D(zhuǎn)等待時(shí)間為10毫秒。對(duì)于2-KB頁(yè)面,傳輸時(shí)間約為0.毫秒,總共約10.毫秒。加載這些頁(yè)面的32將花費(fèi)大約320.21毫秒。對(duì)于4-KB頁(yè)面,傳輸時(shí)間加倍到大約0.01953毫秒,因此每頁(yè)的總時(shí)間是10.01953毫秒。加載這些頁(yè)面的16需要大約160.3125毫秒。使用這樣快的磁盤,所有重要的是減少傳輸?shù)臄?shù)量(或者連續(xù)地將頁(yè)面放在磁盤上)。 現(xiàn)在我知道是如何計(jì)算的了,參考現(xiàn)代操作系統(tǒng)中文第四版 第4章文件系統(tǒng)4.4.1的例子:假設(shè)磁盤每道有1MB,其旋轉(zhuǎn)時(shí)間是8.33ms,平均尋道時(shí)間為5ms。以毫秒為
25、單位,讀取一個(gè)k字節(jié)的塊所需要的時(shí)間是尋道時(shí)間、旋轉(zhuǎn)延遲和傳送時(shí)間之和: 5 + 4.165 + (k/) x 8.33從中可以得知單位容量傳送時(shí)間 = 旋轉(zhuǎn)時(shí)間/每道容量故本題中單位容量傳送時(shí)間 = 23/215 x 10 = 0.00244 ms/KB42.人們已經(jīng)觀察到在兩次缺頁(yè)中斷之間執(zhí)行的指令數(shù)與分配給程序的頁(yè)框數(shù)直接成比例。如果可用內(nèi)存加倍,缺頁(yè)中斷間的平均間隔也加倍。假設(shè)一條普通指令需要1m,但是如果發(fā)生了缺頁(yè)中斷,就需要2001s (即2ms
26、處理缺頁(yè)中斷),如果一個(gè)程序運(yùn)行了60s,期間發(fā)生了15000次缺頁(yè)中斷,如果可用內(nèi)存是原來的兩倍,那么這個(gè)程序運(yùn)行需要多少時(shí)間?A:該程序發(fā)生了15000次缺頁(yè)中斷,每個(gè)缺頁(yè)中斷都需要2ms的額外處理時(shí)間。處理缺頁(yè)中斷的總開銷為30s。這意味著在程序運(yùn)行的60s內(nèi),一半用于缺頁(yè)中斷開銷,一半用于運(yùn)行程序。如果我們運(yùn)行程序的內(nèi)存是內(nèi)存的兩倍,我們會(huì)得到一半的內(nèi)存頁(yè)錯(cuò)誤,只有15秒的頁(yè)面錯(cuò)誤開銷,所以總的運(yùn)行時(shí)間將是45秒。43.Frugal計(jì)算機(jī)公司的一組操作系統(tǒng)設(shè)計(jì)人員正在考慮在他們的新操作系統(tǒng)中減少對(duì)后備存儲(chǔ)數(shù)量的需求。老板建議根本不要把程序正文保存在交換區(qū)中,而是在需要的時(shí)候直接從二進(jìn)制文件中調(diào)頁(yè)進(jìn)來。在什么條件下(如果有這樣的條件話)這種想法適用于程序文本?在什么條件下(如果有這樣的條
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品藥品養(yǎng)護(hù)管理制度
- 藥品銷售退回管理制度
- 藥店醫(yī)保業(yè)務(wù)管理制度
- 藥店特殊藥物管理制度
- 菜鳥冷藏倉(cāng)庫(kù)管理制度
- 論述藥品召回管理制度
- 設(shè)備售后安裝管理制度
- 設(shè)備容器清潔管理制度
- 設(shè)備檢修審批管理制度
- 設(shè)備裝修質(zhì)量管理制度
- 2025年重慶市中考數(shù)學(xué)試卷真題(含標(biāo)準(zhǔn)答案)
- 最新藥店員工手冊(cè)
- 系列螺桿冷水機(jī)組操作培訓(xùn)
- 五金用樣品承認(rèn)書
- 催化劑對(duì)異氰酸酯反應(yīng)活性的影響
- 國(guó)家開放大學(xué)《C語(yǔ)言程序設(shè)計(jì)》綜合測(cè)試題參考答案
- 老年人生活自理能力評(píng)估表
- 火電機(jī)組能耗指標(biāo)分析指導(dǎo)性意見
- 四年級(jí)下冊(cè)英語(yǔ)外研一起點(diǎn)知識(shí)要點(diǎn)匯總
- 我國(guó)各類型扣件技術(shù)說明
- 現(xiàn)澆混凝土構(gòu)件含模量參考表(浙江03、10定額砼含模量對(duì)照表)
評(píng)論
0/150
提交評(píng)論