无忧启动论坛

标题: 一键还原的开机程序是如何做出来的? [打印本页]

作者: ctks2006    时间: 2009-5-18 11:26
标题: 一键还原的开机程序是如何做出来的?
一键还原是让一个DOS程序在WINDOWS启动前自动运行,然后再运行WINDOWS,请问这是怎么做到的?
作者: yichya    时间: 2009-5-18 18:36
DOS?

IO>Your dos program>grub>ntldr>win
作者: lvyanan    时间: 2009-5-18 19:29
原帖由 ctks2006 于 2009-5-18 11:26 发表
一键还原是让一个DOS程序在WINDOWS启动前自动运行,然后再运行WINDOWS,请问这是怎么做到的?

不是的,要启动一个系统,首先是由BIOS程序开始的,BIOS在完成硬件自检和自身初始化后,将会把硬盘的主引导扇装入内存运行,主引导程序要完成对活动主分区的识别,同时装入活动主分DBR上的操作系统引导程序到内存中运行,操作系统引导程序则负责完成指定操作系统的起始引导程序的查找和装入及运行工作,至此操作系统才真正开始启动,其中DBR中的引导程序决定了引导什么什么样的系统,DBR中的引导代码是在格式化的时候确定的,XP格式化的DBR引导代码,其指定的操作系统初始引导文件名是NTLDR,Win98DOS格式化的DBR引导代码则指向IO.SYS、MSDOS.SYS、Command.com三个文件,要想用XP格式化的DBR引导代码来引导Win98的DOS是不可能的。
作者: ctks2006    时间: 2009-5-18 20:50
感谢回复
那是不是要通过修改NTLDR来达到运行我的dos程序的目的?具体应该怎么做?我看一键还原并没有改变boot.ini文件的内容
作者: tinypixy    时间: 2009-5-18 20:57
目前的一键还原,可以从MBR来引导,也可以通过NTLDR来引导
如果通过MBR来引导,比如使用G4DOS的GGhost,在按下某个热键后,引导程序就会引导一键恢复而不是操作系统的NT Boot Loader
而通过修改Boot.ini的是通过XP自带的NT Boot Loader 即NTLDR来引导,即MBR将引导权交给NTLDR,然后NTLDR再引导一键恢复。目前的DOS下的一键,一般都是通过Grub4DOS来引导的,比如MaxDOS等。
作者: lvyanan    时间: 2009-5-18 22:18
原帖由 ctks2006 于 2009-5-18 20:50 发表
感谢回复
那是不是要通过修改NTLDR来达到运行我的dos程序的目的?具体应该怎么做?我看一键还原并没有改变boot.ini文件的内容

我讲的引导有四个层次:
1、BIOS引导阶段。
2、MBR(主引导程序)引导阶段。
3、DBR(系统分区引导程序)引导阶段。
4、操作系统初始化程序引导阶段。
一键恢复就是在2、3、4阶段上来起作用的,不同的一键恢复系统,所起作用的阶段会有不同,因此也不好具体讲它是怎样编制出来的。
作者: 木道人    时间: 2009-5-20 22:04
好人真多,受教了,谢谢




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3