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

计算机启动过程,从按下电源按钮到登录界面的详细步骤

1、背景

自接触计算机以来,一直困扰着我一个问题。当我们按下电脑的开机键后,具体发生了哪些过程呢?计算机启动的具体步骤是什么?

计算机启动过程通常分为五个步骤:电源自检、BIOS自检、引导设备选择、引导程序加载和操作系统加载。

如果你感兴趣,希望这篇文章能为你提供帮助,如果你认为这篇文章有价值,请点个赞支持一下。

2、电源自检

电源自检的简称是Power-On Self-Test,通常简称为POST。

电源自检是计算机启动过程的第一个阶段,它主要是检查计算机的电源系统是否正常工作。在这个阶段,计算机会执行以下自检操作:

  • 检查电源是否连接正常:计算机会检查电源插头是否插紧,电源线是否连接牢固。如果电源插头没有插紧或者电源线没有连接牢固,计算机将无法正常工作。

  • 检查电源开关是否正常:计算机会检查电源开关是否处于打开状态。如果电源开关处于关闭状态,计算机将无法启动。

  • 检查电源输出是否稳定:计算机会检查电源输出是否稳定。电源输出不稳定会影响计算机的正常工作,甚至会损坏计算机的硬件设备。

如果电源自检通过,计算机将进入下一个阶段,即BIOS自检。如果电源自检未通过,计算机将无法继续启动,通常会发出声音警告或者显示错误信息。在这种情况下,用户需要检查电源连接是否正确,并修复电源故障,以确保计算机能够正常工作。

3、BIOS 自检

BIOS自检(Basic Input/Output System Self-Test)是计算机启动过程中的第二个步骤,它的主要作用是检查计算机硬件是否正常。BIOS是计算机上的基本输入输出系统,负责管理和控制计算机硬件设备。

BIOS自检过程包括以下步骤:

  • 初始化硬件:在BIOS自检开始时,BIOS会对计算机的硬件设备进行初始化,包括处理器、内存、硬盘、显卡、声卡等。BIOS通过向硬件设备发送初始化信号,确保它们能够正常工作。

  • 检查内存:BIOS会对计算机的内存进行检查,以确保内存正常工作。在这个阶段,BIOS会读取内存中存储的数据,并进行校验。如果内存出现故障,BIOS会在屏幕上显示错误信息,通常是一组数字代码。

  • 检查硬盘和其他存储设备:BIOS会检查计算机的硬盘和其他存储设备,以确定它们是否可用。在这个阶段,BIOS会读取硬盘的引导扇区,并将控制权交给引导扇区中的引导程序。

  • 检查其他设备:BIOS还会检查计算机的其他设备,包括键盘、鼠标、显示器、声卡等。BIOS通过向这些设备发送初始化信号,确保它们能够正常工作。

  • 显示系统信息:BIOS会在屏幕上显示系统信息,包括计算机型号、处理器型号、内存大小、硬盘容量等。此外,BIOS还会显示操作系统是否存在,以及如何引导操作系统。

  • 进入引导程序:当BIOS自检完成后,BIOS会将控制权交给引导程序,以便引导操作系统。引导程序位于硬盘的引导扇区中,它的作用是加载操作系统的核心文件,并将控制权交给操作系统。

总之,BIOS自检是计算机启动过程中非常重要的一步,它检查和初始化计算机的硬件设备,确保它们能够正常工作。如果BIOS自检未通过,计算机将无法启动,并显示错误信息。在这种情况下,用户需要检查计算机的硬件设备是否正常,并进行修复。

4、引导设备选择

引导设备选择是计算机启动过程中的第三个步骤,它的主要作用是确定计算机从哪个设备启动。在这个阶段,计算机会显示一个引导菜单,用户可以选择从哪个设备启动计算机,通常是硬盘或可移动设备,如光盘或USB驱动器。

