999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于WDM的磁盤I/O收集器的設計與實現

2011-03-15 01:22:46彭海云
電視技術 2011年11期
關鍵詞:信息

彭海云,李 亞

(周口師范學院 計算機科學系,河南 周口 466001)

0 引言

隨著網絡的不斷發展,工作站和服務器也不斷增多,其提供的服務也越來越多,其中很重要的一個就是文件服務器。它為使用者提供文件儲存功能,用戶希望能夠快速訪問到自己經常存儲在文件服務器上的文件,因此作為文件服務器,需要有好的性能,能夠提供快速、安全的訪問方式。這需要作為服務器的計算機除了本身具有比較好的性能外,還需要很好地去組織存儲在服務器磁盤的文件,把經常被訪問的文件數據放在快速存儲器中(Cache)。I/O Trace收集器能夠在不影響服務器正常工作的情況下,收集I/O Trace信息,并將這些信息保存在日志文件中,然后分析器依據這些保存的信息進行分析,從而找出一些規律,將經常被訪問到的數據保存在快速存儲器中,以優化服務器的性能。目前也出現了一系列的比較成熟的產品,比如FileMon,它是基于文件級別的,也就是說它只是記錄經常訪問的一些文件,并沒有具體的定位到文件中哪一部分,它所記錄的Trace信息不夠細膩,比如,如果一個文件很大,也許被經常訪問的只是文件中的某一小部分,但它無法定位這一小部分數據,也就無法只把這一小部分數據放入快速存儲器中而達到提升性能的目的。基于WDM的磁盤I/O Trace收集器是基于扇區級別實現的I/O Trace,它能夠知道硬盤上哪些扇區經常被訪問到[1-4]。

1 實現原理及模塊分解

通過加載基于磁盤的WDM過濾驅動程序,截獲讀寫磁盤的I/O請求包,從請求包中獲取讀寫磁盤的信息(包括讀寫磁盤的起始扇區以及讀寫扇區的數目),然后通過另外一個線程將這些信息寫入日志文件中,見圖1。

2 模塊的詳細分析

I/O Trace收集器主要由兩個功能模塊組成,一個是獲取讀寫磁盤的信息,另一個是將獲取到的讀寫磁盤的信息寫入到日志文件中。

模塊分解一:獲取讀寫磁盤信息。

由于需要實現磁盤I/O Trace收集器,需要收集到系統讀寫磁盤的相關信息,因此就需要有一個模塊去獲取這些信息,當前需要獲取的信息主要是讀寫磁盤的位置,這個位置是以扇區來定義的。這個模塊的輸入是讀寫磁盤的I/O請求包,輸出則是讀寫磁盤的起始扇區以及讀寫扇區的數目。

模塊分解二:寫獲取的讀寫磁盤信息到日志文件。

獲取到的讀寫磁盤的信息需要被記錄到日志文件中,然后相關的分析器就可以通過分析日志文件知道哪些扇區是經常被訪問到的,于是就需要專門的模塊去完成寫信息到日志文件中。在這個磁盤I/O Trace收集器的實現中,寫信息到日志文件是用一個專門的系統線程去完成這個工作的。

2.1 模塊間的數據流動

首先基于磁盤的WDM過濾驅動程序分發例程(簡稱SCSI例程)將讀寫磁盤的I/O請求包傳給獲取讀寫磁盤的信息模塊,然后該模塊便返回獲取到的讀寫磁盤的信息,這時,SCSI例程將獲取讀寫磁盤的信息模塊返回的數據傳給寫獲取的讀寫磁盤的信息到日志文件模塊來完成讀寫磁盤信息的保存。

2.2 運行動態分析

當系統需要讀寫磁盤時,I/O管理器會構造一個I/O請求包,該請求包最終會被轉換格式并發給I/O Trace收集器對應的WDM過濾驅動程序的SCSI例程,然后該例程調用獲取信息模塊來獲取讀寫磁盤的信息。再將獲取到的數據傳給寫日志文件模塊,該模塊先將這些數據封裝為鏈表的節點,插入到預先初始化好的鏈表中,然后返回SCSI例程,SCSI例程繼續傳遞該I/O請求包之的下層驅動程序以完成讀寫磁盤的操作。而讀寫磁盤的信息被插入到鏈表中以后,最終會被寫日志文件模塊對應的一個系統線程從鏈表中取出,并將其中的數據寫入日志文件[5-6]。

