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

Linux Kernel (一) 计算机启动流程简述

一、核心硬件组件

计算机启动过程始于主板上的以下几个核心部件:

  • CPU (中央处理器)
  • RAM (内存)
  • BIOS (基本输入输出系统,存储在 EEPROM 中)
  • 硬盘

二、启动流程

1. 固件初始化

  • BIOS 中的指令被加载到 RAM 中执行。
  • CPU 读取硬盘的第一个扇区,即 主引导记录 (Master Boot Record, MBR),并将其复制到 RAM 中。

2. 引导加载程序 (Bootloader)

  • 固件 (Firmware) 指示 CPU 开始运行其中的引导程序。
  • Bootloader 包含了分区表文件系统的基本信息。
  • 它的核心任务是将操作系统内核 (Kernel) 加载到 RAM 中,并通过设置 CPU 的指令指针来启动内核运行。

3. 内核与初始化

  • 内核 是操作系统的核心,负责管理进程通信、硬件驱动 (驱动程序进程)、系统服务进程等。

  • 内核自身不直接执行应用程序,而是启动初始化程序 (如 systemdinit)。

  • 初始化程序会根据配置文件(如 /etc/fstab挂载必要的文件系统。

    我的/etc/fstab文件:

    # Static information about the filesystems.
    # See fstab(5) for details.# <file system> <dir> <type> <options> <dump> <pass>
    # /dev/nvme0n1p8
    UUID=980ed768-169c-40fd-a098-d5a37d0df64e       /               ext4            rw,relatime     0 1# /dev/nvme0n1p1
    UUID=A5EB-573A          /efi            vfat            rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro   0 2# /dev/nvme0n1p9
    UUID=899dca01-0a2f-4fc9-bcfb-c5ce592f32b9       /home           ext4            rw,relatime     0 2/swapfile               none            swap            defaults        0
    

    这个文件中的第一条记录把 /dev/nvme0n1p8 这个分区挂载为根目录

    第二条记录把 /dev/nvme0n1p1 挂载为 boot 目录

三、典型硬盘分区

一个常见的 Linux 系统硬盘分区布局可能如下:

  1. 第一个分区:通常包含 Bootloader 和内核映像 (Boot Partition)。
  2. 第二个分区:根目录所在分区,包含操作系统主体文件 (Root Partition)。=
http://www.rkmt.cn/news/154358.html

相关文章:

  • ubuntu22.04安装中文输入法且与ros2与clion不冲突
  • 基于SpringBoot的顾客偏好的唯品会推荐系统设计与实现(毕业设计项目源码+文档)
  • 基于SpringBoot的果蔬仓储管理系统的设计与实现(毕业设计项目源码+文档)
  • 150_尚硅谷_数组应用实例(2)
  • 150_尚硅谷_数组应用实例(2)
  • 一键激活 Windows 与 Office 的轻量绿色工具!
  • Java-Spring 依赖注入详解--多个类实现与选择 - 若
  • 2025年西安电子科技大学计算机考研复试机试真题(附 AC 代码 + 解题思路)
  • Selenium + 超级鹰实现猎聘网滑块验证码自动登录
  • 2025年北京邮电大学计算机考研复试机试真题(附 AC 代码 + 解题思路)
  • 04. 绘图功能
  • AcWing 338:计数问题 ← 数位DP
  • 在 Cloud SQL for PostgreSQL 上启用 pgvector
  • Java-Spring 依赖注入详解 - 从零开始理解 - 若
  • 《创业之路》-754-《架构思维:从程序员到CTO》第二部分:架构师的六大生存法则与启发
  • Doris为2.1版本,但json_each不可以用解决方法
  • 微信小程序uniapp-vue校园租房指南房屋租赁
  • 数据增强(Data Augmentation)策略大全
  • Windows系统文件vsstrace.dll丢失损坏问题 下载修复方法
  • 微信小程序uniapp-vue校园美食评论餐饮配送商家 配送员
  • ATO、MTS、MTO、ETO、CTO:一文看懂制造业五大生产模式到底差在哪
  • Linux中将文本的奇数行和偶数行分别转换为单独的行
  • Windows系统文件wavemsp.dll丢失损坏 下载修复方法
  • 金字塔 物理动画
  • Windows系统文件vcomp100.dll丢失 下载修复
  • 基于SpringBoot的线上兼职招聘信息管理系统毕业设计项目源码
  • 2025最新!9个AI论文平台测评:研究生写论文痛点全解析
  • 测评5大DeepSeek推广公司,助力企业选对GEO服务商(2026年1月更新) - 品牌2025
  • Gin框架基础篇005_静态文件服务
  • 阅读笔记11