位置: 编程技术 - 正文

Linux开机启动过程详解(bootstrap)(linux开机启动过程图解)

编辑:rootadmin

推荐整理分享Linux开机启动过程详解(bootstrap)(linux开机启动过程图解),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux开机启动sh,Linux开机启动过程,linux开机启动sh,linux系统开机启动过程,linux开机启动过程图解,Linux开机启动过程,Linux开机启动过程,linux开机启动过程图解,内容如对您有帮助,希望把文章链接给更多的朋友!

了解计算机开机过程有助于我们修复开机可能出现的问题。

最初始阶段

当我们打开计算机电源,计算机会自动从主板的BIOS(Basic Input/Output System)读取其中所存储的程序。这一程序通常知道一些直接连接在主板上的硬件(硬盘,网络接口,键盘,串口,并口)。现在大部分的BIOS允许你从软盘、光盘或者硬盘中选择一个来启动计算机。

下一步,计算机将从你所选择的存储设备中读取起始的 bytes(比如光盘一开是的 bytes,如果我们从光盘启动的话)。这 bytes叫做主引导记录MBR (master boot record)。MBR会告诉电脑从该设备的某一个分区(partition)来装载引导加载程序(boot loader)。Boot loader储存有操作系统(OS)的相关信息,比如操作系统名称,操作系统内核 (kernel)所在位置等。常用的boot loader有GRUB和LILO。

随后,boot loader会帮助我们加载kernel。kernel实际上是一个用来操作计算机的程序,它是计算机操作系统的内核,主要的任务是管理计算机的硬件资源,充当软件和硬件的接口。操作系统上的任何操作都要通过kernel传达给硬件。Windows和Linux各自有自己kernel。狭义的操作系统就是指kernel,广义的操作系统包括kernel以及kernel之上的各种应用。

(Linus Torvalds与其说是Linux之父,不如说是Linux kernel之父。他依然负责Linux kernel的开发和维护。至于Ubuntu, Red Hat, 它们都是基于相同的kernel之上,囊括了不同的应用和界面构成的一个更加完整的操作系统版本。)

实际上,我们可以在多个分区安装boot loader,每个boot loader对应不同的操作系统,在读取MBR的时候选择我们想要启动的boot loader。这就是多操作系统的原理。

小结:BIOS -> MBR -> boot loader -> kernel

kernel

如果我们加载的是Linux kernel,Linux kernel开始工作。kernel会首先预留自己运行所需的内存空间,然后通过驱动程序(driver)检测计算机硬件。这样,操作系统就可以知道自己有哪些硬件可用。随后,kernel会启动一个init进程。它是Linux系统中的1号进程(Linux系统没有0号进程)。到此,kernel就完成了在计算机启动阶段的工作,交接给init来管理。

Linux开机启动过程详解(bootstrap)(linux开机启动过程图解)

小结: kernel -> init process

init process

(根据boot loader的选项,Linux此时可以进入单用户模式(single user mode)。在此模式下,初始脚本还没有开始执行,我们可以检测并修复计算机可能存在的错误)

随后,init会运行一系列的初始脚本(startup scripts),这些脚本是Linux中常见的shell scripts。这些脚本执行如下功能:

设置计算机名称,时区,检测文件系统,挂载硬盘,清空临时文件,设置网络……

当这些初始脚本,操作系统已经完全准备好了,只是,还没有人可以登录!!!init会给出登录(login)对话框,或者是图形化的登录界面。输入用户名(比如说vamei)和密码,DONE!

在此后的过程中,你将以用户(user)vamei的身份操作电脑。此外,根据你创建用户时的设定,Linux还会将你归到某个组(group)中,比如可以是stupid组,或者是vamei组。

所以你将是用户vamei, 同时是vamei组的组员。(注意,组vamei和用户vamei只是重名而已,就好想你可以叫Dell, 同时还是Dell公司的老板一样。你完全也可以是用户vamei,同时为stupid组的组员)

总结

BIOS -> MBR -> boot loader -> kernel -> init process -> login

用户,组。

Linux文件系统面面观 对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我们把数