3 寫日志線程的實現

日志線程完成需從鏈表中取出節點,將節點中的數據寫入日志文件。具體流程如圖2所示。

4 磁盤I/O Trace收集器的安裝測試

4.1 收集器的安裝

由于機器啟動時加載驅動程序的順序是通過讀取注冊表來定義的,因此可以通過修改注冊表來使系統把過濾驅動程序加載到特定的地方去,如圖3所示。

圖中LowerFilters鍵是為了安裝程序而新增加的,使系統在加載磁盤類驅動前,先加載Wdm1下層過濾驅動程序。這樣過濾驅動程序就能夠正常地安裝在正確的位置了。該圖對應的注冊表的位置是HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E 967-E325-11CE-BFC1-08002BE10318}。

修改了注冊表的這個位置,就完成了安裝過濾驅動程序最重要的操作,剩下的事情可以交給INF文件去完成。當寫好相關的INF文件后,直接右鍵點擊INF文件,在彈出的菜單中選擇安裝選項即可完成安裝工作。

安裝好以后可以查看注冊表的相關項,以了解INF文件究竟做了哪寫操作,其實INF文件主要的作用就是修改注冊表的相關位置,并將驅動程序(擴展名為sys的文件)復制到驅動程序目錄,并在該設備對應的注冊表中設置驅動程序所在的位置與其他值。圖4顯示了磁盤I/O Trace收集器對應的注冊表項。

從圖中可以看出幾個比較重要的數據項,比如ImagePath便是描述驅動程序所在的位置,而Start的值為0表示該過濾驅動程序在機器啟動時便加載。其他值的功能在此不列舉。

4.2 測試

4.2.1 功能測試

這個功能測試比較簡單,只要日志文件中記錄的扇區位置是正確的,便可以說明該磁盤I/O Trace收集器能夠正常地工作。從其中一個分區拷貝一個比較大的文件到另一個分區,然后分析日志文件記錄下來的數據,并計算這些扇區應該位于哪個分區,來判斷它的正確性,雖然測試方法有些粗糙,但經過大量的測試和計算,發現分區的扇區范圍能夠對應起來,也說明了所記錄數據的正確性。

4.2.2 性能測試

性能測試是通過軟件Iometer來進行測試的,圖5記錄的是寫磁盤時不安裝磁盤I/O Trace收集器與安裝磁盤I/O Trace收集器的性能對比,圖6記錄的是讀磁盤時兩者的性能對比。

由圖5和圖6可以看出,安裝磁盤Trace收集器對磁盤的性能影響相當小,接近1%,基本上可以忽略,不會對系統的性能產生很大的影響。因此,通過加載基于磁盤的WDM過濾驅動程序來實現I/O Trace收集器是可行的。

5 設計中遇到的主要問題

在設計磁盤I/O Trace收集器的過程中有兩個問題比較棘手,可能也是所有基于磁盤的WDM過濾驅動訪問文件時都會碰到的問題。

1)延遲創建日志文件

如果在DriverEntry例程中立即調用創建日志文件的例程,則會返回失敗,原因是系統尚未初始化完畢,很多服務尚不可用,解決的辦法是增加一定的延遲,跳過記錄系統啟動時讀取磁盤的信息。

2)寫磁盤的遞歸問題

寫磁盤的遞歸問題(因為有記錄就要寫磁盤,而寫磁盤又有記錄),這樣便產生了寫磁盤的遞歸問題。解決這個問題的方案是將日志文件數據通過網絡發送出去,或者在磁盤中專門劃分一塊區域來保存日志文件,這樣在寫的讀寫的范圍位于這塊專用的區域中時,則不記錄。

6 小結

