电脑启动需要经历哪些过程?

news2025/1/16 14:05:48

传统BIOS启动流程

在这里插入图片描述

1. BIOS

BIOS 启动,BIOS程序是烧进主板自带的ROM里的,所以无硬盘也可以启动。BIOS先进行自检,检查内存、显卡、磁盘等关键设备是否存在功能异常,会有蜂鸣器汇报错误,无错误自检飞快结束。

硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序。需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。这种排序叫做启动顺序。可以在BIOS中设置。

2. 主引导

BIOS按照"启动顺序"读取第一位的储存设备。判断有没有MBR,如果有就读取。MBR:存储设备中的第一个扇区,磁盘最前面的512Byte,称为“主引导扇区”(Master boot record,缩写为MBR)

MBR很小,只有512字节,存放程序很小,其主要作用是:告诉计算机在哪一个位置去找操作系统。

MBR由三个部分组成:调用操作系统的机器码、硬盘分区表(Partition table)、主引导记录签名(0x55和0xAA)(用于判断这段程序是不是主引导,不是的话就按启动顺序往下继续找)

3. 硬盘启动

这时,计算机的控制权就要转交给硬盘的某个分区了。分成三种情况:情况A:卷引导记录、情况B:扩展分区和逻辑分区、情况C:启动管理器。

Linux环境中,目前最流行的启动管理器是Grub。Windows是Windows Boot Manager。

4. 操作系统

控制权转交给操作系统后,操作系统的内核首先被载入内存。最后完成所有启动流程。

UEFI启动

UEFI:UEFI 是 BIOS 的升级版本,是一种更现代的固件接口,逐渐取代传统 BIOS。现在的华硕主板的BIOS界面都很好看,还能支持鼠标操作,这就是UEFI了。

UEFI 使用 GPT 分区标准,取代了旧的 MBR 标准。这让 UEFI 可以从超过 2TB 的大容量硬盘启动,而且理论上也没有磁盘大小限制。它支持 32 位和 64 位系统启动,并提供了安全启动 (Secure Boot) 等功能,不仅启动速度更快,还能检测恶意软件,确保启动过程未被篡改。

UEFI与BIOS的主要区别:

区别BIOSUEFI
分区表使用主引导记录 (MBR)使用全局唯一标识分区表 (GPT)
数据存储存储在主板的 BIOS 芯片上存储在存储设备的 EFI 文件中
运行模式只能在 16 位模式下工作可以在 64 位模式下运行,可寻址内存更大
用户界面仅支持键盘导航的文本界面提供更直观的图形界面,支持鼠标操作
网络支持无网络功能有些具备网络功能,可在线更新固件,远程排除故障

UEFI 最终也是需要启动一个引导程序(如 GRUB 或 Windows Boot Manager)来完成操作系统的启动过程。

在启动了GRUB之后,是可以编辑启动配置项的。比如可以禁用一些驱动(例如nouvea)来解决bug。

UEFI是怎么处理双系统的

在UEFI系统的硬盘上,有一个专门的分区叫做 EFI 系统分区(ESP),这里存放着每个操作系统的引导程序,比如 Windows 的 bootmgfw.efi 和 Linux 的 grubx64.efi

如果你的电脑装了双系统,比如 Windows 和 Linux,当你安装操作系统时,它们都会在 ESP 中添加自己的引导程序,同时告诉 UEFI 固件这个启动文件的位置。Windows 会创建自己的引导程序 bootmgfw.efi,默认直接启动 Windows。而 Linux 安装时,通常会使用 GRUB 作为引导程序,并把 GRUB 设置为默认的启动项。GRUB 很强大,它不仅能加载 Linux 系统,还能自动检测到 Windows 的存在,并在启动时提供一个菜单,让你选择启动 Windows 或 Linux。

如果安装顺序是先装 Windows 再装 Linux,Linux 的 GRUB 通常会接管启动流程。这意味着当你开机时,电脑会优先加载 GRUB,然后你可以从菜单里选择想进入的操作系统。但如果 Windows 后来更新系统,它可能会覆盖 GRUB,把自己设为默认启动项。这时你会发现电脑直接进入 Windows,而看不到 GRUB 的菜单。这种情况下,可以通过调整 UEFI 的启动顺序,或者用 Linux 的工具(比如 sudo update-grub)重新修复启动菜单。

