RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺談電腦驅(qū)動(dòng)程序的工作原理 詳解電腦驅(qū)動(dòng)程序意義

ss ? 作者:工程師譚軍 ? 2018-09-19 08:41 ? 次閱讀

本文主要是關(guān)于電腦驅(qū)動(dòng)程序的相關(guān)介紹,并著重對(duì)電腦驅(qū)動(dòng)程序的工作原理及意義進(jìn)行了詳盡的闡述。

電腦驅(qū)動(dòng)程序

1 驅(qū)動(dòng)程序是什么

驅(qū)動(dòng)程序的概念,驅(qū)動(dòng)程序?qū)嶋H上是一段能讓電腦與各種硬件設(shè)備通話的程序代碼。如果一個(gè)硬件只依賴操作 系統(tǒng)而沒有驅(qū)動(dòng)程序,這個(gè)硬件就不能發(fā)揮其特有的功效。換言之,驅(qū)動(dòng)程序是硬件和操作系統(tǒng) 之間的一座橋梁,由它把硬件本身的功能告訴給操作系統(tǒng),同時(shí)也將標(biāo)準(zhǔn)的操作系統(tǒng)指令轉(zhuǎn)化成 特殊的外設(shè)專用命令,從而保證硬件設(shè)備的正常工作。

驅(qū)動(dòng)程序也有多種模式,比較熟悉的是微軟的Win32驅(qū)動(dòng)模式,無論使用的是Windows 9x系列, 還是Windows XP/2000操作系統(tǒng),同樣的硬件只需安裝其相應(yīng)的驅(qū)動(dòng)程序就可以用了。我們常見到 For 9x或For NT/2000等驅(qū)動(dòng)程序,由于這兩種操作系統(tǒng)的內(nèi)核是不一樣的,需要針對(duì)Windows酌不 同版本進(jìn)行修改。而無須根據(jù)不同的操作系統(tǒng)重新編寫驅(qū)動(dòng),這就給廠家和用戶帶來了極大的方便。

有時(shí)候在找到某個(gè)硬件型號(hào)的驅(qū)動(dòng)程序后,會(huì)出現(xiàn)VxD和WDM兩種驅(qū)動(dòng)。其中,VxD驅(qū)動(dòng) 是一款虛擬驅(qū)動(dòng)程序,類似于DOS下的驅(qū)動(dòng)程序,如果你使用的是Windows 9x系統(tǒng),使用VxD 驅(qū)動(dòng)程序會(huì)發(fā)揮出硬件的最佳性能;而WDM驅(qū)動(dòng)則是支持更多的新設(shè)備,可以增強(qiáng)系統(tǒng)性能和 穩(wěn)定性,在Windows XP/2000操作系統(tǒng)中只支持WDM驅(qū)動(dòng)。 以上內(nèi)容那個(gè)是解答驅(qū)動(dòng)程序是什么的問題,下面接著講如何下載驅(qū)動(dòng)程序,驅(qū)動(dòng)程序怎么安裝的具體方法。

2 為什么安裝驅(qū)動(dòng)程序

雖然Windows XP/7系統(tǒng)能夠識(shí)別一些硬件設(shè)備,并為其自動(dòng)安裝驅(qū)動(dòng)程序。但是默認(rèn)的驅(qū) 動(dòng)程序一般不能完全發(fā)揮硬件的最佳功能,這時(shí)就需要安裝生產(chǎn)廠商提供的驅(qū)動(dòng)程序。

另外,有些硬件設(shè)備Windows XP/7系統(tǒng)無法識(shí)別,就無法自動(dòng)安裝其需要的驅(qū)動(dòng)程序,這 些都需要用戶安裝設(shè)備驅(qū)動(dòng)程序。如圖15-1所示為無法識(shí)別被打上黃色感嘆號(hào)的硬件設(shè)備。

3 如何獲得驅(qū)動(dòng)程序

獲取硬件的驅(qū)動(dòng)程序主要有以下幾種方法。

1.購(gòu)買硬件時(shí)附帶的安裝光盤

