跳转至

启动链、BIOS 与固件设置

第二章:计算机的启动及休息

第一节:计算机启动过程

计算机启动过程总体分为两个过程,即硬件启动过程和操作系统启动过程。本节中我们选用 Windows 10(BIOS) 操作系统的启动过程进行介绍。

一、 硬件启动过程

以下是上述各步骤的详细介绍,我们了解即可。

  1. 加电按下电源开关后,电源就开始向主板和其它设备供电,此时电压还不稳定,主板上的控制芯片组会向 CPU 发出并保持一个 RESET(重置)信号,让 CPU 初始化。当电源开始稳定供电后,芯片组便撤去 RESET 信号(如果是按下 Reset 按钮来重启,那么松开该按钮时芯片组就会撤去 RESET 信号)。然后,CPU 马上就从地址 FFFF0H 处开始执行指令(这是 BIOS 的起始地址),但放在这里的只是一条跳转指令,跳到系统真正的 BIOS 启动代码处,由 BIOS 的代码进行下一步的 POST 自检。

  2. BIOS 进行 postPOST 是 Power On Self Test 的缩写,即加电自检。它是检查一些关键设备是否存在和能否正常工作,如内存和显卡等。如果发现错误,则通过喇叭发声来报告错误情况,声音长短和次数代表了错误类型。注:由于 POST 的检测过程在显卡初始化之前,因此 POST 自检过程发现的错误是无在屏幕上显示出来的。

  3. BIOS 检测硬件的各种信息

原手册传统 BIOS 启动流程

BIOS 进行加电自检后,就开始检测计算机上硬件设备的各种信息,如设备类型、工作频率、芯片组型号、出厂厂商等。这阶段的硬件检测顺序是:显卡、CPU、内存、其它标准硬件设备(如硬盘、光驱、软驱、外设等)。

  1. BIOS 更新 ESCD按下来系统 BIOS 将更新 ESCD(Extended System Configuration Data,扩展系统配置数据)。ESCD 是系统 BIOS 用来与操作系统交换硬件配置信息的数据,这些数据被存放在 CMOS 之中。通常 ESCD 数据只在系统硬件配置发生改变后才会进行更新,因此不是每次启动都能看到"Update ESCD... Success"这样的信息。

  2. 从计算机外存储器启动操作系统ESCD 数据更新完毕后,BIOS 即根据用户设定的启动顺序来启动,如从按顺序从软盘、硬盘、光驱找到启动盘,并从中启动操作系统。

注:

1) 如果是进行热启动,那么 POST 过程将被跳过,并且 CPU 和内存的信息检测也不会再进行。

2) 如果要对 BIOS 进行设置,那么在计算机屏幕出现设置提示时按下相应的键(一般为 Delete 或 Esc 键),即可进入 BIOS 进行设置。PS:热启动即计算机在 DOS 状态下运行时,左手按住“Ctrl”和“Alt”不放开,右手按下“Del”,然后同时放开,计算机会重新启动,这种启动方式是在不断电状态下进行计算机的程序启动,但在 WINDOWS 窗口下不能进行如此方式的启动

二、 操作系统启动过程

Windows10 虽然是微软 Windows 操作系统的最新版本,但是其启动过程与Windows Vsta/7/8 类似。下面以在基于 BIOS 的计算机中启动 Windows10 操作系统为例,介绍了从按下计算机电源按钮到启动并登录 Windows10 操作系统的整个过程中所发生的操作,具体如下。

  1. 通电自检:按下计算机电源按钮后,首先进行通电自检(POST, Power On Self Test),由 BlOS检测和识别硬件并完成硬件的基本配置。然后查找第一启动设备,接着从该设备读取并运行主引导记录(MBR, Master Boot record),之后将控制权交给 MBR。

  2. 查找分区表:MBR 查找其所在硬盘的硬盘分区表,找到标记为“活动”的主分区。然后在该分区的根目录中找到并运行操作系统的加载程序(文件名为 Bootmgr),即 Windows 启动管理器,之后将控制权交给 Windows 启动管理器。

  3. 读取 BCD:Window 启动管理器读取启动配置数据(BCD, Boot Configuration Data)存储中的内容以决定操作系统的启动方式。

  4. 如果计算机中只安装了一个操作系统,或将操作系统列表的显示时间设置为0,那么将不会显示系统启动列表, Windows 启动管理器会直接运行Windows 启动加载器(Windows Boot Loader,文件名为 Winload. exe)。

