cpu分段机制是为了提供保护模式还是为了内存寻址?
cpu分段机制是为了提供保护模式还是为了内存寻址?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
cpu分段机制是为了提供保护模式还是为了内存寻址?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
i386体系特有的机制,分段既提供了保护模式也是为了内存寻址,i386体系要使用分页就必须先打开分段,一次寻址先通过段转换再到页转换,增加了CPU的复杂程度,但保持了好的兼容性。
有分页就够了~ = =
x86的分段是为了兼容以前的8086内存模型........ 保证以前的应用程序也能使用~
现在arm powerpc上主要都是用分页~
分段模式是保护模式的基础,也是分页存储机制的基础
分段和分页是没有联系的。
只不过是:打开分页前,必须打开保护模式
是为了寻址。跟保护模式没关系,后来有保护模式之后为了兼容就留下了分段。
我的答案一个接一个的否定了,呵呵
单纯论物理内存的保护,i386体系确实可以忽略分段,但分段提供了CPU特权级的切换,CS,DS,ES各个段寄存器最低的两位就是指令特权级保护,也是linux内核可以执行CPU特权级指令的基础
[ 本帖最后由 readkernel 于 2009-12-4 09:03 编辑 ]
这个对,初衷就是为了向下兼容。
当年Intel开发16位MPU时,考虑到8位的8080已有大量很成熟的系统软件、工具软件和应用软件,如果后来的8086/88不向下兼容于8080,所有软件重新开发,据说要损失几亿美元。还有时间。。。
在16位前,Intel就有过教训。最初,比较成熟的8位MPU是8080、6800和6502。Intel下一版本是8085,技术上很成功。但是,8085与8080不完全兼容,Intel宣称,需用一软件来预先将现有的8080应用代码转换成8085才行。Zilog公司推出完全向下兼容于8080的Z80。在16位MPU推出前,Z80已完全压倒8080(8085已被Intel放弃)。
有这教训,Intel在研发16位时,就走完全向下兼容路线。在以后的产品里,还是一直走这路线。