内核学习之段寄存器

本文深入探讨了32位内核中的段寄存器,解释了它们如何与全局描述符表(GDT)交互以实现内存寻址。段寄存器包括CS、SS、DS和ES,每个寄存器存储对应段的段基址。在保护模式下,32位CPU通过64位的段描述符来扩展寻址空间,这些描述符存储在GDT中,而段寄存器作为索引访问GDT。GDT的地址保存在GDTR寄存器中,通过段寄存器和逻辑地址偏移计算出物理地址。
摘要由CSDN通过智能技术生成

内核学习之段寄存器

关于段寄存器的介绍大部分只是介绍其分类和在寻址中的应用,很少提到段寄存器如何去寻址的。这几天一直在纠结着方面的内容,今天算是大体明白了吧!

还是首先提一下段寄存器的作用和分类。在8086模式下,对内存的访问由段基址和段内偏移共同组成的。段寄存器存放的即各个分段的段基址。并指示了4个正在使用的逻辑段,包括代码段寄存器CS、堆栈段寄存器SS、数据段寄存器DS和附加段数据寄存器ES。代码段寄存器CS存放正在执行的代码的段基址,堆栈寄存器SS存放的是当前堆栈的段基址,数据段寄存器DS存放的是当前数据段的段基址,ES为附加数据段的段基址。

深入了解段寄存器,我们首先介绍另一个概念GDT(全局描述符表),在计算机刚刚启动的时候首先运行在real mode

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值