CPU的工作模式是什么?

2024-11-16 21:25:13
推荐回答(3个)
回答(1):

严格地说,x86系列CPU的三种工作模式是:实模式、保护模式和系统配置模式。

回答(2):

CPU到底是怎么工作的?带你了解这背后的玄机

回答(3):

1、实模式 (Real mode) 是 Intel 80286 和之后的 x86 兼容 CPU 的操作模式。实模式的特性是一个 20 位的区段存储器地址空间 (意思为只有 1 MB 的存储器可以被寻址),可以直接软件访问 BIOS 例程以及周边硬件,没有任何硬件等级的存储器保护观念或多任务。所有的 80286 系列和之后的 x86 CPU 都是以实模式下开机;80186 和早期的 CPU 仅仅只有一种操作模式,也就是相当于后来芯片的这种实模式。
286 架构导入 保护模式,允许硬件等级的存储器保护。然而要使用这些新的特色,需要额外先前不需要的软件指令。由于 x86 微处理机主要的设计规格,是能够完全地向前兼容于针对先前所有 x86 芯片所撰写的软件,因此 286 芯片的开机是处于 '实模式' — 也就是关闭新的存储器保护特性的模式,所以可以运行针对旧的微处理器所设计的软件。到现在为止,即使最新的 x86 CPU 一开始在电源打开处于实模式下,也能够运行针对先前任何芯片所撰写的软件。
2、保护模式 (Protected Mode,或有时简写为 pmode) 是一种 80286 系列和之后的 x86 相容 CPU 操作模式。保护模式有一些新的特色,设计用来增强 多工 和系统稳定度,像是 内存保护,分页 系统,以及硬件支援的 虚拟内存。大部分的现今 x86 操作系统 都在保护模式下运行,包含 Linux、FreeBSD、以及 微软 Windows 2.0 和之后版本
3、系统管理模式 (System Management mode)(以下简称SMM)是Intel在386SL之后引入x86体系结构的一种CPU的执行模式。系统管理模式只能通过系统管理中断(System Management Interrupt, SMI)进入,并只能通过执行RSM指令推出。SMM模式对操作系统透明,换句话说,操作系统根本不知道系统何时进入SMM模式,也无法感知SMM模式曾经执行过。为了实现SMM,Intel在其CPU上新增了一个引脚SMI# Pin,当这个引脚上为高电平的时候,CPU会进入该模式。在SMM模式下一切被都屏蔽,包括所有的中断。SMM模式下的执行的程序被称作SMM处理程序,所有的SMM处理程序只能在称作系统管理内存(System Management RAM,SMRAM)的空间内运行。可以通过设置SMBASE的寄存器来设置SMRAM的空间。SMM处理程序只能由系统固件实现。