引导设备选择过程包括以下步骤:

  • 检测可用设备:在计算机启动过程中,BIOS会扫描所有可用的设备,包括硬盘、光驱、USB驱动器等。当BIOS扫描完毕后,它会将可用设备列在引导菜单中。

  • 显示引导菜单:当BIOS扫描可用设备后,计算机会显示一个引导菜单,列出所有可用设备的名称和设备类型。这个菜单通常会在计算机启动时显示在屏幕上,用户可以使用键盘上的箭头键来选择设备。

  • 选择启动设备:用户可以使用键盘上的箭头键选择启动设备,然后按下Enter键来确认选择。计算机将从所选设备启动,并加载操作系统。

在选择启动设备时,用户需要注意以下几点:

  • 选择正确的设备:用户应该选择正确的设备来启动计算机,通常是硬盘或可移动设备。如果用户选择了错误的设备,计算机将无法启动,并显示错误信息。

  • 更改启动顺序:用户可以通过BIOS设置更改启动顺序,以便计算机在启动时自动从特定设备启动。在更改启动顺序之前,用户应该先了解计算机的硬件配置和操作系统要求。

  • 引导程序选择:如果计算机中安装了多个操作系统,用户需要选择正确的引导程序来启动操作系统。在这种情况下,用户应该了解每个操作系统的引导程序,并选择正确的引导程序来启动操作系统。

总之,引导设备选择是计算机启动过程中非常重要的一步,它决定了计算机将从哪个设备启动,并加载哪个操作系统。用户应该了解每个设备的作用和操作系统的要求,以便正确地选择引导设备。

5、引导程序加载

引导程序是计算机启动过程中非常重要的一环,其作用是在BIOS自检和引导设备选择之后,将操作系统的核心代码加载到计算机的内存中并执行。这个过程需要依靠引导扇区或引导记录来完成。

引导扇区是指硬盘的第一个扇区,它包含了用于启动计算机的引导程序代码。当BIOS自检结束后,引导程序会从硬盘的第一个扇区中读取引导程序代码,并将其加载到计算机的内存中。这个过程需要依靠硬盘控制器来完成。

引导记录则是指光盘、U盘等可移动存储设备中的第一个扇区,它也包含了用于启动计算机的引导程序代码。当计算机的BIOS自检结束后,如果发现有可移动存储设备连接到计算机上,它会检查这些设备的第一个扇区是否包含引导记录。如果有,它会从这个扇区中读取引导程序代码并将其加载到内存中。

在加载引导程序的过程中,BIOS会将计算机的控制权交给引导程序,引导程序则会将控制权转交给操作系统的内核,操作系统的内核随后就可以开始启动整个操作系统。在这个过程中,还可能会进行一些硬件初始化、设备驱动程序加载等操作。

总的来说,引导程序的作用是将操作系统的核心代码加载到内存中,这个过程是启动整个计算机系统的关键。

6、操作系统加载

操作系统的加载是计算机启动过程中的最后一步,它的主要任务是将操作系统的所有模块加载到内存中,并开始执行操作系统的初始化过程。操作系统的加载主要分为两个阶段:内核加载和初始化。

在内核加载阶段,引导程序将操作系统的内核代码从硬盘中读取到内存中,这个过程中会涉及到文件系统的相关操作,例如寻找操作系统内核文件、读取文件等。一旦内核被成功加载到内存中,引导程序就将控制权交给内核,并开始执行内核代码。此时,操作系统的内核已经可以开始执行初始化操作。

在操作系统的初始化过程中,内核会对计算机系统的硬件进行初始化,并加载操作系统的各个模块,例如设备驱动程序、系统服务等。这个过程中还会进行一些操作系统相关的设置,例如读取配置文件、设置环境变量等。当初始化完成后,操作系统就正式进入了运行状态,用户就可以开始使用计算机系统了。

总的来说,操作系统的加载是计算机启动过程的最后一步,其主要任务是将操作系统的所有模块加载到内存中并开始执行初始化过程。在这个过程中,内核会对计算机的硬件进行初始化并加载各种模块,使得操作系统能够正常运行。

7、文章小结

