欢迎来到天天文库
浏览记录
ID:38178106
大小:1.33 MB
页数:5页
时间:2019-05-24
《BIOS程序编写——ISA模块的编写》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、⋯⋯⋯⋯⋯⋯‘狙i黼jsocket;文/图rOss上一一些基本的知识和软Bl0S的功能节向大家介绍了,实际上几乎所有的厂商都会增加件的使用一B10S这一ACPItableACPIACPI。这节将正式将大家领入编程部分内容,支持的列的殿堂。表.只有支持ACPI的B10S,才能真正实现ACPI功能EPALOG0,能源之星图形文件,也就是BID8文件分新主板自检时候的右上角的图标。下面我们来看一下第七个模块下面以捷波主板的B10S为例(从互联网下,图片上标BlOS固etwabin)ISAROM1一ISA载下来的件文件jy.,键入命令识为[],可以看出这是个模块
2、“”CbromjetwaY.bin/d。如图1所示,返回(ISAM0duIe),因为主板的不同,可能有些Item—Name主板并没有1SA模块SA了许多有用的信息,如模块名(),,或者有两个以上的I模”OriginaI—siZe)块模块原始大小(.压缩后的大小。这里的模块其实是希捷主板自带的捷波”(Comressed—SiZe)(0riginaI—P,原始文件名恢复精灵。FiIe—Name)BIOScbromexeBIOS芯片空间的约束使用.导出/导入甚至删除中的。因为,几乎所有的模块都进行了压缩(LHA算法),以便模块是极为方便的。下面介绍几种常用的添
3、加节省体积。删除Bl0S模块的命令cbrombiosbin/EXTRACT(.模块名用于导出B10S中的模块)cbrombiosbin/lSAinputbin..(用于导入ISA模块)cbrombiOSbin/DELETE(.模块名用于删除B10S模块)BI口S内存布局图1如图2所示一BIOS内.是幅相对比较详细的可以看出,捷波主板的B10S共有7个模块,存布局图.大家可不要被这么多陌生的英文单其中主要的有SystemBIOS,包含了BIOS的初词给吓坏了。如果还不清楚什么是保护模式和始化模块,是系统中最基本的部分,所有的实模式的朋友,请到网上获取信息。
4、BIOS一XGROUPCODEBIOS从图中我们可以大致的看出实模式下的内都有这部分,扩展程序.是各个厂商自己定制的不同于标准Award存可分为三大区域。圈谶拨誉裟}’“。。⋯⋯⋯。“⋯。)i栏葚目晶编蔷辑)8s0ocket)_■■__医(A20Gate)。A20门其实就是在第21根地址一个开关线上做了,只有当该开关打开时,才能访问到高端内存。由于BIOS厂商的不同,BIOS设计的模块以及启动程序也不尽相同。下面依然以AwardBIOS为例。AWard公司的BIOS除了激活区段{BootBIock:即加电初始化首先执行的指令所在的区域)以外的部分,都要使
5、用LHA算法进行压缩并整合到BlOS文件中。BootBlock位于SystemBlOS模块中。计算机加电启动,首先执行位于0FFFF0h处的指令一个jmpfar(远,这个指令是iJBootBIock处BootBIock转移指令),跳转~.然后开始检测BIOS的校验和.如果出错则跳转到紧B10S一切顺利急恢复程序或备用。如果,BootBIock开始解压缩各个模块并检测其校验和.如果校验和正确,将跳转到这些模块执行。15A簟杖蝈写明1aseMemor:Oh~9FFFF0)By.常规内存.,一共640kb一段内存通常作为DOS下可执行1)IsA模块的结构。这I
6、nterruPt3一lSA模块结构文件的载体.也储存了中断向量表(如图所示.是个标准的,“55hVectorTable)、BIOS数据区(BIOSDataArea)开头的两个字节作为开头的标志.必须为BAAh”PE和引导扇区(OOtArea)。,就好像文件头的前两个字节为””一一2)UpperMemory:A0000h~Mz.上个字节是模块的长度位内存区,样。后,因为OFFFFFh一384kbB10S(lSA512字节的整数倍,共。包括显卡、网卡的模块的长度必须为.如果B10S)都被映射到该地址空间。为01h,则是512字节.如果为02h,则是10243
7、)HighMemorYArea:高端内存区03h一.字节.以此类推。在文件偏移的处,是个OFFFFFh~1OFFEFh一64kbmP指令,共。,跳到程序真正的入口点。Oh5sh—说到这段内存.大家可能会感到迷惑。众.Aahc●块开头瓣蠢志▲羹●PE头的M2髯)2h0lh(羹块长度"所周知8086/8088CPU一起里墨01512字节).的在实模式下采用3bImp
8、莹序入口点(_聃涠程序_队日点刑打执衔t楚盔冒哺嘲‘指夸)segment:offset的方式进行寻址。当我们寻址时.’铀一▲mn
9、而1leIIo.Wodd▲Oh‘定义苎雌)CPU通过计算(~ps
10、egment,10h+offset)得出实际17hsome_dwordddOh的
此文档下载收益归作者所有