AMI BIOS相关模块说明 |
|
| AMI的BIOS模块可以用AMI提供的模块分析、添加程序AMIBCP.EXE来浏览和修改。用AMIBCP.EXE程序打开一个BIOS文件,选择“Edit BIOS Modules”项,就可以看到BIOS中的各个模块,关于各模块的详细定义见表2。 |
![]() |
| 表2:AMIBIOS内部模块ID、属性与模块用途 |
模块名称 |
ID号码 |
可否修改 |
是否压缩 |
模块用途 |
INIT |
否 | 否 | 从Reset跳入点开始的Boot Block程序代码 |
|
NVRAM/ESCD |
否 | 否 | FlashEPROM的GPNV区域,存储系统组态数据 |
|
POST |
00h |
否 | 否 | POST程序代码 |
Setup Server |
01h |
否 | 是 | AMIBIOS设置服务器端 |
Runtime |
02h |
否 | 是 | BIOS功能函数/常驻的程序代码 |
DIM |
03h |
否 | 是 | Device Initialize Manager(装置初始化) |
Setup Client |
04h |
可 | 是 | 提供AMIBIOS设置画面的接口程序 |
Remote Server |
05h |
可 | 是 | 搭配远程遥控除错系统 |
DMI Data |
06h |
可 | 是 | 数据区 |
Green PC |
07h |
否 | 否 | 符合APM规范的节电管理程序 |
Interface |
08h |
否 | 是 | BIOS模块压缩/解压子程序模块 |
MPS |
09h |
可 | 是 | 多重处理器起始模块 |
Int-10 |
0Bh |
可 | 是 | BIOS文字/绘图等显示处理模块 |
ROM-ID |
0Ch |
可 | 否 | 记录ROM ID与相关信息的模块 |
Int-13 |
0Dh |
可 | 是 | BIOS软盘/硬盘/光驱读写形式 |
ACPI Table |
0Fh |
可 | 是 | ACPI规范控制表格区 |
ACPI AML |
10h |
可 | 是 | ACPI的AML句柄存放区域 |
P6 Micro Code |
11h |
否 | 是 | Intel P6处理器微码修补模块 |
Configuration |
12h |
可 | 是 | 系统组态显示模块 |
DMI Code |
13h |
可 | 是 | DMI控制程序码模块 |
PCI AddOn ROM |
20h |
可 | 是 | PCI适配器ROM程序代码模块 |
Multilanguage |
21h |
可 | 是 | 多重语言控制模块 |
Font DataBase |
30h |
可 | 是 | 中文(双位语系)字形数据模块 |
OEM Logo Data |
31h |
可 | 是 | 屏幕右上方OEM商标画面模块 |
Graphic Logo Code |
32h |
可 | 是 | Silent Boot,OEM全屏幕画面处理程序 |
Graphic Logo Data |
33h |
可 | 是 | Silent Boot,OEM全屏幕图形文件数据模块 |
Virus |
36h |
可 | 是 | TCAV杀毒模块 |
| 以上每一个模块,事实上是由好几个甚至几十个编译过的*.ASM、*.OBJ等文件所连结而成,至于每个模块会参考到那些*.ASM、*.OBJ或其它文件,这由是由AMI当初设计的一连串编译维护批处理文件,如MAKEBIOS.BAT,MAKEALL.BAT,以及位于芯片层的几个*.MAK维护文件,依照不同的芯片组特性,以及IO.BAK
OEM.AMK等文件中字段/标识位的控制来决定,模块内会牵扯到*.ASM、*.OBJ等文件内容是随时有变动的。 BIOS模块中,INIT、NVRAM/ESCD、POST以及INTERFACCE这四个模块是属于开机最初被执行的模块,也是所有BIOS模块中,唯一以非压缩的程序代码形式(Un-copmressed code)存储于ROM中,也就是说BootBlock的程序代码跟存储在FlashROM的程序代码完全相同的,而其它模块在编译/连结完成后,要做模块总联接成一块BIOS ROM之前,事实上都是先经过压缩处理,然后才写回BIOS ROM文件中。 |
BIOS中,不同的模块具有不同的功能。象SYSTEM BIOS项和扩展BIOS程序项等模块,是BIOS中的核心模块,不能做任何改动;有些模块,如开机画面、能源之星图标等,可有可无,如果该模块删除,开机后就不显示图案,如果更换此模块所代表的图案,开机后便能显示不同的画面。更换BIOS模块的原理相当简单,但实际操作起来,还是存在许多问题的,其中三个主要的问题就是:
我们先看第三个问题,它的解决方法很简单,把修改过的BIOS文件使用刷新程序写入到BIOS芯片中,如果一切正常的话,重新开机就会使修改生效;第一个问题,我们可以从表1和表2中查到AMI BIOS及AWARD BIOS中各个模块的含义,如果不知某个模块的功能,最好不要随意修改它。第二个问题,解铃还需系铃人,既然BIOS程序码是由Award(AMI)公司写的,最终还是要用Award(AMI)所提供的工具程序,才能安全地修改、删除、增加BIOS模块。对于Award的BIOS,其修改工具程序就是CBROM.EXE。CBROM.EXE的具体用法,可以用CBROM/?格式来查询。实际上,CBROM.EXE不只能显示BIOS的内容,它还可以分离或替换BIOS中的内容;AMI BIOS的修改工具就是AMIBCP.EXE。
|