CN1135618A - 自动检测计算机系统中的盘类型的方法与装置 - Google Patents

自动检测计算机系统中的盘类型的方法与装置 Download PDF

Info

Publication number
CN1135618A
CN1135618A CN 96102423 CN96102423A CN1135618A CN 1135618 A CN1135618 A CN 1135618A CN 96102423 CN96102423 CN 96102423 CN 96102423 A CN96102423 A CN 96102423A CN 1135618 A CN1135618 A CN 1135618A
Authority
CN
China
Prior art keywords
parameter
disk drive
partition table
cylinder
sector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 96102423
Other languages
English (en)
Other versions
CN1060576C (zh
Inventor
林俊贤
陈德荣
蒋方平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wistron Corp
Acer Inc
Original Assignee
Acer Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/563,760 external-priority patent/US5721952A/en
Application filed by Acer Computer Co Ltd filed Critical Acer Computer Co Ltd
Publication of CN1135618A publication Critical patent/CN1135618A/zh
Application granted granted Critical
Publication of CN1060576C publication Critical patent/CN1060576C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

自动检测装在系统中的硬盘驱动器的类型的计算机系统的技术。一种方法包括从分区表中检索数据,及从分区表中的值中计算出必要的参数。在一个特定的实施例中,该方法包括从存储在分区表中的某些地址中计算出头参数及扇区/道参数。该方法还包括发送一条识别驱动器(ID)命令到硬盘驱动器。某些类型的硬盘驱动器响应ID命令传递附加信息。该方法包括用这种附加信息(如果提供)计算柱面参数。否则,柱面参数是从分区表中的信息中计算出的。

Description

自动检测计算机系统中的盘 类型的方法与装置
本申请相应的美国申请为1995年2月17日提交的美国申请系列号08/390,852及1995年7月10日提交的美国临时申请系列号60/000,966的部分继续申请,这里为一切目的通过引用将它们的公开结合在此。
本发明的总的方面涉及计算机系统中的硬盘驱动器,更具体地涉及自动检测计算机系统中的硬盘驱动器的类型的方法与装置。
通常,想要使用新的硬盘驱动器或者更换或升级硬盘驱动器的传统个人计算机系统用户必须设定硬盘驱动器的类型。作为对用户的帮助,制造商通常提供在非易失性随机存取存储器(NVRAM)中存储硬盘驱动器的参数或初始值的一个程序,该存储器有时也称作CMOS配置存储器。在引导计算机系统时,该程序自动从NVRAM中读取与加载预置的初始值来初始化硬盘驱动器类型。从而用户没有必要在每次引导计算机系统时设定硬盘驱动器类型。
这是明显地有帮助的,但当有用户改变硬盘驱动器的设定值或现换硬盘驱动器时,用户必须重新设定新的硬盘驱动器参数。用户必须亲自确定硬盘驱动器的实际类型与精确参数,然后用该硬盘驱动器的类型及参数来配置并初始化硬盘驱动器。否则硬盘驱动器便不能正常工作。
某些制造商宣称他们的计算机系统自动检测硬盘驱动器的类型,并能初始化硬盘驱动器,包括在更换或升级硬盘驱动器时也能做到这一点。用来达到这一目的的技术如下,计算机系统的CPU向硬盘驱动器发送一条识别驱动器(ID)命令,以此作出响应,硬盘驱动器送回指示硬盘驱动器的类型的信息。然后CPU按照与该类型的硬盘驱动器对应的预置的参数初始化该硬盘驱动器,然而,这一技术只能用在某些新类型的硬盘驱动器上。例如,诸如ST406/412,老式AT-BUS,某些ST506及某些IDE驱动器等较老式的硬盘驱动器不能响应ID信号而送回这种值。
再者,即使对于能送回值的驱动器也存在潜在的问题。这是因为硬盘驱动器可能采用与CPU已知的预置值不同的参数(包含柱面参数、头参数及扇区/道参数)来设定其分区与格式。换言之,硬盘驱动器响应ID命令向CPU送出表示其类型的一个信号。然后,CPU按照该信号识别硬盘驱动器的类型,选择CPU对这种类型的硬盘驱动器已知的预置参数组。并用这些参数来初始化该硬盘驱动器。不幸的是,这些是错误的参数,而后果难于预测。
本发明提供计算机系统自动检测装在该系统中的盘驱动器(硬盘与某些可引导的介质)的类型的技术。即使已经更换成升级了的盘驱动器,这些技术同样适用。从而,用户无需知道新的盘驱动器的类型便能确信正确的系统操作。
本发明利用盘驱动器在格式化时建立一张分区表这一事实。简言之,接照本发明的方法包括从分区表中检索数据并从分区表中的值计算必要的参数。更具体地,本方法包括从分区表中的值中至少直接计算某些参数,并且如果能得到标识数据,便在计算中利用该数据。
在一个特定的实施例中,本方法包括从存储在分区表中的某些地址中计算一个头参数及一个扇区/道参数。本方法还包括发送一条识别驱动器(ID)命令到硬盘区动器。某些类型的盘驱动器响应ID信念而传递附加信息。如果提供了这种附加信息,本方法便利用它来计算柱面参数。否则,便从分区表中的信息中计算柱面参数。
本发明可用软件实现并存储在计算机系统的BIOS(基本输入输出系统)固件中,然后,计算机系统在引导进程中便能执行该程序而自动检测盘驱动器的类型。
通过参照本说明书的其余部分及附图可以实现对本发明的本质与优点的进一步理解。
图1为包含本发明的代表性计算机系统的系统方框图;
图2为硬盘驱动器的图,示出分区表的位置;
图3为按照用于自动检测计算机系统中的硬盘驱动器的类型的本发明的一个实施例的方法的流程图;
图4为用于检测计算机系统中的硬盘驱动器的柱面参数方法的流程图;
图5为传统的硬盘驱动器的分区表的第一实例;
图6为传统硬盘驱动器中的分区表的第二实例;以及
图7为按照本发明的另一实施例的方法的流程图。
图1为实施本发明的计算机系统10的简化方框图。在这一高层次上例示的计算机系统配置是标准的,因而图1标识为先有技术。然而,适当地编程为实施本发明的诸如系统10这样的计算机系统则不是先有技术。按照已知的实践,计算机系统包括一个处理器12,它经由一个总线予系统15与若干处围设备连通。这些外围设备中通常包括一个存储器子系统17、一个用户输入装置20,一台显示器22及一个文件存储系统25。总线子系统15示意性地示出为一条单一总线,但一个典型的系统有若干条总线,诸如一条局部总线及一条扩展总线(诸如,ISA、EISA、MCA或PCI)。计算机系统还可以是桌面系统或便携式系统。
存储器子系统17包括若干存储器,其中有一个主随机存取存储器(RAM)30、一个存储有BIOS的只读存储器(ROM)32及用于存储系统参数的一个非易失性RAM(NVRAM)。最好将实现本发明程序存储在ROM32中。
用户输入装置20通常包括一个键盘40并且还可括一个指点装置42,诸如一个鼠标器或跟踪球。文件存储系统存储程序与数据文件,并且通常至少包括一个硬盘驱动器45及一个软盘驱动器47。并且还可有其它设备,诸如CD-ROM驱动器48及光盘驱动器。此外,该系统可包括带可拆卸的介质盒的类型的硬驱动器。
本说明书中,通常采用“总线系统”一词,意在包含使系统的各种部件互相通信的一切机构。除了输入装置及显示器,其它部件不一定在相同的物理位置上。因此,例如一部分文件存储系统可通过各种远程网络介质连接。类似地,输入装置与显示器不一定与处理器在同一位置上,虽然预计本发明将最经常实现在PC与工作站的情况中。
图2示出硬盘驱动器45的局部图。具体地,在设定了硬盘驱动器的分区之后,便在硬盘的第一物理扇区中建立与写入一张分区表。分区表的最后两个字节定义一个标记字段,它指示分区表与分区数据是否存在。标记值55AAh表示已设置硬盘驱动器的分区并已保存了分区表。在包含图与表的现在的讨论中,后缀“h”或“(h)”表示一个数的十六进制表示,而后缀“(d)”则表示一个数的十进制表示。
除了标记字段以外,分区表中包含表示多达四个分区的参数数据的四个16字节段。如果少于四个分区,便将未曾建立的分区的段设置为全零。各16字节的段包含对应的分区的范围、大小与内容。各16字节段的单个字段示出在文后的表一中。
硬盘驱动器将按照在硬盘驱动器格式化进程中所设定的参数计算分区的起始地址、结束地址、及大小。然后将这些数据值写入分区表中。
图3为按照本发明的一个实施例的自动检测的流程图。计算机系统可将利用上面提到的方法的软件存储在BIOS ROM32中,以便在引导进程中能执行该软件及自动检测硬盘驱动器的类型。
以这一实施例及将描述的其它实施例,最好向用户提供每次引导计算机时运行该自动检测程序的选择。这能通过菜单选择来提供。如果用户选定每次引导计算机时令该程序进行,则所确定的参数将用于初始化硬盘驱动器。如果用户选定在引导时不要自动运行该程序,则该程序能运行一次而将存储在NVRAM35中的参数用于以后引导时初始化硬盘驱器。从而在下面的说明中,应理解为所描述的程序操作可在引导时自动调用或响应用户命令而调用。
如上所述,硬盘驱动器的特征在于一个头参数(HP)、一个扇区/道参数(SP)及一个柱面参数(CP)。系统首先从分区表中读取数据(步骤50),并检验标记字段(步骤52)。如果这一字段中的值不是55AAh,则硬盘驱动器尚未格式化,而系统求助于其它技术来初始化硬盘驱动器(步骤53),例如利用以前由硬盘驱动器提供的省缺参数。
如果标记字段中的值为55AAh,则系统进行到从分区表中的值中计算头与扇区/道参数(步骤55)。如能从上表中看出的,分区表中包含地址信息,但并不直接提供所需要的参数。然而,一个逻辑块地址可用头与扇区/道参数以及头、扇区与柱面地址表示。逻辑块地址0对应于地址(柱面0,头0,扇区1)。计算逻辑块地址的公式如下:
逻辑块地址=(((柱面*头参数)+头)*(扇区
            /道参数))+(扇区-1)
或者省略成:
LBA=(((CA*HP+HA)*SP)+(S
     A-1)
其中:
LBA=逻辑块地址
CA=柱面地址
HP=头参数
HA=头地址
SP=扇区/道参数
SA=扇区地址
因而有可能用上述公式来表示起始与结束扇区地址,并导出下列两个公式:
起始地址=(((起始柱面*头参数)+起始头)*(扇区/道参数))+(起始扇区-1)          (1)
结束地址=(((结束柱面*头参数)+结束头)*(扇区/道参数))+(结束头-1)            (2)
还有可能直接从分区表信息中计算出起始与结束扇区地址如下:
起始地址=分区第一扇区             (3)
结束地址=(分区第一扇区)+(分区中扇区)-1
                                   (4)
将式(3)与(4)代入式(1)与(2)得出含两个未知数的两个方程,即头与扇区/道参数,由于所有其它系数的值都是存储在分区表中的。解这两个方程提供这两个参数的值。
然后系统前进到确定柱面参数(步骤60)。在确定了柱面、头与扇区/道参数之后,便精确地识别了硬盘驱动器的类型(步骤62)。然后系统利用柱面、头与扇区/道参数的计算值初始化该硬盘驱动器(步骤65)。虽然没有精确的参数仍能初始化硬盘驱动器,但这将不可能利用硬盘驱动器的全部空间。
图4为例示确定柱面参数的方式(上述步骤60)的流程图。简言之,柱面参数是以两种方法之一确定的,取决于该硬盘驱动器是否具有与ID命令对应的类型。系统发送ID命令到硬盘驱动器(步骤70),并判定该ID命令是否被接受与执行,即是否受到响应(步骤72)。
对ID命令的响应为一块识别该驱动器的256个字的数据。这一数据中包含诸如型号、系列号、驱动器上的总空间(即总扇区数)及柱面、头与扇区/道参数的省缺值等信息。如果用户已经重新格式化了驱动器,则柱面、头与扇区/道参数的返回值将不反映该硬盘驱动器的实际状态。然而总空间并不随重新格式化改变,而表示有效与有用的数据。
如果ID命令被接受与执行,则该硬盘驱动器被识别为接受这种命令的驱动器(步骤75)。在这一情况中,从对ID命令的响应中的数据确定该硬盘驱动器的总空间(即总扇区数)(步骤77)。然后用头参数与扇区/道参数去除总扇区数而算出柱面参数(步骤80)。
如果ID命令未被接受及执行,则系统将该硬盘驱动器识别为非AT-BUS类型(步骤82)。这时将柱面参数定为分区表中的结束柱面的最大值(步骤85)。第一实例
作为第一实例,考虑具有图5的分区表的一个硬盘驱动器。在本实例中,硬盘驱动器具有接受ID命令的一个IDE(集成驱动器电子器件)接口。
如能从分区表的内容中看出的,第一分区的起始地址为125D:05BE,而第一分区的结束地址为125D:05CD。然而,第二、第三与第四分区段的内容全为0,表明重新格式化时该硬盘驱动器只利用了第一分区。分区表段的内容如文后的表二。
单一分区的起始地址为(柱面0,头1,扇区1),而结束地址为(柱面721,头12,扇区51)。因此:
起始地址=分区第一扇区=51
结束地址=分区第一扇区+分区中的扇区-1
        =51+478635-1
        =478685
将这两个值代入地址变换方程进行如下:
由于地址=(((柱面*HP)+头)*SP)+(
          扇区-1),
51=(0·HP+1)·SP+(1-1)
473635=(721·HP+12)·SP+
        (51-1)
解这两个方程得出HP=13与SP=51。
由于该硬盘驱动器具有一个IDE接口,它接受ID命令。返回的参数之一便是该硬盘驱动器的总空间。已知它为479349个扇区。
由于总扇区=CP·HP·SP
CP=总扇区/(HP·SP)
  =479349/(13·51)=723
从而该硬盘驱动器的参数为:
柱面参数=723,
头参数=13,以及
扇区/道参数=51。
从这些参数中,该硬盘驱动器的类型成为已知的,并能精确地初始化该驱动器。第二实例
作为第二实例,考虑具有图6的分区表的一个硬盘驱动器。在本实例中,该硬盘驱动器为不接受ID命令的一种ST506类型。如能从分区表的内容中看出的,第一分区的起始地址为145B:05BE,第一分区的结束地址为145B:05CD,第二分区的起始地址为145B:05CE,而第二分区的结束地址则为145B:05DD。第三与第四段的内容全为0,表明该硬盘驱动器在格式化时只利用两个分区。
这两个分区的分区表段的内容如文后的表三
如表中所示,第一分区的起始地址为(柱面0,头1,扇区1),而第一分区的结束地址则为(柱面770,头4,扇区17),因此:
起始地址=分区第一扇区=17
结束地址=分区第一扇区+分区中扇区-1
        =17+65518-1=65534通过将这两个值代入地址变换式而解这两个方程:
17=(0·HP+1)·SP+(1-1)
65534=(770·HP+4)·SP+
       (17-1)解这两个方程得出HP=5及SP=17。
然而,由于这一硬盘驱动器为一种ST506类型,它不接受ID命令,因此不能传递硬盘驱动器的总空间,由于不知道该硬盘驱动器的总空间,便不能像第一实例中那样从硬盘驱动器的总空间中解出柱面参数。但是,有可能利用分区表中的最大结束柱面作为硬盘驱动器的柱面参数。
在本实例中,第一分区的结束柱面为770,而第二分区的结束柱面为1021。因此,MAX(1021,770)=1021,而将这一硬盘驱动器识别为具有:
柱面参数=1021,
头参数=5,以及
扇区/道参数=17另一实施例
图7为按照本发明的另一实施例的方法的流程图。许多步骤与上述步骤对应,从而采用对应的参照数字。在本实施例中,系统首先发送ID命令到硬盘驱动器(步骤70),并判定该ID命令是否被接受与执行,即有无响应(步骤72)。如果ID命令被接与执行,便将该硬盘驱动器识别为接受这种命令的驱动器而将一个标志设置为1(步骤75)。如果未接受与执行ID命令,则系统将该硬盘驱动器识别为非AT-BUS类型(步骤82)而将标志设置为0。为了明确起见,采用了值1与0,但也可采用任何一对有区别的值。事实上,该标志可以是初始设定为0的一个单元(诸如用于扇区总数的单元),并且当且仅当该硬盘驱动器响应ID命令时将一个非零数据值存储在其中。
系统从分区表中读取数据(步骤50),并检验标记字段(步骤52)。如上所述,如果该字段中的值不是55AAh,系统便不能利用分区表数据来确定柱面、头及扇区/道参数的值。然后系统检验标志(步骤90),如果标志为1,系统便利用以前响应ID命令提供的省缺参数初始化硬盘驱动器(步骤53)。如果标志不为1,系统便不能初始化硬盘驱动器(步骤92),并可选择通知用户这一事实。如果NVRAM35中存储有参数值,原则上可利用这些值,但结果可能与所期望的不同。
如果标记字段中的值为55AAh,系统便前进到从分区表中的值中计算头与扇区/道参数(步骤55),然后进行到确定柱面参数(步骤60)。已经确定了柱面、头与扇区/道参数之后,便精确地识别了硬盘驱动器的类型(步骤62)。然后系统利用计算出的柱面、头与扇区/道参数初始化硬盘驱动器(步骤65)。如图4中所示那样进行柱面参数的计算,而分支则取决于标志的值。结论
作为结论,能够看出,即使已经重新格式化了驱动器,本发明也能自动地确定硬盘驱动器的有关参数。
虽然以上是本发明的特定实施例的完整描述,但可采用各种修正,替代构造及等效物。
例如,虽然上述描述是对硬盘驱动器而言的,本发明也能用在至少一种类型的CD-ROM。CD-ROM的许多标准中,一种是由ATAPI协会制订的“可引导的CD-ROM格式规范”。ATAPI为“AT附件包接口”的缩写。它是指用于存取AT兼容计算机上的硬盘与CD-ROM驱动器的接口与协议而言。服从这一标准的CD-ROM片头(TITLE)不论各扇区的数据容量,以类似于硬盘的格式存储数据。相应地,有可能将这种CD-ROM片头用作“可更换的硬盘”。这意味着这种可更换的CD片头与硬盘相同的方式存储数据。由于不同的CD-ROM片头可能使用不同的参数值,为了访问CD-ROM片头上的数据,有必要知道头、扇区/道及柱面参数。本发明通过如上所述那样找出第一扇区、读取分区表及计算参数而使之成为可能。
因此,上述描述不应视为限制由权利要求书所定义的发明范围。
                                   表1
    参数             第一分区
    可引导              80(h)
    起始头                01
    起始扇区                01
    起始柱面                0
 操作系统标识符               06(h)
    结束头            0C(h)=12(d)
    结束扇区     B3 bits(5:0)=33(h)=51(d)
    结束柱面 B3 bits(7:6)+D1(h)=2D1(h)=721(d)
  分区第一扇区          00000033(h)=51(d)
   分区中扇区        00074DAB(h)=478635(d)
                                    表2
    参数          第一分区     第二分区
    可引导           80(h)        0
    起始头             01        01
    起始扇区             01        C1
    起始柱面              0        03
 操作系统标识符             04        05
    结束头             04        04
    结束扇区 D1(h)位(0:5)=11(h)=17(d)      17(d)
结束柱面       D1(h)位(6:7)7+D2(h)=302(h)=770(d) 3FD(h)=1021(d)
  分区第一扇区     00000011(h)=17(d)    0000FFFF(h)
   分区中扇区    0000FFEE(h)=65518(d)    00005357(h)
                                    表3
 字节位移  字段长度          字段含义
   00h    1字节 00h=不可引导;80h=可引导
   01h    1字节          起始头
   02h    1字节          起始扇区
   03h    1字节          起始柱面
   04h    1字节       操作系统标识符
   05h    1字节           结束头
   06h    1字节  6位用于结束扇区;2位用于结束柱面的2个高位
   07h    1字节       结束柱面的8个低位
   08h    1双字         分区第一扇区
   0Ch    1双字         分区中扇区数

Claims (32)

1、一种自动检测计算机系统中的盘驱动器的类型的方法,该方法包括操作该系统来执行下述步骤:
(a)从该盘驱动器的分区表中读取分区表数据;
(b)在分区表数据的基础上计算盘驱动器的头参数及扇区/道参数。
2、权利要求1的方法,还包括步骤(c),至少部分地在分区表数据的基础上计算盘驱动器的柱面参数。
3、权利要求1的方法,其中步骤(b)根据判定分区表数据的一个特定的标记数据部分符合预定的条件而被支配。
4、权利要求1的方法,其中的分区表数据包括:
确认分区表的标记数据;
至少一个分区的起始扇区地址及结束扇区地址;
至少一个分区的起始头地址及结束头地址;
至少一个分区的起始柱面地址及结束柱面地址;
至少一个分区的起始地址;以及
至少一个分区的总扇区数。
5、一种自动检测计算机系统中的盘驱动器的类型的方法,该方法包括下述步骤:
(a)从盘驱动器的分区表中读取分区表数据;以及
(b)在分区表数据的基础上计算盘驱动器的头参数及扇区/道参数;以及
(c)计算盘驱动器的柱面参数;
用计算出的头、扇区/道、及柱面参数来识别盘驱动器的类型。
6、权利要求5的方法,其中的柱面参数是用下述步骤计算的:
确定盘驱动器的扇区总数;以及
用头参数及用扇区/道参数除盘驱动器的总空间。
7、权利要求5的方法,其中:
分区表数据包括盘驱动器上各分区的结束柱面地址;以及
柱面参数是通过从分区表数据中选择最大的结束柱面地址而计算出的。
8、权利要求5的方法,其中的柱面参数是由下述步骤确定的:
(c)发送一条ID(识别驱动器)命令到盘驱动器;以及
(d1)如果接收到对该ID命令的应答,便利用盘驱动器响应ID命令而发送的信息计算盘驱动器的柱面参数;
(d2)否则,如果未收到对ID命令的应答,单独利用分区表数据确定柱面参数。
9、权利要求5的方法,其中的分区表数据包括:
确认分区表的标记数据;
至少一个分区的起始扇区地址及结束扇区地址;
至少一个分区的起始头地址及结束头地址;
至少一个分区的起始柱面地址及结束柱面地址;
至少一个分区的起始地址;以及
至少一个分区的总扇区数。
10、权利要求5的方法,其中的头与扇区/道参数是通过将起始与结束逻辑块地址的表达式与显式扇区地址信息互相关联而计算出的。
11、一种自动检测计算机系统中的盘驱动器的类型的方法,该方法包括下述步骤:
(a)从盘驱动器的分区表中读取分区表数据,分区表数据中包含,盘驱动器的各分区的,一个扇区起始地址、一个扇区结束地址、一个头起始地址、一个头结束地址、一个扇区的总数、一个柱面起始地址、及一个柱面结束地址;
(b)在分区表数据的基础上计算盘驱动器的头参数及扇区/道参数;
(c)发送一条ID(识别驱动器)命令到盘驱动器;以及
(d1)如果接收到对ID命令的应答,便在盘驱动器响应ID命令发送的信息的基础上计算盘驱动器的柱面参数;
(d2)否则,如果未收到对ID命令的应答,便在分区表数据的基础上确定柱面参数。
12、权利要求11的方法,其中的步骤(c)是在步骤(a)前面执行的。
13、权利要求11的方法,其中的步骤(c)是在步骤(a)后面执行的。
14、权利要求11的方法,其中的条件步骤(d1)包括下述子步骤:
在盘驱动器响应ID命令发送的信息的基础上确定盘驱动器的总空间;以及
用头参数与扇区/道参数除盘驱动器的总空间计算柱面参数。
15、权利要求11的方法,其中条件步骤(d2)包括确定分区表中分区的最大结束柱面地址。
16、权利要求11的方法,还包括在步骤(b)前面执行的,判定分区表数据的一个特定的标记数据部分是否任符合一种预定的条件的步骤。
17、权利要求16的方法,其中的预定条件为标记数据具有一个特定的定义值。
18、权利要求11的方法,还包括下述步骤:
用计算出的头、扇区/道、及柱面参数初始化盘驱动器;以及
将计算出的头,扇区/道及柱面参数存储在一个非易失性存储器中供以后使用。
19、一种自动检测计算机系统中的盘驱动器的类型的方法,该方法包括操作该系统执行下述步骤:
(a)从盘驱动器的分区表读取分区表数据;
(b)判定分区表数据的一个特定的标记数据部分是否符合一种预定的条件;以及
(c)如果是,便在分区表数据的基础上计算盘驱动器的头参数及扇区/道参数,并且至少部分地在分区表数据的基础上计算盘驱动器的柱面参数;
借助所述计算出的头参数,扇区/道参数及柱面参数识别盘驱动器的类型。
20、一种自动检测计算机系统中的盘驱动器的类型的方法,该方法包括下述步骤:
(a)发送一条ID(识别驱动器)命令到盘驱动器;
(b)从盘驱动器的分区表中读取分区表数据,分区表数据中包括一个标记数据部分;
(c)判定分区表数据的标记数据部分是否符合一种预定的条件;
(d1)如果标记数据符合预定的条件且盘驱动器响应ID命令,则
在分区表数据的基础上,计算盘驱动器的头参数及扇区/道参数,
利用盘驱动器响应ID命令所发送的信息及分区表数据,计算盘驱动器的柱面参数,以及
用计算出的头、扇区/道、及柱面参数初始化盘驱动器;
(d2)如果标记数据符合预定的条件但盘驱动器不响应ID命令,则
单独在分区表数据的基础上,计算盘驱动器的头参数、扇区/道参数、及柱面参数,以及
用计算出的头、扇区/道、及柱面参数初始化盘驱动器;以及
(d3)如果标记数据不符合预定条件但盘驱动器响应ID命令,则用盘驱动器响应ID命令发送的信息初始化盘驱动器。
21、权利要求20的方法,其中的分区表数据包含:
确认分区表的标记数据;
至少一个分区的起始扇区地址与结束扇区地址;
至少一个分区的起始头地址与结束头地址;
至少一个分区的起始柱面地址与结束柱面地址;
至少一个分区的起始地址;以及
至少一个分区的总扇区数。
22、权利要求20的方法,其中的步骤(b)是在步骤(a)前面执行的。
23、权利要求20的方法,其中步骤(b)是在步骤(a)后面执行的。
24、权利要求20的方法,其中的条件步骤(d1)中的计算柱面参数的步骤包括:
在盘驱动器响应ID命令所发送的信息的基础上,确定盘驱动器的总空间;以及
用头参数与扇区/道参数除盘驱动器的总空间而计算出柱面参数。
25、权利要求20的方法,其中的条件步骤(d2)中计算柱面参数的步骤包括确定分区表中的分区的最大结束柱面地址。
26、权利要求20的方法,其中的预定条件为标记数据具有一个特定的定义值。
27、一种计算机系统,包括:
一个处理器;
一个盘驱动器;
一个存储一个程序的存储器,当处理器执行该程序时,令计算机系统执行下述步骤:
(a)从盘驱动器的分区表中读取分区表数据;以及
(b)在分区表数据的基础上,计算盘驱动器的头参数及扇区/道参数;以及
(c)计算盘驱动器的柱面参数;
借助计算出的头、扇区/道、及柱面参数、识别盘驱动器的类型。
28、权利要求27的计算机系统,其中的柱面参数是用下述步骤计算的:
确定盘驱动器的扇区总数;以及
用头参数及用扇区/道参数除盘驱动器的总空间。
29、权利要求27的计算机系统,其中:
分区表数据中包括盘驱动器上的各分区的结束柱面地址;以及
柱面参数是通过从分区表数据中选择最大的结束柱面地址而计算的。
30、权利要求27的计算机系统,其中的柱面参数是用下述步骤确定的:
(c)发送一条ID(识别驱动器)命令到盘驱动器;以及
(d1)如果接收到对ID命令的应答,便利用盘驱动器响应ID命令发送的信息计算盘驱动器的柱面参数;
(d2)否则,如果未收到对ID命令的应答,便单独用分区表数据确定柱面参数。
31、权利要求27的计算机系统,其中的分区表数据包含:
确认分区表的标记数据;
至少一个分区的起始扇区地址及结束扇区地址;
至少一个分区的起始头地址及结束头地址;
至少一个分区的起始柱面地址及结束柱面地址;
至少一个分区的起始地址;以及
至少一个分区的总扇区数。
32、权利要求27的计算机系统,其中的头与扇区/道参数是通过将起始与结逻辑块地址的表达式与显式扇区地址信息互相关联而计算出的。
CN96102423A 1995-02-17 1996-02-15 自动检测计算机系统中的盘类型的方法与装置 Expired - Lifetime CN1060576C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US563,760 1983-12-21
US39085295A 1995-02-17 1995-02-17
US390,852 1995-02-17
US99695P 1995-07-10 1995-07-10
US000,996 1995-07-10
US08/563,760 US5721952A (en) 1995-02-17 1995-11-29 Method and apparatus for automatic detection of disk type in a computer system

Publications (2)

Publication Number Publication Date
CN1135618A true CN1135618A (zh) 1996-11-13
CN1060576C CN1060576C (zh) 2001-01-10

Family

ID=27356790

Family Applications (1)

Application Number Title Priority Date Filing Date
CN96102423A Expired - Lifetime CN1060576C (zh) 1995-02-17 1996-02-15 自动检测计算机系统中的盘类型的方法与装置

Country Status (1)

Country Link
CN (1) CN1060576C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100419694C (zh) * 2005-11-04 2008-09-17 鸿富锦精密工业(深圳)有限公司 检测硬盘安装位置正确性的系统及方法
CN101271420B (zh) * 2007-03-20 2010-05-19 联想(北京)有限公司 一种识别硬盘安装有操作系统的装置
CN107766196A (zh) * 2016-08-19 2018-03-06 阿里巴巴集团控股有限公司 对计算设备进行启动检查的方法与设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5422890A (en) * 1991-11-19 1995-06-06 Compaq Computer Corporation Method for dynamically measuring computer disk error rates
US5379342A (en) * 1993-01-07 1995-01-03 International Business Machines Corp. Method and apparatus for providing enhanced data verification in a computer system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100419694C (zh) * 2005-11-04 2008-09-17 鸿富锦精密工业(深圳)有限公司 检测硬盘安装位置正确性的系统及方法
CN101271420B (zh) * 2007-03-20 2010-05-19 联想(北京)有限公司 一种识别硬盘安装有操作系统的装置
CN107766196A (zh) * 2016-08-19 2018-03-06 阿里巴巴集团控股有限公司 对计算设备进行启动检查的方法与设备
CN107766196B (zh) * 2016-08-19 2021-01-29 阿里巴巴集团控股有限公司 对计算设备进行启动检查的方法与设备

Also Published As

Publication number Publication date
CN1060576C (zh) 2001-01-10

Similar Documents

Publication Publication Date Title
JP3256100B2 (ja) プロテクト・モード・デバイス・ドライバを供給する方法及び装置
EP1378830B1 (en) Operating system selector and data storage drive
US6243789B1 (en) Method and apparatus for executing a program stored in nonvolatile memory
CN1273891C (zh) 最小单位地更新多个文件的方法
US7519806B2 (en) Virtual partition for recording and restoring computer data files
CN101421701B (zh) 用于引导非易失性存储器的方法、设备和系统
US9099187B2 (en) Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device
US6477616B1 (en) Storage device, storage system, memory management method, recording medium, and computer data signal
US8205063B2 (en) Dynamic mapping of logical ranges to write blocks
KR101121641B1 (ko) 시스템 동작 제어 장치 및 방법
US6457112B2 (en) Memory block allocation system and method
US20070016721A1 (en) Flash file system power-up by using sequential sector allocation
KR100907722B1 (ko) 메모리 단편화를 감소시키는 방법, 제조물 및 컴퓨터시스템
US8688538B2 (en) Automating the process of purchasing a memory upgrade for a computer system
EP1843331B1 (en) Information storage apparatus that writes data in unrecorded regions of a recording medium
CN1540672A (zh) 用于非易失存储系统的电源管理数据块
CN1698032A (zh) 从非线性存储器引导
US5978808A (en) Virtual small block file manager for flash memory array
CN101030146A (zh) 一种实现固件更新的方法和系统
US20100287330A1 (en) Method for writing data into flash memory
JP2003005921A (ja) ホスト保護データの複製方法
US7284085B2 (en) Managing configuration data in a flash configuration space in flash memory within a host interface port
WO2006040758A2 (en) Adaptive booting from mass storage device
US5721952A (en) Method and apparatus for automatic detection of disk type in a computer system
CN113253912B (zh) 存储器系统及其操作方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: HONHQI CO., LTD.

Free format text: FORMER OWNER: ACER COMPUTER CO., LTD.

Owner name: WEICHUANG ZITONG CO., LTD.

Effective date: 20020722

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20020722

Address after: Taiwan County, Taipei, China

Co-patentee after: Weichuang Zitong Co., Ltd.

Patentee after: Acer Inc

Address before: Taiwan, China

Patentee before: Acer Computer Co., Ltd.

CX01 Expiry of patent term

Granted publication date: 20010110

EXPY Termination of patent right or utility model