freebye

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
最常见的也是最容易出现的资源 冲突就是IRQ、DMA和I/O冲突。我们只要从这里入手,解决这方面的问题还是不难的。

  首先,我们应该了解一下IRQ、DMA和I/O的概念。
  1、IRQ(Interrupt ReQuest),意为中断请求,每一个设备都 有一个IRQ,用以向CPU发送服务请求,称为中断。一般来说,计算机 有16个中断线与各种需要用中断方式工作的不同外设相连(每个中断 线有一个标号也就是中断号),当一条中断线被激活后,CPU就会立 即停下当前的工作,装载一定的中断处理子程序(中断服务程序),这个程序执行完成以后,系统回到刚才的断点,继续原来的工作。如 果两个设备拥有一个中断号计算机系统中的某些部分就会停止工作其 甚至会导致整个计算机系统崩溃。一般来说,在我们常用的个人PC机 中,中断号的分配是这样的(见表一):

       表一中断(INTERRUPT)对应表
       中断号         说明
        0       系统时钟(不可用)
        1        键盘(不可用)
        2   系统的第二个中断请求控制器(IRQ8-15)
        3        串行口2(可用)
        4        串行口1(可用)
        5    并行口2(可用)(一般用来设置声卡)
        6        软盘(不可用)
        7       并行口1(一般用作打印机)
        8       实时时钟(不可用)
        9           可用
        10           可用
        11         常用于显示卡
        12          PS/2 mouse
        13         数学协处理器
        14         IDE1控制器通道
        15       IDE2控制器通道(可用)
注:NMI非正常中断(不可屏蔽中断),如校验错。

  2、DMA(Direct Memory Address)
  主机与外设之间的数据传送,一共有两条途径:一是用CPU来管 理的数据的传送;二是用专门的芯片完成数据的传送。所谓DMA,就 是不经CPU,外设同内存之间相互传送数据的通道,在这种方式下, 外设利用DMA通道直接将数据写入存储器或将数据从存储器中读出, 而不用CPU参与,系统的速度会大大增加。在PC机内部,DMA通道是如 何分配的呢?(见表二)

       表二(DMA直接内存存取通道对应表)
       DMA 0 可用
       DMA 1 EPC打印口(如果设置的话)
       DMA 2 软盘控制器
       DMA 3 8位数据传送
       DMA 4 级联DMA控制器
       DMA 5 可用
       DMA 6 可用
       DMA 7 可用

3、I/O(INPUT/OUTPUT)
  输入/输出端口,计算机外设与主机(CPU和内存)进行通信时, 是通过接口来进行的,这个接口就叫做端口。每个端口赋与一个端口 号称为地址。每一个端口都包含一组寄存器(数据寄存器、命令寄存 器和状态寄存器)。每一个想和CPU通信的外设都有不同的I/O地址, 在PC机内部一共有1024个地址。
  中断、DMA通道、I/O地址大部分都有缺省值,然而,如果碰巧两 个板卡使用了同样的资源,就会引起冲突。

  其次,我们了解一下设备发生冲突的原因。
Win95是一个具有即插即用功能的操作系统,通常在Win95下计算 机的所有IRQ号、DMA通道和I/O端口等系统资源均被Win95接管,并由 其根据情况进行智能的分配,这就是我们常说的即插即用。然而这种 即插即用是有条件的:即插即用的BIOS、即插即用的设备和即插即用 的操作系统,三者缺一不可,否则可能会引发设备冲突。在实际安装 时,由于即插即用设备品种规格越来越多,新设备层出不穷,常常不 能正确检测出有关设备,特别是在安装设备较多的情况下,设备冲突是最容易出现的常见故障。

posted on 2005-01-31 02:48  freebye  阅读(335)  评论(0编辑  收藏  举报