中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      windowsnt環(huán)境下fddi網(wǎng)卡驅(qū)動(dòng)程序設(shè)計(jì)2

      • 相關(guān)推薦

      windowsnt環(huán)境下fddi網(wǎng)卡驅(qū)動(dòng)程序設(shè)計(jì)(2)

      windowsnt環(huán)境下fddi網(wǎng)卡驅(qū)動(dòng)程序設(shè)計(jì)(2) 第三階段:獲取注冊(cè)庫(kù)中各種控制信息,如用戶定義的非頁(yè)內(nèi)存大小;第四階段:初始化注冊(cè)庫(kù) \registry\machine下system和hardware并創(chuàng)建currentcontrolset,為裝入相關(guān)硬件設(shè)備驅(qū)動(dòng)程序作準(zhǔn)備;
      第五階段:裝入基本核心驅(qū)動(dòng)程序;
      第六階段:釋放一些已經(jīng)完成使命的裝入初始數(shù)據(jù)塊;
      第七階段:進(jìn)一步初始化注冊(cè)庫(kù),以便有些依賴于基本核心驅(qū)動(dòng)程序的上層驅(qū)動(dòng)程序能順利裝入;
      第八階段:服務(wù)控制器裝入應(yīng)該由該服務(wù)控制器裝入的各種驅(qū)動(dòng)程序。

      §2.2.2 fddi網(wǎng)卡驅(qū)動(dòng)程序的加載過(guò)程
      在windows nt啟動(dòng)的第五個(gè)階段,將加載核心驅(qū)動(dòng)程序。而對(duì)于ndis網(wǎng)卡驅(qū)動(dòng)程序是在ndis接口(ndis.sys)加載后調(diào)入運(yùn)行,向ndis wrapper注冊(cè)、初始化、查詢?cè)O(shè)置參數(shù)等。
      windows nt啟動(dòng)時(shí),相應(yīng)的實(shí)體如nt的服務(wù)控制器根據(jù)注冊(cè)庫(kù)中yhfddi驅(qū)動(dòng)程序的配置注冊(cè)信息,初始化ndis wrapper,并裝入相應(yīng)的驅(qū)動(dòng)程序,生成驅(qū)動(dòng)程序管理塊結(jié)構(gòu),申請(qǐng)內(nèi)存以保存各種信息,向ndis wrapper注冊(cè)驅(qū)動(dòng)程序。初始化和注冊(cè)完畢后,再由服務(wù)控制器讀取注冊(cè)庫(kù)中相應(yīng)的鏈接信息。
      在ndis wrapper和yhfddi驅(qū)動(dòng)程序初始化和注冊(cè)成功后,ndis wrapper根據(jù)系統(tǒng)相應(yīng)的注冊(cè)信息,加入和yhfddi驅(qū)動(dòng)程序所對(duì)應(yīng)的fddi網(wǎng)卡,同時(shí)讀入網(wǎng)卡的注冊(cè)信息,并進(jìn)行網(wǎng)卡注冊(cè)和網(wǎng)卡初始化。
      在以上過(guò)程成功后,wrapper將查詢和設(shè)置驅(qū)動(dòng)程序的各種參數(shù),了解驅(qū)動(dòng)程序?qū)δ男┎僮髦С郑瑳Q定對(duì)上層驅(qū)動(dòng)程序的支持范圍。
      第三節(jié)fddi網(wǎng)卡驅(qū)動(dòng)程序的注冊(cè)
      driverentry函數(shù)是windows nt ddk規(guī)定的核心驅(qū)動(dòng)程序的入口點(diǎn),wrapper識(shí)別到入口點(diǎn)后,調(diào)入驅(qū)動(dòng)程序,在driverentry函數(shù)內(nèi)完成兩個(gè)基本注冊(cè)任務(wù):
      調(diào)用ndisminitializewapper函數(shù)向ndis接口報(bào)告驅(qū)動(dòng)程序?qū)⒁詍iniport類網(wǎng)卡驅(qū)動(dòng)程序注冊(cè)。ndis建立它需要記錄的驅(qū)動(dòng)程序狀態(tài)信息,同時(shí)返回ndiswrapperhandle,驅(qū)動(dòng)程序保存這個(gè)句柄,以利后來(lái)調(diào)用ndisxxxconfiguration和initialization等函數(shù)。
      填寫ndisxx_miniport_characteristics屬性結(jié)構(gòu),主要記錄ndis版本號(hào)和驅(qū)動(dòng)程序支持的miniportxxx函數(shù)的入口點(diǎn),然后調(diào)用ndismregisterminiport函數(shù)實(shí)現(xiàn)驅(qū)動(dòng)程序的整體注冊(cè)。
      以yhfddi為例所要注冊(cè)的屬性結(jié)構(gòu)的內(nèi)容大致如下:
      ndis_miniport_characteristics yhfddichar;
      (ndis_miniport_characteristics這個(gè)結(jié)構(gòu)將在第三章介紹)
      yhfddichar.majorndisversion=yhfddi_ndis_major_version;
      yhfddichar.minorndisversion=yhfddi_ndis_minor_version;
      這兩個(gè)屬性決定驅(qū)動(dòng)程序是ndis的哪個(gè)版本所支持,我們所用的是ndis3.0
      yhfddichar.disableinterrupthandler=yhfddidisableinterrupt;
      yhfddichar.enableinterrupthandler=yhfddienableinterrupt;
      yhfddichar.isrhandle=yhfddiinterruptservice;
      yhfddichar.handleinterrupthandler=yhfddihandleinterrupt;
      以上四項(xiàng)屬性是中斷處理所需的上邊緣服務(wù)函數(shù)的入口點(diǎn)(句柄)。fddi網(wǎng)卡驅(qū)動(dòng)程序需要有smt站管理功能,而smt是以中斷處理方式進(jìn)行的,故這四項(xiàng)屬性在fddi網(wǎng)卡驅(qū)動(dòng)程序中是很重要的。
      yhfddichar.initializehandler=yhfddiinitialize;
      此項(xiàng)注冊(cè)的是驅(qū)動(dòng)程序的初始化函數(shù)句柄。
      yhfddichar.queryinformationhandler= yhfddiqueryinformation;
      yhfddichar.setinformationhandler=yhfddisetinformation;
      這兩項(xiàng)注冊(cè)的是參數(shù)查詢和設(shè)置函數(shù)的句柄。
      yhfddichar.sendhanler= yhfddisend;
      yhfddichar.transferdatahandler= yhfdditransferdata;
      主要提供數(shù)據(jù)發(fā)送和接收函數(shù)句柄。  
      yhfddichar.resethandler=yhfddireset;
      此項(xiàng)注冊(cè)網(wǎng)卡軟硬件重置函數(shù)句柄。
      yhfddichar.halthandler= yhfddihalt;
      此項(xiàng)注冊(cè)網(wǎng)卡驅(qū)動(dòng)程序掛起函數(shù)句柄。
      yhfddichar.checkforhandler=null;
      yhfddichar.reconfigurehandler=null;
      這兩個(gè)上邊緣服務(wù)函數(shù)是fddi網(wǎng)卡驅(qū)動(dòng)程序所不提供的,故置為null。
      填好這些結(jié)構(gòu)以后,調(diào)用以下函數(shù)實(shí)現(xiàn)驅(qū)動(dòng)程序的注冊(cè):
      ndismregisterminiport(
      yhfddiwrapperhandle,

      【windowsnt環(huán)境下fddi網(wǎng)卡驅(qū)動(dòng)程序設(shè)計(jì)2】相關(guān)文章:

      windows nt環(huán)境下fddi網(wǎng)卡驅(qū)動(dòng)程序設(shè)計(jì)03-18

      I2C總線在uClinux操作系統(tǒng)下的驅(qū)動(dòng)程序設(shè)計(jì)11-22

      WindowsCE.Net下CAN卡的驅(qū)動(dòng)程序設(shè)計(jì)03-20

      嵌入式Linux下CAN總線驅(qū)動(dòng)程序設(shè)計(jì)03-07

      Windows CE環(huán)境下無(wú)線網(wǎng)卡的自動(dòng)安裝03-19

      在Linux下驅(qū)動(dòng)STN彩色LCD03-18

      基于PCI總線的雙DSP系統(tǒng)及WDM驅(qū)動(dòng)程序設(shè)計(jì)03-19

      在嵌入式linux2.4.18內(nèi)核中實(shí)現(xiàn)CS8900A網(wǎng)卡驅(qū)動(dòng)03-07

      任務(wù)驅(qū)動(dòng)下物流教學(xué)探討論文11-20

      主站蜘蛛池模板: 亚洲一区在线中文字幕| 中文字幕日本人妻一区| 极品av在线播放| 岢岚县| 超碰av男人一区二区| 91精品国产免费人成网站| 女人一级特黄大片国产精品| 五家渠市| 尤物蜜芽福利国产污在线观看| 日韩人妻少妇一区二区三区| 精品视频在线观看一区二区有| 桂平市| 女同久久一区二区三区| 成人精品国产亚洲欧洲| 精品国产你懂的在线观看| 精品国产v一区二区三区| 龙胜| 日本草逼视频免费观看| 最新永久无码AV网址亚洲| 色婷婷激情在线一区二区三区| 国产精品一区二区久久精品蜜臀 | 日本女优一区二区在线免费观看| 界首市| 人妖精品视频在线观看| 国产美女精品AⅤ在线老女人| 久久久久亚洲AV片无码乐播| 宁陵县| 康马县| 吉安县| 福清市| 沂南县| 宿州市| 最新国产精品精品视频| 龙井市| 亚洲国产成人精品激情| 遂川县| 久久这里都是精品一区| aⅴ色综合久久天堂av色综合| 吴堡县| 闽侯县| 国产精品黄色片在线观看|