无忧启动论坛
标题:
grub4dos map问题
[打印本页]
作者:
2011qf020124
时间:
2011-8-17 10:44
标题:
grub4dos map问题
请问grub4dos里实现map的原理是接管INT13吗?
那么这段新加的INT13中断处理程序是放在内存哪里?
grub4dos又是如何保护这段内存的,以使被引导的操作系统(比如DOS)在起来后不会去修改这段内存里的数据?是不是利用了INT15中的某种功能,在内存中挖了个洞,使的被引导的操作系统认为这一段地址没有物理内存而不去使用?
求高手解答
作者:
不点
时间:
2011-8-17 19:13
> 请问grub4dos里实现map的原理是接管INT13吗?
是
> 那么这段新加的INT13中断处理程序是放在内存哪里?
常规内存的顶端,通常是紧接 EBDA 的下方。
> grub4dos又是如何保护这段内存的,以使被引导的操作系统(比如DOS)在起来后不会去修改这段内存里的数据?是不是利用了INT15中的某种功能,在内存中挖了个洞,使的被引导的操作系统认为这一段地址没有物理内存而不去使用?
和你想的差不多。较早的 grub4dos 的仿真代码只是用 0040:0013 处的“常规内存总量” 来保护(对于 DOS 来说,这足够了)。最近又增加了 int15 保护(目的是满足 Win2003 的要求)。
欢迎光临 无忧启动论坛 (http://bbs.wuyou.net./)
Powered by Discuz! X3.3