一种计算机,包括至少一个处理器,用于安装和运行引导码和操作码;至少一个可被该处理器访问的存储装置,该存储装置至少被分成两个分区,第一分区起初是被指定为激活的,并具有不能被操作码识别的类型;其中,当处理器运行引导码且第一分区为激活时,该处理器将运行一个类型改变便行程序;以及其中的类型改变例行程序指令处理器把第一分区的类型转变成一个操作码可识别的类型,使得该操作码在被运行时能识别第一分区。(*该技术在2018年保护过期,可自由使用*)
【技术实现步骤摘要】
本公开内容一般地涉及计算机,较具体地涉及计算机存储装置的分区引导记录,该记录的类型可以动态地改变,例如从不可识别引导记录改变成可识别引导记录。在含有一个或多个存储装置例如硬驱的计算机中,这些存储装置常常被分成一些不同的分区,使某些数据或程序可以存储在不同的分区上。例如,在一种使用由华盛顿州Redmond市的MicrosoftCorporation(微软公司)所提供的Microsoft DOS,Windows(视窗)、或Windows95操作系统的计算机中,单个硬驱可能被分成一个例如用来存储操作系统代码的分区和另一个例如用来存储应用型或维护型程序的分区。在下面的讨论中,为了简明,将仅说明使用DOS的情形,但应该理解,DOS只是上述各个操作系统和许多其他操作系统的一种代表。这种应用或维护型程序的一个例子是电子启封("EBTS")程序。EBTS程序常用来强制对另一个程序实施软件许可协议。为了实现EBTS程序,需生成一个第一分区作为应用分区和存储EBTS程序。还要生成一个第二分区作为基础分区并存储那个受软件许可协议限制的程序。起初,应用分区被标为“激活”,使计算机首先访问该应用分区。当许可协议被接受时,再把基础分区标为激活,而以后计算机将首先访问该基础分区。然而,上述过程将带来一些问题。其中之一是,有可能不希望用户在其正常的计算机操作中去访问应用分区。这可能是因为用户可以访问到一些太有力的维护和应用程序,从而会使用户容易丢失其硬驱上的数据、重新配置计算机,或者做出最好不应由用户做出的事情。因此,一种解决是在正常情况下不让操作系统“看见”应用分区。这可以通过把该应用分区的一个“分区类型码”设定成一个操作系统不可识别的值来实现。诸如硬驱等存储装置的构形和处理在Mark Minasi的著作“THE HARD DISK SURVIVAL GUIDE(硬盘生存指导)”(SYBEX,INC.,1991)中有所说明,该书在此引用作为参考。不过,这又引起了另一个问题。在本例中,起初应用分区被标为激活的,从而当计算机起动时它将只看见该应用分区。在应用分区中,计算机可能要运行如EBTS程序这样的维护或应用程序。然而,在能够运行EBTS程序之前,计算机必须首先从激活分区内安装操作系统代码。在本例中,计算机至少要安装两个DOS系统文件IO.SYS和MSDOS.SYM.。IO.SYS系统文件检验激活分区的分区类型码以确保这个分区类型是它能够识别的。由于实际情况不是这样,所以IO.SYS将遇到一个错误,从而相应地发出一个出错消息。结果就不能执行EBTS程序。因此,为计算机存储装置提供了一种可修改的分区引导记录。在一个实施例中,一个计算机含有一个用来安装和运行引导码和操作系统代码的处理器。一个可被该处理器访问的存储装置至少含有两个分区第一分区起初是激活的并具有操作系统不能识别的类型,第二分区起初是不激活的。当计算机引导起动时,处理器将访问起初是第一分区的激活分区。一旦该激活分区被访问,其中的软件将指导处理器把激活分区的类型转变成一种“可见”的类型,即操作系统可识别的类型。因此,当操作系统被安装时,它将可识别激活分区的类型,从而不会遇到错误。一旦已安装了操作系统,另外的软件将指导处理器把激活分区的类型转变回不可见类型。由于现在已安装了操作系统,所以处理器将可执行其它任务。例如,处理器可以执行EBTS程序,提示用户接受关于存储在第二分区中的一个软件的软件许可协议。如果用户接受了软件许可协议,则处理器将把第二分区指定为激活的。所得到的一个技术优点是,当把第二分区指定为激活之后,第一分区将不再能容易地被一般用户访问。得到的另一个技术优点是,在用户接触到第二分区之前,就可以执行和完成像EBTS程序这样的程序,从而用户对于第二分区的程序的“用户经历”不会受到中断干扰。附图说明图1是能实现一个实施例的计算机的方框图。图2是图1计算机的硬驱的布局图。图3是一个由图1计算机运行的例行程序的流程图。参见图1,代号10代表一个含有一些部件的计算机,这些部件至少包括一个处理器12、一个主存储器14、一个盘式驱动器16、以及一个用户界面18,如键盘或鼠标。每个部件都可以通过图示的总线20与处理器12进行通信。在本例中,该计算机是一个运行MicrosoftDOS的个人计算机。然而应该理解,计算机10及其各示例性的部件仅仅是本
所熟知和了解的许多种计算机的一个代表,而DOS仅仅是许多不同操作系统的一个代表。参见图2,盘式驱动器16被分成三个不同的分区一个主引导记录30、一个应用分区32和一个基础分区34。位在主引导记录30中的是引导指令代码40和一个主分区表42。该主分区表含有分别代表分区32和分区34的代码。应该理解,主引导记录30还含有用来引导起动计算机10和定义硬盘16的其他分区的通常代码。应用分区32含有一个引导记录50和一个或几个软件,其中包括一个含有许可证协议的EBTS程序52。在正常操作中,应用分区32仅在例如用户第一次运行计算机等特殊情况下使用。基础分区34也含有一个引导记录60和一个或多个软件,例如受EBTS程序52的许可证协议制约的程序62。在正常操作中,基础分区34将能容易地被用户访问。本实施例的目的是要求用户在被允许访问程序62之前接受EBTS程序52的许可证协议条款。参见图3,一个例行程序100用来让用户在接受了EBTS程序52的许可协议后可以访问程序62。当计算机10从工厂发运时,应用分区32原来被标为激活的(因此基础分区34是不激活的)。此外,应用分区32的分区类型被设定为DEh(h代表十六进制),而基础分区34的分区类型被设定为06h。在本优选实施例中,类型06是一个有效的分区类型码,但类型DE不是,因此不能被DOS识别。在步骤110中,处理器12通过执行引导指令代码40进行引导。在步骤112,处理器12运行激活分区的引导记录,这里该记录是应用分区32的引导记录50。在步骤114中,引导记录50把它的分区类型改变成06h(即一个有效类型),并正确地改写(write out)主分区表42。在步骤116中,安装IO.SYS(DOS操作系统代码的一部分)。当安装IO.SYS时,它将“看见”分区类型06h,于是执行操作系统起动处理。在步骤118中,当操作系统起动处理完成时,运行EBTS程序52。在步骤120中,EBTS程序52把它的分区类型改变成DEh(即一个无效类型),并正确地改写主分区表142。在步骤122中,EBTS程序52在用户界面18上提示用户,询问他是否接受许可协议。如果用户表示接受,例如在用户界面18上选择任选项“接受”,则处理进至步骤124。在步骤124,基础分区34被标为激活(因此应用分区32不激活),并且计算机10重新进行引导。然而,如果用户没有表示接受,则处理进至步骤126。在步骤126,通知用户不可以访问程序62,然后例行程序100停止。或者,也可以再次提示用户,或进一步向他提供关于许可协议的另外信息。其结果是,当计算机10重新进行引导时,就可以访问基础分区34和运行程序62。另外,如果在基础分区34上安装一个例如MicrosoftWindows的操作系统,则由于EBTS程序52已经完成,所以用户的本文档来自技高网...
【技术保护点】
一种计算机,它包括: 至少一个处理器,用于安装和运行引导码和操作码; 至少一个可被该处理器访问的存储装置,该存储装置至少被分成两个分区,第一分区起初是被指定为激活的,并具有不能被操作码识别的类型;并且, 其中,当处理器运行引导码且第一分区为激活时,该处理器将运行一个类型改变例行程序;以及 其中的类型改变例行程序指令处理器把第一分区的类型转变成一个操作码可识别的类型,使得该操作码在被运行时能识别第一分区。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:艾伦E贝利茨,
申请(专利权)人:戴尔美国公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。