簡體   English   中英

段偏移對bs段描述符

[英]Segment Offset Pair bs Segment Descripter

對於8088中用於物理地址計算的段偏移對與32位處理器中的段描述符之間的區別,我一點都不感到困惑。

任何解釋將不勝感激。

16位CPU只能尋址64kB的內存。 為了擴展內存范圍,引入了一些段,這些段基本上定義了pchyscak可用內存中64KB窗口的基本地址。

要獲取指針所指向的pyhscial地址,您必須將段值乘以10h(16),然后加上偏移量地址。 即。 如果你有這樣的地址

145A:67B1

 145A0   (+10h or << 4)
+ 67B1
------
 1AD51   <- Physical memory address

保護模式描述符類似於這種段,但是具有附加信息。 它的長度可以達到1-64KB(x286),並包含有關產品級別和狀態的信息。 特權級別用於使OS更加安全和獨立於用戶空間,狀態標志用於虛擬內存。

在386上,擴展了范圍,因此段現在可以達到1MB,並添加了粒度,因此段現在是4096塊的倍數,從而將段大小擴展到了4GB。

描述符中的另一個屬性是將段設置為16或32位模式,以便16代碼仍然可以工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM