目录
段的定义
段的介绍
分段机制就是把虚拟地址空间中的虚拟内存组织成一些长度可变的称为段的内存单元。 80386虚拟地址空间中的虚拟地址(逻辑地址)由一个段部分和一个偏移部分构成。段是虚拟地址到线性地址转化的基础。每个段有三个参数定义:
- 段基地址,指定段在线性地址空间中的开始地址。基地址是线性地址对应于段中偏移 0 处。
- 段限长,是虚拟地址空间中段内最大可用偏移地址。定义了段的长度。
- 段属性,指定段的特性。如该段是否可读、可写或可作为一个程序执行,段的特权级等。
多个段映射到线性地址中的范围可以部分重叠或覆盖,甚至完全重叠,如下图所示
相关的数据结构
段的基地址、段限长以及段的保护属性存储在一个称为段描述符
的结构项中。在逻辑地址到线性地址的转换映射过程中会使用这个段描述符。段描述符保存在内存中的段描述符表
中。
段描述符表是包含段描述符项的一个简单数组。 使用段选择符
来指定段描述符表中