32位保护模式的笔记2

这篇博客详细介绍了32位保护模式下的全局描述符表(GDT)、局部描述符表(LDT)、段寄存器的工作原理和作用。内容涉及段选择子、TI、RPL、寻址方式、CPUID指令以及任务状态段(TSS)等关键概念,旨在帮助读者深入理解x86架构的内存管理和保护机制。
摘要由CSDN通过智能技术生成

8846565-1a851dbb31e965dc.png

image.png

 

8846565-1b933c50f8b30c88.png

image.png

【0x0000:0x7C00~0x0000:0x7E00】实模式下boot的加载地址,512=0x200。

【0x000B8000】显存的起始位置。

【0x000A0000~0x000FFFFF】ROM BIOS,硬件专有的。

GDT:

全局描述符表(Global Descriptor Table)。

GDT中的元素是描述符(Descriptor),如图所示,一个描述符是8个字节。

 

8846565-4b2b05c26c72fea9.png

image.png

其中:

【S】0-系统段,1-代码段或数据段(包括栈段);

【DPL】段的特权级:0、1、2、3;

【G】粒度,0-寻址空间1MB,1-寻址空间4GB;

【D/B】16位32位有关,一般默认为1(32位);

【L】给64位用的,默认为0(32位);

【TYPE】段是否可读、可写、可执行;

【AVL】供操作系统使用。

由于实模式最多访问1MB内存,因此GDT应该被放在1MB内存内。

定义时,段和段可以重合。

GDTR:

全局描述符表寄存器。

共48位,高32位存储GDT的线性基地址,低16位存储

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值