linux操作系统开机启动,简述linux操作系统启动流程
1、POST : 加电自检
当给计算机上电,主板上的CMOS芯片获得电源,会执行其上的BIOS(基本输入输出系统Basic I/O System)程序 。BIOS程序会根据CMOS上的硬件配置信息,去检查硬件是否存在及是否能正常工作,最后进行硬件初始化。
2、加载bootloader
根据启动顺序找到第一个可以启动的磁盘,加载其MBR中的BootLoader ; BootLoader就是将内核加载至内存中、解压展开。
由于MBR只有512byte,Bootloader占用前446bytes,这么小的空间不可能放置很多的程序,所以Bootloader(grub)就分为3个阶段(stage)完成:
stage1: 加载Bootloader的主程序(位于MBR中)用于加载stage 1.5的代码;
stage1.5: 位于MBR之后的扇区,让statge1中的bootloader能够识别stage2所在的分区文件系统;
stage2:通过Bootloader加载所有的配置文件及相关参数,这些参数都位于磁盘/boot/grub中;
3、内核初始化
此时BootLoader需要将内核程序加载至内存,并进行解压,展开,控制权也移交给内核;内核需要检测硬件设备,并加载硬件驱动;但是内核程序本身也是放在硬盘的/boot分区上,这就需要先加载硬盘驱动;
此时就需要一个临时根文件系统代替一个真正的文件系统行使权力,即initrd. Bootloader会将initrd程序加载至内存,initrd会模拟出一个虚拟的根文件系统,这样就可以加载硬件驱动等启动过程中需要的程序,加载完成后,并完成根切换;然后内核运行用户空间第一个程序/sbin/init ,至此,系统将交由init进行管理;
4、init 初始化
init 主要是进行软件环境初始化,它会读取配置文件/init/inittab(cent5/6)或systemd(centos7),读取默认运行级别;运行 /etc/rc.d/rc.sysinit 进行系统初始化;关闭相应级别的需要停止的服务,启动对应级别下需要开启的服务--->设置登录终端;至此,系统启动完毕。。。
linux操作系统开机启动,简述linux操作系统启动流程相关推荐
- 内核提速开机linux,Linux操作系统开机启动提速方法介绍。
Linux系统是十分优秀的操作系统,但启动时间长是该系统的缺点之一.那么能否通过一些设置来缩短Linux系统的启动时间呢?当然可以.本文将向读者展示如何在不牺牲Linux系统可用性的前提下,缩短系统的 ...
- linux服务开机启动chkconfig,Linux开机服务自启动之chkconfig命令详解
1. 了解chkconfig chkconfig是用于管理应用程序是否随系统自启动. chkconfig仅仅是高效管理工具,包括设置和查询,但并不必要.没有它,也有很多方法可以使程序开机自启动. ch ...
- linux mongodb开机启动脚本,Linux下设置MongoDB开机自启动
将MongoDB服务加入随机启动 vi /etc/rc.local 使用vi编辑器打开配置文件,并在其中加入下面一行代码 /usr/local/mongodb/bin/mongod -dbpath=/ ...
- 嵌入式linux的u-boot系统启动过程,嵌入式linux操作系统u-boot启动顺序以及代码解析...
嵌入式linux操作系统u-boot启动顺序以及代码解析 (9页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 Bootloader/u-bo ...
- linux自定义开机启动服务和chkconfig使用方法
文章转载! linux自定义开机启动服务和chkconfig使用方法 1. 服务概述 在linux操作系统下,经常需要创建一些服务,这些服务被做成shell脚本,这些服务需要在系统启动的时候自动启动, ...
- linux修改开机启动,Linux修改开机启动logo
默认开机LOGO会在液晶屏的左上脚显示一只小企鹅,分辨率为80*80,具体在kernel/drivers/video/logo下会有logo_linux_clut224.ppm这幅图像,程序会根据这幅 ...
- linux 添加开机启动项的三种方法。
原文地址: https://blog.csdn.net/lylload/article/details/79488968 Shell环境变量配置文件:https://blog.csdn.net/yzs ...
- linux 添加开机启动项的三种方法
linux 添加开机启动项的三种方法. (1)编辑文件 /etc/rc.local 输入命令:vim /etc/rc.local 将出现类似如下的文本片段: #!/bin/sh # # This sc ...
- Linux 添加开机启动项的三种方法
linux 添加开机启动项的三种方法. (1)编辑文件 /etc/rc.local 输入命令:vim /etc/rc.local 将出现类似如下的文本片段: #!/bin/sh # # This sc ...
- archlinux grub启动无win7_CentOS Linux操作系统各种启动和服务管理
CentOS7.3学习笔记总结(六十七)- CentOS Linux操作系统各种启动和服务管理 linux启动流程: CentOS5.6: 开机主板自检-MBR引导-装在GRUB-加载内核-Init进 ...
最新文章
- .NET Remoting中的通道注册
- 重做日志和控制文件的多路复用
- harmonyos能装app吗,真机运行HarmonyOS应用APP
- linux——yum的搭建说明
- eclipse实现批量修改文件的编码方式
- 《程序员开发心理学》阅读笔记一
- 实验二 预测分析算法的设计与实现
- 华为笔记本linux好不好,华为笔记本怎么样
- 修改计算机照片格式怎么修,电脑上如何修改照片文件大小?2种免费方法简单解决...
- linux怎么样用终端打开百度,linux下用终端访问百度网站.doc
- 2021年河南省高考数据统计:河南省参加考试人数占报名人数的83.7%,本土156所高校(1所211大学)
- 关于深度态势感知问题的思考
- UESTC-2016dp专题 F 柱爷与三叉戟不得不说的故事
- 2. ROS安装(官网教程/简单好用)
- Java——继承、方法覆盖
- Asp.net2.0电子商务网源码
- 荣耀发布开发者服务平台,智慧生态合作提速
- vue判断在安卓app、IOSapp、微信浏览器、安卓浏览器、IOS浏览器、PC浏览器下作不同处理
- jfinal连接oracle_jfinal数据库连接配置
- 傅立叶变换c语言实现