计算机启动过程详细介绍

Posted 自来云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机启动过程详细介绍相关的知识,希望对你有一定的参考价值。

全面认识计算机启动过程
  首先让我们来了解一些基本概念。第一个是大家非常熟悉的Bios(基本输入输出系统),BIOS是直接与硬件打交道的底层代码,它为操作系统提供了控制硬件设备的基本功能。BIOS包括有系统BIOS(即常说的主板BIOS)、显卡BIOS和其它设备(例如IDE控制器、SCSI卡或网卡等)的BIOS,其中系统BIOS是本文要讨论的主角,因为计算机的启动过程正是在它的控制下进行的。BIOS一般被存放在ROM(只读存储芯片)之中,即使在关机或掉电以后,这些代码也不会消失。  


  第二个基本概念是内存的地址,我们的机器中一般安装有32MB、64MB或128MB内存,这些内存的每一个字节都被赋予了一个地址,以便CPU访问内存。32MB的地址范围用十六进制数表示就是0~1FFFFFFH,其中0~FFFFFH的低端1MB内存非常特殊,因为最初的8086处理器能够访问的内存最大只有1MB,这1MB的低端640KB被称为基本内存,而A0000H~BFFFFH要保留给显示卡的显存使用,C0000H~FFFFFH则被保留给BIOS使用,其中系统BIOS一般占用了最后的64KB或更多一点的空间,显卡BIOS一般在C0000H~C7FFFH处,IDE控制器的BIOS在C8000H~CBFFFH处。  




  第一步:  当我们按下电源开关时,电源就开始向主板和其它设备供电,此时电压还不太稳定,主板上的控制芯片组会向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会重新清屏并在屏幕上方显示出一个表格,其中概略地列出了系统中安装的各种标准硬件设备,以及它们使用的资源和一些相关工作参数。  

  第九步:  接下来系统BIOS将更新ESCD(Extended  System  Configuration  Data,扩展系统配置数据)。ESCD是系统BIOS用来与操作系统交换硬件配置信息的一种手段,这些数据被存放在CMOS(一小块特殊的RAM,由主板上的电池来供电)之中。通常ESCD数据只在系统硬件配置发生改变后才会更新,所以不是每次启动机器时我们都能够看到“Update  ESCD…  Success”这样的信息,不过,某些主板的系统BIOS在保存ESCD数据时使用了与Windows  9x不相同的数据格式,于是Windows  9x在它自己的启动过程中会把ESCD数据修改成自己的格式,但在下一次启动机器时,即使硬件配置没有发生改变,系统BIOS也会把ESCD的数据格式改回来,如此循环,将会导致在每次启动机器时,系统BIOS都要更新一遍ESCD,这就是为什么有些机器在每次启动时都会显示出相关信息的原因。  

  第十步:  ESCD更新完毕后,系统BIOS的启动代码将进行它的最后一项工作,即根据用户指定的启动顺序从软盘、硬盘或光驱启动。以从C盘启动为例,系统BIOS将读取并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的分区引导记录,而分区引导记录将负责读取并执行IO.SYS,这是DOS和Windows  9x最基本的系统文件。
Windows  9x的IO.SYS首先要初始化一些重要的系统数据,然后就显示出我们熟悉的蓝天白云,在这幅画面之下,Windows将继续进行DOS部分和GUI(图形用户界面)部分的引导和初始化工作。  

  如果系统之中安装有引导多种操作系统的工具软件,通常主引导记录将被替换成该软件的引导代码,这些代码将允许用户选择一种操作系统,然后读取并执行该操作系统的基本引导代码(DOS和Windows的基本引导代码就是分区引导记录)。    

  上面介绍的便是计算机在打开电源开关(或按Reset键)进行冷启动时所要完成的各种初始化工作,如果我们在DOS下按Ctrl+Alt+Del组合键(或从Windows中选择重新启动计算机)来进行热启动,那么POST过程将被跳过去,直接从第三步开始,另外第五步的检测CPU和内存测试也不会再进行。我们可以看到,无论是冷启动还是热启动,系统BIOS都一次又一次地重复进行着这些我们平时并不太注意的事情,然而正是这些单调的硬件检测步骤为我们能够正常使用电脑提供了基础。

移动硬盘是一个非标准的usb设备,使用中远不如鼠标这样可靠,问题多多,这里就很多常见情况总结一下:

有关基础知识参阅我写的移动硬盘FAQ,pcmarket和hardwre都有。
1、如果你的硬盘盒子是50元以下的,尤其是标着IBM字样的,请赶快换掉这个盒子。这种盒子早期还可以,自从03年起生产的质量就不可忍受了,很多的故障都发生在这种盒子上,如果您还爱惜你的硬盘,请换掉它。


2、移动硬盘分区不要超过2个。


3、使用200元以下盒子的移动硬盘最好都不要插在机器上长期工作,移动硬盘是用来临时交换数据的,不是一个本地硬盘。
相比于笔记本内置的,移动硬盘里面的笔记本硬盘时刻都工作在恶劣的环境下,应该尽量缩短工作时间。
正确的使用方法是使用本地硬盘下载资料等,然后copy到移动硬盘上,而不是挂在机器上整夜下载。
这个说法等于给在usb1.1接口copy海量数据宣判死刑,如果要大量copy数据赶紧加个usb2.0卡吧。


4、不要给移动硬盘整理磁盘碎片,整理的方法就是把整个分区里面的数据都copy出来,再copy回去。


5、移动硬盘认不出或者copy会断线如何解决?
(1)不使用usb加长线,这种线的质量一般不太好,会使usb数据同步出错,使移动硬盘不能正常工作。不使用机箱上的前置usb接口,原因同前。尽量把移动硬盘插在原本的usb口上。
(2)淘汰你的劣质usb硬盘盒,更换劣质的数据线为带屏蔽层的优质usb线(就是比较好的盒子带的线)。
(3)usb接口兼容性不佳,非intel芯片组的主板有时候有usb兼容性差的问题,但是现在正在销售的主流芯片组里几乎只有nforce2了,传说新的bios和usb驱动改善了nforce2的usb兼容性,但是实践证明改善很有限。彻底解决这问题的方法只有购买一个pci的usb2.0卡,其他参见6。


6、如何解决供电不足的问题?(供电不足是5的一大原因)
(1)购买比较好的usb移动硬盘盒。
(2)购买4200转的笔记本硬盘做移动硬盘。不要买5400转的。  不要相信硬盘上面标的电流值,那没有参考价值。  实践证明  hitachi  的4200转诸型号比如  4k80  4k40    80GN等都是不错的选择。一般不买富士通或者东芝的,因为在大陆没有正式的渠道商。一般也不买st的,因为ST的硬盘一般都是5400的,尽管电流值标的是0.47A。
(3)购买笔记本电脑时,考虑一下一下usb口的供电能力。  已经证明usb接口供电能力太弱的是:三星Q20/  dell  300m/X300  ;    sony  V505  ;  IBM  R40之前的几乎所有R;toshiba  P2000/2010  ....usb供电能力差,多见于日韩系轻薄机。  我最赞赏的就是IBM  X31的usb口,不管移动硬盘(哪怕是5400转的);外置combo一律通吃,其供电能力不亚于一般台机。    如果购买pci的usb2.0卡,要挑有4针辅助供电口的;如果购买笔记本用的pc卡usb2.0转接卡,要挑带一个变压器辅助供电的,好歹也要有带一个ps2辅助供电线的。  
(4)移动硬盘盒子自身也有辅助供电线的,好盒子直接给一个变压器,差的盒子也有ps2或者usb的供电线,供电不足时当然要插上,即使usb口足够带动硬盘,如果不是短时间工作,建议也插上,usb接口的供电总是很勉强的。


7、千万不要混用供电线!!
某个盒子的线就只给某个盒子用,某张pc卡的供电线只能给那个型号的卡用。
供电线的接口电压定义各有不同,乱插轻则烧盒子,重则烧硬盘。