本文設計并實現了基于WDM的磁盤I/O Trace的收集器,測試證明,該收集器能夠詳細記錄讀寫磁盤的信息,為優化服務器讀寫性能提供了原始數據。近幾年,又出現了很多新的網絡應用,比如網上點歌系統、視頻點播系統,如果在這些系統上安裝Trace分析與收集器,就能夠將很多人點播的一些歌曲以及視頻文件的數據存放在速度更快的存儲器中,這樣可以更好的提供服務。因此,I/O Trace收集與分析器具有廣闊的前景。

[1]CANT C.Writing Windows WDM設備驅動程序開發指南[M].孫義,馬莉波,國雪飛,等譯.北京:機械工業出版社,2000.

[2]BAKER A,LOZANO J.The Windows 2000 device driver book[M].2版.施諾,譯.北京:機械工業出版社,2001.

[3]王峰博,崔慧娟.WDM設備驅動程序的研究及實現[J].計算機應用,2003,23(6):98-100.

[4]榮佳波,常明志,井科偉.USB設備的WDM驅動程序設計[J].應用科技,2004,31(3):39-41.

[5]吳力煒,葉念渝.Windows平臺下的設備驅動程序開發[J].計算機與數字工程,2007,35(3):196-198.

[6]楊進,魏軼偉,賈惠波.存儲區域網的性能測試[J].計算機工程,2003(11):25-26.

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 在线无码九区| 亚洲Va中文字幕久久一区 | 国产综合在线观看视频| 国产精品成人久久| 色综合婷婷| 5555国产在线观看| 日本不卡在线视频| 88国产经典欧美一区二区三区| 97se综合| 韩日午夜在线资源一区二区| 久久香蕉国产线看观看精品蕉| 综合色亚洲| 欧美视频在线播放观看免费福利资源| 国产香蕉在线视频| 欧美中文字幕一区| 日韩欧美成人高清在线观看| 国产91线观看| 美女毛片在线| 日本草草视频在线观看| 欧美精品成人一区二区视频一| 永久在线精品免费视频观看| 亚洲欧洲天堂色AV| 亚洲欧美日韩中文字幕一区二区三区 | 日韩av电影一区二区三区四区| 日韩精品无码一级毛片免费| 国产性猛交XXXX免费看| 国产99视频精品免费视频7| 99热最新网址| 久久美女精品国产精品亚洲| 国产18在线播放| 国产91av在线| 精品福利一区二区免费视频| www.亚洲一区| 久久亚洲中文字幕精品一区| 亚洲欧美成人在线视频| 国产极品粉嫩小泬免费看| 好吊色妇女免费视频免费| 国产精品成人久久| 国产福利观看| 99视频在线观看免费| 亚洲最黄视频| 亚洲精品色AV无码看| 无码国产偷倩在线播放老年人 | 国产一区二区三区在线观看视频 | 欧美啪啪视频免码| 中文字幕中文字字幕码一二区| 国产欧美中文字幕| 亚洲伊人天堂| 99精品一区二区免费视频| 91在线视频福利| 亚洲综合婷婷激情| 一级毛片无毒不卡直接观看| 2021国产在线视频| yjizz视频最新网站在线| 国产色伊人| 欧美黄色网站在线看| 亚洲人成日本在线观看| 亚洲国模精品一区| 国产精品欧美日本韩免费一区二区三区不卡 | 青青国产视频| 久久成人国产精品免费软件 | 色综合狠狠操| 中文字幕2区| 97人妻精品专区久久久久| 看你懂的巨臀中文字幕一区二区| 伊人色综合久久天天| 欧美在线综合视频| 亚洲欧洲免费视频| 欧美视频二区| 日本不卡在线视频| 伊人久久福利中文字幕| 成人免费黄色小视频| 日本不卡在线视频| 国产亚洲欧美日韩在线观看一区二区| 亚洲综合亚洲国产尤物| 欧美成人精品高清在线下载| 久久久91人妻无码精品蜜桃HD| 国产玖玖视频| 国产精品尹人在线观看| 97狠狠操| 亚洲中文精品人人永久免费| 欧美成人免费一区在线播放|