看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《yesa315 (XD)》之銘言: : Consider a logical-address of 2048 pages of 1024 words (4 bytes) each, : mapped onto a physical memory of 64 frames. Please answer the following : questions assuming that the smallest memory allocation unit is one byte : (8 bits). : (c)Assuming a 2-level page table is used and the first-level table has 32 : entries, what is the minimal amount of memory (in bytes) required by the : page tables? : 可以計算出每個page=1kb 共有2048個pages 以1-level來計算 一個page應該是4KB level-1 32 entries => level-2 2 entries per page level-1 entry size = 1 bit level-2 entry size = 6 bits (2^6 = 64) since smallest mem allocation = 1 byte , one byte per entry 32 + 32*2 = 96 bytes : table size=2048*6(entries)bits 以上one-level的算法沒錯吧? : (64 frames=2^6) : 再來是2-level的所有table size p1=5 bit p2=6 bit : 再算第一level的table size時 我就卡住了到底它的每個entry大小為何呢? : 且如何計算第一level的table size大小呢呢? : 謝謝 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.189.62
yesa315:打太快key錯1k XD 依你這樣說最多也只要1 BYTE吧? 只有6 09/15 20:24
yesa315:BIT而以不是嗎 ? 那如果把Page no加入考量 則level-1是否 09/15 20:26
yesa315:為 [5 bit + 1 bit(entry)]*32 而level-2為[6+6 bit]*2^6? 09/15 20:28
yesa315:突然想到 你是不是把Page no也加進來算 5+1 bit 約1 byte? 09/15 20:30
yesa315:6+6bit 約2byte 這樣來解是你的答案就合理 09/15 20:30
yesa315:但是答案我認為是 32*1 + 2^6*2 = 160 bytes 09/15 20:32