Linux文本流和标准输入、标准输出、标准错误与重定向介绍 文本流文件用于数据的存储,相当于一个个存储数据的房子。我们之前说,所谓的数据是0或者1的序列,但严格来说,Linux以字节(byte)来作为数据的单位

Linux命令和命令行详解 Linux的命令是很重要的工具,也往往是初学者最大的瓶颈。有朋友用了很长时间的Linux图形界面,基本不使用命令行输入命令执行,所以装的Linux最终成

标签: linux开机启动过程图解

本文链接地址:https://www.jiuchutong.com/biancheng/353489.html 转载请保留说明!

上一篇:Linux操作系统简介和流行的厂商版本介绍(linux操作系统百度百科)

下一篇:Linux文件系统面面观(linux 文件)

  • 税收的基本特征包括?
  • 汽车运输企业付给车主的运费算成本吗
  • 公司购买设备报告怎么写
  • 购买土地自建厂房,土地怎样摊销
  • 公司支付宝账户要交税吗
  • 售后维修的配件开维修费
  • 盈余公积未分配利润
  • 前年购买的设备怎么入账
  • 出售旧房及建筑物计算土地增值税
  • 京东企业提现
  • 超过认证期限的发票怎么处理
  • 收地方工会的专用发票
  • 申请最高开票限额不超过10万元的无需事前实地查验
  • 融资租赁收到租金不确认收入
  • 增值税一般项目是指什么
  • 旅行社差额征税如何开票
  • 委托加工业务流程图
  • 房屋融资租赁会计处理
  • 销售收入增加会导致哪些变动
  • 金蝶怎么一次性删除所有分录
  • 员工报销可以从一般账户转出吗
  • 电脑管家使用教程
  • php数组函数题目
  • 核定征收的企业怎么交所得税
  • 户外广告位怎么收费
  • PHP:mcrypt_enc_get_algorithms_name()的用法_Mcrypt函数
  • 以摊余成本计量的金融负债
  • 个人所得税的征收模式为()A分类征收B综合征收C
  • python中各种颜色
  • php正则表达式匹配字符串
  • yii2框架优秀在哪里
  • 厂房改造支出可以计入厂房价值吗
  • dpkg -s命令
  • 购买方如何开具红字发票给销售方
  • python字典遍历key
  • 股权转让协议受让方应注意
  • 个人代扣代缴社保分录
  • 材料采购账务处理思维图怎么做
  • 资产负债表和利润表的认定
  • 建筑公司可以开3个点的专票吗
  • 人工智能自动对焦又叫什么
  • 分公司注销需要什么材料
  • 核定征收企业可以享受研发费用加计扣除
  • 公司车辆过户给个人需要多少费用
  • 金税四期对企业纳税管理影响分析
  • 其他应付款里借方有余额代表什么
  • 收入费用表本期盈余与资产负债表不一致
  • 发票服务内容写错怎么办
  • 企业买期货账务处理
  • 收到国税退款的分录
  • 非流动资产基金对应的新科目
  • 应收账款是否算负债
  • 商业折扣和销售折让计入财务费用吗
  • 差旅津贴和差旅补贴需要申报个税吗?
  • 小企业的建账流程
  • ubuntul
  • 如何用u盘装系统盘
  • virtualbox安装win7详细教程
  • browsercore.exe是什么
  • windows7怎
  • WIN10系统CPU占用率高
  • centos启动按e没用
  • Win10年度更新正式发布:功能全面升级
  • react 技巧
  • opengles版本过低怎么办
  • fragment的context
  • css实现放大缩小的动画效果
  • android新手入门
  • shell命令su
  • javascript 基础
  • unity ugui源码
  • Metaio in Unity3d 教学--- 三. 使用ID Marker作为扫描目标
  • Android音乐播放器评论功能怎么实现
  • 怎么用python画图具体步骤
  • 国家税务12366电子税务局重庆
  • 出口免税不退税主要适用于什么情形
  • 进项税销项税抵扣公式
  • 深圳坪山税务局电话人工客服电话
  • 如何落实请示汇报
  • 租房协议中怎样签字
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设