firmware(固件)是固化在硬件中的软件,存储着计算机系统中硬件设备最基本的参数,为系统提供最底层、最直接的硬件控制。在开机过程中,首先执行固件来完成对硬件设备的初始化,使操作系统能够正确识别硬件并为其他软件的运行提供最基本的依据。 硬盘固件的作用
正常情况下,硬盘在接通电源之后,都要进行“初始化”过程,这个过程也可以称为“自检”,这时,硬盘都会发出一阵自检的声音,这些声音长短和规律视不同品牌而各不一样,但同型号的正常硬盘的自检声音是一样的。这些自检的声音是由于硬盘内部的磁头寻道及归位动作而发出的,为什么硬盘刚通电就需要执行这些动作呢?简单地说,是硬盘在读取记录在盘片中的初始化参数,这些参数就是硬盘的“固件”。 硬盘有一系列基本参数,包括:品牌、型号、容量、柱面数、磁头数、每磁道扇区数、系列号、缓存大小、转速、S.M.A.R.T值等。其中一部分参数就写在硬盘的标签上,有些则要通过软件才能测出来。这些参数仅仅是初始化参数的一小部分,盘片中记录的初始化参数有数十甚至数百个,硬盘的CPU在通电后自动寻找BIOS中的启动程序,然后根据启动程序的要求,依次在盘片中指定的位置读取相应的参数。如果某一项重要参数找不到或出错,启动程序无法完成启动过程,硬盘就进入保护模式。在保护模式下,用户可能看不到硬盘的型号与容量等参数,或者无法进入任何读写操作。近来有些系列的硬盘就是因为固件出错而出现类似的通病,如:FUJITSU MPG系列自检声正常却不认盘,MAXTOR美钻系列认不出正确型号及自检后停转,WD BB 、EB系列能正常认盘却拒绝读写操作等。硬盘的这些固件参数一般存放在普通用户访问不到的位置,有些是在物理零磁道以前,也就是常说的“负磁道”的位置。参数以模块的形式表现出来,可能每个参数占用一个模块,也可能几个参数占用同一模块。模块大小不一样,有些模块才一个字节,有些则达到几十K字节,这些参数并不是连续存放的,而是各有各的固定位置。PC-3000能读出硬盘内部的固件信息,分析每个固件所处的模块是否处于正常状态,并且可以修正这些参数,重新写回盘片中指定的位置。这样,PC-3000就可以把一些因为固件参数错乱而无法正常使用的硬盘“修复”到正常状态。