購(gòu)買硬件設(shè)備時(shí),包裝盒內(nèi)帶有一張驅(qū)動(dòng)程序安裝光盤。將光盤放入光驅(qū)后,會(huì)自動(dòng)打開一 個(gè)安裝界面引導(dǎo)用戶安裝相應(yīng)的驅(qū)動(dòng)程序,選擇相應(yīng)的選項(xiàng),即可安裝相應(yīng)的驅(qū)動(dòng)程序。

電腦驅(qū)動(dòng)程序的工作原理

電腦驅(qū)動(dòng)程序的工作原理:

驅(qū)動(dòng)程序的定義 是一種可以使計(jì)算機(jī)和設(shè)備通信的特殊程序,可以 說相當(dāng)于硬件的接口,操作系統(tǒng)只有通過這個(gè)接口,才能控制硬件設(shè)備的工作 ,假如某設(shè)備的驅(qū)動(dòng)程序未能正確安裝,便不能正常工作;

因此,驅(qū)動(dòng)程序被譽(yù)為“ 硬件的靈魂”、“硬件的主宰”、和“硬件和系統(tǒng)之間的橋梁”等。 剛安裝好的系統(tǒng)操作系統(tǒng),很可能驅(qū)動(dòng)程序安裝得不完整。硬件越新,這種可能性越大。菜菜熊之前看到的“圖標(biāo)很大且顏色難看”就是沒有安裝好驅(qū)動(dòng)的原因;

在軟件測(cè)試中 :在自底向上測(cè)試中,要編寫稱為測(cè)試驅(qū)動(dòng)的模塊調(diào)用正在測(cè)試的模塊。 測(cè)試驅(qū)動(dòng)模塊以和將來真正模塊同樣的方式掛接,向處于測(cè)試的模塊發(fā)送測(cè)試用例數(shù)據(jù),接受返回結(jié)果,驗(yàn)證結(jié)果是否正確。 驅(qū)動(dòng)程序的作用 隨著電子技術(shù)的飛速發(fā)展,電腦硬件的性能越來越強(qiáng)大;

驅(qū)動(dòng)程序是直接工作在各種硬件設(shè)備上的軟件,其“驅(qū)動(dòng)”這個(gè)名稱也十分形象的指明了它的功能;

正是通過驅(qū)動(dòng)程序,各種硬件設(shè)備才能正常運(yùn)行,達(dá)到既定的工作效果。

驅(qū)動(dòng)程序的組成

驅(qū)動(dòng)程序 簡(jiǎn)單的話就是識(shí)別和正常運(yùn)行各硬件的軟件,有一些朋友對(duì)驅(qū)動(dòng)程序的安裝都很畏懼,也有不少對(duì)驅(qū)動(dòng)程序較感興趣,那么驅(qū)動(dòng)是由什么組成的呢?

一般操作系統(tǒng)Windows,它的驅(qū)動(dòng)程序由后綴名為drv、vxd、sys、dll、exe、ini、inf等種類的文件組成,其中.drv、.vxd、.dll、.inf等文件是許多驅(qū)動(dòng)程序的核心文件。而其中后綴名為inf的驅(qū)動(dòng)文件對(duì)電腦更為重要!

inf文件,從Win95開始使用的一種存放設(shè)備安裝信息的文件,它用特定語法的文字來表明要安裝的設(shè)備類型型號(hào)及廠商,以及需要安裝的文件及上標(biāo)路徑或要添加到注冊(cè)表中的信息。

大家可以看到幾乎所有系統(tǒng)驅(qū)動(dòng)程序中都有inf這個(gè)文件,硬件廠商他自己開發(fā)的驅(qū)動(dòng),這種驅(qū)動(dòng)一般可以最大限度地發(fā)揮其產(chǎn)品硬件效能,而且一些大廠家,其驅(qū)動(dòng)的功能也就越強(qiáng)大和完善,它一般隨該產(chǎn)品的隨機(jī)光盤或軟盤提供。

