三年前的BIOS笔记(一)

2014-01-13 2,872 0

BIOS简介:BIOS(Basic Input and Output System,基本输入/输出系统)是电脑中最基础、最重要的程序之一。它是不需要电源便可存放程序的记忆体,通常固化在只读存储器(ReadOnly Memory,ROM)中。所占的内存地址不会被其他程序干扰,所以又称为ROM BIOS。它为电脑提供最低级、最直接的硬件控制,并且电脑的原始操作都是依照固化在BIOS里的程序来完成的(程序大小通常为128K或者256K)。可以说,BIOS是硬件与软件程序之间的一个“转换器”或者说是接口,虽然它本身也只是一个程序。负责解决硬件的即时需求,并按软件对硬件的操作要求具体执行,任何操作系统都建立在其基础上。BIOS虽然是一组程序,但它与常见的存放在磁盘中的程序又有很大的不同。主要有两个区别,一个读取的先后顺序不同:对个人电脑而言,在软盘、光盘或硬盘上的程序必须先读到存储器中才能运行,但BIOS的运行顺序却在这些程序之前,既是必须先执行BIOS才能使软盘、光盘或硬盘上的程序正常工作。因此,不能把BIOS放在这些存储介质中,而应该直接放在存储器中。但是这种存储器也不能是常说的RAM(R-ead And Write Memory,随机存取存储器)。因为RAM中的内容在断电后会全部消失,下次再开机时就找不到BIOS了,因此,BIOS必须存放在ROM中。第二是所需类型不同:BIOS既是软件,因为它是固化在集成电路内部的程序代码,因此可属于硬件的一部分,所以,有时人们就称它为Firmware(“固件”)。另外,存放BIOS的ROM占用的地址也是固定的,也就是说该地址不能被其他的程序占用,以免每次开机都要寻找BIOS程序的起始点。正是由于BIOS和ROM这种密不可分的关系,人们将它们合称为“BIOS ROM”或“ROM BIOS”。通常所说的BIOS芯片实际上指的是储存BIOS的ROM芯片,ROM仅仅只是Firmware的载体。

BIOS分类:不同BIOS的作用或功能有所不同,但大致可分两类,即普通BIOS和扩充BIOS。普通BIOS主要是指应用在主板上的ROM BIOS,可以将它分为3类,支持DOS(由IBMBIOS、CCBIOS等支持)的BIOS、支持PnP(即插即用设备)的BIOS和支持网络应用的BIOS。扩充BIOS是指除普通BIOS以为的其他BIOS,它可以是Video BIOS和HDD BIOS两种。Video BIOS即显卡BIOS/视频BIOS,被应用于显卡/视频卡上。通过这种BIOS可完成显卡与主板间的信息传递。HDD BIOS即硬盘BIOS,负责硬盘的启动和数据的存取,灵活地使用HDD BIOS可以达到维护硬盘的目的。

BIOS作用:启动电脑后,电脑即从BIOS芯片中读取出指令代码进行系统硬件的自检。包含BIOS程序完整性检验、RAM可读写性检验、进行CPU、DMA控制权等部件测试。对PnP(Plug and Play,即插即用)设备进行检测和确认,然后依次从各个PnP部件上读出相应部件正常工作所需的系统资源数据等配置信息。BIOS中的PnP模块试图建立不冲突的资源分配表,使得所有的部件都能正常地工作。完成之后,系统要将所有的配置数据即ESCD(Extended System Config Data)写入BIOS中。所有这些检测完成后,BIOS将系统控制权移交给系统的引导模块,由它完成操作系统的装入。电脑启动时依照BIOS的内容主要完成以下几项任务:自检及初始化、程序服务、设定中断。第一个任务是自检及初始化,该工作是负责电脑的启动,可将其分为3个部分:第一步,用于电脑刚接通电源时对硬件部分的检测,也叫加电自检(POST,Power On Self Test),是电脑接通电源后系统进行的一个自我检查的例行程序,用于检查电脑各硬件能否正常工作及参数设置是否正确,该部分可以对系统的几乎所有的硬件进行检测,如果发现故障,将以代码和响声来报告,但因为该程序是用汇编语言编写的,所以不可能使用文字显示其故障情况;第二步,初始化,主要负责创建中断向量、设置寄存器、对一些外部设备进行初始化和检测等,其中很重要的一部分是BIOS设置,主要是对硬件设置的一些参数,电脑启动时会读取这些参数,并和实际硬件设置进行比较,如不符合,会影响系统的启动,在设置过程中,如果发现CMOS RAM中内容有误,可以通过调用BIOS的缺省配置来重新设置,当前机器中的各种参数,要达到这个目的需要将BIOS的缺省配置重新装入到CMOS RAM中;第三步,引导程序,主要负责引导DOS或其他操作系统。BIOS先从软盘或硬盘的开始扇区读取引导记录,若未找到,则会在显示器上显示没有引导设备,若找到引导记录会把电脑的控制权转给引导记录,由引导记录把操作系统装入电脑,在电脑启动成功后,完成自检及初始化操作。

