在实模式下,不仅寻址方式奇怪,而且仅支持1MB的,相对于1.44MB的软盘,自然无法完全读取到。
软盘第一个扇区是IPL,放到内存0x7c00,第二个扇区是boot,放到0x8000,实际上在IPL里读取这两个扇区,在IPL里实现32位模式切换,然后跳到boot这里,读取所有磁盘信息到内存,然后跳转执行到main,就是如此。
本文解析了在实模式下如何通过IPL和boot扇区实现32位模式转换,详细描述了从内存0x7c00和0x8000加载软盘数据,最终引导到main程序的过程。
在实模式下,不仅寻址方式奇怪,而且仅支持1MB的,相对于1.44MB的软盘,自然无法完全读取到。
软盘第一个扇区是IPL,放到内存0x7c00,第二个扇区是boot,放到0x8000,实际上在IPL里读取这两个扇区,在IPL里实现32位模式切换,然后跳到boot这里,读取所有磁盘信息到内存,然后跳转执行到main,就是如此。
1605

被折叠的 条评论
为什么被折叠?
