从加电到系统启动,这点知识以前还真不知道~~

来源:互联网 发布:中华城市吧 知乎 编辑:程序博客网 时间:2024/05/21 09:45

      当计算机被加电以后,主振荡开始工作,电源象芯片组和处理器等发出,电源好的信号,所有的芯片开始复位,处理器开始执行一绝对指令,将指针指向固件里面的第一个地址,开始对主板上的硬件进行自检,检验实模式.将自身预先存储的处理器类型的数据和当前的处理器类型进行比对,以确定当前处理器的类型,并开始初始化主板上的硬件也就是将复位以后的各参数值读取以后,并重新设置,以便在以后的工作中协调起来,接着一对硬件初始化的值设置南北桥的寄存器,既将整快扳子上的硬件参数写到芯片组的寄存器中去,以便使芯片组完成对主板上所有硬件的调用和通信,并在自检程序的寄存器里设置对所有硬件初始化以后的识别标识,开始初始化处理器的二级缓存中的寄存器,并把寄存器的参数设置到固件中去,这一部也决定了二级缓存的工作方式和速度,将超级输入输出断口初始化为固件中的设定值并同时将电源管理初始化为固件中的设定值,并将板上的硬件初始化后的参数值装载到交互式寄存器中去,在以后的工作中随时调用和比对,接着初始化键盘控制器,完成以上初始化后开始将初始化值和固件中的存储器中的值进行校验,接着,8254定时器和8237DMA控制器初始化.完成对可编程控制器的复位,到此时就完成了固件对所有硬件的设置和准备工作.

      现在开始测试和刷新内存,为数据的读写做好准备工作,接着开始测试计算机的使用最多的也是人机交互的一个输入设备,键盘控制器,8742,然后把ES即片选的段位(可读写的内存颗粒的最大范围数.也就是处理器的寻址范围的,物理设定)设置到4个GB,并设置一个寄存器用来专门处理寻址的范围,,接着检验内存的完整性,,接着清除和刷新512K的基本内存,同时清除和刷新基本内存的地址寄存其,.接着测试512K基本内存.测试处理器总线也就是局部总线的时钟频率,如果固件器读写失败,均为不能在总线上准确寻址,.根据以上的测试结果,从新对南北桥的寄存器进行初始化设置,调用系统的BIOS的ROM ,进行初始化,二级缓存,并检验二级缓存,基于以上的检测,再次配置南北桥的寄存器,将固件里的设定值加载到交互寄存器里,并设置初始的处理器速度,初始化中断矢量,即中断的指向,.初始固件中的软中断,并检查BIOS的版本,及版权,为PCI总线在BIOS的存储空间,初始化管理.初始化系统板上的所有视频卡,并将视频BIOS存储器里的程序,加载到内存中进行调用, 开使点亮屏.并显示其版权信息,显示处理器的类型和速度,并测试键盘,闪键盘灯,启用键盘.并检验备用中断.显示提示符,‘’按F2到设置’’开始测试主存512和640K之间的内存空间,接着测试扩展内存和和扩展内存的地址线,.配置高级二级缓存的寄存器,启用外部和处理器中的二级缓存,显示外部缓存的大小,显示没有使用的空间,如有错误,则显示错误信息,,并为配置错误而进行校验.接着测试实时钟,如键盘出现错误则进行校验,(这里只是指键盘控制器的错误或者由于键盘漏电而造成的键盘控制器的错误)为硬件设备建立中断矢量,也就是硬件的入口和出口,测试协处理器,显示主板的当前I/O端口,检测和设置外部的串口端口,检测和设置外部的并口端口,再次初始化主板的I/0端口,初始化固件中存储器的数据存储的空间区域,初始化可设定的数据存储空间区域,初始化软盘控制器,硬盘控制器包括光驱,开始禁用A20地址线,清除所有的ES片选寄存器,搜索可用的内存空间,在基本内存里影射扩展内存的地址,并建立电源管理通过南桥外挂的PLC芯片,启用南桥中的硬件中断控制器,重新检验键盘控制器,并更新F2键的提示符,按下F2键,就会扫描进入CMOS设置,清楚自检标志,完成开机上电自检,准备引导操作系统,通过主板上的蜂鸣器发 出一 短暂的响声,来提示自检成功,然后开始校验密码,如无密码设置则更新桌面,清楚奇偶校验,闪屏来检查病毒和备份提示,试图导入13中断,初始化芯片组,并初始化刷新程序计数器,闪屏检查,进行全部内存检测,初始化中断控制器,,读启动程序代码.初始化所有的矢量,导入闪屏程序,并通过IDE控制器初始化引导设备,将控制权交给操作系统,开始操作系统启动,主板的就完成了全面的工作,由维修的角度说明整个硬件是正常的.

原创粉丝点击