1 / 212
文档名称:

Linux Kernel核心中文手册(内核图解).pdf

格式:pdf   页数:212
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

Linux Kernel核心中文手册(内核图解).pdf

上传人:经管专家 2012/12/22 文件大小:0 KB

下载得到文件列表

Linux Kernel核心中文手册(内核图解).pdf

文档介绍

文档介绍:Linux Kernel核心中文手册 file:///media/7C88B4DC88B495DC/redbatzero/linux内核图...
Linux Kernel核心中文手册
Unix/Linux作坊
Chapter 1

Hardware Basic(硬件基础知识)

一个操作系统必须和作为它的基础的硬件系统紧密配合。操作系统需要使用一些只有硬件才能
提供的功能。为了完整的了解Linux,你需要了解底层硬件的基础知识。本章对于现代PC的硬件
进行了。
1975年1月“Popular Electronics”杂志封面上印出了Altair 8080的图片,一场革命开始了。
Altair 8080,跟随早期的“Star Trek epsode”命名,只需要$397,就可由个人电子爱好者自己
组装。它拥有Intel 8080处理器和256字节内存,但是没有屏幕和键盘。以今天的标准来衡量,
它太简陋了。它的发明者,Ed Roberts,制造了名词“puter“来命名他的发明,但
现在,PC这个名词已经用来命名几乎所有你可以不依靠帮助就可以自己运行起来的计算机。用
这个定义,甚至一些十分强大的Alpha AXP系统也是PC。
爱好者们看到了Altair的潜力,开始为它写软件,制造硬件。对于这些早期的先驱来讲,它代表
着自由:从被神职人员控制和运行的大型批处理的主机系统中逃脱出来的自由。你可以在自己
家里甚至厨桌上拥有计算机,这使学院的退学生为此着迷并通宵达旦。与此同时出现大量硬
件,在一定程度上各自不同,而软件专家则乐于为这些新机器撰写软件。有讽刺意味的
是,IBM在1981年发布了IBM PC并于1982年早期供货,从此定义了现代PC的模型。它拥有Intel
8088处理器,64K内存(可以扩充到256K),两个软驱和一个80x25的彩色图卡(CGA),用今
天的标准衡量,它功能不算很强,但是它销售的不错。1983年,紧接着推出的IBM PC-XT,则
拥有一个豪华的10M硬盘。paq开始制造IBM PC的复制品,PC的结构成为
了事实的标准。这个事实的标准使大批硬件公司可以在这个不断增长的市场上一起竞争,反过
来,可以遏制价格,让用户满意。现代PC承袭了早期PC的许多系统体系特征。甚至基于最强大
的Intel Pentium Pro的系统也可以运行Intel 8086的寻址模式。当Linus Torvalds开始开发后来的
Linux时,他选择了当时最常见和价格最合理的硬件平台:一台Intel 80386 PC。
从PC的外面看,最明显的部件就是机箱、键盘、鼠标和显示器。在机箱的前面有一些按钮,一
个小屏幕显示一些数字,还有一个软驱。现在的大多数系统还有一个CD-ROM期、驱动器。如
果你需要保护你的数据,那么还会有一个备份用的磁带机。这些设备一律被看作外设。
虽然CPU管理整个系统,但它并不是唯一的智能设备。所有的外设控制器,例如IDE控制器,也
都拥有一定程度的智能。在PC内部(),你可以看到一个主板,包括CPU或微处理器、内
1 of 212 04/21/2011 11:34 AM
Linux Kernel核心中文手册 file:///media/7C88B4DC88B495DC/redbatzero/linux内核图...
存和一些ISA或PCI外设控制卡的槽位。其中一些控制器,如IDE磁盘控制器可能内置在系统主板
上。

1. CPU

CPU,或者说微处理器,是所有计算机系统的心脏。微处理器进行数学运算,逻辑
操作并从内存中读取指令并执行指令,进而控制数据流向。计算机发展的早期,微
处理器的各种功能模块是由相互分离(并且尺寸上十分巨大)的单元构成。这也是
名词“中央处理单元”的起源。现代的微处理器将这些功能模块集中在一块非常小
的硅晶片制造的集成电路上。在本书,名词CPU、微处理器和处理器交替使用。
微处理器处理二进制数据:这些数据由1和0组成。这些1和0对应电气开关的开或
关。就好像42代表4个10和2个单元,二进制数字由一系列代表2的幂数的数字组
成。这里,幂数意味着一个数字用自身相乘的次数。10 的一次幂是10,10的2次幂
是10x10,10的3次幂是10x10x10,依此类推。二进制0001是十进制1,二进制数
0010是十进制2,二进制0011是十进制3,二进制0100是十进制4,等等。所以,
十进制42是二进制101010或者(2+8+32或21+23+25)。在计算机程序除了使用二
进制表示数