总的来说,计算机启动过程是一个复杂而精细的过程,它需要多个硬件设备和软件系统的配合和协同工作,才能够完成整个启动过程。每个阶段都有着特定的目的和功能。

此外,计算机的启动顺序也可以通过BIOS设置进行配置,用户可以设置不同的启动顺序,从而实现在不同的环境中进行启动。例如,在某些情况下,用户可以选择从光驱或USB设备中启动操作系统,以便进行系统恢复或安装等操作。

总之,了解计算机的启动过程及启动顺序对于用户正确使用计算机、维护计算机都具有重要的意义。通过理解计算机启动过程,用户可以更好地排除计算机故障,维护计算机系统的健康运行,提高计算机的工作效率。

实践是检验真理的唯一标准,一键送三连关注不迷路。

相关文章:

计算机启动过程,从按下电源按钮到登录界面的详细步骤

1、背景 自接触计算机以来,一直困扰着我一个问题。当我们按下电脑的开机键后,具体发生了哪些过程呢?计算机启动的具体步骤是什么? 计算机启动过程通常分为五个步骤:电源自检、BIOS自检、引导设备选择、引导程序加载和…...

LeetCode 刷题之 BFS 广度优先搜索【Python实现】

1. BFS 算法框架 BFS:用来搜索 最短路径 比较合适,如:求二叉树最小深度、最少步数、最少交换次数,一般与 队列 搭配使用,空间复杂度比 DFS 大很多DFS:适合搜索全部的解,如:寻找最短…...

Hadoop01【尚硅谷】

大数据学习笔记 大数据概念 大数据:指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 主要解决,海量数据的存储…...

Echarts 配置横轴竖轴指示线,更换颜色、线型和大小

