X86存储器的段描述符学习随笔

为什么需要的段描述符?

保护模式下无法直接裸访内存,所有可访问的内存段,都必须提前在 GDT 中定义登记。段描述符是存储内存段基址、访问界限、运行权限与属性的核心结构,既是 CPU 内存寻址的关键,也是实现内存隔离的基础。没有段描述符,保护模式的隔离、权限管控功能就无法生效。
段描述符结构

其各段含义:

G:粒度位。G=0时,以1B为单位,范围为(1b-1mb(2的20次方X1b)),G=1则以4kb为单位

S:指定描述符的类型,S=0则表示为一个系统段,S=1则表示一个代码段或数据段

DPL:描述符的特权等级。0为最高级,3为最低级

P:段存在位。用于指示描述的段是否存在,P=0,表示对应的内存空间不存在,P=1,表示内存空间存在

D/B:

D:默认的操作数大小;D=0,使用IP,D=1,使用EIP

B:默认的栈指针大小;B=0,使用SP,B=1,使用ESP

type:

相关推荐
金伟API10249 小时前
SQL Server基础学习笔记
笔记·学习
MartinYeung59 小时前
[论文学习]MiCA:比LoRA和全参数微调学到更多知识
深度学习·学习·机器学习
浮江雾9 小时前
Flutter第十节-----Flutter布局与组件全解析
android·开发语言·前端·学习·flutter·入门
可乐奶茶sky10 小时前
MonoGS 源码学习
学习
金伟API102410 小时前
常见的SQL面试题:经典50例
数据库·人工智能·笔记·sql·学习
DES 仿真实践家10 小时前
Plant Simulation SimTalk基础教程(3)SimTalk 变量与数据类型
开发语言·笔记·学习
维克兜率天11 小时前
【维克】概率论入门:从“抛硬币“到理解金融市场的不确定性
经验分享·学习·概率论
世人万千丶11 小时前
鸿蒙Flutter Flex嵌套布局技巧
学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
笨鸟先飞的橘猫11 小时前
游戏后端分布式学习——开篇
分布式·学习·游戏
世人万千丶12 小时前
鸿蒙Flutter Flex布局性能优化
学习·flutter·性能优化·harmonyos·鸿蒙·鸿蒙系统