严重故障停机,不会给出任何提示或信号,非严重的故障则给出屏幕提示或声音报警信号,等待用户处理。若未发现问题,只需将硬件设置为备用状态,然后启动操作系统,把对电脑的控制权交给用户即可。第二个任务是程序服务,程序服务处理程序主要是为应用程序和操作系统服务,这些服务主要与输入/输出设备有关,为了完成这些操作,BIOS必须直接与电脑的I/O设备打交道,并通过端口发出命令,向各种外部设备传送数据,从它们那儿接收数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC机硬件的需求,因此这两部分分别为软件和硬件服务,组合到一起,使电脑系统正常运行。第三个任务是设定中断,BIOS的服务功能是通过调用中断服务程序来实现的,这些服务分为很多组,每组有一个专门的中断。每一组又根据具体功能细分为不同的服务号。应用程序需要使用哪些外设、进行什么操作只需在程序中用相应的指令说明即可,无需直接控制。开机时,BIOS会告诉CPU各硬件设备的中断号。因此,它是电脑系统软、硬件之间的一个可编程接口,用于软件功能与电脑硬件实现的衔接,当用户发出使用某个设备的指令后,CPU就根据中断号使用相应的硬件完成工作,再根据中断号跳回原来的工作。综上所述,BIOS是电脑启动和操作的基础,若电脑系统没有BIOS,所有的硬件设备都不能正常使用,因此BIOS的管理功能决定了电脑系统的性能。BIOS对电脑性能影响主要表现在:若BIOS设置不当,安装操作系统时,会出现安装不能彻底完成、硬件设备出现冲突,甚至根本无法使用某些设备等问题,若BIOS中的有关设置不当,在需要为电脑添加新设备时,会出现添加设备与其他设备冲突,若该主板上BIOS因为版本过低根本无法识别时,系统将不支持该设备的使用,不能进入操作系统,检测不到硬件,硬件不能正常工作,甚至“点不亮”。进行BIOS或CMOS设置是由用户根据电脑的实际情况而人工完成的一项十分重要的系统初始化工作。初始化工作:一是新购电脑的时候,即使带PnP功能的系统也只能识别一部分微机外围设备,而对软硬盘参数、当前日期、时钟等基本资料都必须由操作人员进行设置,因此新购买的电脑必须通过进行CMOS参数设置,以告诉系统整个电脑的基本配置情况;二是新增设备的时候,由于系统不一定能认识新增的设备,所以必须通过CMOS设置来告诉它,另外,一旦新增设备与原有设备发生了IRQ、DMA冲突,也往往需要通过BIOS设置来进行排除;三是CMOS数据意外丢失,在系统后备电池失效、病毒破坏CMOS数据程序、意外清除了CMOS参数等情况下,会造成CMOS数据丢失;四是系统优化,对于内存读写等待时间、硬盘数据传输模式、内/外Cache的使用、节能保护、电源管理、开机启动顺序等参数。BIOS中预定的设置对系统而言并不一定就是最优的,此时往往需要经过多次试验才能找到系统优化的最佳组合。

bios

相关文章

你觉得Linux系统需要安装杀毒软件吗?
了解文件大小:bit、byte、KB、MB、GB、TB、PB、EB、ZB、YB……
在 Linux 中查看 IP 地址
Linux 系统内 find 命令的使用方法
详解:Linux网络管理基础知识
适用于 Linux 系统的十款优秀杀毒软件

发布评论