1.boot启动
我们开启计算机都是按一下开关,然后电脑就运行了,os也打开界面了。但是os只是运行在电脑上的一个软件,电脑启动还得是bios,bios也是一个程序,计算机不启动就无法运行程序,但是计算机无法运行程序就不能启动。这明显互相矛盾?
那么如何解决这种矛盾? 就是只读内存的发明。开机程序被刷入ROM芯片,通电后,第一件事就是读取这块内存,然后启动。
2:读取主引导记录:
计算机读取该ROM设备的第一个扇区:该扇区占用512字节,最后两字节0x55和0xaa表示该设备是否可用。
2.1主引导记录字节 :1-446 调用os的机器码
447-510 分区表
511-512 主引导记录签名
2.2分区表: 分区表的长度只有64字节:
1字节:0x80 是否是激活分区
2-4字节:主分区第一个扇区的物理位置
5: 主分区类型
6-8:主分区最后一个扇区的物理位置
9-12:主分区第一个扇区的逻辑地址
13-16:主分区的扇区总数
3:硬盘启动:
3.1卷引导记录 。计算机四个主分区里面只有一个是激活的,计算机会读取激活分区的第一个扇区,叫卷引导记录,,卷引导记录的作用是告诉计算机操作系统在这个分区里的位置,然后计算机就加载操作系统
3.2 扩展分区和逻辑分区
3.3:启动管理器: 计算机读取主引导记录签名446 字节的机器码后,不在把控制权交给某一分区,而是运行实现安装的启动管理器,,boot-leader ,由用户选择启动哪一个os。
4:启动后,先加载os的内核,运行sbin/init,加载各个模块
这是以前看别人的博客,现在记录下。一时间想不起来了,如果侵权,请告知。