电脑从按电源键开始到系统启动的全过程

说明

本文主要讲解windows系统及linux系统电脑从开机按电源键到操作系统启动完毕的全过程讲解。

Windows系统启动

Windows系统电脑从按下电源键到系统启动完成,这一过程称为"启动过程"或"开机过程"。从按下电源键到Windows系统启动完成,整个过程涉及硬件初始化、引导加载、内核加载、系统服务启动、用户登录和会话初始化等多个步骤。每一个步骤都至关重要,确保系统能够正常启动和运行。如果任何一个步骤出现问题,可能会导致启动失败或系统异常。以下是详细的步骤和解释:

1.按下电源键

  • 电源供应:当你按下电源键时,电源供应器(PSU)开始向计算机的各个组件提供电力。

2.BIOS/UEFI 初始化

  • 电源自检(POST):BIOS或UEFI固件开始执行电源自检(Power-On Self Test, POST),检查计算机硬件是否正常工作,如内存、硬盘、显卡、键盘等。任何错误会通过蜂鸣声或屏幕信息提示。
  • 硬件初始化:初始化硬件设备,如CPU、内存、图形卡等。
  • 引导设备选择:根据BIOS/UEFI设置的引导顺序,选择合适的引导设备(通常是硬盘、SSD或光驱)。

3.引导加载程序(Boot Loader)

  • MBR/GPT:BIOS系统读取主引导记录(MBR)或UEFI系统读取GUID分区表(GPT)的引导扇区。
  • 加载引导加载程序:从引导设备的引导扇区加载引导加载程序。常见的引导加载程序包括Windows Boot Manager(BOOTMGR)和GRUB(用于多系统引导)。

4.Windows Boot Manager

  • Windows Boot Manager工作:Windows Boot Manager(BOOTMGR)读取Boot Configuration Data(BCD)存储中的配置信息,确定要启动的Windows操作系统。
  • 加载Windows内核和底层驱动程序:BOOTMGR加载Windows内核(ntoskrnl.exe)、硬件抽象层(HAL.dll)以及其他关键文件和驱动程序。

5.Windows内核加载

  • 内核初始化:Windows内核开始初始化系统,包括加载核心驱动程序、初始化内存、设置系统进程和线程管理等。
  • 加载注册表和驱动程序:内核加载系统注册表和所有必要的驱动程序,以支持硬件设备。

6.Windows启动过程

  • 启动用户模式驱动程序:内核启动用户模式驱动程序,负责管理硬件设备和提供系统服务。
  • 启动系统服务:启动关键的系统服务和后台进程,如服务控制管理器(SCM)、本地安全授权子系统服务(LSASS)等。

7.用户登录界面

  • 启动登录界面:Windows显示登录界面(login screen),等待用户输入登录凭据(用户名和密码)。
  • 验证用户身份:系统验证用户输入的登录凭据,确认用户身份。

8.用户会话初始化

  • 加载用户配置:系统加载用户个人配置文件,包括桌面设置、用户特定的注册表项等。
  • 启动用户进程:启动用户特定的进程和应用程序,如文件资源管理器(explorer.exe),加载桌面、任务栏和开始菜单。

9.完成启动

  • 完成启动:Windows桌面环境完全加载,用户可以开始操作系统的正常使用。

Linux系统启动

从按下电源键到Linux系统启动完成,整个过程涉及硬件初始化、引导加载、内核启动、系统服务启动、用户登录和会话初始化等多个步骤。每一个步骤都至关重要,确保系统能够正常启动和运行。如果任何一个步骤出现问题,可能会导致启动失败或系统异常。Linux系统电脑从按下电源键到系统启动完成,整个启动过程大致可以分为以下几个步骤:

1.按下电源键

  • 电源供应:当你按下电源键时,电源供应器(PSU)开始向计算机的各个组件提供电力。

