揭秘英特尔处理器如何启动?

  英特尔处理器是怎样运行的?当我们打开计算机时,它会在能够加载操作系统之前经过一系列步骤。在这篇文章中,我们将看到典型的x86处理器如何启动。这是一个非常复杂且涉及的过程。我们只提出一个基本的整体结构。此外,处理器实际上采用何种路径来达到可以加载OS的状态,这取决于引导固件。

  施加电源之前

  让我们从BIOS芯片开始,也称为引导ROM。BIOS芯片是计算机主板上的一块硅片,它可以存储字节。它有两个我们感兴趣的特征。首先,它(或其中的一部分)是内存映射到CPU的地址空间,这意味着CPU可以像访问RAM一样访问它。特别是,CPU可以将其指令指针指向BIOS芯片内的执行代码。其次,BIOS芯片存储的字节代表CPU执行的第一个指令。BIOSchop还包含其他代码和数据。典型的BIOS包含闪存描述符(BIOS芯片的内容表),BIOS区域(要执行的第一条指令),IntelME(Intel管理引擎)和GbE(千兆以太网)。

  通电时

  现代英特尔芯片配备了所谓的英特尔管理引擎。只要有电源-通过电池或电源-IntelME就会出现。它执行自己的初始化,要求它读取BIOS的闪存描述符以查找IntelME区域的位置,然后从BIOS的IntelME区域读取代码和配置数据。接下来,当我们按下计算机上的电源按钮时,CPU会亮起。在多处理器系统上,始终存在一个名为BootstrapProcessor(BSP)的指定处理器。在任何一种情况下,处理器总是以所谓的16位实模式启动,其中insruction指针指向地址0xffff.fff0,即复位向量。在此初始模式下,处理器有前12个地址线被断言,因此任何地址都看起来像0xfffx.xxxx。

  BIOS芯片也以这样的方式设置,即从BIOS执行的第一条指令位于处理器的物理地址0xffff.fff0。因此,处理器能够从BIOS芯片的BIOS区域执行第一条指令。该区域包含所谓的引导固件。引导固件的示例是UEFI实现,coreboot和经典BIOS。

  引导固件的第一件事就是切换到32位模式。它也是“保护模式”,即打开分段,并且可以使用不同的访问权限管理处理器地址空间的各个段。然而,启动固件只有一个段,有效地关闭了分段。这称为平面模式。

  早期的初始化

  值得注意的是,在启动过程的这一点上,DRAM不可用。DRAM初始化是启动固件的主要目标之一。但在它初始化DRAM之前,它需要做一些准备。

  微代码补丁就像CPU正常运行的补丁。英特尔不断发布针对不同CPU的微码补丁。引导固件在引导过程中很早就应用了这些补丁。处理器的一部分是所谓的sout桥接器或I/O控制器集线器(ICH)或外围控制器集线器(PCH)。ICH也有一些初步措施。例如,ICH可能包含一个看门狗定时器,可以关闭哪个DRAM正在初始化。必须首先关闭该看门狗定时器。

?  当然所有这些都是由某人编写的代码固件完成的。现在我们知道的大多数代码都使用堆栈。但我们已经提到DRAM尚未初始化,因此没有内存。那么这段代码是如何编写和运行的呢?答案是这是无堆栈代码。要么它是手写的x86汇编,要么就像coreboot一样,它是用C语言编写的,并使用称为ROMCC的特殊编译器进行编译,该编译器将C转换为无堆栈汇编指令。这当然有一些限制,所以ROMCC编译代码不是我们想要执行的所有内容。我们需要尽快堆叠。(欢迎转载分享)

原文地址:https://www.cnblogs.com/hacker520/p/9751040.html

时间: 2024-10-05 05:04:59

揭秘英特尔处理器如何启动?的相关文章

百科知识 英特尔处理器I5 4460和4590有哪些区别

