先说实模式,这是x86开机时所处的模式。仿佛cpu仍旧是80x86时代。
然后是unreal模式,其实叫做far real mode更形象,就是,仍旧是在16位模式下,但是可以访问1M以上的地址。
这个模式是通过先进入保护模式,通过修改段寄存器,把它的影子寄存器的limit修改成4G来做到的。然后回到16位模式,这样就可以访问远地址了。
x86 cpu并不使用段寄存器,它总是从影子寄存器里读数据。
而实模式下修改段寄存器,cpu只是间接的把影子寄存器里base字段修改成seg<<4。
参考:
Peter Cordes 的回答
原文地址:https://www.cnblogs.com/xiang-yin/p/12149076.html
时间: 2024-11-09 04:02:01