当前位置: 首页 > news >正文

心路历程-启动流程的概念

我们之前已经安装过系统,其实兴奋的内心已经无以言表;

记得刚开始的那份喜悦是没办法演说的;可是高兴之余,好像突然又心情EMO了;

为何呢?因为系统装完了,你也不知道能够干什么;

所以承接上去的就是给自己列一下这个学习的线路,目的就是怕自己迷茫和担心自己坚持不下去;

那么接下来往下继续学习了;

1、启动流程讲解

启动流程的概念?相比这个是一个挺都没听过的概念;不就是我们理解的电脑开机吗?那么这个启动流程又是什么?

不管是Windows还是Linux,底层也是硬件,那么系统启动就会检测硬件、硬盘引导系统启动;那么这一个过程可以理解为启动流程了;

先了解一下启动相关的几个概念:

  • BIOS:基本输入输出系统(Basic Input Output System,BIOS)
    • 就是固化到计算机主板上的只读内存镜像(Read Only Memory image,ROM)芯片上面的程序
    • 主要用来记录系统的设置信息,启动顺序;给底层硬件给与控制;
  • MBR:引导记录扇区(Main Boot Record,MBR)
    • 之前讲解过的就是两个分区格式:一种是MBR、一种是GPT
    • MBR是计算机启动最先执行的硬盘上的程序,只有512字节大小,
  • GPT:全局唯一的标识符(Globally unique identifier,GUID)
    • UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR
  • GRUB:GNU项目的多操作系统启动程序(GRand Unified Bootloader,GRUB)
    • 这个是常见的引导程序;
    • 有LILO/GRUB/GRUB2

以上就是大概知道的一些概念,对于后面理解这个启动流程相对比较好,如果使用这个通俗一点的语言就更加nice了;了解完了,直接介入主题,

2、Linux的启动流程

这里我们需要通过画一下流程图来解释一下这个启动的概念;

不过这个概念比较老旧了,是以前版本的Linux的启动流程;

有总比没有的直观,别嫌弃;将就地看吧;

在这里插入图片描述

此时此刻,必须结合文字版的来吧

bios质检:

  • 加载基本输入输出系统;
  • BIOS就包含有CPU、内存、硬盘、
  • 包含有启动顺序、内存信息等等的硬件设施;

读取MBR:

  • 就是找硬盘的MBR引导扇区

GRUB引导:

  • 计算机启动的第一个软件程序,
  • 并且它会读取内存中GRUB的配置信息,根据信息来启动硬盘中不同的系统

加载Kernel:

  • 就是加载内核,在内存映像读取完,调用Start_kernel()函数来启动系统;
  • 主要完成Linux的核心环境建立;

指定运行级别:

  • 内核加载完了,就会进入第一个守护进程init;
  • 然后就读取inittab文件,这个就是指定Linux的运行级别
  • Linux的运行级别如下:
    • 0:关机
    • 1:单用户
    • 2:无网路支持的多用户
    • 3:字符界面的多用户
    • 4:保留字段
    • 5:图形界面的多用户模式
    • 6:重启

加载内核模块:

  • 内核模块就在modules.conf文件
  • 读取rc0.d~rc6.d目录下的脚本文件
  • 这里主要的还是设置开机自启动的服务

读取rc.local文件

  • 系统启动完对应的服务之后,会读取这个文件,
  • 重点是这个文件里面存放了一下你想要开机自检的系统脚本,或者对应的命令;

最后:执行/bin/login程序

  • 到这里就是启动到系统登录的页面了
  • 就是我们看到的输入账号密码的页面;

终于整理完了,这个启动的流程听起来就比较复杂,也不好懂;

我自己整理过后其实也没完全记住了;并且这个启动流程也比较老旧了,所以可以忽略了其实,作为拓展知识来理解就对了;

理论的知识点还是有很多的;虽然很乏味,最起码我整理出来也不止我一个人比较乏味哈哈哈,分享出来让大家也一起乏味;这不挺好的吗;嘻嘻~!

http://www.lryc.cn/news/625937.html

相关文章:

  • 如何让你的知识分享更有说服力?
  • RNN如何将文本压缩为256维向量
  • AC内容审计技术
  • 单一职责原则(SRP)深度解析
  • django生成迁移文件,执行生成到数据库
  • CNN-LSTM-Attention、CNN-LSTM、LSTM三模型多变量时序光伏功率预测
  • 开源 GIS 服务器搭建:GeoServer 在 Linux 系统上的部署教程
  • Scikit-learn通关秘籍:从鸢尾花分类到房价预测
  • Vim笔记:缩进
  • 从一个ctf题中学到的多种php disable_functions bypass 姿势
  • 重塑酒店投屏体验:私密投屏技术的革新应用
  • 基于单片机智能点滴输液系统
  • 24.早期目标检测
  • 2025年- H99-Lc207--32.最长有效括号(栈、动态规划)--Java版
  • strlen 函数的使用与模拟实现
  • 云原生俱乐部-mysql知识点归纳(2)
  • Java网络编程:TCP与UDP通信实现及网络编程基础
  • 无人机场景 - 目标检测数据集 - 山林野火烟雾检测数据集下载「包含VOC、COCO、YOLO三种格式」
  • FastAPI 请求详解:全面掌握各种请求类型处理
  • 《基于大数据的全球用水量数据可视化分析系统》用Python+Django开发,为什么导师却推荐用Java+Spring Boot?真相揭秘……
  • 实践项目-1
  • Matplotlib数据可视化实战:Matplotlib图表注释与美化入门
  • LeetCode100-560和为K的子数组
  • Rust学习笔记(七)|错误处理
  • 2025年渗透测试面试题总结-21(题目+回答)
  • 堆、方法区、虚拟机栈、本地方法栈、程序计数器
  • RabbitMQ:SpringAMQP 多消费者绑定同一队列
  • Java配置文件
  • 第1章 React组件开发基础
  • 第10章 React应用测试