2.BIOS/UEFI 初始化

  • 电源自检(POST):BIOS或UEFI固件开始执行电源自检(Power-On Self Test, POST),检查计算机硬件是否正常工作,如内存、硬盘、显卡、键盘等。任何错误会通过蜂鸣声或屏幕信息提示。
  • 硬件初始化:初始化硬件设备,如CPU、内存、图形卡等。
  • 引导设备选择:根据BIOS/UEFI设置的引导顺序,选择合适的引导设备(通常是硬盘、SSD或光驱)。

3.引导加载程序(Boot Loader)

  • MBR/GPT:BIOS系统读取主引导记录(MBR)或UEFI系统读取GUID分区表(GPT)的引导扇区。
  • 加载引导加载程序:从引导设备的引导扇区加载引导加载程序。常见的引导加载程序包括GRUB(Grand Unified Bootloader)、LILO(Linux Loader)等。

4.GRUB 引导加载程序

  • GRUB菜单:GRUB显示引导菜单,允许用户选择要启动的操作系统或内核版本。
  • 加载内核和initramfs:GRUB加载选定的Linux内核(vmlinuz)和初始内存盘(initramfs/initrd),它们包含启动所需的基本驱动程序和文件系统。

5.内核启动

  • 内核解压和初始化:Linux内核解压并开始初始化各个子系统,包括内存管理、进程管理、设备驱动程序等。
  • 挂载initramfs:内核挂载初始内存盘(initramfs)为临时根文件系统,执行其内的初始脚本(init)。
  • 设备检测和驱动加载:内核检测硬件设备并加载相应的驱动程序。

6.init进程启动

  • 启动init进程:内核查找并启动系统的第一个进程,即init进程。传统上,init进程是PID为1的进程,通常是SysV init(/sbin/init),但现代系统多使用systemd(/lib/systemd/systemd)或其他替代方案如Upstart。
  • 执行启动脚本:init进程根据配置文件执行启动脚本或启动单元,初始化系统服务和守护进程。

7.系统服务启动

  • 启动系统服务:init进程启动各种系统服务和守护进程,如网络服务、日志服务、数据库服务等。具体启动的服务取决于系统配置和启动目标(runlevel或target)。
  • 挂载文件系统:启动过程中,系统会挂载所有需要的文件系统,包括根文件系统、/home、/var等。

8.登录界面

  • 启动登录管理器:对于桌面环境,init进程会启动显示管理器(如gdm、lightdm、sddm等),提供图形化登录界面。对于服务器或纯文本模式,启动getty进程提供文本登录界面。
  • 用户登录:用户输入用户名和密码,登录管理器或getty验证用户凭据。

9.用户会话初始化

  • 启动用户会话:验证成功后,系统启动用户的会话,加载用户配置文件、环境变量等。
  • 启动桌面环境或命令行:对于桌面环境,系统会启动相应的桌面环境(如GNOME、KDE等),加载桌面、任务栏和应用程序。对于纯文本模式,系统会启动shell(如bash、zsh等)。

10.完成启动

  • 系统准备就绪:用户会话完全加载,系统启动完成,用户可以开始使用操作系统。
相关推荐
不吃香菜的猪7 小时前
华硕电脑,全新的超频方式,无需进入BIOS
电脑·华硕·cpu超频
Digitally9 小时前
如何以 9 种方式将照片从手机传输到笔记本电脑
智能手机·电脑
Digitally2 天前
如何在电脑上轻松访问 iPhone 文件
ios·电脑·iphone
AidLux2 天前
在不同型号的手机或平板上后台运行Aidlux
智能手机·电脑·aidlux
电手2 天前
Win10停更,Win11不好用?现在Mac电脑比Win11电脑更便宜
windows·macos·电脑·mac
浅水鲤鱼2 天前
笔记本电脑开机无线网卡自动禁用问题
电脑
Digitally3 天前
如何轻松将视频从安卓设备传输到电脑?
android·电脑·音视频
Rverdoser3 天前
电脑频繁黑屏怎么办
电脑
EstrangedZ3 天前
使用Virtual Serial Port Driver+com2tcp(tcp2com)进行两台电脑的串口通讯
电脑
hgdlip3 天前
电脑为什么换个ip就上不了网了
网络·tcp/ip·电脑