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:

相关推荐
GlueNa2SiO311 小时前
第十八章 Linux故障排查与恢复
linux·服务器·笔记·学习
weixin_4316004411 小时前
NestJS 入门(3):Guard 如何挡住未登录请求?
前端·后端·学习·nest.js
带娃的IT创业者11 小时前
DeepTutor:当 Agent-Native 架构撞上个性化学习的临界点
学习·架构·ai agent·大模型应用·个性化学习·教育技术·agent-native架构
xian_wwq11 小时前
【学习笔记】Context Engineering,AI Agent 真正的内存管理-4/16
笔记·学习·context
寒月小酒12 小时前
AnythingLLM 学习
学习
大模型码小白16 小时前
【AI】一文讲清 RAG:从大模型局限到企业级知识库落地流程
人工智能·深度学习·学习
AI探索先锋16 小时前
A* 路径规划:四种算法的进化史-学习
学习·算法
辣知16 小时前
辣知·化智20 九千年文明记录
学习
GlueNa2SiO316 小时前
06-Docker存储与数据持久化
笔记·学习·docker
铅笔侠_小龙虾17 小时前
rust 学习(9):结构体
开发语言·学习·rust