管理主引导记录的存储介质及用其引导计算机系统的方法

文档序号:86874阅读:213来源:国知局
专利名称:管理主引导记录的存储介质及用其引导计算机系统的方法
技术领域
本发明涉及一种使用主引导记录来引导计算机系统的方法,并且具体地,涉及一种能够通过存储改变的主引导记录数据并且通过在需要时恢复主引导记录来执行引导过程的存储介质。
本申请要求2006年1月4日向韩国知识产权局递交的韩国专利申请No.2006-1019的优先权,将其全部内容一并在此作为参考。
背景技术
通常,通过从0地址到最大地址范围的存储地址描述计算机系统的硬盘驱动器(HDD)的特征,并且HDD包括一个或多个柱面以及主引导记录(MBR)。在这种情况下,主引导记录被分配到形成硬盘驱动器的一个扇区,并且通知计算机系统如何从硬盘驱动器引导以及所有文件被分配到哪个扇区。此外,主引导记录包括具有与所有文件和数据的位置以及硬盘驱动器的位置相关的信息的文件分配表(FAT)。
同时,计算机系统使用主引导记录执行引导。图1示出了根据相关技术用于执行引导的计算机系统的结构。如图1中所示,根据相关技术,计算机系统包括闪速存储器140,具有与存储在其中的计算机系统的基本操作相关的BIOS数据;中央处理单元110,从闪速存储器140中读出BIOS数据,并且引导计算机系统;控制器120,由中央处理单元110操作,并且从/向闪速存储器140读/写数据;硬盘驱动器190,存储数据,并且具有引导记录,以存储在其中记录的引导记录;以及硬盘控制器180,根据来自中央处理单元110的指令输出控制信号,以驱动硬盘驱动器190。
下面将描述根据相关技术、具有上述结构的计算机系统的引导过程。
当向计算机系统供电时,中央处理单元110输出地址信号以使能控制器120。由中央处理单元110使能的控制器120对从闪速存储器140中读取地址信号和数据的ROM选择信号进行激活。然后,闪速存储器140中的ROM BIOS执行POST(通电自检)例行程序以检查计算机系统的硬件和硬盘驱动器190的状态。ROM BIOS通过硬盘控制器180读取硬盘驱动器190的主引导记录。然而,当ROM BIOS没有读取硬盘驱动器190的主引导记录时,向用户输出消息“驱动器错误”及其等价消息。该消息通知用户引导错误。当闪速存储器140的ROM BIOS没有错误地读取硬盘驱动器190的主引导记录时,控制器120通过系统总线150向中央处理单元110传输读取的BIOS数据。然后,计算机系统以预定的引导顺序自动地引导。
然而,在根据相关技术的计算机系统的引导过程中,例如,可能由于阻止引导过程进行的病毒而删除或损坏了硬盘驱动器190的主引导记录。在这种情况下,用户应该使用另外的恢复工具以引导计算机系统,或用户需要邀请该领域的专家恢复计算机系统,导致较高的恢复成本。