原手册插图(PDF 第 58 页)

  • 如果计算机中同时安装了多个操作系统,Windows 启动管理器会根据 BCD 存储中的内容创建并显示一个系统启动列表,用户可以从中选择要启动的操作系统。

  • 如果是从休眠状态恢复计算机,那么 Windows 启动管理器将会运行Windows 恢复加载器(文件名为 Winresume.exe)。

  • 运行 Windows 启动加载器Windows 启动管理器运行 Windows 启动加载器,启动加载器使用固件接口的启动服务完成操作系统的启动工作并加载操作系统及其相关数据。

  • 加载操作系统内核 Ntoskrnl.exe 和硬件抽象层 HAL(文件名为 Had)。

  • 加载注册表中的 HKEY LOCAL MACHINE SYSTEM 子键。

  • 加载注册表中的 HKEY- LOCAL MACHINE Systemservices 子键中存储的硬件设备驱动程序。

  • 启用内存分页。

  • 启动设备驱动程序加载完所需数据后, Windows 启动加载器将控制权交给操作系统内核。系统内核和HAL 开始初始化 Windows 操作系统并处理位于注册表中的 HKEY LOCAL MACHINESYSTEM Curentcontrolse 子键中的配置信息,然后启动设备驱动程序和系统服务。

  • 启动会话管理器内核启动会话管理器(文件名为 Smss.exe),然后执行以下操作。

  • 创建系统环境变量并对系统环境进行初始化。

  • 启动 Wn32 子系统(文件名为 Csrss.exe)将文本显示模式切换为图形显示模式。

  • 启动 Windows 登录管理器(文件名为 Winlogon.exe),然后启动服务控制管理器(文件名为 Services.eXe)和本地安全机构(文件名为 Lsass. exe)并等待用户登录。

  • 创建虚拟内存页面文件。

  • 对一些必要的文件进行重命名。

  • 密码登陆在使用用户名和密码进行登录后,登录用户界面和默认凭据提供程序会将用户名和密码等信息传递给本地安全机构以进行身份验证。验证通过后 Windows 登录管理器会运行 Userinit.exe 和 Windows 外壳, Userinit. ex 会创建用户环境变量以便初始化用户环境,还会运行所有需要自动启动的 Windows 服务。最后完成系统登录并显示Windows 桌面。注:当使用安全模式等非常规模式启动系统时实际上只是临时修改了系统的启动方式,而并没有永久性地修改 BCD 存储中的内容。此外,用户可以通过编辑 BCD 存储中的内容来控制操作系统的启动方式。BCD 存储包含在一个名为 BCD 的注册表文件中,固件接口的类型决定了 BCD 文件在磁盘中的位置。

  • 基于 BIOS 的计算机:BCD 文件位于活动分区的 Boot 文件夹中。

  • 基于 EFI UEFI 的计算机:BCD 文件位于 EFI 系统分区中。

第二节:BIOS 的概念,功能与设置

我们在之前都有或多或少地提到了 BIOS 这一概念,下面我们就来详细了解一下 BIOS的方方面面。

一、 BIOS 的概念

BIOS 是英文"Basic Input Output System"的缩略语,直译过来后中文名称就是"基本输入输出系统"。它的全称应该是 ROM-BIOS,意思是只读存储器—基本输入输出系统。其实,BIOS 是一组固化到计算机内主板上一个 ROM 芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机上电自检程序和系统启动自举程序。

有人认为既然 BIOS 是"程序",那它就应该是属于软件,感觉就像自己常用的 Word或 Excel。但也很多人不这么认为,因为它与一般的软件还是有一些区别,而且它与硬件的联系也是相当地紧密。形象地说,BIOS 应该是连接软件程序与硬件设备的一座"桥梁",负责解决硬件的即时要求。

一块主板性能优越与否,很大程度上就取决于 BIOS 程序的管理功能是否合理、先进。主板上的 BIOS 芯片或许是主板上唯一贴有标签的芯片,一般它是一块 32针的双列直插式的集成电路,上面印有"BIOS"字样。586 以前的 BIOS 多为可重写EPROM 芯片,上面的标签起着保护 BIOS 内容的作用(紫外线照射会使 EPROM 内容丢失),不能随便撕下。

586 以后的 ROM BIOS 多采用 EEPROM(电可擦写只读ROM),通过跳线开关和系统配带的驱动程序盘,可以对 EEPROM 进行重写,方便地实现 BIOS 升级。常见的 BIOS 芯片有 Award、AMI、Phoenix、MR 等,在芯片上都能见到厂商的标记。