8、如何让移动硬盘跑得更快?
copy大的文件肯定比细碎的小文件有效率,下面的的数据都是针对大文件copy的。          
(1)usb1.1  必须升级为usb2.0。  台机有pci的usb2.0卡,  笔记本有pc卡的usb2.0卡。买卡时不能贪便宜,100元以下的笔记本卡,50元以下的台机卡都不要买。
(2)硬盘的型号要新一点,一般02年起生产的盘都有跑到15M/s+的能力。  
(3)usb接口  :  首先供电要足。控制芯片  以NEC或者INTEL  ICH4/5南桥带的为佳,  其次ALI  ,最次VIA。不过这些芯片其实都有15M/S的能力,还要看pcb板的设计和做工。  
(4)盒子要好。芯片的选择  ISD300  >  ALI  5621>  meson?(忘了型号)>  GL811  =ALI  (猥琐版,型号忘了,很小),NEC的桥接芯片很少用在硬盘盒子上,一般都是在光驱盒子里使用,NEC的也很不错,可以和ISD300相比。  实际上GL811也有跑到18M/s的水平,和转接卡一个道理,速度更看pcb的设计与做工。    卡和盒子,拣贵的买肯定没错的。
(5)本地硬盘也要足够快。
(6)usb1.1的速度是1M/s  ,usb2.0的及格水平是10M/s,  如果不足10M/s,  那么在  笔记本硬盘,  盒子,  接口,  本地硬盘之中至少有一个瓶颈。  我用ASUS  intel  845PE主板,元古双接口盒子(ISD300),hitachi  80GN的硬盘,本地硬盘ST7200.7,  速度可以达到  22M/s,    同样平台用罄城GL811的盒子也达到了18M/s。  22M/s已经几乎是硬盘传输速度的极限了,似乎这个时候usb2.0的带宽还没有喂饱。  劣质usb卡甚至只能跑到4M/s足见差距。  
(7)太多细碎的小文件也可以用winrar打包后再copy。        


9、1394移动硬盘的专述:
(1)供电:  机器自带的6针1394口额定电流为1A,已经足够带动所有移动移动硬盘,甚至台机硬盘。  4针口不供电,必须给移动硬盘另外供电。  pc卡接出来的1394也不能供电,必须给pc卡或者移动硬盘工供电。
(2)1394接口:    以TI双芯片为最佳;ricoh的也很不错,不过很少出现在零售的卡里,  IBM  X系列板载的常常是ricoh的,ALI的还可以,  VIA的最差(一般台机主板板载都是这个),不过还是那句话,做工比芯片重要。
(3)盒子:  一般的移动硬盘的1394都是用oxford911  桥接的,没看到缩水的芯片。oxford922是一个更加优秀的IC,单芯片搞定usb2.0/1394双接口,现在已经有一些高档3.5寸硬盘盒使用,2.5寸的盒子还没有看到。    PL-3507是台湾一家ic设计公司的产品,同样是单芯片双接口,性能待测,我刚看到产品。    
(4)实测:  我的平台用了一个TI双芯片的PCI1394卡,  元古双接口盒子(oxfd911),80GN,速度也是22M/S。  曾经测试过的顶峰速度也有24M/s。    而同样的盒子和硬盘在compaq  X1000(板载VIA1394IC),速度是17-18M/s  。    
(5)1394的最大优点是CPU占有率低。


10、妥善保护你的移动硬盘。
切忌摔打,轻拿轻放;
注意温度,太热就停;
干燥防水,先删再拔。


关于里面疑问的回答:

为什么不能给移动硬盘整理碎片呢?是整理碎片对硬盘不好吗?那笔记本是不是也要尽量少整理碎片呢?  

外置硬盘通过一个usb接口和主机连接,如果同时数据上行和下行,速度会很低,而整理磁盘碎片的过程就是就是数据的频繁上行下行,由于速度慢,这个过程会非常漫长,  还不如copy出来再copy  回去。1394也是一个道理。

2、供电充足时分区数量和使用效果无关。
3、对于现在常见的金属移动硬盘盒,它的工作温度比内置的可爽多了。内置硬盘出问题更麻烦,所以我都是直接下载到移动硬盘的分区中,然后在分类备份。

分区的数量多了在接通时,卷标的弹出会很慢,与供电的问题倒是确实无关。
移动硬盘里面的硬盘工作环境恶劣不仅仅指温度,还有恶劣的供电状况,  简陋电路接出来的ide接口。

以上是关于计算机启动过程详细介绍的主要内容,如果未能解决你的问题,请参考以下文章

Dubbo详细介绍与安装使用过程

基于SpringBoot的外卖项目(详细开发过程)

MongoDB中4种日志的详细介绍

Android 6.0启动过程详细解析

联想笔记本BIOS设置详细说明

Pascal算法之回溯及递推详细介绍、