本文由 简悦 SimpRead 转码, 原文地址 www.cnblogs.com
刷写 BIOS 是一个相对危险的事,如果刷写过程中出了意外那么电脑就会坏掉,只能拆开电脑把 BIOS 芯片卸下来用编程器重新刷写了。首先科普一下笔记本电脑 BIOS 芯片是个啥?来自 360 百科的释义:BIOS 是英文 "BasicInput Output System" 的缩略语,直译过来后中文名称就是 "基本输入输出系统"。其实,它是一组固化到计算机内主板上一个 ROM 芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序。其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
通俗点来讲,就是你按下电脑开机按钮电脑屏幕还没亮之前 CPU 所处理的那段程序就是 BIOS 程序。BIOS 程序是对操作系统运行时所必须的硬件进行初始化,初始化后就把操作系统载入内存中启动操作系统。所以说,如果 BIOS 坏掉了,不管你怎么去按开机键,电脑屏幕都会是一个大黑脸对着你。
对于一般的电脑,BIOS 基本上是电脑厂商提供,但是由于利益问题,电脑厂商总会或多或少在 BIOS 中加入一些坑爹的代码。比如一些笔记本升级网卡的问题,BIOS 中有一段白名单程序,用于检测硬件 ID,如果你更换网卡后新网卡的 ID 不在白名单之列,那么在电脑开机时 BIOS 程序运行后就会报错。所以,就得修改 BIOS 的白名单,把新网卡的 ID 加入到白名单中。
下面进入主题:
所需工具:
1. BIOS Backup (备份) Tookit v2.0 (万能 bios 备份工具)
2. PhoenixTool (BIOS 修改工具)
3. Xsearch (内容查找工具)
4. Flashit (BIOS 刷写工具)
5. WinHex (十六进制修改工具)
6. 老毛桃 U 盘启动盘
本次测试电脑机型:联想 Z465
第一步:打开 BIOS BackupTookit v2.0。
先点击 “读取”,完毕后再点击备份把 BIOS 备份到 U 盘,为了安全起见,建议多拷贝几份到其他的盘,以备不时之需。
第二步:打开 PhoenixTool,选择刚才备份的 BIOS。
过了一会儿就会弹窗。
点击确定,稍等会儿,又会弹窗。
再点击确定,之后在 Manufacturer 选择 Lenovo。
再点击 Advanced (提前) 按钮。
这是提示你修改 BIOS 可能会损坏主板,我们点击是,之后在弹出的窗口中勾选 No SLIC 以及 Allow user (用户) to modify (修改) other modules,然后点击 Done。
返回到最初页面之后点击 GO,稍等片刻后就会有如下弹窗:
此时在备份的 BIOS 文件同级目录下就有了个 DUMP 目录,这个目录里保存 BIOS 的解压后的文件。待会儿修改完 BIOS 再点击这个确定键重新打包 BIOS,切记现在不要点击确定。
第三步:右击我的电脑,点击 管理→设备管理器→网络适配器,之后找到已经安装网卡的名字,右击后点击 “属性”,再点击 “详细信息”,把属性栏的选项卡更改为 “硬件 Id”。
上面是我网卡升级后截图的,所以现在我笔记本上的无线网卡硬件 Id 是 PCI\VEN_10EC&DEV_8723&SUBSYS_072610EC&REV_00 忽略最后一个 REV 参数,那么对每个字段分别使用 little-endian 小段字节序就是 EC102387EC102607,其它网卡的硬件 Id 可以把笔记本盖合上,进入休眠状态,更换网卡后同理查看得出。
第四步:打开 Xsearch 软件,进入 DUMP 目录,在 “在该文件中一个或多个字” 输入框中输入旧网卡的硬件 Id,其它的配置如图:
之后点击文件→开始搜索:
之后用 WinHex 打开文件名最长的那个,也就是第一个。
在 WinHex 中点击 Search→Find Hex values (价值) … 如图:
输入旧网卡 Id 后点击 OK,就可找到白名单位置了。
上图中是我升级后的截图,其中选择的部分是我的老网卡的 Id,因为白名单中不只一个 Id,当时我搜索到这个位置时,发现后一个位置的 Id 值和这个差不多,所以我就把那个 Id 改成了我的新网卡 Id,这样的好处是以后如果想用旧网卡时,不必再刷 BIOS,直接把网卡替换就行了。
好了,具体改哪个 Id 就看你自己的了,修改后按 Ctrl+S 保存,之后退出 WinHex,重新回到 PhoenixTool,点击确定按钮。出现如下对话框就说明 BIOS 已经重新打包并输出了。
第五步:把 Flashit 软件拷贝到 U 盘根目录里,再把刚才修改好的 BIOS 也拷贝到根目录里并修改为 BIOS.ROM。右击新建文本文件 BIOS_Updata.bat, 之后在里面加入内容:flashit BIOS.ROM /ALL/ACB
第六步:重启电脑,更改为 U 盘启动,进入 MaxDos 工具箱选项,之后进入纯 DOS 环境。首先输入 DIR 命令看看我们的当前目录是不是在 U 盘,如果不是,就使用盘符加冒号更改路径,之后输入 BIOS_Updata 敲回车,就进入 BIOS 刷新过程了,切记不要在这期间给电脑断电或做其他操作。(刷 BIOS 时在 DOS 系统下操作,所以不能截图) 刷新完成后屏幕上会用英文提示你 BIOS 更新成功,此时电脑会自动重启,重启后安装好新网卡就能使用了。