二、 BIOS 的功能

  1. 自检及初始化程序:正如之前在计算机启动过程中说过的,计算机在电源接通后,系统将有一个对内部各个设备进行检查的过程,这是由一个通常称之为 POST(Power OnSelf Test)的程序来完成,这正是 BIOS 程序的第一个功能。完整的自检包括了对 CPU、640K 基本内存、1M 以上的扩展内存、ROM、主板、CMOS、存贮器、串并口、显示卡、软硬盘子系统及键盘的测试。在自检过程中若发现问题,系统将给出提示信息或鸣笛警告。如果没有任何问题,完成自检后 BIOS 将按照系统 CMOS 设置中的启动顺序搜寻软、硬盘驱动器及 CDROM、网络服务器等有效的启动驱动器 ,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。

  2. 硬件中断处理:计算机开机的时候,BIOS 会告诉 CPU 等硬件设备的中断号,当你操作时输入了使用某个硬件的命令后,它就会根据中断号使用相应的硬件来完成命令的工作,最后根据其中断号跳会原来的状态。

  3. 实现软件对硬件的操作:

有就是程序服务请求:从 BIOS 的定义可以知道它总是和计算机的输入输出设备打交道,它通过最特定的数据端口发出指令,发送或接收各类外部设备的数据,从而实现软件应用程序对硬件的操作。

三、 BIOS 与 CMOS 的区别和联系

CMOS (本意是指互补金属氧化物半导体存储器,是一种大规模应用于集成电路芯片制造的原料)是微机主板上的一块可读写的 RAM 芯片,主要用来保存当前系统的硬件配置和操作人员对某些参数的设定。CMOS RAM 芯片由系统通过一块后备电池供电,因此无论是在关机状态中,还是遇到系统掉电情况,CMOS 信息都不会丢失。由于 CMOS RAM 芯片本身只是一块存储器,只具有保存数据的功能,所以对 CMOS中各项参数的设定要通过专门的程序。

早期的 CMOS 设置程序驻留在软盘上的(如IBM 的 PC/AT 机型),使用很不方便。现在多数厂家将 CMOS 设置程序做到了 BIOS芯片中,在开机时通过按下某个特定键就可进入 CMOS 设置程序而非常方便地对系统进行设置,因此这种 CMOS 设置又通常被叫做 BIOS 设置。因此 BIOS 与 CMOS 既相关又不同:BIOS 中的系统设置程序是完成 CMOS 参数设置的手段;

而 CMOS 既是 BIOS 设定系统参数的存放场所,又是 BIOS 设定系统参数的结果。因此完整的说法是“通过 BIOS 设置程序对 CMOS 参数进行设置”。

四、 BIOS 的设置

进入 BIOS 设置程序通常有 3 种方法:

  1. 开机按热键在计算机自检启动过程中,按特定的热键一般可进入 BIOS 设置程序,不同类型的BIOS,其进入设置程序的按键也不一样,一般屏幕上会有提示,下面是常见类型的

BIOS 进入 BIOS 设置程序的方法:

Award BIOS:按 Del 键或 Ctrl+Alt+Esc 组合键,一般屏幕有提示。AMI BIOS:按 Del 键、F2 键或 Esc 键,一般屏幕有提示。Phoenix BIOS:开机按 Ctrl+ALt+S。

  1. 用系统提供的软件很多主板都提供了 DOS 下进入 BIOS 设置程序而进行设置的程序。

  2. 用一些可读写 CMOS 的应用软件部分应用程序(如 QAPLUS)提供了对 CMOS 的读、写、修改功能,通过这类软件可以对一些基本系统配置进行修改。

原手册插图(PDF 第 63 页)

原手册插图(PDF 第 63 页)

五、 BIOS 的刷新

BIOS 的一大特点就是可以用特定的方法来刷新,这就是通常所说的 BIOS 升级。升级BIOS 除了可以获得许多新的功能之外,还可以解决芯片组、主板设计上的一些缺陷,排除一些特殊的电脑故障等。而刷新的方法有:(Windows 下和 DOS 下)1.使用专用刷新工具(技嘉@BIOS 、华硕 ASUS Update 、微星 Live Update )2.使 用 公 用 刷 新 工 具 ( Award — Winflash 、 Phoenix — Winphlash 、 AMI—AMI_WinSFI303 )

注:

  • 升级 BIOS 存在一定的危险性,所以在升级前一定要做好充分的准备。如果你的主板一切工作正常而且可以很好地支持你所使用的硬件, 要慎重地考虑升级的必要性。

  • 并且一定要使用合适的刷新工具,尽量使用专用刷新工具。

  • 保证计算机正常无毒,刷新过程中不能断电。

  • 保证刷新文件的正确性,要从官方网站下载,注意刷新设备的型号,不同型号的 BIOS 绝不能混用。

  • 由于 BIOS 直接关乎硬件操作,根据报警音能解决很多问题。重置 BIOS 设置有时候是解决问题的好办法。

  • BIOS 与启动模式,在电脑无法启动,提示找不到系统时,UEFI BIOS 模式和Legacy BIOS 模式切换能解决问题。

来源:四川大学飞扬俱乐部《维修手册》PDF 第 56-64 页(印刷页 55-63)。