linux--启动过程

Posted 龙叔运维

tags:

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

  • 概念

【1】Bios

    Basic Input/Output System,是写入到主板上的一个韧体(韧体就是写入大硬件上的一个软件程序,一般在ROM上)

    BIOS是开机时,计算机系统会主动执行的第一个程序

【2】MBR:

    第一个可开机设备的第一个扇区内的主引导分区块,大小只有446bytes,里面放置这最基本的引导加载程序

【3】RAM:

    随机存取存储器(random access memory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。

【4】ROM:

    只读存储器,英文简称ROM。ROM所存数据,一般是装入整机前事先写好的,整机工作过程中只能读出,而不像随机存储器那样能快速地、方便地加以改写。ROM所存数据稳定,断电后所存数据也不会改变;

  • 启动流程

第一步:BIOS:

只要一通电,CPU就会自动去加载ROM芯片上的BIOS程序

  1. 开机主动执行BIOS 进行POST自检(Power On Self Test),会去分析有哪些硬件设备
  2. 自检没有问题之后,开始对硬件进行初始化
  3. 选择由哪个设备来开机,读取该启动设备的MBR位置,MBR被加载到RAM(根据BIOS中对启动顺序的设定,BIOS自己会依次扫描各个引导设备,然后第一个被扫描到具有引导程序(bootloader)的设备就被作为要启动的引导设备。)

第二步:MBR:

读取MBR中放置的最基本的引导加载程序(Boot loader)

第三步:加载引导加载程序(Boot loader):

引导加载程序时一个可读取内核文件来执行的软件,作用是加载内核文件,接下来就是内核的文件的工作

bootloader要实现的功能就是提供一个菜单给用户,让用户去选择要启动的系统或不同的内核版本,然后把用户选择的内核版本加载至RAM中的特定空间,接着在RAM中解压、展开,而后把系统控制权移交给内核。

第四步:内核文件:

  1. 检测硬件设备
  2. 加载硬件驱动
  3. 以只读方式挂在根文件系统
  4. 运行用户空间的第一个程序:/sbin/init/
  • 备注:

BIOS和MBR都是硬件本身会支持的功能,但是Boot loader则是操作系统安装在MBR上面的一套软件。

 

 


 

以上是关于linux--启动过程的主要内容,如果未能解决你的问题,请参考以下文章

计算机组成原理与体系结构——随机存储器和只读存储器

计算机组成原理

浅谈RAM和ROM的各种区别

Linux常用命令

Linux常用命令

山东大学软件学院计算机组成原理课程设计整机实验