BIOS 全解
BIOS英文Basic Input/output System的缩写,意思是“基本输入/输出系统”。是电脑中最基础的而又最重要的程序。我们把这一段程序存放在一个不需要电源的记忆体(芯片)中,这就是平时所说的BIOS。它为计算机提供最低级的、最直接的硬件控制,计算机的原始操作都是依照固化在BIOS里的内容来完成的。准确地说,BIOS是硬件与软件程序之间的一个“转换器”或者说是接口(虽然它本身也只是一个程序),负责解决硬件的即时需求,并按软件对硬件的操作要求具体执行。计算机用户在使用计算机的过程中,都会接触到BIOS,它在计算机系统中起着非常重要的作用。
以前,我们只是从书本上了解到它是操作系统和硬件之间连接的桥梁,负责在电脑开启时检测、初始化系统设备、装入操作系统并调度操作系统向硬件发出的指令,是一个高深莫测的系统模块。在486以及以前的时代,BIOS总是默默地躲在操作系统的背后,不为人重视。直到计算机进入586时代之后,大量主板开始采用Flash ROM这一全新的芯片做系统BIOS,少数电脑DIYer才在刷新BIOS的过程中第一次对它有了一个比较直观的认识。而当台湾人陈盈豪将CIH病毒及其毁灭性的破坏能力“无私奉献”给我们后,几乎所有的计算机使用者都对BIOS的功能和其重要性有了一个无法磨灭的认识。只可惜,这个认识太惨痛,太“血腥”了。现在,到了该全面了解BIOS的时候了。谈到BIOS,不能不先说说Firmeare(固件)和ROM(Read Only Memory,只读存储器)芯片。Firmeare是软件,但与普通的软件完全不同,它是固化在集成电路内部的程序代码,集成电路的功能就是由这些程序决定的。ROM是一种可在一次性写入Firmware(这就是“固化”过程)后,多次读取的集成电路块。由此可见,ROM仅仅只是Firmware的载体,而我们通常所说的BIOS正是固化了系统主板Firmware的ROM芯片。
最初的主板BIOS芯片采用的是ROM,它的Firmware代码是在芯片生产过程中固化的,并且永远无法修改。后来,电脑中又采用了一种可重复写入的ROM作为系统BIOS芯片,这就是EPROM(Erasable Programmable ROM,可擦除可编程ROM)。EPROM有两种,左边的一种不带窗口,只能写一次,如写错了就报废。一般显卡、MODEM上的ROM上多采用这种EPROM,它的价格相对较低。右边一种是带窗口的EPROM芯片,这种EPROM可以用紫外线来擦除原有的Firmware,并用专用的读写器更新它的Firmware。但这一过程需要特殊的器材,技术要求也比较专业,因此操作方法鲜为人知。
现在的主板BIOS几乎都采用Flash ROM(快闪ROM),它其实就是一种可快速读写的EEPROM(Electrically Erasable Programmable ROM),顾名思义,它是一种在一定的电压、电流条件下,可对其Firmware进行更新的集成电路块。兼容机和国产品牌机BIOS大多采用AWARD或AMI公司的Firmware,国外的品牌电脑的BIOS则几乎全部采用Phoenix公司的Firmware。不管BIOS软件代码有何区别,它们的硬件部分(Flash ROM芯片)是大致相同的,BIOS芯片大多位于主板的ISA和PCI插槽交汇处的上方(也有部分主板将BIOS芯片安排在主板的左下方位置),芯片表面一般贴有BIOS Firmware提供商的激光防伪标贴。一般不是直接焊在主板上,而是插在一个专用的插槽上。Flash ROM芯片有两种不同的芯片封装形式,前面我们讲到的是采用长方形封装形式的芯片,另外一种接近正方形的、面积更小巧的封装形式的Flash ROM芯片,这种小型的封装形式可以减少占用主板空间,从而可提高主板的集成度、缩小主板的尺寸。但同时,它又因为具有与众不同的封装形式,如果一旦升级BIOS失败,或者BIOS被病毒破坏,将很难修复。这一点后面将谈到。
有很多芯片厂商都在生产Flash ROM芯片,我们在主板上常见的有Winbond、SST、Intel、MXIC、ATMEL等品牌的产品,这些厂商又提供了很多种型号的芯片,型号不同,芯片的存储容量和读写电压也不同。Flash ROM芯片大致分为28、29两大系列28系列的Flash ROM芯片是双电压设计的,它可以在5V的电压的条件下读取,而写入则必须提供12V的电压。采用这种芯片的主板在升级时,会给普通的电脑用户造成不小的麻烦---要开机箱、改跳线设置,太麻烦了。29系列的Flash ROM芯片则相对简单,由于其采用单电压设计,读写都采用5V电压,因此只动用软件就可以完成读写Firmware的操作。在主板说明书中,主板厂商还列出了Flash ROM芯片的容量,其中有1M和2M两种容量的型号。这里,“M”的单位是指“Mbit”,1M的Flash ROM芯片实际能存储的容量为1Mbit=8*128Kbyte(1Byte=8bit),2M的芯片为256K。以上这些技术参数都可以通过芯片正面的编号来区分,这个编号是严格遵循集成电路编号规则来标注的,如:台湾Winbond(华邦)公司的Flash ROM芯片,芯片编号为“29C020”。前两位“29”表明这是一块5V电压读写的Flash ROM芯片,后面的“020”代表容量为2Mbit。如Intel生产的Flash ROM芯片,它的芯片编号为“28F010”,由此可知该芯片是5V读、12V写,容量为1Mbit的Flash ROM芯片。
Flash ROM芯片最诱人的特性,是它的Firmware更新操作可以只使用计算机软件来完成。这一特性和运用,使原本深藏在计算机内部不为人知的BIOS,一下子“暴露”在了我们面前,并为我们免费获得对新硬件的支持、修正BIOS代码错误成为可能。当然,正是由于这个提供给我们方便的特性,也为CIH病毒提供了便利,使其能对采用单电压读写的Flash ROM芯片进行恶意的破坏。但是不用担心,CIH病毒破坏的只是固化在芯片中的Firmware,它并不能对Flash ROM芯片本身造成物理损坏。
以上我们谈的都是系统主板的BIOS。现在,越来越多的电脑部伯开始采用Flash ROM 来固化硬件的底层控制代码,许多厂商也将这些控制代码和承载这些代码的芯片称之为BIOS。这些可以更新“BIOS“的硬件包括显示卡、MODEM、网卡、CDR驱动器、数字相机甚至一些硬盘等等。这些电脑板卡或周边调和设备使用的Flash ROM芯片,也与主板BIOS芯片大同小异。
BIOS的Firmware代码决定了系统对硬件支持、协调的能力。现在新硬件层出不穷,BIOS不可能预先具备对如此繁多的硬件的支持,这依赖于对BIOS Firmware的更新来完善。比如使B X 主板“认识”PIII、让i740显卡在非Intel芯片组的主板上正常工作等,都需要升级主板BIOS才能实现。另外,任何一种硬件都有可能因设计上的不足或BUG(错误),而和系统发生各种各样的冲突甚至使电脑不能稳定工作。这些问题也可以通过升级BIOS来解决,而且这时就有两个途径来解决问题,一是升级主板 BIOS,一是升级具体硬件的BIOS(如果它的BIOS具有升级能力的话)。
一、计算机启动时依照BIOS的内容主要完成以下几个功能:
1.自检及初始化
开机后BIOS最先被启动,然后它会对电脑的硬件设备进行完全彻底的检验和测试。如果发现问题,分两种情况处理:严重故障停机,不给出任何提示或信号;非严重故障则给出屏幕提示或声音报警信号,等待用户处理。如果未发现问题,则将硬件设置为备用状态,然后启动操作系统,把对电脑的控制权交给用户。
2.程序服务
BIOS直接与计算机的I/O(Input/Output,即输入/输出)设备打交道,通过特定的数据端口发出命令,传送或接收各种外部设备的数据,实现软件程序对硬件的直接操作。
3.设定中断
开机时,BIOS会告诉CPU各硬件设备的中断号,当用户发出使用某个设备的指令后,CPU就根据中断号使用相应的硬件完成工作,再根据中断号跳回原来的工作。
下面我们就逐个介绍一下各部分功能:
(一)自检及初始化
这部分负责启动计算机,具体有三个部分,第一个部分是用于计算机刚接通电源时对硬件部分的检测,也叫做加电自 检(POST),功能是检查计算机是否良好,例如内存有无故障等。第二个部分是初始化,包括创建中断向量、设置寄存器、对一些外部设备进行初始化和检测等,其中很重要的一部分是BIOS设置,主要是对硬件设置的一些参数,当计算机启动时会读取这些参数,并和实际硬件设置进行比较,如果不符合,会影响系统的启动。
最后一个部分是引导程序,功能是引导DOS或其他操作系统。BIOS先从软盘或硬盘的开始扇区读取引导记录,如果没有找到,则会在显示器上显示没有引导设备,如果找到引导记录会把计算机的控制权转给引导记录,由引导记录把操作系统装入计算机,在计算机启动成功后,BIOS的这部分任务就完成了。 (二)程序服务处理和硬件中断处理
这两部分是两个独立的内容,但在使用上密切相关。
程序服务处理程序主要是为应用程序和操作系统服务,这些服务主要与输入�输出设备有关,例如读磁盘、文件输出到打印机等。为了完成这些操作,BIOS必须直接与计算机的I/O设备打交道,它通过端口发出命令,向各种外部设备传送数据以及从它们那儿接收数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC机硬件的需求,因此这两部分分别为软件和硬件服务,组合到一起,使计算机系统正常运行。
BIOS的服务功能是通过调用中断服务程序来实现的,这些服务分为很多组,每组有一个专门的中断。例如视频服务,中断号为10H;屏幕打印,中断号为05H;磁盘及串行口服务,中断14H等。每一组又根据具体功能细分为不同的服务号。应用程序需要使用哪些外设、进行什么操作只需要在程序中用相应的指令说明即可,无需直接控制。
二、BIOS的功能
BIOS ROM 芯片不但可以在主板上看到,而且BIOS管理功能如何在很大程度上决定了主板性能是否优越。BIOS管理功能包括:
1.BIOS中断服务程序实质上是微机系统中软件与硬件之间的一个可编程接口,主要用于程序软件功能与微机硬件之间 接。例如,WINDOWS98对软驱,光驱,硬盘等管理,中断的设置等服务、程序。
2. BIOS系统设置程序:微机部件配置记录是放在一块可写的CMOS RAM芯片中的,主要保存着系统的基本情况,CPU特性,软硬盘驱动器等部件的信息。在BIOS ROM 芯片中装有“系统设置程序”,主要来设置CMOS RAM中的各项参数。这个程序在开机时按某个键就可进入设置状态,并提供良好的界面。
3.POST上电自检:微机接通电源后,系统首先由(Power On Self Test,上电自检)程序来对内部各个设备进行检查。通常完整的POST自检将包括对CPU,640K基本内存,1M以上的扩展内存,ROM,主板,CMOS存储器,串并口,显示卡,软硬盘子系统及键盘进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。
4. BIOS系统启动自举程序:系统完成POST自检后,ROM BIOS就首先按照系统CMOS设置中保存的启动顺序搜索软硬盘驱动器及CD-ROM,网络服务器等有效地启动驱动器,读入操作系统引导记录,然后将系统控制权交给引导记录,并由引导记录来完成系统的顺序启动。
三、常见的BIOS IC主要有以下几种
FLASH ROM: 可加大电压擦除和写入 (29XXX、39XXX)
EEPROM : 可加大电压擦除和写入 (28XXX)
EPROM: 需要用紫外线照射后才可清除 (IC上有一个透明孔的27XXX)
PROM: 只可用程序写一次
MARK PROM:出厂时内容已固定,无法擦除
关于BIOS ID
现在许多玩家都在度图升级自己的BIOS,因为通过升级可以解决老版本中的BUG也能支持更多新硬件。但升级BIOS是一件较危险的事,特别需要认准该BIOS是哪个厂家提供的,否则用错了可能导致机器无法启动。
鉴别BIOS最准确的办法就是识别BIOS ID,也就是说,只要BIOS ID相同的主板,其BIOS程序是通用的。这是介绍一下如何记录您的BIOS ID,并从中发现主板的有关信息(以AWARD公司的BIOS为例)。
1,打开计算机电源;
2,在屏幕的左上角将出现Award Modular BIOS(这并不是系统BIOS的版本号),在内存检测时按下Pause键;3查看屏幕底端,有一系列数字与字母组成的标志,比如:10/16/97-i430TX-ALI513x-2A59IF3BC-00其中最重要的标号是“2A59IF3BC”。“2A59I”是主板所采用的芯片组类型编码而其中第6第7位字符尤为重要,它是硬件厂商的代码信息,比如上面的符号序列中的“F3”,它代表“FYI(福扬)”系列主板。另外,“ALI513x”指主板的I/O芯片是采用ALI公司的513x系列。有些电脑爱好者以为同是TX芯片组的BIOS就可以拿来升级自己的TX主板,结果导致键盘不能用或找不到串并口,基原因就是因为不同厂家的TX主板采用了不同的I/O芯片。
BIOS的设置 -
内猫好像要占用一个com口。一般机器有4个com口,但最多只有两个引出在外面。