一开始他怀疑是系统问题,就重装了系统;又怀疑是内存条问题,最后,还是我带他看了一眼主板——右上角那个RTC电池座是空的。“哦!原来纽扣电池忘记了安装。

装上一颗CR2032电池之后,主板秒变“闪电侠”,开机速度直接回到十秒内。小张恍然大悟:“原来这玩意儿不光管系统时间,还管开机速度啊!”
01
你可能不知道,主板上那颗不起眼的CR2032纽扣电池,其实是保证电脑记住自己是谁的关键部件。
它的核心任务很简单:在电脑完全断电后,持续为CMOS芯片和实时时钟RTC供电。CMOS芯片保存着BIOS/UEFI的所有设置——包括启动顺序、内存时序、CPU频率等。而实时时钟则负责让电脑知道现在几点,别一断电就回到2000年1月1日。

想象一下,如果这块电池没电了,每次彻底断电后,BIOS就像得了健忘症——不记得内存该怎么配置,不认得硬盘该用什么模式访问,甚至不确定自己到底连接了哪些设备。结果就是每次冷启动都得重新认识一遍所有硬件,这个过程可比正常启动慢多了。
下面仔细看一下他们启动过程:
正常情况(有电池):
BIOS读取CMOS中保存的硬件配置,执行快速自检:
验证CPU微码;
快速检测内存信息;
直接使用已知的硬盘控制器设置;
10-15秒内进入操作系统。
异常情况(没电池):
BIOS恢复出厂默认设置,执行完整硬件探测:
逐一尝试不同的内存时序和频率组合;
探测所有PCIe设备并重新枚举;
测试各种SATA控制器模式;
可能需要30秒到2分钟才能完成自检。

通俗来讲,咱们可以用开车进行更形象的比较:
有电池时:每天走熟悉的路上班,知道每个路口、每个红绿灯;
没电池时:像个刚来城里的新手,得一边看导航一边开,还经常走错路。
02
那颗银色的纽扣电池,通常的规格特性如下:
型号:CR2032
电压:3V
化学体系:锂-二氧化锰
容量:约200-230mAh
自放电率:年化约1-2%

这种电池能在小体积内提供相对较高的容量,自放电率低,工作温度范围宽(-20°C到+70°C),而且成本低廉。
在实际应用中,一颗优质的CR2032电池可以为CMOS芯片供电3-5年甚至更久。当你的电脑开始出现系统时间不准或者BIOS设置经常丢失时,第一个要怀疑的就是它。
在咱们实际的产品设计中,我们经常会遇到一个现实问题:主板上实在找不到合适的位置安装电池座。这时候,外置电池就派上用场了。
通常有一个带线电池插头,通过20-30cm的引线连接到主板上的插针。

03
看到这里,你可能会问:我们经常用的ARM平台类主板,有时候也会忘记上RTC电池,但是为什么它们开机不也挺快的吗?
这引出了x86和ARM架构的一个根本区别:

x86架构,通用计算,支持各种硬件组合:
需要CMOS记录每次的硬件配置;
支持用户自由更换内存、硬盘、显卡;
RTC电池成为必需品。
ARM架构,嵌入式专用,硬件高度集成:
启动参数直接固化在Bootloader或eMMC中;
硬件在出厂时就已确定,无需探测;
靠网络校时(NTP)获取准确时间。
ARM设备因其硬件固定,启动时直接从非易失存储中读取预设配置初始化硬件,整个过程快速且确定,系统启动后会通过网络自动校时,因此无需依赖外部电池来维持设置或保证启动速度。
下次遇到设备开机特别慢的情况,不妨先检查一下RTC电池这个看似微小却至关重要的部件。