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:

相关推荐
MartinYeung523 分钟前
[论文学习]隐私保护联邦特徵选择与差分隐私的的工程实践框架
学习
qeen8731 分钟前
【C++】类与对象之类的默认成员函数(二)
android·c语言·开发语言·c++·笔记·学习
Flandern11111 小时前
Pull Requests(PR)
学习·github·pr
nashane2 小时前
HarmonyOS 6学习:JsCrash“闪退”法医指南——从FaultLog堆栈还原崩溃现场的终极手册
学习·华为·harmonyos
for_ever_love__2 小时前
UI学习:UICollectionView瀑布流
学习·ui·ios·objective-c·cocoa
AOwhisky2 小时前
MySQL 学习笔记(第六期):MySQL 备份与恢复
运维·数据库·笔记·学习·mysql·云计算
_李小白3 小时前
【android opencv学习笔记】Day 32:直线检测之霍夫变换
android·opencv·学习
提子拌饭1334 小时前
Column 嵌套布局:多级 Column 实现复杂纵向结构——鸿蒙 HarmonyOS ArkTS 原生学习应用
学习·华为·harmonyos·鸿蒙·鸿蒙系统
xqqxqxxq5 小时前
树结构技术学习笔记
数据结构·笔记·学习
十月的皮皮6 小时前
C语言学习笔记202606008- 三角形判断(3种方法)
c语言·笔记·学习