发明内容本发明的一个方面提出了一种技术,用于将主引导记录数据存储在硬盘驱动器的存储空间中,以及用于在需要时恢复主引导记录,以便从而执行引导过程。
根据本发明的一个方面,一种用于管理主引导记录的存储介质包括主引导记录扇区,其中存储与当前执行的引导操作有关的主引导记录;数据存储区,其中存储之前改变了的主引导记录;以及固件,与主机设备通信并且管理主引导记录扇区和数据存储区,其中,当存储在主引导记录扇区中的主引导记录中发生错误时,固件从数据存储区中选择特定的主引导记录,并且将选定的主引导记录存储在主引导记录扇区中。
根据本发明的另一个方面,一种引导计算机系统的方法包括从存储介质的主引导记录扇区中提取主引导记录数据,在所述主引导记录扇区中存储了与当前由主机设备执行的引导操作有关的主引导记录;当在提取的主引导记录数据中发生错误时,从存储介质的数据存储区中选择特定的主引导记录数据,在所述数据存储区中存储了之前改变了的主引导记录;以及通过使用选定的主引导记录数据执行引导操作。
本发明的另外的和/或其他方面和优点部分地将在以下的描述中阐述,部分地根据描述显而易见,或可以通过本发明的实践获知。
根据以下结合附图对实施例的描述,本发明的这些和/或其他方面和优点将变得显而易见且更易于理解,其中图1是说明根据相关技术的计算机系统的结构的方框图;图2是说明根据本发明实施例的计算机系统的方框图;图3是说明根据本发明的实施例用于管理主引导记录的模块的结构的图;图4是说明根据本发明的实施例存储主引导记录的过程的流程图;图5是示例根据本发明的实施例引导计算机系统的过程的流程图。
具体实施方式现在对本发明的实施例提供详细参考,其范例在附图中说明,图中相同的数字全部代表相同的元件。为解释本发明,将参考附图描述实施例。
在下文中将参考用于说明根据本发明实施例的、管理主引导记录的存储介质以及使用存储介质引导计算机系统的方法的流程图和方框图描述本发明。应该理解的是,可以通过计算机程序指令实施流程说明中的每一个方块和流程说明中的方块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机、或其他可编程数据处理设备的处理器,以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的这些指令,实施在流程块中说明的功能。也可以将这些计算机程序指令存储在指导计算机或其他可编程数据处理设备以特殊方式运行的计算机可用或计算机可读存储器中,使得存储在计算机可用或计算机可读存储器中的指令产生包括使流程块中说明的功能得以实施的指令的产品。也可以将计算机程序指令加载到计算机或其他可编程数据处理设备上,以在计算机或其他可编程数据处理设备上执行一连串操作,以产生计算机实施过程,使得在计算机或其他可编程数据处理设备上执行的指令提供用于实施在流程块中说明的功能的操作。
另外,流程说明中的每一个块可以代表一块、一段、或一部分代码,包括用于实施特定的逻辑功能的一个或多个可执行指令。同样应该注意到是,在一些可选的实施中,在块中指出的功能可以无序地发生。例如,取决于所包含的功能,连续示出的两个块实际上可以基本同时执行,或者这些块有时可以以相反的顺序执行。
图2是说明根据本发明实施例的计算机系统的结构的方框图。如图2中所示,计算机系统200包括主机设备210和存储介质220。存储介质220包括固件230;主引导记录(MBR)扇区240,将与当前执行的引导操作有关的主引导记录(下文中称作“MBR”)存储在其中;第一数据存储区260,其中存储一般数据;以及第二数据存储区250,具有之前改变了的MBR数据。
主机设备210包括中央处理单元;非易失性存储器,例如闪速存储器;以及控制器,用于控制存储介质220。非易失性存储器中存储了与计算机系统200的基本操作有关的BIOS数据。这里,可以把任意装置看作是根据本发明的主机设备210,只要该装置能够使用存储在存储介质220中的数据来处理数字信息。
固件230与主机设备210通信以管理存储介质220的每一个区。术语“管理”指的是在主机设备210的请求下,从第一数据存储区260中提取数据,或将数据存储在第一数据存储区260中。另外,术语“管理”还指当引导计算机系统200时从MBR扇区240或第二数据存储区250中提取MBR数据的操作,并且向主机设备210提供已提取的数据。
如果用户操作计算机系统200的主机设备210,主机设备210的中央处理单元控制非易失性存储器的ROM BIOS,以执行POST(通电自检)例行程序以检查计算机系统200的硬件并且检查存储介质220的状态。此时,主机设备210与固件230通信。
ROM BIOS通过用于控制存储介质220的控制器,读出存储在存储介质220的MBR扇区240中的主引导记录。此时,如果存储在MBR扇区240中的MBR数据中具有病毒,可能发生引导错误。
因此,在这种情况下,来自主机设备210的指令或固件230的控制使得提取之前存储在第二数据存储区250中的MBR数据,并且将提取的数据提供给主机设备210,这使得可以连续地执行计算机系统200的引导操作。
这里,根据本发明的实施例,仅有固件230可以访问第二数据存储区250,并且可以将与之前改变并且存储在第二数据存储区250中的MBR的数目有关的信息存储在存储介质220中。另外,存储在第二数据存储区250中的MBR可以形成其中他们在时序上建立了连接关系的数据配置。
当存储在MBR扇区240中的MBR具有病毒时,主机设备210通过显示器(未示出)的屏幕通知用户已经发生引导错误。在这种情况下,主机设备210在屏幕上显示存储在存储介质220的第二数据存储区250中的先前MBR列表,使得用户可以选择最后的或特定的MBR。当用户选择了特定的MBR时,将选定的MBR存储在MRB扇区240中,并且主机设备210访问MBR扇区240,从而引导计算机系统200。
图3是说明根据本发明的实施例的、用于管理主引导记录的模块的结构示例图。如图3中所示,根据本发明,管理MBR的模块包括BIOS模块310、硬盘控制模块320以及硬盘固件模块330。
如这里所使用的,术语“模块”指的是但不限于诸如现场可编程门阵列(FGPA)或专用集成电路(ASIC)的、执行一定任务的软件或硬件组件。可以有利地将模块配置为驻留在可寻址存储介质中,并且配置为在一个或多个处理器上执行。因此,作为示例,模块可以包括的组件诸如软件组件、面向对象的软件组件、类组件和任务组件、进程、函数、属性、过程、子程序、程序代码段、驱动程序、固件、微代码、电路、数据、数据库、数据结构、表、数组、变量、及其组合。可以将组件和模块中规定的功能组合成较少的组件和模块,或进一步地分离成额外的组件和模块。另外,可以如此实施组件和模块,使得他们执行装置或安全多媒体卡中的一个或多个CPU。
BIOS模块310可以设置在主机设备210的的非易失性存储器中,并且通过请求硬盘控制模块320读取存储在硬盘340中的MBR,以至少一种方式操作。同样,BIOS模块310请求硬盘控制模块320读取与存储在硬盘340中的MBR的数目有关的信息。
硬盘控制模块320根据来自主机设备210的中央处理单元的指令,输出控制信号以驱动硬盘340,并且在BIOS模块310的请求下控制硬盘固件模块330以读出存储在硬盘340中的MBR。硬盘固件模块330管理硬盘340的一部分操作,并且与图2中示出的固件230相对应。硬盘340存储数据,并且包括在图2中示出的MBR扇区、第一数据存储区260、以及第二数据存储区250。
根据本发明,如图3中所示,可以将BIOS模块310和硬盘控制模块320配置在主机设备210中。此时,硬盘固件模块330和硬盘340可以形成图2中示出的存储介质220。
如果存储在硬盘340的MBR扇区中的MBR中具有病毒,用户可以任意地选择BIOS模块310。可选地,硬盘固件模块330通过预定的方法从第二数据存储区250中提取在特定的时间存储的MBR,并且将所提取的MBR恢复到MBR扇区240中。
只要改变了存储在MBR扇区240中的MBR的内容,硬盘固件模块330可以在第二数据存储区250中顺序地存储改变的MBR,并且硬盘固件模块330可以在主机设备210的请求下,向主机设备210提供与存储在第二数据存储区250中的MBR的数目有关的信息。
图4是说明根据本发明的实施例存储主引导记录的过程的流程图。首先,只要将计算机系统200初始化或重启,硬盘固件模块320就从第二数据存储区250中读出最近存储的MBR数据MBR_1(S410)。然后,硬盘固件模块330从MBR扇区240中读出MBR数据MBR_2(S420)。硬盘固件模块330将MBR数据MBR_1与MBR数据MBR_2相比较(S430)。当确定MBR数据MBR_1与MBR数据MBR_2彼此相同时,不将MBR扇区240中的MBR数据存储在第二数据存储区250中。
然而,在操作S430中,当确定MBR数据MBR_1与MBR数据MBR_2彼此不相同时,将MBR扇区240中的MBR数据MBR_2存储在第二数据存储区250中。此时,指示存储在第二数据存储区250中的MBR的数目的信息加1,并且将指示存储在第二数据存储区250中的MBR的数目的信息同样包括在第二数据存储区250中。
新近存储在第二数据存储区250中的MBR数据MBR_2可以存储为与之前存储的其他MBR形成时序上的链接。此时,即使当计算机系统200实时操作时也可以执行图4中示出的过程。
图5是示例根据本发明的实施例引导计算机系统的过程的流程图。如图5中所示,首先,硬盘固件模块330从MBR扇区240中读出MBR数据,并且将读取的数据提供给主机设备210(S510)。此时,主机设备210确定从硬盘固件模块330提供的MBR数据中是否具有病毒(S520)。当确定MBR数据不包含病毒时,执行引导(S550)。
另一方面,当确定MBR数据具有病毒时,主机设备210请求硬盘固件模块330从第二数据存储区250中提取特定的MBR数据(S530)。此时提取的MBR数据可以是最近存储的MBR数据或由用户在特定的时间选择的MBR数据。
硬盘固件模块330将根据操作S530提取的MBR数据存储在MBR扇区240中,并且将存储的MBR数据提供给主机设备210,从而引导计算机系统(S550)。
根据本发明,即使主引导记录中具有病毒,也可以使用之前存储的主引导记录数据来引导计算机系统。
尽管已经示出和描述了本发明的一些实施例,本领域的普通技术人员应当理解,在不脱离本发明的原理和精神的情况下,可以对这些实施例进行改变,本发明由所附权利要求
及其等同物所限定。
权利要求
1.一种存储介质,用于与计算机系统一起使用来管理计算机系统的主引导记录,所述存储介质包括主引导记录扇区,其中存储与当前执行的引导操作有关的主引导记录;数据存储区,其中存储之前改变了的主引导记录;以及固件,与主机设备通信并且管理主引导记录扇区和数据存储区,其中,当存储在主引导记录扇区中的主引导记录中发生错误时,固件从数据存储区中选择特定的主引导记录,并且将选定的主引导记录存储在主引导记录扇区中。
2.如权利要求
1所述的存储介质,其中,从数据存储区选择的主引导记录是最近存储的主引导记录。
3.如权利要求
1所述的存储介质,其中,由用户选择选定的主引导记录。
4.如权利要求
1所述的存储介质,其中,选定的主引导记录是在特定的时间存储的已存储主引导记录。
5.如权利要求
1所述的存储介质,其中,固件将在特定的时间存储在主引导记录扇区中的主引导记录与存储在数据存储区中的主引导记录相比较。
6.如权利要求
5所述的存储介质,其中,当发现在特定的时间存储在主引导记录扇区中的主引导记录与存储在数据存储区中的主引导记录不同时,固件将存储在主引导记录扇区中的主引导记录存储到数据存储区中。
7.如权利要求
6所述的存储介质,其中,所述特定的时间包括主机设备执行初始化的时间。
8.如权利要求
6所述的存储介质,其中,所述特定的时间包括主机设备执行重启操作的时间。
9.如权利要求
6所述的存储介质,其中,所述特定的时间包括主机设备执行实时操作的时间。
10.如权利要求
6所述的存储介质,其中,固件通过形成与之前存储在数据存储区中的其他主引导记录的时序链接,将存储在主引导记录扇区中的主引导记录存储到数据存储区中。
11.一种引导主机设备的方法,所述主机设备包括存储介质,所述方法包括从存储介质的主引导记录扇区中提取主引导记录数据,在所述主引导记录扇区中存储有与当前由主机设备执行的引导操作有关的主引导记录;当在提取的主引导记录数据中发生错误时,从存储介质的数据存储区中选择特定的主引导记录数据,在所述数据存储区中存储有之前改变了的主引导记录;以及通过使用选定的主引导记录数据执行引导操作。
12.如权利要求
11所述的方法,其中,在选择特定的主引导记录数据的步骤中选定的主引导记录数据是最近存储的主引导记录。
13.如权利要求
11所述的方法,其中,由用户选择选定的主引导记录数据。
14.如权利要求
11所述的方法,其中,选定的主引导记录数据是在特定的时间存储的已存储主引导记录。
15.如权利要求
11所述的方法,还包括将在特定的时间存储在主引导记录扇区中的主引导记录数据与存储在数据存储区中的主引导记录数据相比较。
16.如权利要求
15所述的方法,还包括当发现在特定的时间存储在主引导记录扇区中的主引导记录数据与存储在数据存储区中的主引导记录数据不同时,将存储在主引导记录扇区中的主引导记录数据存储到数据存储区中。
17.如权利要求
16所述的方法,其中,所述特定的时间包括主机设备执行初始化的时间。
18.如权利要求
16所述的方法,其中,所述特定的时间包括主机设备执行重启操作的时间。
19.如权利要求
16所述的方法,其中,所述特定的时间包括主机设备执行实时操作的时间。
20.如权利要求
14所述的方法,其中,将存储在主引导记录扇区中的主引导记录数据存储到数据存储区中的步骤包括形成与之前存储在数据存储区中的其他主引导记录数据的时序链接。
21.一种主机设备的模块,管理主机设备的硬盘的主引导记录,所述硬盘包括主引导记录扇区和数据存储区,所述模块包括基本输入/输出系统模块,配置在主机设备中用于请求读出硬盘的主引导记录和存储在主引导记录扇区中的主引导记录的数目;硬盘控制模块,通过从硬盘中读出已存储的主引导记录来响应基本输入/输出系统模块,其中,如果存储在主引导记录扇区中的主引导记录中具有错误,硬盘的硬盘固件模块或用户从数据存储区中提取预定的主引导记录,并且将已提取的主引导记录恢复到主引导记录扇区中。
22.一种引导主机设备的方法,所述主机设备包括硬盘,所述方法包括从硬盘的主引导记录扇区中提取主引导记录数据,在所述主引导记录扇区中存储有与当前由主机设备执行的引导操作有关的主引导记录;当发现提取的主引导记录数据包含错误时,从硬盘的数据存储区中选择特定的主引导记录数据,在所述数据存储区中存储有之前改变了的主引导记录;以及通过使用选定的主引导记录数据执行引导操作。
专利摘要
公开了一种管理主引导记录的存储介质以及一种使用存储介质引导计算机系统的方法。所述存储介质包括主引导记录扇区,其中存储与当前执行的引导操作有关的主引导记录;数据存储区,其中存储之前改变了的主引导记录;以及固件,与主机设备通信并且管理主引导记录扇区和数据存储区,其中,当存储在主引导记录扇区中的主引导记录中发生错误时,固件从数据存储区中选择特定的主引导记录,并且将选定的主引导记录存储在主引导记录扇区中。
文档编号G06F9/445GK1996246SQ200610164283
公开日2007年7月11日 申请日期2006年12月8日
发明者朴成国 申请人:三星电子株式会社导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1