如果先装 Linux 再装 Windows,大概率会把 Linux 的引导程序(通常是 GRUB)覆盖掉,导致开机时直接进入 Windows 系统,而无法看到 Linux 的启动菜单。这是因为 Windows 安装程序在处理引导设置时,不会主动识别或保留其他操作系统的引导程序。Windows 安装完成后,会覆盖原来的引导加载程序(GRUB),导致无法直接启动 Ubuntu。这时需要修复 GRUB 来恢复双系统启动选项。可以使用 Ubuntu 安装介质(U盘)启动计算机,进入 Ubuntu 的 “试用” 模式(在安装界面选择 “试用 Ubuntu” 而不是 “安装 Ubuntu”)。然后打开终端,使用命令来重新安装和修复 GRUB。例如,在终端中输入 “sudo mount /dev/sdaX/mnt”(其中 sdaX 是 Ubuntu 系统分区的设备名称,需要根据实际情况替换),将 Ubuntu 分区挂载到 /mnt 目录下,接着输入 “sudo grub - install – root - directory=/mnt/dev/sda”(假设硬盘设备名称是 sda)来重新安装 GRUB,这样就可以恢复双系统启动选项,在启动时可以选择进入 Ubuntu 或者 Windows。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2250579.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PYNQ 框架 - OV5640驱动 + Linux 驱动分析

目录 1. 简介 1.1 博文要点 1.2 V4L2 2. 极简 Char 驱动 2.1 源码 2.2 Makefile 2.3 加载驱动 2.4 设备文件 2.5 测试驱动程序 2.6 卸载驱动程序 2.7 自动创建设备文件 2.8 日志等级 3. 极简 V4L2 驱动 3.1 源码 3.2 Makefile 3.3 设备节点类型 3.4 测试 V4L2…

微信小程序Webview与H5通信

背景 近期有个微信小程序需要用到web-view嵌套H5的场景,该应用场景需要小程序中频繁传递数据到H5进行渲染,且需要保证页面不刷新。 由于微信小程序与H5之间的通信限制比较大,显然无法满足于我的业务场景 探索 由于微信小程序与webview的环境是…

【maven-4】IDEA 配置本地 Maven 及如何使用 Maven 创建 Java 工程

IntelliJ IDEA(以下简称 IDEA)是一款功能强大的集成开发环境,广泛应用于 Java 开发。下面将详细介绍如何在 IDEA 中配置本地 Maven,并创建一个 Maven Java 工程,快速上手并高效使用 Maven 进行 Java 开发。 1. Maven …

交通流量预测:基于交通流量数据建立模型

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

【故障处理系列--移动云云盘根目录在线扩容】

移动云云盘根目录扩容 **目的:**测试harbor仓库服务器的根目录能否在线扩容 1、移动云控制台系统盘扩容 这里以我自己的虚拟机演示 2、查看分区的文件类型 3、安装growpart工具 rootgitlab-cli:~# apt install cloud-guest-utils -y rootgitlab-cli:~# apt ins…

不可分割的整体—系统思考的微妙法则

不可分割的整体——系统思考的微妙法则 作为企业领导者,我们经常需要做出决策,但有时候,我们会忽略一个事实:每个决策都不是孤立的,它背后都是一个复杂系统的一部分。 无论是市场动态、团队协作,还是产品…

内核模块里获取当前进程和父进程的cmdline的方法及注意事项,涉及父子进程管理,和rcu的初步介绍

一、背景 在编写内核态系统监控代码时,有时候为了调试的便捷性,不仅要拿到异常事件有关的线程id,进程id和父进程id,还需要拿到当前进程和父进程的comm和cmdline。主要有几下几个原因: 1)单纯的pid或者tgi…

京东OPPO定制版 12.1.0 | 安装包只有4.7M,无短视频,适合轻度使用

