请教还原精灵的实现 ( 积分: 300 )

  • 主题发起人 主题发起人 可爱小猪
  • 开始时间 开始时间

可爱小猪

Unregistered / Unconfirmed
GUEST, unregistred user!
如题:
需要比较详细的设计流程
 
来自:ufo!, 时间:2007-9-25 17:19:10, ID:3837460
你只需修改硬盘上的数据,和主板bios有什么关系,有些主板有防病毒设置,但默认都是关闭的。再说,bios不是想刷就能刷的,不同的主板bios都是不同的。

计算机基本原理都不明白就敢写还原精灵,真是人有多大胆地有多大产。
建议看看计算机原理,了解一下pc的启动过程先。这里给你贴点简单的。
bios上电自检完毕后,系统BIOS的启动代码将进行它的最后一项工作,即根据用户指定的启动顺序从软盘、硬盘或光驱启动。以从C盘启动为例,系统BIOS将读取并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的分区引导记录,而分区引导记录将负责读取并执行IO.SYS,这是DOS和Windows
9x最基本的系统文件。Windows
9x的IO.SYS首先要初始化一些重要的系统数据,然后就显示出我们熟悉的蓝天白云,在这幅画面之下,Windows将继续进行DOS部分和GUI(图形用户界面)部分的引导和初始化工作。

如果系统之中安装有引导多种操作系统的工具软件,通常主引导记录将被替换成该软件的引导代码,这些代码将允许用户选择一种操作系统,然后读取并执行该操作系统的基本引导代码(DOS和Windows的基本引导代码就是分区引导记录)。
 
请多多发言
 
帮你顶 然后偷偷学
 
发言也是浪费。
 
呵呵
谢谢楼上的
我有点忙,过几天试验下结贴
 
大致的原理是这样的,还原精灵将你硬盘各个分区的分区表和文件表都备份好了,然后在驱动层面挂接所有的删除/修改操作,并实际将这些操作取消掉,这样在每次还原的时候只要将备份的文件表写入硬盘就可以恢复了。硬盘删除文件只是在文件表中做个标记,表明这个区可以写入了,但实际上没有删除它(这也是文件粉碎机软件存在的原因^_^),所以还原的关键就是确保文件表和硬盘中对应数据的不变,大致的原理是这样^_^
 
就是截获计算机底层的磁盘操作,然后在计算机进行操作时候对操作数据的扇区进行偏移,偏移到空白地方或者单独分区。然后用完之后,重启如果选择保存数据的化,就将偏移写入,否则抛弃偏移,并不读取~
然后就实现了还原精灵的功能
 
如果备份分区表
那就是没有启动系统,不知道这个程序咋写

运行期间,不知道要不要截获写磁盘的东东
也比较麻烦
 
WIN下写硬盘驱动,底层的。
DOS下拦截中断。
 
后退
顶部