谁都能看懂的计算机启动过程boot

生活中我们往往以为的理所应当有时却不是那么平常,比如boot,平时说到计算机启动,都会提到boot,而boot的英文意思是靴子,跟计算机的启动怎么会联系起来呢。

事实上,boot作为启动的意思来源于

pull oneself over a fence by one′ sbootstraps

话说从前有一个人陷入泥潭,但他却用靴子后面的拉环将自己从泥潭里拉了出来,你能想象螺旋升天的场景吗。

这故事本身听起来不可思议,但它所描述的过程却恰与计算机的启动过程相似,因为想要启动计算机必须运行程序,而想要运行计算机必须先启动计算机,仿佛想要启动一台计算机陷入了一个死循环,那么事实上计算机是怎么启动的呢?

相比人类世界运作的复杂,PC的运行过程及其简单,就是不断重复


这样的周期,但是想要进入这个周期却并不容易。

就像有了光才有了生命的开始,在你加电的那一刻PC世界才开启。

主板上电后,由于电压尚未稳定,有一块控制芯片告诉CPU先不要急,先进行初始化,也就是"reset", 待电压稳定后,控制芯片撤销"reset",CPU就急不可耐得去执行他人生的第一条执行,当然指令是被存储在存储介质中,实际上就是一个地址,在Intel的x86架构下,这个地址为0xFFFFFFF0,至于为什么是这个地址,涉及的层面就比较高了,我们就先不聊了。

说到地址,有人可能就想到那不就是内存吗。可是这个地址还真不是内存中的地址,因为此时内存还没被初始化呢,这个地址是BIOS芯片里的一个地址。

想要有地址,首先就得编址,就像你家门牌号,是由管理国土规划的人来编址,而cpu就像是国土局的人,给存储介质一字节一字节得划好了地址,cpu编地址有两种方式,一种是统一编址,比如我在内存中划出一块区域专门作为与外设交互的地址,一个超明显的例子就是显存,以Intel的x86架构为例,0xB8000就是显存的地址,你往这个地址下写字符就是能在显示器上显示出来,从这个地址开始,每两个字节被解释为显示在屏幕上的一个字符,这第一个字节表示要显示字符的字模码,就是一个字符的像素点应该怎么点出来,第二个字节用于表示这个字符的前景色和背景色。具体如下

我们再说回计算机启动的事,等到控制芯片撤销"reset"命令后,cpu便进入BIOS上的上电自检程序(Power On Self Test),比如检查一下内存硬盘能不能正常访问啊,总线上跑数据网卡连接有没有问题啊,当cpu检查这些都没有问题后,他就觉得他行了,此时cpu就去找所有软件的大哥-操作系统,至于去哪里找,就要根据BIOS上的一张设备启动顺序表,对,就是你进入BIOS后能自己设置从硬盘或者u盘启动的那张表。

cpu会根据表上存储介质的顺序,去读每一个存储介质的第一个扇区,即512个字节,假如这个存储介质的最后两个字节是0x55和0xAA,那么cpu认为操作系统就在这块存储介质里,于是开始加载操作系统,并不再去检查后面的设备。

cpu会将存储介质上的第一个扇区的512字节加载到内存的0x7C00处,紧接着开始从0x7C00执行指令,由于512字节大小有限(如果够大的话我直接把操作系统的代码放在这),所以只够我们将操作系统的引导程序放在这里,这段代码由于意义特殊,我们一般把它叫做bootloader程序。

一般单操作系统电脑来说bootloader就是把操作系统内核引导到内存里,但是GNU推出GRUB帮助我们在bootloader阶段来选择一个操作系统进入,以便适应现在操作系统众多的环境。

以上就是关于boot的整个过程,其实就是检查引导这样一个简单节奏,但其中涉及的细节问题却十分复杂,这里所提到的也只是皮毛而已。想了解更多就去把《计算机的奥秘》《体系结构》啥的整起来吧。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,869评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,716评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,223评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,047评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,089评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,839评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,516评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,410评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,920评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,052评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,179评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,868评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,522评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,070评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,186评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,487评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,162评论 2 356

推荐阅读更多精彩内容