底部四个标签,没有短视频,可以正常登录。安装包体积很小,功能基本可用,特别适合追求简洁界面和轻度使用的用户。 大小:4.7M 下载地址: 百度网盘:https://pan.baidu.com/s/1lD0o1y9X3s4hRiz-8F…

AOSP的同步问题

repo sync同步时提示出错: error: .repo/manifests/: contains uncommitted changesRepo command failed due to the following UpdateManifestError errors: contains uncommitted changes解决方法: 1、cd 进入.repo/manifests cd .repo/manifests2、执行如下三…

Redis【1】- 如何阅读Redis 源码

1 Redis 的简介 Redis 实际上是简称,全称为 Remote Dictionary Server (远程字典服务器),由 Salvatore Sanfilippo 写的高性能 key-value 存储系统,其完全开源免费,遵守 BSD 协议。Redis 与其他 key-value 缓存产品(如…

鸿蒙修饰符

文章目录 一、引言1.1 什么是修饰符1.2 修饰符在鸿蒙开发中的重要性1.3 修饰符的作用机制 二、UI装饰类修饰符2.1 Styles修饰符2.1.1 基本概念和使用场景2.1.2 使用示例2.1.3 最佳实践 2.2 Extend修饰符2.2.1 基本概念2.2.2 使用示例2.2.3 Extend vs Styles 对比2.2.4 使用建议…

nginx安装和负载均衡

1. nginx安装 (1)安装依赖项: yum -y install gcc gcc-c make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel(2)下载Nginx源代码: http://nginx.org/en/download.html https://nginx.o…

部署 Prometheus

实验环境 IP地址服务192.168.88.10Prometheus服务端, Consul, Grafana, Node-Exporter192.168.88.77MySQL, Node-Exporter192.168.88.30Nginx,Node-Exporter 一、Prometheus Server 端安装和相关配置 【Prometheus1.sh】 (1)上传 prometh…

通过深度点图表示的隐式场实现肺树结构的高效解剖标注文献速递-生成式模型与transformer在医学影像中的应用

Title 题目 Efficient anatomical labeling of pulmonary tree structures via deeppoint-graph representation-based implicit fields 通过深度点图表示的隐式场实现肺树结构的高效解剖标注 01 文献速递介绍 近年来,肺部疾病(Decramer等&#xff…

# 22_ Python基础到实战一飞冲天(二)-python基础(二十二)--名片管理系统案例:cards_tools.py文件

22_ Python基础到实战一飞冲天(二)-python基础(二十二)–名片管理系统案例:cards_tools.py文件 一、框架搭建-09-准备名片操作函数修改主文件中函数调用 1、名片管理系统 案例:框架搭建 — cards_tools.p…

Python 和 Pyecharts 对Taptap相关数据可视化分析

结果展示: 数据来源: Python爬取TapTap 热门游戏信息并存储到数据库(详细版) 目录 结果展示: 数据来源: Python爬取TapTap 热门游戏信息并存储到数据库(详细版 一、引言 二、准备工作 三、…

泷羽sec-shell (3)脚本参数传递与数学运算

声明! 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关&a…

重塑视频新语言,让每一帧都焕发新生——Video-Retalking,开启数字人沉浸式交流新纪元!

模型简介 Video-Retalking 模型是一种基于深度学习的视频再谈话技术,它通过分析视频中的音频和图像信息,实现视频角色口型、表情乃至肢体动作的精准控制与合成。这一技术的实现依赖于强大的技术架构和核心算法,特别是生成对抗网络&#xff0…

Mybatis Plus 增删改查方法(一、增)

先定义一个简单的测试表,执行脚本如下: create table user(id bigint primary key auto_increment,name varchar(255) not null,age int not null default 0 check (age > 0) ); 根据Spingbootmybatisplus的结构根据表自行构建结构,大致…

依赖倒置原则:Java实践篇

在软件开发的世界里,设计原则如同指南针,指引着我们构建更加健壮、可维护和可扩展的系统。其中,依赖倒置原则(Dependency Inversion Principle,DIP)是面向对象设计(OOD)中的一个重要…