操作系統之QQ作業-12

  1. 說明存儲單元、存儲地址、存儲容量、存儲空間的關係。

存儲單元:具有存儲數據和讀寫數據功能的滿足CPU訪問存儲器的基本單位,一般以八位二進制作爲一個存儲單元。
存儲容量:存儲器可以容納的二進制信息量。用存儲器中存儲地址寄存器MAR的編址數與存儲字位數的乘積表示。基本單位是Byte(B)字節
存儲空間:就是數據存儲所需要的介質,例如128GB的U盤就是一個存儲空間。
存儲地址:就是存儲數據的地址,應該有一個明確的編號。

四者的關係:根據初始位置和數據量能夠找到相關存儲空間的存儲地址,通過存儲地址能夠看出相關的存儲容量,存儲容量中應該就包含了大量的存儲單元。

  1. 地址空間和存儲空間有什麼區別。

地址空間:物理機和虛擬機共同所佔有的實際內存大小 內存地址的集合,由很多個地址構成的。(地址空間的結構可以表述爲線性地址、二維地址;地址空間的屬性可以爲邏輯地址、虛擬地址)
存儲空間:就是數據存儲所需要的介質,例如128GB的U盤就是一個存儲空間(側重爲存儲結構和介質)。
區別:側重點不一樣,存儲空間側重爲存儲結構和介質,而地址空間更關注於對結構和屬性的描述和判斷。

  1. 邏輯地址和物理地址有什麼區別。

邏輯地址:由程序產生的與段相關的偏移地址部分或者是指在指令中使用的地址
物理地址:在存儲器裏以字節爲單位存儲信息,爲了正確地存放或取得信息,每一個字節單元給以一個唯一的存儲器地址,稱爲物理地址,又叫實際地址或絕對地址。或者說數據和指令真正存放的實際地址。
區別:某些情況下,邏輯地址可以是物理地址,也可以不是物理地址。當指令和數據都存放在一起,且在該地址中被使用,可以說此時的邏輯地址就是物理地址;若數據和指令存放位置不同,則邏輯地址就不是物理地址。

  1. 靜態重定位和動態重定位的區別是什麼?

靜態重定位就是,在邏輯地址轉換爲物理地址的過程中,地址變換是在進程裝入時一次完成的,以後不再改變。
優點:是無需增加硬件地址轉換機構,便於實現程序的靜態連接。在早期計算機系統中大多采用這種方案。
缺點:內存空間不能移動;各個用戶進程很難共享內存中同一程序的副本。

動態重定位:動態運行的裝入程序把轉入模塊裝入內存之後,並不立即把裝入模塊的邏輯地址進行轉換,而是把這種地址轉換推遲到程序執行時才進行,裝入內存後的所有地址都仍是邏輯地址。這種方式需要寄存器的支持,其中放有當前正在執行的程序在內存空間中的起始地址。
優點:內存空間可以移動;各個用戶進程可以共享內存中同一程序的副本。
缺點:增加了機器成本,而且實現存儲管理的軟件算法比較複雜。

  1. 如果內存的容量是2GB,則存儲單元地址的位寬是(),地址空間是( )

1MB存儲空間的地址位寬爲20位,這是因爲1MB容量的主儲空間是由10241024個存儲單元組成的,標識這些存儲單元的二進制數值需要20個數位。
同理可證,2GB是由2
102410241024個存儲單元組成的。
即存儲單元地址的位寬爲31位

2GB=210241024*1024=2147483648個字節,即2GB的存儲空間就防需要2147483648的個數字來表示存儲空間地址,換算爲16進制就爲0x7FFFFFFF
故地址空間的範圍爲:0x00000000-0x7FFFFFFF

  1. 如果某系統內存的邏輯地址爲二維地址,表示爲< A,B >,A和B的位寬均爲16,邏輯地址和物理地址的轉換公式爲A×16+B,物理地址的位寬是20。請回答下列問題
    6.1 邏輯地址<10H,5H>的物理地址是多少?
    6.2 邏輯地址< FFFFH, 3F > 的物理地址是多少?

H是16進制的標誌,10H轉換爲10進制就爲16,自然5H就爲5
根據上述公式,則16x16+5=261,再換算爲16進制就爲105
故邏輯地址<10H,5H>的物理地址是105
FFFFH換算爲2進制就是1111 1111 1111 1111,即爲10進制數65535
3F爲 1111 1111 1111 即爲10進制的4095
則1052655,再換算爲16進制就爲100fef
故邏輯地址< FFFFH, 3F > 的物理地址是100fef

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