另外,硬件設(shè)備中的核心芯片的制造廠家,也提供硬件設(shè)備的驅(qū)動(dòng)程序。這些驅(qū)動(dòng)程序,因?yàn)檫m合于所有采用該核心芯片的產(chǎn)品,所以大家又將其稱之為“公版”驅(qū)動(dòng)。這種驅(qū)動(dòng)穩(wěn)定性、兼容性都很不錯(cuò)!

驅(qū)動(dòng)程序的意義

在操作系統(tǒng)當(dāng)中,設(shè)備驅(qū)動(dòng)程序是一種非常重要的I/O軟件。設(shè)備驅(qū)動(dòng)程序是直接同IO設(shè)備打交道,直接對(duì)它們進(jìn)行控制的軟件模塊。設(shè)備驅(qū)動(dòng)程序的基本任務(wù)是接收來自上層的IO軟件的抽象請(qǐng)求,并且去執(zhí)行這個(gè)請(qǐng)求,例如,抽象的讀寫操作,設(shè)備的初始化操作等。上層的IO軟件通過這些抽象的函數(shù)接口與設(shè)備驅(qū)動(dòng)程序打交道,而這些接口是標(biāo)準(zhǔn)的、穩(wěn)定不變的,而硬件設(shè)備的具體細(xì)節(jié)被封裝在設(shè)備驅(qū)動(dòng)程序內(nèi)部。這樣,如果硬件設(shè)備發(fā)生變化,只要更新相應(yīng)的設(shè)備驅(qū)動(dòng)程序即可,不會(huì)影響到上層軟件對(duì)它的使用。

設(shè)備驅(qū)動(dòng)程序與具體的設(shè)備類型密切相關(guān)。每個(gè)IO都需要相應(yīng)的設(shè)備驅(qū)動(dòng)程序,而每一個(gè)設(shè)備驅(qū)動(dòng)程序也只能處理一種類型的設(shè)備,因?yàn)閷?duì)不同類型的設(shè)備,他們的控制方式不同的。例如,對(duì)于一個(gè)鼠標(biāo)設(shè)備驅(qū)動(dòng)程序來說,它需要從設(shè)備控制器中讀取各種各樣的信息,包括鼠標(biāo)的移動(dòng)位置、那個(gè)鍵被按下等。而對(duì)于一個(gè)磁盤的驅(qū)動(dòng)程序而言,它為了進(jìn)行磁盤的讀寫操作就必須知道扇區(qū)、磁道、柱面、磁頭等各種各樣的參數(shù),并使用這些參數(shù)來控制磁盤控制器。

一般而言,在具體實(shí)現(xiàn)一個(gè)設(shè)備驅(qū)動(dòng)程序的時(shí)候,可以采用一種通用的結(jié)構(gòu)。

(1)檢查輸入的參數(shù)是否有效,如果無效,就返回一個(gè)出錯(cuò)報(bào)告;如果有效,就把輸入的的抽象參數(shù)轉(zhuǎn)換而控制設(shè)備所需要的具體參數(shù)。

(2)檢查設(shè)備當(dāng)前是否空閑,如果設(shè)備正忙,那么這一次的IO請(qǐng)求就暫時(shí)沒法完成,所以把它加入等待隊(duì)列(阻塞隊(duì)列),稍后在處理;如果設(shè)備空閑,再檢查硬件的狀態(tài),看是否具備了運(yùn)行的條件。

(3)設(shè)備驅(qū)動(dòng)程序向設(shè)備控制器發(fā)出一連串的命令,也就是說,把這些命令寫入到控制器的各個(gè)寄存器中當(dāng)中。

(4)在發(fā)出控制命令后,如果這個(gè)IO操作需要一定的時(shí)間,不能馬上完成,那么驅(qū)動(dòng)程序就會(huì)把自己阻塞起來,直到IO操作完成,并通過硬件產(chǎn)生一個(gè)中斷,在這個(gè)中斷處理程序里面把驅(qū)動(dòng)程序喚醒加入到就緒隊(duì)列中(如果cpu空閑則就獲得cpu運(yùn)行)。

(5)IO操作完成以后,設(shè)備驅(qū)動(dòng)程序還有檢查出錯(cuò)的情況。若一切正常,就返回一些狀態(tài)信息給調(diào)用者。如果這是一個(gè)輸入的操作,還要把輸入的數(shù)據(jù)上傳給上一層的系統(tǒng)軟件。

