第二章 Linux运行的硬件基础

我们知道,操作系统是一组软件的集合。但它和一般软件不同,因为它是充分挖掘硬件潜能的软件,也可以说,操作系统是横跨软件和硬件的桥梁。因此,要想深入解析操作系统
内在的运作机制,就必须搞清楚相关的硬件机制。

操作系统的设计者必须在硬件相关的代码与硬件无关的代码之间划出清楚的界限,以便将一个操作系统很容易地移植到不同的平台。Linux 的设计就做到了这点,它把与硬件相关的代码全部放在 arch(architecture 一词的缩写,即体系结构相关)目录下,在这个目录下,你可以找到 Linux 目前版本支持的所有平台,例如,Linux 2.4 支持的平台有 arm、alpha,、i386、m68k、mips 等十多种。在这众多的平台中,大家熟悉的就是 i386,即 Inte l80386。因此,我们所介绍的硬件基础也是以此为背景的。

在 X86 系列中,8086 和 8088 是 16 位的处理器,而从 80386 开始为 32 位处理器。这种变化看起来是处理器位数的变化,但实质上是处理器体系结构的变化,从寻址方式上说,就是从“实模式”到“保护模式”的变化。从 80386 以后,Intel 的 CPU 经历了 80486、Pentium、Pentium II、Pentium III 等型号,虽然它们在速度上提高了好几个数量级,功能上也有不少改进,但基本上属于同一种系统结构的改进与加强,而无本质的变化。因此,我们用 i386统指这些型号。

下载:第二章Linux运行的硬件基础.pdf