1. 程式人生 > 其它 >記憶體管理——系統設計

記憶體管理——系統設計

  系統設計可以根據是否採用CPU提供的分段機制來分類:平坦模型和多段模型。

  像Windows這些作業系統採用的是平坦模型。

平坦模型

- 對於基本平坦模型,作業系統和應用程式可以訪問一個連續的、沒有分段的地址空間。 - 實現基本的平坦模型至少需要分配程式碼段、資料段、棧段的描述符。所有段的基址為0,界限為0xFFFFF,粒度為4KB。 - 當訪問的地址處並沒有實體記憶體的時候,處理器也不會產生越界異常。

受保護的平坦模型 - 在平坦模型的基礎上,對段界限進行了限制,如果訪問越界,處理器會產生一個通用保護異常(#GP)。

多段模型 - 多段模型充分利用了分段機制,提供了對程式碼、資料結構、程式任務的硬體級保護。並增加了許可權檢查機制。
- 在多段模型下,每個程式都被分配了屬於自己的段描述符和段。
參考資料 Combined Volume Set of Intel® 64 and IA-32 Architectures Software Developer’s Manuals