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

【以图会意】操作系统的加载流程

声明:本图为博主方便自己记忆理解,诸多疏漏望请博友理性观看!如有错误不足恳请指正。

请添加图片描述
在这里插入图片描述

  1. 首先,操作系统是一段程序,他保存在ROM中,在开机时,CPU被激活,首先将IR置为BIOS(Basic Input/Output System)(基本输入/输出系统)的第一条指令,然后执行并启动ROM中的boot程序(这里和王道书上写得不同,是我自己的理解,如有错误,还望指正)
  2. 硬件自检。
  3. 加载硬盘中的MBR到内存中,并通过检查MBR来寻找哪个硬盘是引导硬盘(保存有操作系统的硬盘)
  4. 通过检查引导磁盘的MBR中的硬盘分区表寻找活动分区(装有操作系统的硬盘分区)
  5. 加载活动分区的第一个扇区到内存中:分区引导记录(PBR),以此来寻找启动管理器(引导操作系统的程序)
  6. 加载启动管理器到内存中
  7. 加载操作系统到内存中
  • end

我个人感觉这个加载(加载到内存的RAM是我后加的),就是指的是加载到内存中,且是RAM,因为ROM是只读的,所以说加载只能是加载到RAM中。而像BIOS这种就是固化在内存的ROM中,只能被加载。ROM应该一般不能加载进去的。

ps:在写完博客后进行网上搜索发现了一篇很严谨的博客,放此记录:硬盘分区表知识——详解硬盘MBR


http://www.kler.cn/news/134992.html

相关文章:

  • 【Linux】C文件系统详解(四)——磁盘的物理和抽象结构
  • Bert浅谈
  • vue使用本地图片设置为默认图
  • 【Django使用】django经验md文档10大模块。第4期:Django数据库增删改查
  • 整形数据和浮点型数据在内存中的存储差别
  • 微服务调用链路追踪
  • 使用Python实现3D曲线拟合
  • Java爬虫的使用案例及简单总结
  • 场景交互与场景漫游-路径漫游(7)
  • 腾讯云轻量数据库性能如何?轻量数据库租用配置价格表
  • JavaScript实现飞机发射子弹详解(内含源码)
  • 超聚变服务器关闭超线程CPU的步骤(完整版)
  • 【开源】基于Vue.js的在线课程教学系统的设计和实现
  • 右键菜单和弹出菜单的区别
  • 基于springboot实现校园在线拍卖系统项目【项目源码】计算机毕业设计
  • 如何在Linux上搭建本地Docker Registry并实现远程连接
  • vscode 推送本地新项目到gitee
  • Linux入门(三)
  • 22. 深度学习 - 自动求导
  • 反射和序列化操作会破坏单例模式
  • redis 介绍1
  • three.js相机调用reset方法复原但无法完全复原
  • docker 部署Redis集群(三主三从,以及扩容、缩容)
  • flink的window和windowAll的区别
  • list转map(根据某个或多个属性分组)
  • 基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(六)
  • JAVA必应回答。
  • 参加了南京 GDG 活动:这些精彩的技术讨论,值得与你分享~
  • 基于RFID的自动化仓储设备研发项目可行性研究报告
  • 【Linux基础】中断子系统 -- 内核宏 CONFIG_SPARSE_IRQ