
linux
另外一种 286 和其之后 CPU 的操作模式是 真实模式,一种向前相容且关闭这些特色的模式。设计用来让新的芯片可以执行旧的软件。依照设计的规格,所有的 x86 CPU 都是在真实模式下开机,来确保传统操作系统的向前相容性。在任何保护模式的特色可用前,他们必须要由某些程式手动地切换到保护模式。在现今的电脑,这种切换通常是由 操作系统 在开机时候必须完成的第一件工作的一个。它也可能当 CPU 在保护模式下运行时,使用 虚拟86模式 来执行设计给真实模式的程式码。
尽管用软件的方式也有某些可能在真实模式的系统下使用多工,但保护模式下内存保护的特色,可以避免有问题的程式破坏其他工作或是 操作系统 核心所拥有的内存。保护模式也有中断正在执行程式的硬件支援,可以把 execution content 交给其他工作,得以实现 先占式多工。

微软
即使在 32 位元芯片上已经打开了保护模式,但是 1 MB 以上的内存并无法存取,是由于一种仿照 IBM XT 系统设计特性的 memory wrap-around(内存连续) 的因素。这种限制可以由打开 A20 line 来回避。
在保护模式下,前面 32 个中断都是保留给 CPU 例外处理用。举个例子,中断 0D (十进制 13) 是 一般保护模式错误 而 中断 00 是 除以零。
Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号