无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 2405|回复: 1
打印 上一主题 下一主题

[求助] grub4dos map问题

[复制链接]
跳转到指定楼层
1#
发表于 2011-8-17 10:44:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问grub4dos里实现map的原理是接管INT13吗?

那么这段新加的INT13中断处理程序是放在内存哪里?

grub4dos又是如何保护这段内存的,以使被引导的操作系统(比如DOS)在起来后不会去修改这段内存里的数据?是不是利用了INT15中的某种功能,在内存中挖了个洞,使的被引导的操作系统认为这一段地址没有物理内存而不去使用?

求高手解答
2#
发表于 2011-8-17 19:13:24 | 只看该作者
> 请问grub4dos里实现map的原理是接管INT13吗?



> 那么这段新加的INT13中断处理程序是放在内存哪里?

常规内存的顶端,通常是紧接 EBDA 的下方。

> grub4dos又是如何保护这段内存的,以使被引导的操作系统(比如DOS)在起来后不会去修改这段内存里的数据?是不是利用了INT15中的某种功能,在内存中挖了个洞,使的被引导的操作系统认为这一段地址没有物理内存而不去使用?

和你想的差不多。较早的 grub4dos 的仿真代码只是用 0040:0013 处的“常规内存总量” 来保护(对于 DOS 来说,这足够了)。最近又增加了 int15 保护(目的是满足 Win2003 的要求)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-28 06:53

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表