硬件設備發生沖突的基本原理
玩電腦的朋友很多都有過這樣的經歷: 當你在電腦加上某個新的板卡后, 常會導
致整個電腦使用不正常。于是往往抱怨所買板卡的質量不好, 其實此類問題也許
并不與新卡的質量有關, 而是因為它和電腦上其它設備之間產生了設備沖突。???
??? 一個計算機設備要能正常工作, 必須要通過一定的系統資源與主機進行通
信。但當新的板卡裝入計算機后, 往往會與已有的計算機設備發生資源沖突, 而
不能正常工作。最常見的也是最容易出現的資源沖突就是IRQ、DMA 和I/O 沖
突。首先, 讓我們了解一下IRQ、DMA 和I/O 的概念。???
??? 1、IRQ( Interrupt ReQuest)
??? 意為中斷請求, 每一個設備都有一個IRQ, 用以向CPU 發送服務請求, 稱
為中斷。一般來說, 計算機有16 個中斷線與各種需要用中斷方式工作的不同外
設相連( 每個中斷線有一個標號也就是中斷號) , 當一條中斷線被激活后, CPU
就會立即停下當前的工作, 裝載一定的中斷處理子程序( 中斷服務程序) , 這個
程序執行完成以后, 系統回到剛才的斷點, 繼續原來的工作。如果兩個設備擁有
一個中斷號計算機系統中的某些部分就會停止工作, 甚至會導致整個計算機系統崩潰。一般來說, 在我們常用的個人PC 機中, 中斷號的分配是這樣的:???
??? IRQ 0系統時鐘( 系統保留) IRQ 1 鍵盤( 系統保留)
??? IRQ 2系統的第二個中斷請求控制器( IRQ8- 15)???
??? IRQ 3 串行口2( 可用)?? IRQ 4 串行口1( 可用)?
??? IRQ 5 并行口2( 可用) ( 一般用來設置聲卡)???
??? IRQ 6 軟盤( 系統保留)???? IRQ 7并行口1( 一般用作打印機)
??? IRQ 8 實時時鐘( 系統保留)???? IRQ 9 可用 IRQ 10 可用
??? IRQ 11常用于顯示卡 IRQ12 PS/2 mouse( 可用) IRQ13 數學協處理器
??? IRQ14 IDE1 控制器通道 IRQ15 IDE2 控制器通道( 可用)
??? 此外還有NMI 非正常中斷( 不可屏蔽中斷) , 如校驗錯。???
??? 2、DMA( Direct Memory Address)???
??? 直接存取通道。主機與外設之間的數據傳送, 一共有兩條途徑: 一是用CPU
來管理的數據的傳送; 二是用專門的芯片完成數據的傳送。所謂DMA, 就是不
經CPU, 外設同內存之間相互傳送數據的通道, 在這種方式下, 外設利用DMA
通道直接將數據寫入存儲器或將數據從存儲器中讀出, 而不用CPU 參與, 系統
的速度會大大增加。在PC 機內部, DMA 通道的分配如下:???
??? DMA0? 可用?? DMA1? ECP 打印口( 如果設置的話) DMA2? 軟盤控制
器???
??? DMA3? 8 位數據傳送???? DMA4? 級聯DMA 控制器?? DMA5? 可用???
??? DMA6? 可用?? DMA7? 可用???
??? 3、I/O( INPUT/OUTPUT)
??? 輸入/輸出端口, 計算機外設與主機( CPU 和內存) 進行通信時, 是通過接
口來進行的, 這個接口就叫做端口。每個端口賦與一個端口號稱為地址。每一個
端口都包含一組寄存器( 數據寄存器、命令寄存器和狀態寄存器) 。每一個想和
CP U 通信的外設都有不同的I/O 地址, 在PC 機內部一共有1024 個地址。
??? 從Win95 開始計算機的所有IRQ 號、DMA通道和I/O 端口等系統資源均被
操作系統接管, 并由其根據情況進行智能的分配, 這就是我們常說的即插即用。
然而這種即插即用是有條件的: 要求有即插即用的BIOS、即插即用的設備和即
插即用的操作系統, 三者缺一不可, 否則可能會引發設備沖突。在實際安裝時,
由于存在非即插即用設備和即插即用設備混合安裝等情況, 而且即插即用設備品
種規格越來越多, 新設備層出不窮, 而WINDOWS 95/98 并非一個很完善的即插
即用操作系統, 常常不能正確檢測和處理有關設備的資源情況, 特別是在安裝設
備較多的情況下, 由于各種板卡的中斷、DMA 通道、I/O 地址大部分都有自己
的缺省值, 如果碰巧兩個板卡使用了同樣的資源, 操作系統又無法正常處理, 就
會引起沖突。這就是設備發生沖突的重要原因之一。
??? 此外有些板卡由于設計上有特殊之處( 比如耗電過大) , 或者選料不嚴、制
作工藝不精甚至固件代碼編寫不完善等問題, 也可能與另外的板卡難以“和平”
玩電腦的朋友很多都有過這樣的經歷: 當你在電腦加上某個新的板卡后, 常會導
致整個電腦使用不正常。于是往往抱怨所買板卡的質量不好, 其實此類問題也許
并不與新卡的質量有關, 而是因為它和電腦上其它設備之間產生了設備沖突。???
??? 一個計算機設備要能正常工作, 必須要通過一定的系統資源與主機進行通
信。但當新的板卡裝入計算機后, 往往會與已有的計算機設備發生資源沖突, 而
不能正常工作。最常見的也是最容易出現的資源沖突就是IRQ、DMA 和I/O 沖
突。首先, 讓我們了解一下IRQ、DMA 和I/O 的概念。???
??? 1、IRQ( Interrupt ReQuest)
??? 意為中斷請求, 每一個設備都有一個IRQ, 用以向CPU 發送服務請求, 稱
為中斷。一般來說, 計算機有16 個中斷線與各種需要用中斷方式工作的不同外
設相連( 每個中斷線有一個標號也就是中斷號) , 當一條中斷線被激活后, CPU
就會立即停下當前的工作, 裝載一定的中斷處理子程序( 中斷服務程序) , 這個
程序執行完成以后, 系統回到剛才的斷點, 繼續原來的工作。如果兩個設備擁有
一個中斷號計算機系統中的某些部分就會停止工作, 甚至會導致整個計算機系統崩潰。一般來說, 在我們常用的個人PC 機中, 中斷號的分配是這樣的:???
??? IRQ 0系統時鐘( 系統保留) IRQ 1 鍵盤( 系統保留)
??? IRQ 2系統的第二個中斷請求控制器( IRQ8- 15)???
??? IRQ 3 串行口2( 可用)?? IRQ 4 串行口1( 可用)?
??? IRQ 5 并行口2( 可用) ( 一般用來設置聲卡)???
??? IRQ 6 軟盤( 系統保留)???? IRQ 7并行口1( 一般用作打印機)
??? IRQ 8 實時時鐘( 系統保留)???? IRQ 9 可用 IRQ 10 可用
??? IRQ 11常用于顯示卡 IRQ12 PS/2 mouse( 可用) IRQ13 數學協處理器
??? IRQ14 IDE1 控制器通道 IRQ15 IDE2 控制器通道( 可用)
??? 此外還有NMI 非正常中斷( 不可屏蔽中斷) , 如校驗錯。???
??? 2、DMA( Direct Memory Address)???
??? 直接存取通道。主機與外設之間的數據傳送, 一共有兩條途徑: 一是用CPU
來管理的數據的傳送; 二是用專門的芯片完成數據的傳送。所謂DMA, 就是不
經CPU, 外設同內存之間相互傳送數據的通道, 在這種方式下, 外設利用DMA
通道直接將數據寫入存儲器或將數據從存儲器中讀出, 而不用CPU 參與, 系統
的速度會大大增加。在PC 機內部, DMA 通道的分配如下:???
??? DMA0? 可用?? DMA1? ECP 打印口( 如果設置的話) DMA2? 軟盤控制
器???
??? DMA3? 8 位數據傳送???? DMA4? 級聯DMA 控制器?? DMA5? 可用???
??? DMA6? 可用?? DMA7? 可用???
??? 3、I/O( INPUT/OUTPUT)
??? 輸入/輸出端口, 計算機外設與主機( CPU 和內存) 進行通信時, 是通過接
口來進行的, 這個接口就叫做端口。每個端口賦與一個端口號稱為地址。每一個
端口都包含一組寄存器( 數據寄存器、命令寄存器和狀態寄存器) 。每一個想和
CP U 通信的外設都有不同的I/O 地址, 在PC 機內部一共有1024 個地址。
??? 從Win95 開始計算機的所有IRQ 號、DMA通道和I/O 端口等系統資源均被
操作系統接管, 并由其根據情況進行智能的分配, 這就是我們常說的即插即用。
然而這種即插即用是有條件的: 要求有即插即用的BIOS、即插即用的設備和即
插即用的操作系統, 三者缺一不可, 否則可能會引發設備沖突。在實際安裝時,
由于存在非即插即用設備和即插即用設備混合安裝等情況, 而且即插即用設備品
種規格越來越多, 新設備層出不窮, 而WINDOWS 95/98 并非一個很完善的即插
即用操作系統, 常常不能正確檢測和處理有關設備的資源情況, 特別是在安裝設
備較多的情況下, 由于各種板卡的中斷、DMA 通道、I/O 地址大部分都有自己
的缺省值, 如果碰巧兩個板卡使用了同樣的資源, 操作系統又無法正常處理, 就
會引起沖突。這就是設備發生沖突的重要原因之一。
??? 此外有些板卡由于設計上有特殊之處( 比如耗電過大) , 或者選料不嚴、制
作工藝不精甚至固件代碼編寫不完善等問題, 也可能與另外的板卡難以“和平”
評論
查看更多