Linux 核心--2.硬件基础(2)
2008-02-23 07:23:52来源:互联网 阅读 ()
1.3 总线
主板上分立的部件通过称为总线的线路连接在一起。系统总线的功能在逻辑上被划分为三部分: 地址总线、数据总线和控制总线。地址总线为数据传输指明内存位置(地址)。数据总线包含传输的数据。数据总线是双向的;它允许数据读入CPU也支持从CPU读出来。控制总线则包含几条表示路由分时和系统的控制信号。当然还有其他一些总线存在,例如ISA和PCI总线是将外设连接到系统的常用方式。
1.4 控制器与外设
外设是一些物理设备,比如说图象卡或者磁盘,它们受控于位于主板或者主板上插槽中的控制芯片。 IDE磁盘被IDE控制器芯片控制而SCSI磁盘由SCSI磁盘控制器芯片控制。这些控制器通过各种总线连接到CPU上或相互间互连。目前制造的大多数系统使用PCI和ISA总线来连接主要系统部件。控制器是一些类似CPU的处理器,它们可以看做CPU的智能帮手。CPU则是系统的总控。 虽然所有这些控制器互不相同,但是它们的寄存器的功能类似。运行在CPU上的软件必须能读出或者写入这些控制寄存器。其中有一个寄存器可能包含指示错误的状态码。另一个则用于控制目的,用来改变控制器的运行模式。在总线上的每个控制器可以被CPU所单独寻址,这是软件设备驱动程序能写入寄存器并能控制这些控制器的原因。
1.5 地址空间
系统总线将CPU与主存连接在一起并且和连接CPU与系统硬件外设的总线隔离开。一般来说,硬件外设存在的主存空间叫I/O空间。I/O空间还可以进一步细分,但这里我们不再深究。CPU既可以访问系统内存空间又可以访问I/O空间内存,而控制器自身只能在CPU协助下间接的访问系统内存。从设备的角度来看,比如说软盘控制器,它只能看到在ISA总线上的控制寄存器而不是系统内存。典型的CPU使用不同指令来访问内存与I/O空间。例如,可能有一条指令"将I/O地址0x3F0的内容读入到寄存器X"。这正是CPU控制系统硬件设备的方式:通过读写I/O地址空间上的外设寄存器。在I/O空间中通用外设(IDE控制器、串行口、软盘控制器等等)上的寄存器经过多年的PC体系结构发展基本保持不变。I/O地址空间0x3f0是串行口(COM1)的控制寄存器之一。 有时控制器需要直接从系统主存中读写大量数据。例如当用户将数据写入硬盘时。在这种情况 下,直接内存访问(DMA)控制器将用来允许硬件外设直接访问系统主存,不过这将处于CPU的严格监控下。
1.6 时钟
所有的操作系统都必须准确的得到当前时间,所以现代PC包含一个特殊的外设称为实时时钟(RTC)。它提供了 两种服务:可靠的日期和时间以及精确的时间间隔。RTC有其自身的电池这样即使PC掉电时它照样可以工作,这就是PC总是"知道"正确时间和日期的原因。而时间间隔定时器使得操作系统能进行准确的调度工作。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Linux 核心--4.内存管理
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
