GRUB Multiboot Specification (version 0.6.96) Section 3.2告诉你这个
‘CR0’
Bit 31 (PG) must be cleared. Bit 0 (PE) must be set. Other bits are all undefined.
而CR0 Register mapping告诉你系统应该处于保护模式.
linux不是一个多引导内核,并不依赖于一些引导程序在PM中进行切换,它遵循Linux Boot Protocol.但是linux是自己保护的模式,而不依赖于引导加载程序
检查:http://lxr.linux.no/#linux+v2.6.39/arch/x86/boot/main.c
这里调用go_to_protected_mode();当然后调用protected_mode_jump(),然后进行CR0的填充(设置位0)
(另一位说分页被禁用)
编辑
我可以想到的是,GRUB can detect linux boot protocol(GRUB2和legacy也应该),并在内存上加载linux,但不切换到保护模式.看看这个链接:http://www.gnu.org/software/grub/manual/grub.html#GNU_002fLinux和本链接页面的第16节.
总结以上是内存溢出为你收集整理的linux – GRUB是否切换到保护模式?全部内容,希望文章能够帮你解决linux – GRUB是否切换到保护模式?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)