![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 18:51 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 哪位朋友研究过再次引导计算机启动? |
| 可打印版本 1,395 / 9 |
| 第1楼 zhgwbzhd | 发表于 2007-06-18 00:36 |
| 高级用户 发帖 187 积分 506 | |
|
哪位朋友研究过再次引导计算机启动? 比如先让计算机启动到自己的OS,在这里里面有控制界面。输入密码正确之后,再让计算机启动到自己的操作系统。
原来俺使用int19,但是再很多机器上都不能使用。死机呀。 不知道有没有其他的什么更好的办法呀! |
|
| 第2楼 zhgwbzhd | 发表于 2007-06-18 22:24 |
| 高级用户 发帖 187 积分 506 | |
|
高手呀,指点一下吧。
|
|
| 第3楼 AlexZhang | 发表于 2007-06-27 18:27 |
| 系统支持 发帖 440 积分 1,028 | |
|
这就是相当于GDLDR LILO之类的东西 可以参考Aero实现。反汇编一下
|
|
| 第4楼 netwinxp | 发表于 2007-07-25 19:50 |
| 高级用户 发帖 366 积分 741 | |
|
如果在实模式下,而又没有其他TSR程序(或者说中断向量表没被修改过),可以通过INT19H重新载入MBR启动,或者用GRUB载入其他系统,如果中断向量表被改过则很有可能死机,你只好通过JMP FAR FFFF:0000完全重新启动。
在保护模式下,由于内存访问模式不再是段:偏移量,而是平坦模式,上述可能无效或导致不可预知的后果。 |
|
| 第5楼 zhgwbzhd | 发表于 2007-07-26 16:37 |
| 高级用户 发帖 187 积分 506 | |
|
在实模式下,我是不是可以先把中断向量表保存到其他位置,在准备重启时,
把中断向量表恢复一下,之后把MBR读到7c00处,再跳到7c00处执行。 也就是模拟一下刚刚启动的时刻。 不过,可惜的是,恢复中断向量表时就死机了。 不知道哪位高手告诉俺可能的原因在哪里呢?? 十万个敬意送给你们呀! |
|
| 第6楼 netwinxp | 发表于 2007-07-26 18:44 |
| 高级用户 发帖 366 积分 741 | |
|
把MBR读到7c00处,已经覆盖了DOS重要的数据区,然后你又恢复了DOS一大堆中断,不死机才怪呢!中断向量只是一个指针,它指向的内容很多都被破坏了,你再恢复它有啥用?想弄开机密码你可以用BIOS密码,也可以用GRLDR内置密码,你这样到处乱改重要内存区的内容不是故意整死机吗?
|
|
| 第7楼 zhgwbzhd | 发表于 2007-07-26 23:18 |
| 高级用户 发帖 187 积分 506 | |
|
首先是可以读MBR到7c00处的,这个时候不会引起死机。
就是在恢复中断向量表时,死机。 我猜测的原因是,可能DOS用到了他的一些中断,我在恢复时造成他们死机。 可是我怎么才可以不引起它死机呢?? |
|
| 第8楼 netwinxp | 发表于 2007-07-27 01:25 |
| 高级用户 发帖 366 积分 741 | |
|
你处理方法就有点象只备份分区表,切把整个硬盘的内容全清除了,你说这种情况,你即使恢复分区表能启动吗?你酱紫想不死机基本上不太可能。对于有TSR驻留(特别是挂接键盘、定时中断的程序)的情况下,用GRUB重新载入系统都会死机。
|
|
| 第9楼 netwinxp | 发表于 2007-07-27 01:30 |
| 高级用户 发帖 366 积分 741 | |
|
另外,你一乱修改中断向量表,不要说是调用DOS了,定时中断及一些挂在定时中断上的DOS中断马上就飞了。建议你多看看TSR的编写及DOS的内存调度机制这些方面的资料。
[ Last edited by netwinxp on 2007-7-27 at 01:36 AM ] |
|
| 第10楼 zhgwbzhd | 发表于 2007-07-28 01:13 |
| 高级用户 发帖 187 积分 506 | |
|
谢谢呀,我现在正在学习这个方面呢。所以呢还是确实有很多不了解的地方。
不过还是谢谢了。 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |