操作系統之QQ作業-15

1.已知某臺計算機可尋址空間爲4GB,採用分段管理主存,最大段容量爲1MB。每個作業最多可包含256個段。請回答下列問題:
[1] 保存邏輯地址至少需要多少個存儲單元?請說明原因。
[2] 物理地址的位寬是多少?
[3] 段表項至少需要多少個二進制位表示?
[4] 每個進程可使用的最大存儲空間是多少?
[5] 若某個進程被分配到主存的段有三個,段基地址分別是0x2、0x100、0xffff0。那麼該進程訪問的邏輯地址爲[0x1,0x100]的數據,保存在哪個主存單元?(請圖示說明重定位的過程)
2.試比較覆蓋、交換和虛擬內存三種技術的區別。

1)一個作業最多可包含256個段,則2^8=256.則相應的段號爲8位
最大段內容量爲1MB,則1MB=2^10kb,可知段內地址位數爲10位
又因爲分段系統中的邏輯地址由段號和段內地址組成,則可以得出邏輯地址爲18位
一般來說,存儲單元由八位二進制組成,則此處應該有2^18-3個存儲單元。
經過計算2^15=32768個存儲單元。
2)最大段內容量爲1MB,1MB=2^20B,則物理地址的位寬爲20b
3)可尋址空間爲4GB,則可用32位表示整個可尋址空間,段號是8位,段內地址是10位。由於,段表項長度相同,段號可以是隱含的,不佔存儲空間,則段表項可以爲10+32=42位。因此,段表項至少需要42個二進制位表示。
4)已知邏輯地址爲18位,則每個進程可使用的最大存儲空間是2^18B=256kb
5)段基地址+段內地址=物理地址(段內地址10位)
0x2=21=2,則相關爲00000010
0x100=16
16=256,則100000000
0xfff0=65520,則1111111111110000
第一個邏輯地址0x1 00000000 0000000001
0x2對應的應該爲00000000 0000000011,則保存在0x3單元中
0x100對應的應該爲00000000 0100000001,則保存在0x101單元中
0xfff0對應的應該爲11111111111100

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章