全网最硬核讲解计算机的启动过程

美丽的黄皮肤爱心援助工程 http://news.39.net/bjzkhbzy/180527/6285095.html

本讲只为讲领悟底下一个题目:

咱们按下开机键后到底产生了甚么?

好的,这彷佛是许多人都非常想搞领悟的一个题目,有意候非常烦恼,为甚么一个看似这么容易的题目,即是搜不到一个直面题目的谜底呢?

好题目,我也不了解为甚么会云云,但我猜是由于:

其一,似懂非懂的人太多,他们原来也不了解到底产生了甚么,以是只可朦胧也许地说一些教科书上的话。其二,了解这个谜底的人必然是大牛,大牛要末不回复这个题目,要末就不会容易地回复这个题目。而我呢,自觉得适值处于两者之间,目前又非常想把本身了解的分享出来,以是你在这边找到了谜底。

我想当你探访这个题目的谜底时,搜到的大普遍是云云的描写:

BIOS依据“启动顺次”,把遏制权转交给排在第一位的储备征战:硬盘。而后在硬盘里寻觅主领导纪录的分区,这个分区通告电脑职掌系统在那处,并把职掌系统被加载到内存中,而后你就可以看到典范的启动界面了,这个开机历程也就达成了。

这类描写实在太魔幻了,为甚么是BIOS主宰这统统?怎样叫依据启动顺次?这个分区咋就被加载到内存了,又咋通告电脑职掌系统在那处了?我没法忍耐云云的魔幻描写,我非要把它说得清领会楚。

首先学一个东西,必然要有一个前置的常识,咱们把它当做已知的,我不行能从原子构成份子开端讲旨趣。那进修推算机启动历程的前置常识是甚么呢?我请求你已知如下几点:

内存是储备数据的地点,给出一个住址记号,内存能够返回该住址所对应的数据。CPU的劳动方法即是继续从内存中掏出指令,并履行。CPU从内存的哪个住址掏出指令,是由一个寄放器中的值决意的,这个值会继续停止+1职掌,也许由某条跳转指令指定其值是几许。

好了,只要要了解这三点前置常识,你就可以专科地注释推算机的启动历程了。

一、为甚么是BIOS主宰?

都说开机后,BIOS就开端运转本身的程序了,又硬件自检,又加载启动区的。我就不屈了,为甚么开机后是履行BIOS里的程序?为啥不是内存里的?为啥不是硬盘里的?

好的,不要质疑前置常识,CPU的劳动方法,即是继续从内存中取指令并履行,那为甚么会说是履行BIOS里的程序呢?这就不得不说说内存映照了。

二、内存映照

CPU住址总线的宽度决意了可造访的内存空间的巨细。比方16位的CPU住址总线宽度为20位,住址局限是1M。32位的CPU住址总线宽度为32位,住址局限是4G。你能够算算咱们目前的64位机的住址局限。

但是,可造访的内存空间这么大,并不即是说全都给内存行使,也即是说寻址的目标不光有内存,再有一些外设也要经过住址总线的方法去造访,那怎样去造访这些外设呢?即是在住址局限中划出一片片的地区,这块给显存行使,那块给硬盘遏制器行使,等等。

云云说,原来就不吻合咱们的前置常识了,以是能够有一种不太准确的了解方法,那即是内存中的这块地方即是显存,那块地方即是硬盘遏制器。咱们在响应的地方上读取也许写入,就相当于在显存等外设的响应地方上读取也许写入,就彷佛这些外设的储备地区,被映照到了内存中的某一片地区同样。云云咱们就不必管那些外设啦,


转载请注明:http://www.aierlanlan.com/rzdk/885.html