第018个点击查看专栏目录本示例是描述如何在Echarts上配置横轴竖轴指示线,更换颜色、线型和大小。方法很简单,参考示例源代码。 文章目录示例效果示例源代码(共85行)相关资料参考专栏介绍示例效果 示例源代码(共85行&a…...

OpenAI 官方API Java版SDK,两行代码即可调用。包含GhatGPT问答接口。

声明:这是一个非官方的社区维护的库。 已经支持OpenAI官方的全部api,有bug欢迎朋友们指出,互相学习。 注意:由于这个接口: https://platform.openai.com/docs/api-reference/files/retrieve-content 免费用户无法使…...

SpringBoot 日志文件

(一)日志文件有什么用?除了发现和定位问题之外,我们还可以通过日志实现以下功能:记录用户登录日志,以便分析用户是正常登录还是恶意破解用户。记录系统的操作日志,以便数据恢复和定位操作 。记录程序的执行时间&#x…...

SQL71 检索供应商名称

描述Vendors表有字段供应商名称(vend_name)、供应商国家(vend_country)、供应商州(vend_state)vend_namevend_countryvend_stateappleUSACAvivoCNAshenzhenhuaweiCNAxian【问题】编写 SQL 语句,…...

02:入门篇 - 漫谈 CTK

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 十万个为什么 五千个在哪里?七千个怎么办?十万个为什么?。。。生活中,有很多奥秘在等着我们去思考、揭示! 同样地,在使用 CTK 时,很多小伙伴一定也存在诸多疑问: 为什么 CTK Plugin Framework 要借…...

SpringBoot常用注解

SpringBootApplication注解包含如下三个SpringBootConfigurationEnableAutoConfigurationComponentScanSpringBootConfiguration等同于Configuration,是属于spring的一个配置类这里的 Configuration 对我们来说并不陌生,它就是 JavaConfig 形式的 Spring…...

RBAC权限模型

什么是RBAC权限模型? RBAC是基于角色的访问控制,在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。 1.0级 用户、角色、权限 2.0 权限分级 公司>部门>小组 2.1 权限继承 ps: 这个人是一个小组长…...

【郭东白架构课 模块一:生存法则】07|法则三:架构师如何找到自己的商业模式?

你好,我是郭东白,今天我们来聊聊架构活动中对商业价值的考量。 今天我们要讲的是架构师的第三个生存法则:作为一个架构师,必须要在有限的资源下最大化架构活动所带来的商业价值。对于任何一个架构活动而言,架构师的可…...

STM32 - 看门狗

独立看门狗 IWDG专业时钟LSI 低功耗仍可以运行对定时的控制比较松喂狗这些时间是按照40kHz时钟给出。实际上,MCU内部的RC频率会在30kHz到60kHz之间变化。此外,即使RC振荡器的频率是精确的,确切的时序仍然依赖于APB接口时钟与RC振荡器时钟之间…...

Redis集群搭建

一、哨兵模式 在 redis3.0之前,redis使用的哨兵架构,它借助 sentinel 工具来监控 master 节点的状态;如果 master 节点异常,则会做主从切换,将一台 slave 作为 master。 哨兵模式的缺点: (1&…...

车载基础软件——AUTOSAR AP典型应用案例

我是穿拖鞋的汉子,魔都中一位坚持长期主义的工程师! 最近不知道为何特别喜欢苏轼的一首词: 缺月挂疏桐,漏断人初静。谁见幽人独往来,缥缈孤鸿影。 惊起却回头,有恨无人省。拣尽寒枝不肯栖,寂寞…...

消息中间件----内存数据库 Redis7(第3章 Redis 命令)

Redis 根据命令所操作对象的不同,可以分为三大类:对 Redis 进行基础性操作的命令,对 Key 的操作命令,对 Value 的操作命令。3.1 Redis 基本命令首先通过 redis-cli 命令进入到 Redis 命令行客户端,然后再运行下面的命令…...

react-03-react-router-dom-路由

react-router-dom:react路由 印记中文:react-router-dom 1、路由原理 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>前端路由的基石_history</title> </head> <body><a hre…...

2自由度悬架LQR控制

目录 1 悬架系统 1.1 悬架结构示意图 1.2 悬架数学模型 1.3 路面激励 2.仿真分析 2.1simulink模型 2.2 仿真结果 2.3 结论 3. 总结 1 悬架系统 1.1 悬架结构示意图 1.2 悬架数学模型 其中&#xff1a;x1为悬架动扰度&#xff0c;x2为车身加速度&#xff0c;x3为轮胎…...

C语言返回类型为指针的一些经典题目(下)

续上一篇文章&#xff0c;上一篇文章题目都很经典&#xff0c;这一篇也不例外。一.返回类型为指针经典题目(下)1.代码(第六题)char *GetMemory3(int num) {char *p (char *)malloc(sizeof(char) * num);return p; } void Test3(void) {char *str NULL;str GetMemory3(100…...

OpenAI 官方api 阅读笔记

网站 API Key concepts Prompts and completions You input some text as a prompt, and the model will generate a text completion that attempts to match whatever context or pattern you gave it. Token  模型通过将文本分解成token来理解和处理, 处理token数量取…...

微服务项目【分布式锁】

创建Redisson模块 第1步&#xff1a;基于Spring Initialzr方式创建zmall-redisson模块 第2步&#xff1a;在zmall-redisson模块中添加相关依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</a…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

给网站添加live2d看板娘

给网站添加live2d看板娘 参考文献&#xff1a; stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下&#xff0c;文章也主…...

2.2.2 ASPICE的需求分析

ASPICE的需求分析是汽车软件开发过程中至关重要的一环&#xff0c;它涉及到对需求进行详细分析、验证和确认&#xff0c;以确保软件产品能够满足客户和用户的需求。在ASPICE中&#xff0c;需求分析的关键步骤包括&#xff1a; 需求细化&#xff1a;将从需求收集阶段获得的高层需…...

【Java】Ajax 技术详解

文章目录 1. Filter 过滤器1.1 Filter 概述1.2 Filter 快速入门开发步骤:1.3 Filter 执行流程1.4 Filter 拦截路径配置1.5 过滤器链2. Listener 监听器2.1 Listener 概述2.2 ServletContextListener3. Ajax 技术3.1 Ajax 概述3.2 Ajax 快速入门服务端实现:客户端实现:4. Axi…...