用个简单的比喻:BIOS厂家写的是BIOS“ *** 作系统”,是通用的,而主板厂家写的是“应用程序”
读一下GNU的FreeBIOS程序说明,大概有助于你的理解:“The FreeBIOS project aims to provide a replacement for any computer's firmware, and support advanced or custom features and configurations Initial code supports Intel-based only, but other processors and chipsets will be supported ”
至于说通过修改BIOS来“修改”硬件,那是天方夜谭了,系统通过读取BIOS中的内容识别硬件配置,并对其进行自检和初始化,“识别”和“支持”完全不是一个概念,更何况,就算是你的BIOS能够“识别”Socket 775,你的478主板能有什么东西给它去“自检和初始化”??
只有完全了解主板的性能,才能写出匹配的BIOS,从而发挥出主板的全部潜力,看BIOS更新的频率和年限,可以从一个侧面了解该主板是代工的还是自主研发生产的(当然,代工也可以包含短期和重大问题的BIOS更新服务,所以这个方法也不是绝对灵验)。
第一步: 当我们按下电源开关时,电源就开始向主板和其它设备供电,此时电压还不太稳定,主板上的控制芯片组会向cpu发出并保持一个reset(重置)信号,让cpu内部自动恢复到初始状态,但cpu在此刻不会马上执行指令。当芯片组检测到电源已经开始稳定供电了(当然从不稳定到稳定的过程只是一瞬间的事情),它便撤去reset信号(如果是手工按下计算机面板上的reset按钮来重启机器,那么松开该按钮时芯片组就会撤去reset信号),cpu马上就从地址ffff0h处开始执行指令,从前面的介绍可知,这个地址实际上在系统bios的地址范围内,无论是award bios还是ami bios,放在这里的只是一条跳转指令,跳到系统bios中真正的启动代码处。
第二步: 系统bios的启动代码首先要做的事情就是进行post(power-on self test,加电后自检),post的主要任务是检测系统中一些关键设备是否存在和能否正常工作,例如内存和显卡等设备。由于post是最早进行的检测过程,此时显卡还没有初始化,如果系统bios在进行post的过程中发现了一些致命错误,例如没有找到内存或者内存有问题(此时只会检查640k常规内存),那么系统bios就会直接控制喇叭发声来报告错误,声音的长短和次数代表了错误的类型。在正常情况下,post过程进行得非常快,我们几乎无法感觉到它的存在,post结束之后就会调用其它代码来进行更完整的硬件检测。
第三步: 接下来系统bios将查找显卡的bios,前面说过,存放显卡bios的rom芯片的起始地址通常设在c0000h处,系统bios在这个地方找到显卡bios之后就调用它的初始化代码,由显卡bios来初始化显卡,此时多数显卡都会在屏幕上显示出一些初始化信息,介绍生产厂商、图形芯片类型等内容,不过这个画面几乎是一闪而过。系统bios接着会查找其它设备的bios程序,找到之后同样要调用这些bios内部的初始化代码来初始化相关的设备。
第四步: 查找完所有其它设备的bios之后,系统bios将显示出它自己的启动画面,其中包括有系统bios的类型、序列号和版本号等内容。
第五步: 接着系统bios将检测和显示cpu的类型和工作频率,然后开始测试所有的ram,并同时在屏幕上显示内存测试的进度,我们可以在cmos设置中自行决定使用简单耗时少或者详细耗时多的测试方式。
第六步: 内存测试通过之后,系统bios将开始检测系统中安装的一些标准硬件设备,包括硬盘、cd-rom、串口、并口、软驱等设备,另外绝大多数较新版本的系统bios在这一过程中还要自动检测和设置内存的定时参数、硬盘参数和访问模式等。
第七步: 标准设备检测完毕后,系统bios内部的支持即插即用的代码将开始检测和配置系统中安装的即插即用设备,每找到一个设备之后,系统bios都会在屏幕上显示出设备的名称和型号等信息,同时为该设备分配中断、dma通道和i/o端口等资源。
第八步: 到这一步为止,所有硬件都已经检测配置完毕了,多数系统bios会重新清屏并在屏幕上方显示出一个表格,其中概略地列出了系统中安装的各种标准硬件设备,以及它们使用的资源和一些相关工作参数。
一般是用汇编语言或汇编语言混合
C
语言编写的,可以用反汇编程序看到部分内容,但不是一般人能看得懂的,而且
BIOS
芯片内的程序同样是受版权保护的,一般不允许随意反汇编。
不一定。bios的全称basic intergrated operating system,即基本集成 *** 作系统。是主板上的flash memory中固化的一个 *** 作系统。用于开机时对系统进行自检和初始化工作。
低级语言是指机器语言或者汇编语言,高级语言是指c,basic,fortran等。可以用汇编来写BIOS,也可以用c来写。
你可通过从生产厂商的风趣处下载的BIOS升级你主板的BIOS程序,新的BIOS 可以支持新的外部设备,增强系统性能或修复书籍的错误,刷新的方法如下:
一、如果你的主板有路线,要先把路线设置为允许刷新BIOS
二、如果你的主板在设置程序中有一个选项称作Firmware Write Protect in Advanced BIOS features(也就是我们说的屏蔽BIOS的刷写功能),请先关闭该功能,这样BIOS 固件写保护就被打开。
三、制作一张系统软盘。(要确定你的计算机必须运行在实模式DOS下,而不是WINNT或WIN95/97下的DOS窗口中,建议你制作一张DOS系统软件盘。可以参考WINDOWS的帮助信息创建系统启动盘)。
四、从生产厂商的网站下载一个最新版本的BIOS和升级BIOS的程序,拷贝这些文件到第三步制作的DOS系统盘中。
五、关掉计算机,在计算机的软驱内插入制作的DOS系统盘。(在这里也可能要先设定BIOS,使计算机首先从软驱启动)
计算机启动到A:\提示符下,键入升级BIOS的程序和BIOS的文件名,然后ENTER(确定)。例如:AEXE(升级程序名,注意空格) BROM(新的BIOS程序名)。
六、刷新完成后,拿出软盘重新启动计算机,如果你的计算机有BIOS防刷写路线,不要忘了把路线改回防刷写状态,BIOS中的防刷写功能也要打开。
首先要知道主板的型号,然后去主板的厂家网站下载相应的BIOS。即使是同芯片组但型号不同也不要下。就在BIOS下载那里就有刷新BIOS的工具,应该是win flash的名字,不一样也很好找,都有说明的。
全部下载好,解压,BIOS程序是BIN文件,刷新程序是exe文件
然后就是将主板的BIOS保护跳线设为可擦写状态,主板说明书有详细说明。都是3针的接口,上边有个跳线帽。如果现在插1、2,那就取下插到2、3,以此类推,另一插法反之即可。
开机进入BIOS,将主板的BIOS保护设为关闭,再重启。
打开那个exe文件,先读取现在的主板BIOS,保存为任意名字的BIN文件,不要在C盘。打开你下载的BIN文件,点击写入就等待吧,不一会完成,重启就OK。
现在的BIOS刷新都支持Windows下写入及读取,很方便的。尤其是某些较大品牌的主板,微星、七彩虹等,就有在线刷新功能,只要安装主板驱动盘内的相关程序,就能方便的刷新BIOS
以上就是关于BIOS程序是由主板厂家编写出来的还是AMI和AWORD写的全部的内容,包括:BIOS程序是由主板厂家编写出来的还是AMI和AWORD写的、bios的工作过程是怎样的、bios 是用什么语言编写的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)