4.3全局描述符表
全局描述符表 (Global DescriptorTable。 GDT) 是保护模式下内存段的登记表, 这是不同于实模式的显著特征之一。
段描述符
因为32位机兼容实模式和保护模式
在实模式下要解决的问题:
1.实模式下的用户程序可以破坏存储代码的内存区域, 所以要添加个内存段类型属性来阻止这种行为。
2.实模式下的用户程序和操作系统是同一级别的 所以要添加个特权级属性来区分用户程序和操作系统的地位
3.内存段是一片内存区域, 访问内存就要提供段基址, 所以要有段基址属性
4.为了限制程序访问内存的范圃 还要对段大小进行约束, 所以要有段界限属性。
上图就是段描述符的格式,下面从低到高描述以下段描述符:
上面为撒段基址被分成三份,段界限被分成两份是因为为了兼容以前的机器所做的工作。
1.第0-7位段基址:
0-7位是段基址的16-23,24-31位是段基址的24-31位 加上在段描述符低32 位中的段基址 0~15 位, 这下 32位基地址才算齐全了。