Category 礼包中心

概述Linux启动过程主要分为以下几个阶段:

BIOS/UEFI启动

Boot Device引导

Boot Loader执行

内核引导

用户空间初始化,驱动程序加载、内核模块加载、启动1号进程,并由其启动其他用户空间进程

具体的启动过程如下图所示:

BIOS/UEFI启动BIOS是一种固化在计算机主板上的固件,用于初始化硬件设备、加载引导程序并启动操作系统。UEFI是BIOS的替代品,提供了更多的功能和更好的兼容性。

BIOS/UEFI启动过程主要包括以下几个步骤:

加电自检(Power-On Self-Test,POST):计算机加电后,BIOS/UEFI会进行硬件自检,检查硬件设备是否正常。

加载引导程序:BIOS/UEFI会从硬盘、光盘、USB等设备中加载引导程序,将控制权交给引导程序。

BIOS/UEFI对比

​对比维度

​BIOS

​UEFI

​架构与运行模式

基于16位实模式,仅支持32位处理器,代码以汇编语言编写

基于64位保护模式,支持32/64位处理器,模块化设计,代码以C语言编写

​启动方式

依赖MBR分区表(最大支持2TB硬盘),需完整硬件自检(POST),速度较慢

支持GPT分区表(支持超2TB硬盘),并行加载驱动和内核,跳过硬件自检,启动更快

​用户界面

仅支持文本界面,通过键盘操作

提供图形化界面,支持鼠标操作和高级交互

​安全性

无安全启动功能,易受引导区病毒攻击

支持安全启动(Secure Boot),验证数字签名防止恶意软件加载

​兼容性

仅兼容旧操作系统(如Windows 7及更早版本)

支持现代操作系统(Windows 8+/Linux等),提供CSM模式兼容Legacy BIOS

​分区管理

最多4个主分区(或3主分区+1扩展分区)

支持GPT分区表,理论上无分区数量限制,支持更大容量存储

​驱动支持

依赖操作系统加载驱动,启动后硬件功能才可用

固件级别加载驱动,操作系统启动前即可使用硬件功能(如网络启动PXE)

​扩展性

存储空间有限(通常≤64KB),功能扩展困难

固件存储空间更大,支持模块化更新和扩展功能(如远程诊断)

​典型应用场景

旧硬件设备、传统系统维护场景

现代计算机、大容量存储设备、安全敏感型系统

Boot Device引导引导设备是存储引导程序的设备,可以是硬盘、光盘、USB等。BIOS/UEFI会从引导设备中加载引导程序,将控制权交给引导程序。

那么引导的位置在哪儿呢?这个问题涉及到硬盘的分区表格式:

MBR(Master Boot Record):MBR是硬盘的第一个扇区,大小为512字节,包含分区表和引导程序。

GPT(GUID Partition Table):GPT是一种新的分区表格式,支持更大的硬盘容量和更多的分区,引导程序通常存储在EFI系统分区中。

对于MBR格式的硬盘,引导程序通常存储在硬盘的第一个扇区(MBR区)中。对于GPT格式的硬盘,引导程序通常存储在EFI系统分区中。

Boot Loader执行引导程序(Boot Loader)是一个小程序,用于加载操作系统内核并启动操作系统。最常见的引导程序是GRUB。

引导程序的主要功能包括:

加载内核:引导程序会从硬盘中加载操作系统内核到内存中。

启动内核:引导程序会将控制权交给内核,启动操作系统。

内核引导内核引导是操作系统内核的启动过程,主要包括以下几个步骤:

内核初始化:内核会初始化硬件设备、建立内存映射等。

启动用户空间:内核会启动用户空间的初始化进程(1号进程)。

用户空间初始化用户空间初始化是操作系统启动后的第一个用户空间进程,主要负责加载驱动程序、内核模块、初始化用户空间环境等。

用户空间初始化的主要工作包括:

加载驱动程序:用户空间初始化会加载硬件驱动程序,使硬件设备可以正常工作。

加载内核模块:用户空间初始化会加载内核模块,扩展内核功能。

启动1号进程:用户空间初始化会启动1号进程(init进程),并由1号进程启动其他用户空间进程。

1号进程1号进程是用户空间初始化的第一个进程,通常是init进程或systemd进程。1号进程负责启动其他用户空间进程,维护系统运行状态等。

systemd是目前主流的1号进程,它是一个系统和服务管理器,负责启动和管理系统服务、进程和资源。systemd提供了更多的功能和更好的性能,逐渐取代了传统的init进程。

总结Linux启动过程主要分为BIOS/UEFI启动、Boot Device引导、Boot Loader执行、内核引导、用户空间初始化等阶段。在这些阶段中,BIOS/UEFI负责硬件初始化和引导程序加载,Boot Loader负责加载内核和启动操作系统,内核负责初始化硬件设备和启动用户空间,用户空间初始化负责加载驱动程序、内核模块和启动其他用户空间进程。整个启动过程是一个层层递进的过程,每个阶段都有其特定的功能和作用,最终实现了操作系统的启动和运行。

Copyright © 2088 聚星网游活动中心-最新游戏资讯与福利放送 All Rights Reserved.
友情链接