在實(shí)時(shí)內(nèi)核的IO系統(tǒng)中,用戶的IO請(qǐng)求在到達(dá)設(shè)備驅(qū)動(dòng)程序之前,通常只做少量的處理。事實(shí)上,實(shí)時(shí)內(nèi)核的IO系統(tǒng)的作用就像一個(gè)轉(zhuǎn)換表,把用戶對(duì)IO的請(qǐng)求轉(zhuǎn)換到相應(yīng)的設(shè)備驅(qū)動(dòng)程序中。這樣,設(shè)備驅(qū)動(dòng)程序就能獲得最原始用戶的請(qǐng)求,并對(duì)設(shè)備進(jìn)行操作。

結(jié)語

關(guān)于電腦驅(qū)動(dòng)程序的相關(guān)介紹就到這了,如有不足之處歡迎指正。

相關(guān)閱讀推薦:8155驅(qū)動(dòng)程序

相關(guān)閱讀推薦:芯片組驅(qū)動(dòng)不裝有什么影響

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 驅(qū)動(dòng)程序
    +關(guān)注

    關(guān)注

    19

    文章

    831

    瀏覽量

    48022
  • IO設(shè)備
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    7370
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    WINCE驅(qū)動(dòng)程序開發(fā)指南

    CE驅(qū)動(dòng)程序所有驅(qū)動(dòng)皆為動(dòng)態(tài)鏈接庫驅(qū)動(dòng)實(shí)現(xiàn)中可以調(diào)用所有標(biāo)準(zhǔn)的APICE驅(qū)動(dòng)程序模型本機(jī)驅(qū)動(dòng)程序流接口驅(qū)
    發(fā)表于 07-07 15:06 ?41次下載

    索尼k750c驅(qū)動(dòng)程序下載

    K750驅(qū)動(dòng)程序: 先把壓縮包解壓。 MODEM SCRIPT這個(gè)是接連電腦上網(wǎng)的驅(qū)動(dòng)程序 DRIVERS-USB CABLE是USB驅(qū)動(dòng)程序還有其他的
    發(fā)表于 07-15 16:55 ?144次下載

    acer aspire 5570驅(qū)動(dòng)程序下載

    acer aspire 5570驅(qū)動(dòng)程序下載 寵基筆記本驅(qū)動(dòng)程序下載. ASPIRE  5570網(wǎng)卡驅(qū)動(dòng)程序 for WinXP ASPIRE  5570顯卡驅(qū)動(dòng)程序
    發(fā)表于 10-09 20:05 ?391次下載

    實(shí)時(shí)系統(tǒng)VxWorks下設(shè)備驅(qū)動(dòng)程序的編寫詳解

    實(shí)時(shí)系統(tǒng)VxWorks下設(shè)備驅(qū)動(dòng)程序的編寫詳解
    發(fā)表于 03-29 12:26 ?15次下載

    手機(jī)usb通用驅(qū)動(dòng)程序

    手機(jī)usb通用驅(qū)動(dòng)程序.適合所有手機(jī)USB接口與電腦通信的驅(qū)動(dòng)程序.usb數(shù)據(jù)線驅(qū)動(dòng)下載的適用產(chǎn)品: ·夏新 E800 ·夏新 E860 ·西門子 CT65 ·波導(dǎo) MP300 w ·
    發(fā)表于 04-30 12:28 ?57次下載

    TKScope DK CCS驅(qū)動(dòng)程序

     TKScope DK CCS驅(qū)動(dòng)程序 驅(qū)動(dòng)程序
    發(fā)表于 11-15 16:45 ?0次下載

    NEC筆記本電腦驅(qū)動(dòng)程序下載

    NEC筆記本電腦驅(qū)動(dòng)程序下載
    發(fā)表于 08-12 07:56 ?9143次閱讀

    HC6800的USB驅(qū)動(dòng)程序

    HC6800的USB驅(qū)動(dòng)程序HC6800的USB驅(qū)動(dòng)程序HC6800的USB驅(qū)動(dòng)程序HC6800的USB驅(qū)動(dòng)程序HC6800的USB驅(qū)動(dòng)程序
    發(fā)表于 12-28 15:28 ?0次下載

    CDM20600驅(qū)動(dòng)程序,USB驅(qū)動(dòng)程序和并口驅(qū)動(dòng)應(yīng)用程序(免費(fèi)下載)

    本文檔的主要內(nèi)容是CDM20600驅(qū)動(dòng)程序,USB驅(qū)動(dòng)程序和并口驅(qū)動(dòng)應(yīng)用程序(免費(fèi)下載)詳細(xì)資料概述
    發(fā)表于 06-06 10:00 ?57次下載
    CDM20600<b class='flag-5'>驅(qū)動(dòng)程序</b>,USB<b class='flag-5'>驅(qū)動(dòng)程序</b>和并口<b class='flag-5'>驅(qū)動(dòng)</b>應(yīng)用<b class='flag-5'>程序</b>(免費(fèi)下載)

    什么是驅(qū)動(dòng)程序

    驅(qū)動(dòng)程序一般指的是設(shè)備驅(qū)動(dòng)程序,是一種可以使計(jì)算機(jī)和設(shè)備通信的特殊程序。相當(dāng)于硬件的接口,操作系統(tǒng)只有通過這個(gè)接口,才能控制硬件設(shè)備的工作,假如某設(shè)備的
    的頭像 發(fā)表于 09-06 18:31 ?3.5w次閱讀

    Linux設(shè)備驅(qū)動(dòng)程序的平臺(tái)驅(qū)動(dòng)程序和字符驅(qū)動(dòng)程序介紹

    了解Linux設(shè)備驅(qū)動(dòng)程序的基礎(chǔ)知識(shí),重點(diǎn)介紹平臺(tái)驅(qū)動(dòng)程序和字符驅(qū)動(dòng)程序。 提出了簡(jiǎn)單的平臺(tái)驅(qū)動(dòng)程序實(shí)現(xiàn)和簡(jiǎn)單的字符驅(qū)動(dòng)程序實(shí)現(xiàn)。
    的頭像 發(fā)表于 11-27 06:32 ?4297次閱讀

    基于WDM驅(qū)動(dòng)程序模型實(shí)現(xiàn)過濾器驅(qū)動(dòng)程序的開發(fā)設(shè)計(jì)

    WDM(Windows Driver Mode)是微軟公司為Windows的驅(qū)動(dòng)程序設(shè)計(jì)的一種通用的驅(qū)動(dòng)程序模型。相比以前的KDM和VXD來說,他的性能更高、系統(tǒng)之間移植更加方便。所以,隨著系統(tǒng)
    的頭像 發(fā)表于 09-19 15:54 ?3172次閱讀
    基于WDM<b class='flag-5'>驅(qū)動(dòng)程序</b>模型實(shí)現(xiàn)過濾器<b class='flag-5'>驅(qū)動(dòng)程序</b>的開發(fā)設(shè)計(jì)

    FX3驅(qū)動(dòng)程序FX3驅(qū)動(dòng)程序

    FX3驅(qū)動(dòng)程序FX3驅(qū)動(dòng)程序
    發(fā)表于 03-22 22:35 ?103次下載
    FX3<b class='flag-5'>驅(qū)動(dòng)程序</b>FX3<b class='flag-5'>驅(qū)動(dòng)程序</b>

    STM32的ADC驅(qū)動(dòng)程序

    STM32的ADC驅(qū)動(dòng)程序(電源技術(shù)被踢出核心)-? STM32的ADC驅(qū)動(dòng)程序,環(huán)境是MDK,ADC的所有函數(shù)
    發(fā)表于 09-23 13:43 ?37次下載
    STM32的ADC<b class='flag-5'>驅(qū)動(dòng)程序</b>

    USB驅(qū)動(dòng)程序

    USB驅(qū)動(dòng)程序
    發(fā)表于 08-17 11:47 ?54次下載
    RM新时代网站-首页