UEFI 学习笔记

2023-12-13 23:17:50

引言

相比于Windows/MacOS/Linux等主流的操作系统,大部分人对于固件BIOS(Basic Input & Output System)并不熟悉,它诞生于1981年出产的第一代个人计算机IBM PC,在那时工程师将硬件检测代码、最基本的外围设备I/O处理程序和操作系统引导程序代码写入仅有32KB大小的PROM(Programmable ROM)中。固件BIOS隐藏在启动界面和操作系统桌面之后,作为计算机中最底层、最核心的关键性部件之一,在几十年内受到的关注并不多,网上能找到的学习资料也偏少(相对Spring、Vue这种主流技术栈),可以说入门的门槛相对其他方向来说会高一些。

  1. 固件 && BIOS

固件(Firmware)是一种底层软件或指令序列,早期常存储于计算机或外部设备的PROM中,常用于对硬件设备进行配置或为操作系统提供硬件操作接口,使之能够完成指定的功能,如初始化、驱动外围设备等。计算机系统层次架构由硬件(Hardware)、固件和软件(Software)构成,而固件的核心就是BIOS,它介于硬件和操作系统之间,为操作系统提供最直接、最底层的硬件控制,为操作系统的引导载入和正常运行提供良好支持。BIOS是计算机的核心部件之一,计算机开机后执行的第一条指令就由BIOS发出,它担负着最初的引导和启动任务。在这种架构中,BIOS能为操作系统提供一定程度上的硬件抽象,使操作系统不用直接进行的硬件操作。

BIOS的主要功能如下:
(1)开机自检:BIOS在上电时获得计算机的控制权,检查CPU寄存器、标志位以及控制器等工作是否正常;
(2)系统初始化:针对CPU Cache、DRAM及显卡、PCI等设备的初始化操作,设定相应寄存器的值,驱动外围设备;
(3)提供常驻的RS(Runtime Services):RS一般常驻在某一段系统内存中,操作系统和应用程序能通过中断方式调用这些服务代码;
(4)系统设置
(5)引导操作系统:按照系统设置搜索软硬盘驱动器及CD-ROM、网络服务器等,读入操作系统的引导代码,将控制权交由引导代码
2. 关于Legacy BIOS
固件BIOS的发展大致可以Legacy BIOS和UEFI两个阶段
Legacy BIOS发展初期,行业中除了IBM的接口规格外,并没有统一的开发规范,90年代Intel联合其他几家公司制定了BIOS启动规范和

文章来源:https://blog.csdn.net/Stestack/article/details/134913852
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。