linux启动过程

简介:

1、开机BIOS自检
2MBR引导
3grub引导菜单
4、加载内核kernel

5、初始化系统

Linux启动过程详解:
第一步——加载BIOS
当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。

第二步——读取MBR
众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。

系统找到BIOS所指定的硬盘的MBR后,就会将其复制到0x7c00地址所在的物理内存中。其实被复制到物理内存的内容就是Boot Loader,而具体到你的电脑,那就是lilo或者grub了。

第三步——Boot Loader
Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态, 
系统读取内存中的grub配置信息(一般为menu.lstgrub.lst),并依照此配置信息来启动不同的操作系统。

第四步——加载内核
根据grub设定的内核映像所在路径,系统读取内存映像,并进行解压缩操作。此时,屏幕一般会输出“Uncompressing Linux”的提示。当解压缩内核完成后,屏幕输出“OK, booting the kernel”。系统将解压后的内核放置在内存之中,并调用start_kernel()函数来启动一系列的初始化函数并初始化各种设备,完成Linux核心环境的建立。至此,Linux内核已经建立起来了,基于Linux的程序应该可以正常运行了。


第五步--初始化系统

















本文转自信自己belive51CTO博客,原文链接:http://blog.51cto.com/11638205/1881234 ,如需转载请自行联系原作者


相关文章
|
安全 Linux Windows
Linux科普扫盲系列(Linux启动安装U盘的制作)
Linux科普扫盲系列(Linux启动安装U盘的制作)
630 0
Linux科普扫盲系列(Linux启动安装U盘的制作)
|
10月前
|
Linux 程序员 Apache
Linux操作系统计算机的整个启动过程(一)
Linux操作系统计算机的整个启动过程
101 0
|
Java Linux Shell
Linux下启动java程序的通用脚本
Linux下启动java程序的通用脚本
342 0
|
NoSQL Linux Redis
Linux系统Redis安装教程-附带后台启动
Linux系统Redis安装教程-附带后台启动
Linux系统Redis安装教程-附带后台启动
|
安全 Linux
linux 安装Elasticsearchhe和kibana以及启动遇到的错误解决(已成功运行)
linux 安装Elasticsearchhe和kibana以及启动遇到的错误解决(已成功运行)
275 0
|
存储 Linux 编译器
Linux内核在arm上的启动过程
Linux内核在arm上的启动过程
108 0
Linux内核在arm上的启动过程
|
存储 NoSQL Linux
Linux 系统中的安装启动和连接 | 学习笔记
快速学习 Linux 系统中的安装启动和连接
85 0
Linux 系统中的安装启动和连接 | 学习笔记
|
NoSQL Linux Redis
Linux 环境安装 redis-配置文件启动目录管理|学习笔记
快速学习 Linux 环境安装 redis-配置文件启动目录管理
79 0
|
Shell Linux C语言
【Linux】【操作】Linux操作集锦系列之三——进程管理系列之(二) 进程启动
【Linux】【操作】Linux操作集锦系列之三——进程管理系列之(二) 进程启动
|
SQL Linux 网络安全
SQLServer On Linux 常用操作(启动、停止、启用、禁用、浏览)|学习笔记
快速学习 SQLServer On Linux 常用操作(启动、停止、启用、禁用、浏览)
1312 0