




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第三章 內(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ū)的長度。3.
2、 交換系統(tǒng)通過緊縮來消除空閑區(qū)。假設(shè)有很多空閑區(qū)和數(shù)據(jù)段隨機(jī)分布,并且讀或?qū)?2位長的字需要10ns的時(shí)間,緊縮128MB大概需要多長時(shí)間?為了簡 單起見,假設(shè)空閑區(qū)中含有字 0,內(nèi)存中最高地址處含有有效數(shù)據(jù)。A: 32bit=4Byte= 每字節(jié) 10/4=2.5 ns 128MB=1282A20=2A27Byte對(duì)每個(gè)字節(jié)既要讀又要寫,22.5*2A27=671ms4. 在一個(gè)交換系統(tǒng)中,按內(nèi)存地址排列的空閑區(qū)大小是10MB, 4MB, 20MB,18MB, 7MB, 9MB, 1 2 M B ,和1 5 M B 。對(duì)于連續(xù)的段請(qǐng)求:(a) 12MB(b) 10MB(c) 9MB 使用首次
3、適配算法, 將找出哪個(gè)空閑區(qū)?使用最佳適配、 最差適配、 下次適配算 法呢?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頁面和8KB頁面計(jì)算
4、虛擬頁號(hào)和偏移量: 20000 , 32768, 60000 。A: 轉(zhuǎn)換為二進(jìn)制分別為: 0100111000100000 虛擬地址應(yīng)該是 16 位 1000000000000000 1110101001100000 4KB 頁面偏移量范圍 0 4027,需要 12位來存儲(chǔ)偏移量,剩下4位作為頁號(hào);同理8KB頁面需要13位來存儲(chǔ)偏移 量,剩下 3 位作為頁號(hào); 所以, 4KB | 8KB 頁號(hào) | 偏移量 | 頁號(hào) | 偏移量 20000 | 0100 111000100000 | 010 0111000100000 32768 | 1000 000000000000 | 100 00000
5、00000000 60000 | 1110 101001100000 | 111 01010011000007. 使用圖 3-9 的頁表,給出下面每個(gè)虛擬地址對(duì)應(yīng)的物理地址:(a) 20(b) 4100(c) 8300A: (a)20+40962=8212 (b) 4100=4096+ (4100-4096 ) =4100 (c)8300=64096+ (8300-4096*2 )=246848. Inlel 8086 處理器不支持虛擬內(nèi)存,然而一些公司曾經(jīng)設(shè)計(jì)過包含未作任何改 動(dòng)的 8086 CPU 的分頁系統(tǒng)。猜想一下,他們是如何做到這一點(diǎn)的。 (提示:考 慮 MMU 的邏輯位置。)A :
6、他們制作了 MMU,并連接在CPU與地址總線之間,這樣從處理器進(jìn)入 MMU 的地址全部被視為虛擬地址, 并被轉(zhuǎn)換為物理地址, 然后被送到地址總線, 映射 到內(nèi)存中。9. 為了讓分頁虛擬內(nèi)存工作,需要怎樣的硬件支持?A :需要一個(gè) MMU 能夠?qū)⑻摂M頁面重新映射到物理頁面。 此外,當(dāng)缺頁中斷時(shí), 需要對(duì)操作系統(tǒng)設(shè)置陷阱,以便可以獲取頁面。10. 寫時(shí)復(fù)制是使用在服務(wù)器系統(tǒng)上的好方法,它能否在手機(jī)上起作用。A: “寫時(shí)復(fù)制 “技術(shù),也就是只有進(jìn)程空間的各段的內(nèi)容要發(fā)生變化時(shí), 才會(huì)將 父進(jìn)程的內(nèi)容復(fù)制一份給子進(jìn)程。 如果智能手機(jī)支持多重編程, iPhone 、 Android 和 Windows
7、手機(jī)都支持多重編程,那么支持多個(gè)進(jìn)程。如果進(jìn)程發(fā)出fork() 系統(tǒng)調(diào)用和頁面在父進(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è)頁面大小為 4KB且有64個(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
8、,以確保對(duì)X元素的每一次訪問都有一個(gè) TLB缺失。因 為 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ǔ)頁面必須可用的磁盤空間和下列因素有關(guān): 最大進(jìn)程數(shù) n ,虛擬地址空間的字節(jié)數(shù)v,RAM的字節(jié)數(shù)r,給出最壞情況下磁盤空間需求的表達(dá)式。這個(gè)數(shù) 量的真實(shí)性如何?A :所有進(jìn)程的整個(gè)虛擬地址空間為 nv,這就是頁面存儲(chǔ)所需的。不過,可以在 RAM中存儲(chǔ)量為r,因此需要的磁盤存儲(chǔ)量僅為 nv-r。該量比實(shí)際所需的要大 得多
9、,因?yàn)闃O少有 n 個(gè)進(jìn)程實(shí)際運(yùn)行, 而且這些進(jìn)程也極少需要其最大允許的虛擬內(nèi)存13. 如果一條指令執(zhí)行1ns,缺頁中斷執(zhí)行額外的Nns,且每條k指令產(chǎn)生一個(gè)缺頁,請(qǐng)給出一個(gè)公式,計(jì)算有效指令時(shí)間。A: (1*(k-1)+(1+N)/k = 1+N/k ns14. 一個(gè)機(jī)器有 32 位地址空間和 8KB 頁面,頁表完全用硬件實(shí)現(xiàn),頁表的每一 表項(xiàng)為一個(gè) 32 位字。進(jìn)程啟動(dòng)時(shí),以每個(gè)字 100ns 的速度將頁表從內(nèi)存復(fù)制到 硬件中。如果每個(gè)進(jìn)程運(yùn)行100ms (包含裝入頁表的時(shí)間)用來裝人頁表的CPU 時(shí)間的比例是多少?A: 32 位地址空間構(gòu)成 4GB 內(nèi)存空間, 4GB/8KB=512 個(gè)頁
10、面,頁表項(xiàng) 512 項(xiàng),頁表大小512 32=2X4 bit復(fù)制頁表的時(shí)間=2A14/2A5*10ns = 5120 ns, 時(shí)間 比例 5120ns/100ms=5120 -10)A( 100 -3)0=51.2% 8KB 頁面大小,需要13 位偏移量,故頁號(hào)有 19 位,頁面有 2A19 個(gè),頁表項(xiàng)也是 2A19 個(gè),每項(xiàng) 32位字。 2A19 100ns/100ms=52.4288%15. 假設(shè)一個(gè)機(jī)器有 48 位的虛擬地址和 32 位的物理地址。a) 假設(shè)頁面大小是4KB,如果只有一級(jí)頁表,那么在頁表里有多少頁表項(xiàng)?請(qǐng)解釋。b) 假設(shè)同一系統(tǒng)有32個(gè)TLB表項(xiàng),并且假設(shè)一個(gè)程序的指令正
11、好能放入一個(gè)頁,并且該程序順序地從有數(shù)千個(gè)頁的數(shù)組中讀取長整型元素。在這種情況下TLB的 效果如何?A:a)頁面大小4KB,偏移量有12位,則頁號(hào)有36位,有2A36項(xiàng)頁表項(xiàng);b)TLB 訪問的命中率達(dá) 100%。在指令訪問下一個(gè)頁面之前讀取數(shù)據(jù)的命中率是 100%,一個(gè) 4KB 大小的頁面包含 1024 個(gè)長整型數(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) 頁表項(xiàng)可以在100時(shí)鐘周期(100ns)內(nèi)訪問。(c) 平均頁面替換時(shí)間是6ms。如果TLB處理的頁面訪問占99
12、%并且0.01%勺頁面訪問會(huì)發(fā)生缺頁中斷,那么 有效地址轉(zhuǎn)換時(shí)間是多少?A: 99% 1 ns+1% 99.99% 100ns+1% 0.01% 6ms=7.9999 1ns+0.99% 100ns+0 .01% 6ms601.98ns17. 假設(shè)一個(gè)機(jī)器有 38 位的虛擬地址和 32 位的物理地址。a) 與一級(jí)頁表比較,多級(jí)頁表的主要優(yōu)點(diǎn)是什么?b) 若采用二級(jí)頁表,頁面大小為16KB,每個(gè)頁表項(xiàng)為4字節(jié),應(yīng)該對(duì)第一級(jí)頁 表域分配多少位 ,對(duì)第二級(jí)頁表域分配多少位?請(qǐng)解釋原因A: a)避免把全部頁表一直保存在內(nèi)存中。 b) ” 16KB個(gè)頁 估計(jì)是指這個(gè)二 級(jí)頁表的大小是16KB,故頁表項(xiàng)有
13、16KB/4B=4K個(gè),二級(jí)頁表域需要12位, 四字節(jié)表項(xiàng)說明頁面大小是12頁面大小16KB,則偏移量需要14位,每個(gè)條目4 字節(jié)18. 在 3.3.4 節(jié)的陳述中,奔騰 Pro 將多級(jí)頁表中的每個(gè)頁表項(xiàng)擴(kuò)展到 64 位,但 仍只能對(duì) 4GB 的內(nèi)存進(jìn)行尋址。請(qǐng)解釋頁表項(xiàng)為 64 位時(shí),為何這個(gè)陳述正確。A:雖然頁表項(xiàng)擴(kuò)展了,但是虛擬內(nèi)存地址依然只有32位。19. 個(gè) 32 位地址的計(jì)算機(jī)使用兩級(jí)頁表。 虛擬地址被分成 9 位的頂級(jí)頁表域、11 位的二級(jí)頁表域和一個(gè)偏移量,頁面大小是多少?在地址空間中一共有多少 個(gè)頁面?A:頁面大小與偏移量位數(shù)有關(guān)=2A12Byte=4KB,每個(gè)地址對(duì)應(yīng)內(nèi)存一
14、個(gè)字節(jié), 地址空間的頁面數(shù)量=2八20個(gè)。20. 一個(gè)計(jì)算機(jī)使用 32 位的虛擬地址, 4KB 大小的頁面。 程序和數(shù)據(jù)都位于最低 的頁面(04095 ),棧位于最高的頁面。如果使用傳統(tǒng)(一級(jí))分頁,頁表中需 要多少個(gè)表項(xiàng)?如果使用兩級(jí)分頁,每部分有 10 位,需要多少個(gè)頁表項(xiàng)?A:32 位地址對(duì)應(yīng) 4GB 內(nèi)存,有 4GB/4KB=2A20 個(gè)頁面 ,如果使用傳統(tǒng)(一級(jí)) 分頁:需要 2A20 個(gè)頁表項(xiàng);如果使用兩級(jí)分頁,頂級(jí)頁表有 2A10 個(gè)頁表項(xiàng), 其中三項(xiàng)指向二級(jí)頁表 (程序段、 數(shù)據(jù)段、堆棧段),二級(jí)頁表每個(gè)也有有 2A10 個(gè)頁表項(xiàng),總共 2A12 個(gè)頁表項(xiàng)。21. 如下是在頁大
15、小為 512 字節(jié)的計(jì)算機(jī)上,一個(gè)程序片段的執(zhí)行軌跡。這個(gè)程 序在 1020 地址,其棧指針在 8192(棧向 0 生長)。請(qǐng)給出該程序產(chǎn)生的頁面訪 問串。每個(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。頁面訪問串:6144-8191 5120 8190 81845152. A :每個(gè)頁面512B , 1020地址屬于5121023,即頁面1;棧指針 8192 屬
16、于 81928704 ,即頁面 16,但是棧向 0 生長,故寄存器壓 棧到 81918188,屬于頁面 15;5152 地址屬于 51205631,即頁面 10. 每 條指令 4 個(gè)字節(jié),故第一條指令在地址范圍 10201023,屬于頁面 1;第二條 指令在地址范圍 10241027,屬于頁面 2;第三條指令地址也在頁面 2,但是 將數(shù)據(jù)壓棧到頁面 15 了。 LOAD 6144,R0 1(I), 12(D) PUSH R0 2(I), 15(D) CALL 5120 2(1), 15(D) JEQ 5152 10(1) 代碼(I)指示指令引用,而(D)指示數(shù)據(jù)引 用。22. 一臺(tái)計(jì)算機(jī)的進(jìn)程
17、在其地址空間有 1024 個(gè)頁面,頁表保存在內(nèi)存中。 從頁表 中讀取一個(gè)字的開銷是5n。為了減小這一開銷,該計(jì)算機(jī)使用了 TLB,它有32 個(gè)(虛擬頁面,物理頁框)對(duì),能在 1ns 內(nèi)完成查找。請(qǐng)問把平均開銷降到 2ns 需要的命中率是多少?23. 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ò)展性意味著成本變得昂貴。24. 臺(tái)機(jī)器有48
18、位虛擬地址和32位物理地址,頁面大小是8KB,試問頁表中 需要多少個(gè)表項(xiàng)?A:物理內(nèi)存是4GB,頁面數(shù)量是4GB/8KB=2M9 項(xiàng),頁面偏移量需要2A13位, 頁表域總共 35 位。25. 一個(gè)計(jì)算機(jī)的頁面大小為8KB,內(nèi)存大小為256KB,虛擬地址空間為64GB, 使用倒排頁表實(shí)現(xiàn)虛擬內(nèi)存。為了保證平均散列鏈的長度小于 1 ,散列表應(yīng)該多 大?假設(shè)散列表的大小為 2 的冪。A:(原答案)內(nèi)存有 2A28(256KB) / 2A13(8KB) =(2八15)32768 頁。32K 的哈希 表的平均鏈長為 1。為了使之小于 1,必須使用下一個(gè)尺寸 (2A16)65536 項(xiàng)。將 32768 項(xiàng)
19、放入 65536 格中使其平均鏈長為 0.5,以保證快速的查詢。 (這個(gè)題 目有錯(cuò)吧?內(nèi)存應(yīng)該是 256MB 才對(duì)) 物理頁面數(shù) =256MB/8KB=2A15,若散列表為 2A15 ,則平均散列長度為 1 ,為保證平均散列鏈長度小于 1 ,散列 表至少為 2A16.26. 一個(gè)學(xué)生在編譯器設(shè)計(jì)課程中向教授提議了一個(gè)項(xiàng)目:編寫一個(gè)編譯器,用來產(chǎn)生頁面訪問列表, 該列表可以用于實(shí)現(xiàn)最優(yōu)頁面置換算法。 試問這是否可能? 為什么?有什么方法可以改進(jìn)運(yùn)行時(shí)的分頁效率?A :這是不可能的,除了程序的執(zhí)行過程在編譯時(shí)是完全可預(yù)測(cè)的少數(shù)情況。如 果編譯器收集程序有關(guān)調(diào)用代碼中的位置信息, 則可以在鏈接時(shí)使用
20、此信息來重 新排列目標(biāo)代碼, 以便程序位于它們調(diào)用的代碼附近。 這將使得進(jìn)程更可能與所 調(diào)用的代碼在同一個(gè)頁面上。當(dāng)然這從許多地方進(jìn)行調(diào)用的程序來說是無效的。27. 假設(shè)虛擬頁碼索引流中有一些長的頁碼索引序列的重復(fù),序列之后有時(shí)會(huì)是 一個(gè)隨機(jī)的頁碼索引。例如,序列 0 , 1 ,,511 ,431 , 0, 1,,511 , 332 , 0, 1 ,中就包含了 0, 1 ,,511的重復(fù),以及跟隨在它們之后的隨機(jī)頁碼索 引 431 和 332。a) 在工作負(fù)載比該序列短的情況下,標(biāo)準(zhǔn)的頁面置換算法( LRU, FIFO, Clock) 在處理換頁時(shí)為什么效果不好? b)如果一個(gè)程序分配了 50
21、0個(gè)頁框,請(qǐng)描述一 個(gè)效果優(yōu)于LRU、FIFO或Clock算法的頁面置換方法。A: a)標(biāo)準(zhǔn)的頁面置換算法是針對(duì)已經(jīng)在內(nèi)存中的頁面研究的。 當(dāng)工作負(fù)載比序 列短時(shí),會(huì)出現(xiàn)內(nèi)存容量不夠而長生顛簸,這種情況下 LRU、Clock、FIFO算法 達(dá)不到預(yù)期的效果,任何訪問都會(huì)引起缺頁除非內(nèi)存的頁框數(shù)量大于 512。 b) 如果分配了 500 個(gè)頁框,那么 0498 號(hào)頁框是固定的,只有一個(gè)頁框進(jìn)行頁面 置換28. 如果將FIFO頁面罝換算法用到4個(gè)頁框和8個(gè)頁面上,若初始時(shí)頁框?yàn)榭眨?訪問字符串為 0172327103 ,請(qǐng)問會(huì)發(fā)生多少次缺頁中斷?如果使用 LRU 算法 呢?A: FIFO 6 LR
22、U 729. 考慮圖3- 15b中的頁面序列。假設(shè)從頁面B到頁面A的R位分別是11011011使用第二次機(jī)會(huì)算法,被移走的是哪個(gè)頁面?A:D。30. 一臺(tái)小計(jì)算機(jī)有4個(gè)頁框。在第一個(gè)時(shí)鐘滴答時(shí)R位是0111 (頁面0是0, 其他頁面是 1),在隨后的時(shí)鐘滴答中這個(gè)值是 1011、1010、1101、0010、1010、 1100、0001。如果使用帶有 8位計(jì)數(shù)器的老化算法,給出最后一個(gè)滴答后 4個(gè) 計(jì)數(shù)器的值。A:0 號(hào)頁框: 01101110 ; 1 號(hào)頁框: 01001001 ; 2 號(hào)頁框: 00110111 ; 3號(hào)頁框: 10001011 。31. 請(qǐng)給出一個(gè)頁面訪問序列,使得對(duì)于
23、這個(gè)訪問序列,使用Clock和LRU算法 得到的第一個(gè)被選擇置換的頁面不同。 假設(shè)一個(gè)進(jìn)程分配了 3個(gè)頁框,訪問串中 的頁號(hào)屬于集合 0, 1, 2, 3。A: 0130123 。 LRU將第3頁替換為第2頁。Clock將第0頁替換為第2頁32. 在圖3-21c的工作集時(shí)鐘算法中,表針指向那個(gè)R = 0的頁面。如果t =400,這個(gè)頁面將被移出嗎?如果 t = 1000呢?(當(dāng)前時(shí)間2204)A:該頁面的生存時(shí)間是 2204 - 1213 = 991 。如果t = 40Q它就不在工作集中, 最近沒有被引用, 所以它將被移出。 t = 1000的情況不同,此時(shí)頁面在工作集中, 所以它不會(huì)被刪除。
24、34. 一個(gè)學(xué)生聲稱: “抽象來看,除了選取替代頁面使用的屬性不同外,基本頁面 置換算法(FIFO, LRU,最優(yōu)算法)都相同?!保╝) FIFO、LRU、最優(yōu)算法使用 的屬性是什么?( b)請(qǐng)給出這些頁面置換算法的通用算法。A: a) FIFO:加載時(shí)間;LRU:最近訪問時(shí)間;OPT:在未來的最近訪問時(shí)間 b )有標(biāo)簽算法和替換算法。標(biāo)記算法用部分 a給出的屬性從大到小標(biāo)記每個(gè)頁 面。替換算法刪除標(biāo)簽最小的頁面。35. 從平均尋道時(shí)間10ms、旋轉(zhuǎn)延遲時(shí)間10ms、每磁道32KB的磁盤上載入一 個(gè) 64KB 的程序,對(duì)于下列頁面大小分別需要多少時(shí)間?a)頁面大小為2KB;b)頁面大小為 4K
25、B。 假設(shè)頁面隨機(jī)地分布在磁盤上,柱面的數(shù)目非常大以至于兩個(gè)頁面在同一個(gè)柱面的機(jī)會(huì)可以忽略不計(jì)A:a)頁面有 64KB/2KB=32 個(gè),32 (10+10 ) =640ms b)頁面 16 個(gè),16 20=320ms原答案:(很迷啊,怎么算的傳輸時(shí)間???) :搜索加旋轉(zhuǎn)等待時(shí)間為 10 毫秒。對(duì)于 2-KB 頁面,傳輸時(shí)間約為 0.009766 毫 秒,總共約 10.009766 毫秒。加載這些頁面的 32 將花費(fèi)大約 320.21 毫秒。對(duì) 于 4-KB 頁面,傳輸時(shí)間加倍到大約 0.01953 毫秒,因此每頁的總時(shí)間是 10.01953 毫秒。加載這些頁面的 16 需要大約 160.31
26、25 毫秒。使用這樣快的磁盤,所有 重要的是減少傳輸?shù)臄?shù)量(或者連續(xù)地將頁面放在磁盤上) 。現(xiàn)在我知道是如何計(jì)算的了,參考 現(xiàn)代操作系統(tǒng)中文第四版 第 4 章文件 系統(tǒng) 4.4.1 的例子:假設(shè)磁盤每道有 1MB ,其旋轉(zhuǎn)時(shí)間是 8.33ms ,平均尋道時(shí)間為 5m s 。以毫秒為 單位,讀取一個(gè) k 字節(jié)的塊所需要的時(shí)間是尋道時(shí)間、旋轉(zhuǎn)延遲和傳送時(shí)間之 和:5 + 4.165 + (k/1000000) x 8.33從中可以得知單位容量傳送時(shí)間 = 旋轉(zhuǎn)時(shí)間 / 每道容量故本題中單位容量傳送時(shí)間 =2A3/2A15 x 10 = 0.00244 ms/KB42. 人們已經(jīng)觀察到在兩次缺頁中斷
27、之間執(zhí)行的指令數(shù)與分配給程序的頁框數(shù)直 接成比例。如果可用內(nèi)存加倍, 缺頁中斷間的平均間隔也加倍。 假設(shè)一條普通指 令需要1 ym,但是如果發(fā)生了缺頁中斷,就需要 2001卩(即2ms處理缺頁中 斷),如果一個(gè)程序運(yùn)行了 60s,期間發(fā)生了 15000次缺頁中斷,如果可用內(nèi)存 是原來的兩倍,那么這個(gè)程序運(yùn)行需要多少時(shí)間?A:該程序發(fā)生了 15000次缺頁中斷,每個(gè)缺頁中斷都需要 2ms的額外處理時(shí) 間。處理缺頁中斷的總開銷為30s。這意味著在程序運(yùn)行的60s內(nèi),一半用于缺 頁中斷開銷, 一半用于運(yùn)行程序。 如果我們運(yùn)行程序的內(nèi)存是內(nèi)存的兩倍, 我們 會(huì)得到一半的內(nèi)存頁錯(cuò)誤,只有 15 秒的頁面錯(cuò)誤開銷,所以總的運(yùn)行時(shí)間將是 45 秒。43. Frugal 計(jì)算機(jī)公司的一組操作系統(tǒng)設(shè)計(jì)人員正在考慮在他們的新操作系統(tǒng)中 減少對(duì)后備存儲(chǔ)數(shù)量的需求。 老板建議根本不要把程序正文保存在交換區(qū)中, 而 是在需要的時(shí)候直接從二進(jìn)制文件中調(diào)頁進(jìn)來。 在什么條件下(如果有這樣的條 件話)這種想法適用于程序文本?在什么條件下 (如果有這樣的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國除草劑市場(chǎng)運(yùn)營狀況發(fā)展趨勢(shì)分析報(bào)告
- 2025-2030年中國鋯英砂行業(yè)供需現(xiàn)狀及投資發(fā)展規(guī)劃研究報(bào)告
- 2025-2030年中國連接器制造市場(chǎng)發(fā)展動(dòng)態(tài)及前景趨勢(shì)預(yù)測(cè)報(bào)告
- 2025-2030年中國輪滑鞋行業(yè)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國血漿增容劑行業(yè)運(yùn)行動(dòng)態(tài)與發(fā)展風(fēng)險(xiǎn)評(píng)估報(bào)告
- 2025-2030年中國葵花油市場(chǎng)運(yùn)行態(tài)勢(shì)及發(fā)展盈利分析報(bào)告
- 2025-2030年中國藝術(shù)玻璃行業(yè)市場(chǎng)運(yùn)行態(tài)勢(shì)及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國管道檢測(cè)行業(yè)供需現(xiàn)狀及投資發(fā)展規(guī)劃研究報(bào)告
- 2025-2030年中國空冷器市場(chǎng)運(yùn)行現(xiàn)狀及發(fā)展策略分析報(bào)告
- 2025-2030年中國種衣劑市場(chǎng)運(yùn)營狀況及發(fā)展趨勢(shì)研究報(bào)告
- 老年人的跌倒預(yù)防課件
- 2022年山西省中考物理試題(含答案)
- QC成果:預(yù)制扭王字塊體表面缺陷控制知識(shí)分享
- 光伏強(qiáng)制性條文執(zhí)行計(jì)劃(共25頁)
- 2021新《安全生產(chǎn)法》全面解讀課件(PPT 84頁)
- 企業(yè)、事業(yè)專職消防隊(duì)訓(xùn)練內(nèi)容及操作規(guī)程
- T∕CCCMHPIE 1.2-2016 植物提取物 檳榔多糖多酚
- 局域網(wǎng)規(guī)劃設(shè)計(jì)_畢業(yè)論文
- 脛骨平臺(tái)骨折(課堂PPT)
- 歐洲文化入門王精品PPT課件
- 中考復(fù)習(xí)復(fù)分解反應(yīng)類型方程式書寫訓(xùn)練題(無答案)
評(píng)論
0/150
提交評(píng)論