4460是855元 ? 4590是880元 ? i5 4460与4590CPU主要区别在:1.主频差0.3GHz;;2.最大睿频相差0.5GHz;:3.核显(HD4600)最大动态频率相差0.1GHz:4.4460不支持intel vpro技术(博锐技术):4590则支持它(需要B85之类的商用主板支持,面向企业虚拟化安全技术,一般用户可以无视):5.4460不支持intel TSX-NI(事务性数据同步扩展指令集),而4590则支持它(这个指令集存在BUG,貌似支持的处理器也全部禁用了,同样可

[转帖]抢先AMD一步,英特尔推出新处理器,支持LPDDR5!

抢先AMD一步,英特尔推出新处理器,支持LPDDR5! http://www.eetop.cn/cpu_soc/6946240.html 2019.10 intel的最新技术发展. 近日,知名硬件爆料人KOMACI_ENSAKA在欧亚经济委员会(EEC)文件中发现,英特尔即将推出用于轻薄本的新一代Tiger Lake处理器,并支持LPDDR5. 众所周知,现在市面上轻薄本的运行内存标准为LPDDR3,游戏本用的内存标准为DDR4,而LPDDR4和LPDDR4X多用于手机,笔记本上并没有搭载.因为

英特尔? 硬件加速执行管理器安装指南

介绍 本文将指导您安装英特尔? 硬件加速执行管理器(英特尔? HAXM),这是一款可以使用英特尔? 虚拟化技术(VT)加快 Android* 开发速度的硬件辅助虚拟化引擎(管理程序). 前提条件 英特尔 HAXM 要求首先安装 Android* SDK (版本为 17 或更高). 更多信息,请访问 Android* 开发人员网站 ( http://developer.android.com/sdk /). 系统要求 硬件要求: 支持 VT-x.EM64T 和病毒防护 (XD) 功能的英特尔? 处

英特尔® 实感? SDK R4 (v.6.0) 的全新特性

原文地址 第四版 (R4) 黄金版 SDK (版本 6.0)现已面向英特尔® 实感TM F200 摄像头推出,并面向英特尔® 实感TM 后置 R200 摄像头发布黄金版本. 请注意,F200 OR R200 摄像头的驱动程序/服务 (DCM) 必须与 SDK 同时安装. 请将 DCM 1.4.27 和 DCM 2.0.3 分别用于 F200 摄像头和 R200 摄像头. 它们与 SDK 位于同一下载页面. 如有完全 Windows* 10 64 位支持(或于八月更新的 Windows 8.1 6

英特尔® 硬件加速执行管理器安装指南 — Microsoft Windows*

介绍 本文将指导您安装英特尔® 硬件加速执行管理器(英特尔® HAXM),这是一款可以使用英特尔® 虚拟化技术(VT)加快 Android* 开发速度的硬件辅助虚拟化引擎(管理程序). 前提条件 英特尔 HAXM 要求首先安装 Android* SDK (版本为 17 或更高). 更多信息,请访问 Android* 开发人员网站 (http://developer.android.com/sdk/). 系统要求 硬件要求: 支持 VT-x.EM64T 和病毒防护 (XD) 功能的英特尔® 处理器

[转帖]英特尔首款采用10nm技术的混合CPU“Lakefield”即将发布

英特尔首款采用10nm技术的混合CPU“Lakefield”即将发布 intel 也出soc了 里面的东西 跟 安卓和 apple的a系列很像. https://baijiahao.baidu.com/s?id=1626791977605638179&wfr=spider&for=pc intel 也跟amd 学了. MCU前线 发布时间:03-0210:38 英特尔(Intel)已经启动了下一代处理器Lakefield的宣传工作,这将是首款使用英特尔新Foveros 3D封装技术的处理器

面向英特尔® x86 平台的 Unity* 优化指南: 第 1 部分

原文地址 目录 工具 Unity 分析器 GPA 系统分析器 GPA 帧分析器 如要充分发挥 x86 平台的作用,您可以在项目中进行多种性能优化,以最大限度地提升性能. 在本指南中,我们将展示 Unity* 软件中的多种工具和特性,以帮助您增强 Unity 项目的性能. 我们将介绍如何处理纹理质量.批处理.标压缩.光烘烤和 HDR 效果. 在本指南结束之际,您将能够了解 Unity 中的性能问题及其成因.关键优化和有助于开发优秀游戏的方法. 首先我们来看看有助于轻松识别应用中潜在热点的工具. 工

浪潮之巅读书笔记——英特尔

在美国西海岸旧金山到圣荷西市(San Jose)之间,围绕着旧金山海湾有几十公里长,几公里宽的峡谷,通常称为硅谷.谷并不是因为它生产硅,而是它有很多是使用硅的半导体公司,包括全世界最大的半导体公司英特尔公司. 我们在上一章介绍了摩尔定理和安迪-盖茨定理,其中摩尔是英特尔公司的创始人,而安迪.格罗夫是第四个加入英特尔并把英特尔公司真正发展成世界上最大的半导体公司的CEO. 三十多年来,英特尔公司成功的关键首先是搭上了个人电脑革命的浪潮,尤其是有微软这个强势的伙伴:第二,它三十年来严格按照它的创始人

受英特尔漏洞影响的Linux用户,好消息重磅来袭

IT之家3月6日消息 Linux 5.0本周就将发布,这一版本新增的主要功能是AMD FreeSync支持,以及"幽灵"(Spectre)漏洞修复程序. "幽灵"是去年爆发的一种旁路***漏洞.之前的Linux 4.2内核也带来了修补程序,但是也给一些英特尔处理器带来了50%的性能损失.据Phoronix对新内核的性能测试,新版本带来的性能损失因CPU而异,但是比先前大幅下降:酷睿i9-7980XE损失为13%,酷睿i7-8086K上损失为17%,AMD Ryzen