作者gn01642884 (領域中人)
看板Grad-ProbAsk
標題Re: [理工] [計組]-清大93 page計算
時間Sun Jan 10 23:59:16 2010
※ 引述《polomoss (小澤)》之銘言:
: ※ 引述《uminchu185 (luke)》之銘言:
: : 題目說是byte addressing.
: : 一個page size = 1024*4 = 2^12 bytes -> offset = 12bits;
: : logical space有2^11個pages -> page index = 11bits;
: : physical space有2^6個frames -> frame index = 6bits;
: : (1) logical address需11+12 = 23bits; physical address需6+12 = 18bits.
: : (2) 假設PT entry size = 6bits( 題目沒說有哪些特殊位元, 不考慮 ),
: : PT size = 2^11*6bits = 1.5KB.
: : (3) outer PT有32個entries -> P1 = 5bits; 因此P2 = 23-5-12 = 6bits,
: : 一個inner PT size = 2^6 * 6bits = 48bytes;
: : outer PT的size = 32*6bits = 24bytes; 所以答案是24bytes.
: : (這小題不太確定)
: : 有錯請更正~
: (3)我的答案是
: P1: 2^5 * 18bit = 576bits
: ^^^^^
: P2: 2^6 * 6bit = 384bits
: total = 576+384 = 960bits
: P1內容放的是level-two PT的位置,這樣應該是幾bit?
: 不知道為什麼要用18bit
畫個圖會比較清楚 5bit 12bit
c. _________________
存取L1 PT的virtual address分成兩個部份 |_L1__|_index___|
_______ __________
|_L1__| |_index___|
|| 6bit
|| __________
===>從L1中找到L2的virtual address 替換成 |___L2____|
________ ___________
|__L2___| |_index___|
|| 6bit
|| _____________
===>從L2中找到phycial address 替換成 |___phycial_|
6bit 12bit
_________________________
合成成為phycial address |__phycial____|__index___|
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.100.229
1F:推 polomoss:看不太懂耶....意思是說從P1取6bit→P2的entry數 01/11 00:53
2F:→ polomoss:然後P1再取12bit當作offset,合成P2的6bit當作phsical ad 01/11 00:53
3F:→ polomoss:那為什麼12bit offset不放在P2? 01/11 00:54
4F:推 polomoss:不行~還是沒辦法理解,P1內容要放P2的位置吧? 01/11 01:08
5F:→ gn01642884:OFFSET從頭到尾都是一樣的沒動過 01/11 10:18
6F:→ gn01642884:P1的內容要放P2的位置沒有錯 01/11 10:19
7F:→ gn01642884:阿說錯了是index從頭到尾都沒動過 01/11 10:21
8F:→ gn01642884:存取L1 L2都不需要考慮到index 到真正存取phycial時 01/11 10:23
9F:→ gn01642884:才會用到index(存取frame中的某一段) 01/11 10:23
10F:→ gn01642884:所以index的內容從頭到尾都沒變動過 01/11 10:25