前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇存儲(chǔ)設(shè)備范文,相信會(huì)為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
移動(dòng)存儲(chǔ)設(shè)備具有體積小、便于攜帶、使用方便等優(yōu)勢,因此移動(dòng)存儲(chǔ)設(shè)備使用較為普遍,同時(shí)也存在著隨時(shí)隨地使用、公私信息共用、加密信息與一般信息共用、隨意拷貝文件和數(shù)據(jù),甚至出現(xiàn)將移動(dòng)存儲(chǔ)設(shè)備借給他人或丟失的情況,致使重要數(shù)據(jù)泄露等問題,帶來數(shù)據(jù)風(fēng)險(xiǎn)。當(dāng)設(shè)備接觸到不同環(huán)境下的計(jì)算機(jī)系統(tǒng),難免會(huì)遭受到計(jì)算機(jī)病毒的侵害,一旦設(shè)備遭到病毒的攻擊,就會(huì)使設(shè)備中的重要文件遭到毀壞和泄露,使移動(dòng)存儲(chǔ)設(shè)備成為了傳播計(jì)算機(jī)病毒的載體,給人們的工作帶來極大的不便。本文設(shè)計(jì)了一個(gè)移動(dòng)存儲(chǔ)設(shè)備的安全保護(hù)系統(tǒng),能夠很好地保護(hù)移動(dòng)存儲(chǔ)設(shè)備。
2文件訪問控制
2.1文件訪問控制的方案設(shè)計(jì)
在本設(shè)計(jì)中,移動(dòng)存儲(chǔ)設(shè)備歸屬于管理員,即移動(dòng)存儲(chǔ)設(shè)備持有者。當(dāng)管理員將移動(dòng)存儲(chǔ)設(shè)備借出且被非管理員權(quán)限的人員所操作,此時(shí)會(huì)將管理員與非管理員區(qū)分開,實(shí)現(xiàn)不同權(quán)限的管理,以維護(hù)文件訪問的控制。管理員擁有超級(jí)權(quán)限,可以對(duì)移動(dòng)存儲(chǔ)設(shè)備上的文件及數(shù)據(jù)進(jìn)行增、刪、改、查等操作。非管理員使用時(shí),限制其權(quán)限,使其只能對(duì)某些特定文件以讀操作進(jìn)行訪問。對(duì)于用戶的區(qū)分,簡單的可以用驗(yàn)證碼(密碼)實(shí)現(xiàn),驗(yàn)證碼正確則被認(rèn)為是管理員;不正確或者未進(jìn)行驗(yàn)證,則被認(rèn)為是非管理員,也就是普通用戶所擁有的權(quán)限。當(dāng)調(diào)用系統(tǒng)API進(jìn)行文件的增刪改操作時(shí),我們試圖更改系統(tǒng)調(diào)用方向。使調(diào)用進(jìn)入自定義的方法中去,完成對(duì)移動(dòng)存儲(chǔ)設(shè)備文件操作的過濾,使對(duì)移動(dòng)存儲(chǔ)設(shè)備的操作無效或達(dá)到我們預(yù)想的效果。通過這個(gè)過程完成對(duì)移動(dòng)存儲(chǔ)設(shè)備文件的權(quán)限管理。文件訪問控制的流程圖如圖2所示。
2.2文件訪問控制的邏輯設(shè)計(jì)
在軟件運(yùn)行之前,自定義API生成的DLL被進(jìn)程加載。用GetProcAddress函數(shù)獲得進(jìn)程中kernel32.dll、user32.dll等模塊的中的主要文件操作API函數(shù)的入口地址。在系統(tǒng)API函數(shù)入口地址位置加入一條跳轉(zhuǎn)指令,讓它先跳轉(zhuǎn)到自定義的函數(shù)中運(yùn)行。跳轉(zhuǎn)指令可以用0xE9來表示(0xE9是匯編語言中jmp指令的機(jī)器碼),后面還有4個(gè)字節(jié)的自定義API函數(shù)地址,總共要修改系統(tǒng)API函數(shù)前5個(gè)字節(jié),這5個(gè)字節(jié)由1個(gè)字節(jié)的跳轉(zhuǎn)指令和4個(gè)字節(jié)的地址組成。當(dāng)程序調(diào)用到此函數(shù)的時(shí)候,將會(huì)跳轉(zhuǎn)到自定義API函數(shù)去執(zhí)行。這4個(gè)字節(jié)的地址是偏移地址,而偏移地址=我們函數(shù)的地址-原API函數(shù)的地址-5(這條指令的長度)。要保存修改地址前的系統(tǒng)API地址,以防隨后調(diào)用系統(tǒng)API時(shí)找不到地址,無法再次完成跳轉(zhuǎn)。此過程為HOOK流程,如圖3所示。本設(shè)計(jì)是以Win7下文件基本操作的接口設(shè)計(jì)的邏輯,當(dāng)文件操作調(diào)用API時(shí)會(huì)轉(zhuǎn)調(diào)此函數(shù),所以控制策略就在此函數(shù)中。在函數(shù)中添加對(duì)當(dāng)前文件的路徑判斷,來控制對(duì)移動(dòng)存儲(chǔ)設(shè)備中文件的訪問,從而達(dá)到訪問控制的功能。本程序使用mhook庫來協(xié)助完成函數(shù)地址的跳轉(zhuǎn)。Mhook_SetHook函數(shù)的第一個(gè)參數(shù)ppSystemFunction是系統(tǒng)函數(shù)地址,第二個(gè)參數(shù)pHookFunction是自定義函數(shù)地址。函數(shù)要實(shí)現(xiàn)的功能就是將ppSystemFunction地址跳轉(zhuǎn)到pHookFunction的地址,從而完成自定義代碼的調(diào)用,完成功能。當(dāng)一個(gè)sethook請求到來時(shí),TrampolineAlloc分配一個(gè)跳板存儲(chǔ)域讓指針數(shù)組的元素指向這個(gè)存儲(chǔ)域。后續(xù)工作是將sethook是的有用數(shù)據(jù)保存在跳板buffer中,方便unhook時(shí)候,修改回系統(tǒng)API的地址。VirtualProtectEx函數(shù)可以改變在特定進(jìn)程中內(nèi)存區(qū)域的保護(hù)屬性。用來設(shè)置跳板存儲(chǔ)域的訪問權(quán)限為PAGE_EXECUTE_READWRITE。將系統(tǒng)API的地址保存在跳板存儲(chǔ)域的codeTrampoline當(dāng)中,緊接著之后添加一個(gè)jump指令。此處是對(duì)系統(tǒng)API的存儲(chǔ)及處理。EmitJump函數(shù)功能就是實(shí)現(xiàn)從pdCode處添加代碼,完成跳轉(zhuǎn)到pdJumpTo。
3病毒查殺
3.1病毒查殺的方案設(shè)計(jì)
本設(shè)計(jì)主要對(duì)移動(dòng)存儲(chǔ)設(shè)備中的文件進(jìn)行病毒的查殺。在對(duì)文件查殺的過程首先對(duì)文件進(jìn)行過濾,過濾出移動(dòng)存儲(chǔ)設(shè)備中所有的PE,在對(duì)這些PE文件進(jìn)行病毒掃描,然后對(duì)掃描過的文件進(jìn)行處理,包括對(duì)病毒文件進(jìn)行刪除和疑似文件隔離到指定的區(qū)域。病毒掃描采用的是病毒特征碼的方式,從病毒特征碼庫取出每一條特征碼來分別對(duì)文件進(jìn)行匹配,若發(fā)現(xiàn)被匹配的文件中有該特征碼的話,直接將文件刪除。病毒特征碼是從已有的病毒文件中進(jìn)行提取,并將這些特征碼進(jìn)行歸類和存儲(chǔ)即存入到指定的病毒特征碼庫中。病毒查殺在設(shè)計(jì)的過程中可分為病毒掃描器設(shè)計(jì)和病毒文件的刪除或隔離設(shè)計(jì)。病毒掃描器的設(shè)計(jì)方案是采用多線程技術(shù)來提高效率,而病毒文件的處理部分直接調(diào)用系統(tǒng)的API將文件刪除和隔離,如圖4所示。
3.2病毒查殺的邏輯設(shè)計(jì)
病毒查殺是為了防止病毒文件進(jìn)入移動(dòng)存儲(chǔ)設(shè)備,并對(duì)移動(dòng)存儲(chǔ)設(shè)備中的文件進(jìn)行破壞。因此需要對(duì)剛進(jìn)入移動(dòng)存儲(chǔ)設(shè)備的文件,即新建的文件進(jìn)行病毒查殺。當(dāng)用戶登錄該系統(tǒng)后,可以點(diǎn)擊系統(tǒng)主界面上的殺毒按鈕對(duì)移動(dòng)存儲(chǔ)設(shè)備中的所有文件進(jìn)行病毒的查殺。通過病毒掃描器、病毒文件隔離,可以防止病毒對(duì)移動(dòng)存儲(chǔ)設(shè)備中的文件進(jìn)行侵害。具體的實(shí)現(xiàn)過程包括病毒掃描器的實(shí)現(xiàn)、病毒文件刪除模塊的實(shí)現(xiàn)以及病毒文件隔離區(qū)的實(shí)現(xiàn)。病毒掃描器的實(shí)現(xiàn)部分是采用多線程同時(shí)對(duì)多個(gè)文件進(jìn)行病毒掃描,其中病毒的掃描方式是病毒特征碼匹配的方式,從病毒特征碼庫中取出每一條特征碼來對(duì)文件進(jìn)行匹配,若發(fā)現(xiàn)那個(gè)文件是病毒文件,則對(duì)該文件進(jìn)行刪除或者隔離。其中主要使用的系統(tǒng)API有CreateThread、WaitForSingleObject、ResumeThread、Sus-pendThread、GetExitCodeThread,這幾個(gè)是病毒掃描中與多線程相關(guān)的系統(tǒng)API,包括線程的創(chuàng)建、線程的啟動(dòng)、線程的掛起、線程的喚醒和線程的退出等,控制了線程的生命周期。下面為關(guān)鍵的程序代碼的說明,主要是病毒特征碼與文件的匹配過程。病毒文件隔離區(qū)的實(shí)現(xiàn)部分主要是在移動(dòng)存儲(chǔ)設(shè)備中建立一個(gè)隔離區(qū),實(shí)際上這個(gè)隔離區(qū)就是一個(gè)目錄,用于存放病毒文件,這個(gè)目錄具有高度訪問權(quán)限控制,保證其中的病毒文件不會(huì)對(duì)其他文件造成傷害,以達(dá)到類似于隔離區(qū)的功能。具體實(shí)現(xiàn)就是新建一個(gè)目錄,并將目錄的訪問權(quán)限修改到最高,防止一切的危險(xiǎn)訪問。接著就是對(duì)該區(qū)域的使用,將病毒掃描器掃描出來的病毒文件移動(dòng)到該區(qū)域中,由管理員對(duì)該區(qū)域中的文件進(jìn)行管理。
4文件誤刪恢復(fù)
4.1文件誤刪恢復(fù)方案設(shè)計(jì)
本設(shè)計(jì)將涉及到對(duì)誤刪文件的恢復(fù)。分析可知,為以后恢復(fù)某個(gè)已經(jīng)刪除的文件,需要在某個(gè)文件被刪除的時(shí)候要對(duì)該文件進(jìn)行備份,此時(shí)就需要有一個(gè)存儲(chǔ)這些刪除文件的空間,而且必須對(duì)備份的文件進(jìn)行壓縮,這是考慮到不要占用移動(dòng)存儲(chǔ)設(shè)備太大容量。建立這樣一個(gè)用于存儲(chǔ)備份文件的空間需要對(duì)它進(jìn)行保護(hù),可以考慮通過文件訪問控制來完成這種需求,從而有效保證恢復(fù)文件的安全性和準(zhǔn)確性。還要考慮一下這樣一個(gè)存儲(chǔ)區(qū)的大小問題,如果太大的話,那么會(huì)占用大量的硬件存儲(chǔ)資,使有效的活動(dòng)存儲(chǔ)資源減少了;如果太小的話,那么會(huì)使有些文件因控件太小而無法備份,只能選擇放棄備份或者直接刪除文件,這樣做不符合數(shù)據(jù)安全的要求。解決方案就是根據(jù)移動(dòng)存儲(chǔ)設(shè)備總的有效存儲(chǔ)空間,按照該空間的百分比進(jìn)行劃分,并可以在對(duì)文件進(jìn)行備份的時(shí)候,非常大的文件由用戶選擇直接刪除或者存儲(chǔ)到其它大容量設(shè)備中,如圖5所示。
4.2文件誤刪恢復(fù)實(shí)現(xiàn)業(yè)務(wù)流程
以回收站的形式實(shí)現(xiàn),對(duì)刪除的數(shù)據(jù)進(jìn)行壓縮,管理員對(duì)數(shù)據(jù)進(jìn)行恢復(fù),實(shí)現(xiàn)流程與訪問控制中的HOOK流程一致。具體實(shí)現(xiàn)。在自定義的Deletefile函數(shù)內(nèi),進(jìn)行文件過濾,如果屬于移動(dòng)存儲(chǔ)設(shè)備的文件,則將其移動(dòng)到一個(gè)特定的目錄里面,即將回收站中的文件移動(dòng)到原來的位置,從而到達(dá)文件恢復(fù)的目的。
5測試結(jié)果
關(guān)鍵詞:USB存儲(chǔ)設(shè)備 注冊表 驅(qū)動(dòng)程序 訪問權(quán)限
中圖分類號(hào):TP333 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2013)11-0228-01
1 引言
當(dāng)前,在企事業(yè)單位電腦管理中,如何有效管理USB端口的使用,尤其是防止員工私自插上U盤、移動(dòng)硬盤、手機(jī)等設(shè)備隨意拷貝、復(fù)制公司的資料一直是令網(wǎng)管員十分頭疼的問題。同時(shí)由于U盤的便捷性,我們可能隨時(shí)需要啟用USB存儲(chǔ)設(shè)備。如何便捷的禁用和啟用USB存儲(chǔ)設(shè)備,是當(dāng)前設(shè)備管理的一個(gè)重要問題。
2 常用USB存儲(chǔ)設(shè)備的禁用與啟用方法分析
2.1 禁用與啟用主板USB設(shè)備
進(jìn)入BIOS設(shè)置,選擇“Integrated Peripherals”選項(xiàng),展開后將“USB 1.1 Controller”和“USB 2.0 Contr01ler”選項(xiàng)的屬性設(shè)置為“Disabled”,即可禁用USB接口。如果想要啟動(dòng)USB設(shè)備,則將屬性設(shè)置為“Enabled”,即可啟用USB接口。最后可以給BIOS設(shè)置上一個(gè)密碼,這樣可以防止其他人隨意進(jìn)行設(shè)置。
缺點(diǎn):這個(gè)方法是完全禁止了USB接口,會(huì)導(dǎo)致電腦的USB鼠標(biāo)、USB鍵盤或USB加密狗以及其他非存儲(chǔ)的USB設(shè)備的使用,從而也帶來極大不便。
2.2 修改注冊表,禁用與啟用USB存儲(chǔ)設(shè)備
打開注冊表編輯器,找到USBSTOR項(xiàng),在右側(cè)的窗格中找到名為“Start”的DWORD值,雙擊,在彈出的編輯對(duì)話框中將其數(shù)值數(shù)據(jù)修改為十六位進(jìn)制數(shù)值“4”。點(diǎn)“確定”按鈕并關(guān)閉注冊表編輯器,重新啟動(dòng)計(jì)算機(jī),使設(shè)置生效。如果想要啟用USB存儲(chǔ)設(shè)備,將該鍵值修改為十六位進(jìn)制數(shù)值“3”就可以了。
缺點(diǎn):這種方法,只能禁用計(jì)算機(jī)已經(jīng)識(shí)別USB存儲(chǔ)設(shè)備。當(dāng)你插入新的USB存儲(chǔ)設(shè)備時(shí),WINDOWS\inf中的Usbstor.pnf和usbstor.inf會(huì)為我們自動(dòng)安裝驅(qū)動(dòng)程序,并重新改寫注冊表,使得該方法失效。
2.3 禁止安裝USB驅(qū)動(dòng)程序
在Windows資源管理器中,進(jìn)入到“系統(tǒng)盤:\WINDOWS\inf”目錄,找到名為“Usbstor.pnf”和“usbstor.inf”的文件,右鍵點(diǎn)擊該文件,在彈出菜單中選擇“屬性”,然后切換到“安全”標(biāo)簽頁,在“組或用戶名稱”框中選中要禁止的用戶組,接著在用戶組的權(quán)限框中,選中“完全控制”后面的“拒絕”復(fù)選框,最后點(diǎn)擊“確定”按鈕。
缺點(diǎn):本方法使用訪問控制列表(ACL),因此系統(tǒng)所在分區(qū)要采用NTFS文件系統(tǒng)。另外對(duì)于計(jì)算機(jī)已經(jīng)識(shí)別USB存儲(chǔ)設(shè)備,因?yàn)椴恍枰虞d驅(qū)動(dòng),所有該方法無效。
3 簡單易行的USB存儲(chǔ)設(shè)備的禁用與啟用方法
通過上述分析我們不難看出,方法1簡單易行但在USB普及的今天,不具備實(shí)用性。方法2只能禁用已經(jīng)被系統(tǒng)識(shí)別的USB存儲(chǔ)設(shè)備,而方法3只能禁用已經(jīng)不被系統(tǒng)識(shí)別的USB存儲(chǔ)設(shè)備。而且這兩種方法比較容易破解,安全性不是很好。我們可以把兩種方法結(jié)合使用來獲得比較好的效果。
首先我們來探討一下USB存儲(chǔ)設(shè)備的禁用問題。我們先將兩個(gè)USB存儲(chǔ)設(shè)備的驅(qū)動(dòng)文件Usbstor.pnf和usbstor.inf(位于系統(tǒng)盤:\WINDOWS\inf”目錄下)拷貝到某一目錄下,然后將這兩個(gè)文件刪除,由于拷貝的過程對(duì)于用戶不可見,用戶無法找到驅(qū)動(dòng)文件,所以管理的安全性比較好。這樣當(dāng)插入新的USB存儲(chǔ)設(shè)備時(shí)系統(tǒng)無法安裝驅(qū)動(dòng)程序,達(dá)到了禁用的目的。然后修改注冊表鍵值,將Start鍵值設(shè)為4,這樣已經(jīng)安裝驅(qū)動(dòng)的USB存儲(chǔ)設(shè)備也無法啟動(dòng)運(yùn)行。所有這些過程可以編寫一個(gè)批處理文件,來簡化我們的操作。
4 結(jié)語
在USB不斷普及的今天,USB端口是我們最重要的接口。如何有效的管理好這些端口對(duì)于網(wǎng)絡(luò)管理、機(jī)房管理、辦公管理有著重要的意義。希望通過本文,可以使讀者加深對(duì)USB設(shè)備管理的理解,更加有效的管理USB設(shè)備。
參考文獻(xiàn)
[1]石喜富. Windows環(huán)境下禁用USB存儲(chǔ)設(shè)備程序設(shè)計(jì)與實(shí)現(xiàn),《中國傳媒大學(xué)學(xué)報(bào)自然科學(xué)版》2012年6月.
關(guān)鍵詞:主機(jī)防信息泄漏;移動(dòng)存儲(chǔ)設(shè)備;信息過濾
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2010)04-0850-03
Filter the Sensitive Information to Prevent the Information Flowing into the Mobile Storage Device
MA Yun
(School of Information Science and Engineering, Lanzhou University, Lanzhou 730000, China)
Abstract: Following the rapid development of information construction, the resource of military information becomes the core element. The mobile storage devices such as the USB device and mobile disk are used to exchange information more and more usually because of their convenience. Those devices become one of the major ways of host information leakage. This paper researches that: basing on the AC automatic machine, presents an algorithm with multiple keywords and multiple encoding to filter the sensitive information transmission from host to the mobile storage device and prevent host sensitive information flowing into the mobile storage device.
Key words: host information leakage prevention; mobile storage device; data filtering
由于計(jì)算機(jī)的普及應(yīng)用,特別是移動(dòng)存儲(chǔ)設(shè)備的即插即用性和便攜性,大量信息通過移動(dòng)存儲(chǔ)設(shè)備進(jìn)行傳輸和交換,方便了信息共享,同時(shí)也帶來了安全隱患。如果信息中包含大量的內(nèi)容,一旦泄漏到外界,將造成無法挽回的損失。
如何對(duì)移動(dòng)存儲(chǔ)設(shè)備進(jìn)行安全管理,防止主機(jī)機(jī)密和敏感信息通過移動(dòng)存儲(chǔ)設(shè)備泄漏,已成為目前所關(guān)注的重點(diǎn)。本文通過對(duì)主機(jī)敏感信息過濾技術(shù)進(jìn)行研究,設(shè)計(jì)敏感信息過濾算法,并通過實(shí)驗(yàn)驗(yàn)證算法的效率和有效性,進(jìn)而實(shí)現(xiàn)對(duì)通過移動(dòng)存儲(chǔ)設(shè)備傳輸?shù)男畔⑦M(jìn)行過濾,從而達(dá)到防止主機(jī)敏感信息通過移動(dòng)存儲(chǔ)設(shè)備泄漏出去的目的。
1 信息過濾技術(shù)簡介
信息過濾是指從大量的數(shù)據(jù)信息中過濾滿足用戶特定需求信息的過程,這與信息檢索(Information Retrieval, IR)的工作方式極為相似,都是從用戶的目標(biāo)出發(fā),就用戶的特定信息需求進(jìn)行搜索,不同的是信息檢索是在相對(duì)靜態(tài)的結(jié)構(gòu)化數(shù)據(jù)庫中對(duì)用戶短期的特定信息需求進(jìn)行的獲得式搜索,而信息過濾是在海量的動(dòng)態(tài)的非結(jié)構(gòu)化或半結(jié)構(gòu)化數(shù)據(jù)中對(duì)用戶長期的特定信息需求進(jìn)行的過濾式搜索,即信息檢索有相對(duì)固定的信息庫和千變?nèi)f化的檢索需求,而信息過濾則有著相對(duì)固定的用戶需求和動(dòng)態(tài)變化的信息流。在用戶需求的表示和目標(biāo)上,信息檢索是依據(jù)檢索詞的組配來選擇相關(guān)條目,而信息過濾則是依據(jù)用戶興趣模型來過濾相關(guān)的信息 [1]。
2 敏感信息過濾流程
在信息系統(tǒng)中,處理的數(shù)據(jù)可以是有結(jié)構(gòu)的,也可以是無結(jié)構(gòu)的;可以是數(shù)據(jù)庫中的具體數(shù)字,也可以是文件系統(tǒng)中的文檔;可以是文本,也可以是多媒體。本文中的基于內(nèi)容的敏感信息過濾算法是指運(yùn)用基于AC自動(dòng)機(jī)的多關(guān)鍵詞多編碼匹配算法對(duì)移動(dòng)存儲(chǔ)設(shè)備拷貝的主機(jī)信息內(nèi)容進(jìn)行敏感信息過濾,防止主機(jī)敏感信息傳輸至移動(dòng)存儲(chǔ)設(shè)備。其方法是:設(shè)定一定數(shù)量的關(guān)鍵詞,在移動(dòng)存儲(chǔ)設(shè)備預(yù)拷貝的主機(jī)信息中進(jìn)行多關(guān)鍵詞匹配,根據(jù)匹配算法對(duì)移動(dòng)存儲(chǔ)設(shè)備拷貝的主機(jī)信息進(jìn)行過濾。如果匹配成功,則阻止移動(dòng)存儲(chǔ)設(shè)備拷貝信息,反之移動(dòng)存儲(chǔ)設(shè)備則正??截愋畔ⅰ?/p>
基于Win32的應(yīng)用程序是消息驅(qū)動(dòng)的,應(yīng)用程序所采取的任何動(dòng)作都依賴于它所獲得的消息類型及其內(nèi)容;Win32系統(tǒng)提供了一種機(jī)制即鉤子(hook),通過它應(yīng)用程序可以監(jiān)視系統(tǒng)中的消息傳遞并能夠在它們到達(dá)目標(biāo)窗口之前對(duì)其進(jìn)行處理。
敏感信息過濾利用鉤子機(jī)制對(duì)寫入移動(dòng)存儲(chǔ)設(shè)備的信息流進(jìn)行檢索,通過基于內(nèi)容的模式匹配算法對(duì)可能寫入移動(dòng)存儲(chǔ)設(shè)備的主機(jī)敏感信息進(jìn)行過濾,防止主機(jī)敏感信息通過移動(dòng)存儲(chǔ)設(shè)備泄漏。
本文選用標(biāo)準(zhǔn)Windows鉤子方式,即用鉤子函數(shù)把監(jiān)視代碼嵌入到系統(tǒng)與目標(biāo)應(yīng)用程序之間,其流程如圖1所示。
1)創(chuàng)建并加載鉤子函數(shù)。創(chuàng)建一個(gè)DLL文件,該DLL中包含用于信息傳輸過濾控制的鉤子函數(shù)。將該鉤子函數(shù)加載到Explorer進(jìn)程空間中,監(jiān)視所有從系統(tǒng)消息隊(duì)列發(fā)往Explorer的消息。如果攔截到向移動(dòng)存儲(chǔ)設(shè)備寫入文件的消息,則啟動(dòng)信息過濾過程。
2)對(duì)磁盤寫緩沖中的數(shù)據(jù)流進(jìn)行過濾。信息過濾過程使用AC自動(dòng)機(jī)匹配算法對(duì)磁盤寫緩沖中即將寫入移動(dòng)存儲(chǔ)設(shè)備的數(shù)據(jù)流進(jìn)行敏感信息檢索。該匹配算法將在下文詳細(xì)介紹。
3)對(duì)移動(dòng)存儲(chǔ)設(shè)備信息傳輸進(jìn)行控制。如果在數(shù)據(jù)流中檢索到敏感信息,則清空磁盤寫緩沖,并通過警告對(duì)話框向用戶提示數(shù)據(jù)中含有敏感信息,不能拷貝。否則繼續(xù)數(shù)據(jù)傳輸過程。
3 基于AC自動(dòng)機(jī)的多關(guān)鍵詞多編碼匹配算法
目前存在多種編碼方式,如ASCII、Unicode、等等,將不同語種的字符空間映射為編碼后的字節(jié)進(jìn)行存儲(chǔ)。而主機(jī)信息是按比特方式傳輸至移動(dòng)存儲(chǔ)設(shè)備,所以對(duì)傳輸信息的內(nèi)容進(jìn)行敏感信息過濾可以采用比特流過濾的方式,這就需要對(duì)各關(guān)鍵詞的不同編碼方式進(jìn)行匹配。本文通過構(gòu)建多關(guān)鍵詞多編碼二叉樹(Multiple Keywords and Encoding Model Tree, M2KE-Tree)的方式完成基于AC自動(dòng)機(jī)的多關(guān)鍵詞多編碼的匹配算法。
在單模式匹配算法中,典型的有KMP算法[2]和BM算法[3]、蠻力算法(Brute-Force)[4]等。在多模式匹配算法中,Aho-Corasick自動(dòng)機(jī)匹配算法是最著名的算法之一。本文將Aho-Corasick(AC)自動(dòng)機(jī)匹配算法應(yīng)用于移動(dòng)存儲(chǔ)設(shè)備防信息泄漏的信息過濾中,以提高多關(guān)鍵詞敏感信息的檢測效率,同時(shí)本文利用二叉樹對(duì)AC自動(dòng)機(jī)進(jìn)行描述。
AC自動(dòng)機(jī)的匹配算法基于一種模式樹[5]。一個(gè)模式集的模式樹指的是具備如下性質(zhì)的一棵樹T:
1)T的每一條邊上都用一個(gè)字符作為標(biāo)簽;
2)與同一節(jié)點(diǎn)相連的邊的標(biāo)簽均不同;
3)對(duì)于模式集P,每一個(gè)模式p∈P都存在一個(gè)節(jié)點(diǎn)m,使得L(m)表示從根節(jié)點(diǎn)m所經(jīng)過的所有邊上的標(biāo)簽的拼湊;
4)每一個(gè)葉子節(jié)點(diǎn)m'都存在一個(gè)模式p∈P使得L(m')=p。
3.1 單編碼二叉樹
設(shè)某關(guān)鍵詞A的B編碼為1011,將它的編碼以二叉樹來表示,將這個(gè)二叉樹稱為A的B編碼二叉樹,其構(gòu)建過程如2所示。
1)首先建立一個(gè)空節(jié)點(diǎn),作為樹的根節(jié)點(diǎn),將第一個(gè)比特作為該節(jié)點(diǎn)的子節(jié)點(diǎn)添加到樹中,設(shè)定根節(jié)點(diǎn)到該節(jié)點(diǎn)的邊的數(shù)值為這個(gè)比特的值,比特值為0的節(jié)點(diǎn)作為父節(jié)點(diǎn)的左孩子,比特值為1的節(jié)點(diǎn)為父節(jié)點(diǎn)的右孩子,如圖2a所示。
2)按照1)中的方式將第二個(gè)比特添加為上個(gè)比特對(duì)應(yīng)的子節(jié)點(diǎn),由于第二個(gè)比特值為0,因此作為第一個(gè)比特所對(duì)應(yīng)節(jié)點(diǎn)的左孩子,如圖2b所示。
3)將第三個(gè)比特添加為第二個(gè)比特對(duì)應(yīng)的子節(jié)點(diǎn),由于第三個(gè)比特值為1,因此作為第二個(gè)比特所對(duì)應(yīng)節(jié)點(diǎn)的右孩子,如圖2c所示。
4)將第四個(gè)比特添加為第三個(gè)比特對(duì)應(yīng)的子節(jié)點(diǎn),由于第四個(gè)比特值為1,因此作為第三個(gè)比特所對(duì)應(yīng)節(jié)點(diǎn)的右孩子,最后一個(gè)節(jié)點(diǎn)標(biāo)識(shí)為樹的終結(jié)點(diǎn),如圖2d所示。
3.2 多編碼二叉樹的合成
可以根據(jù)某個(gè)關(guān)鍵詞的多種常用編碼分別構(gòu)建出對(duì)應(yīng)的單編碼二叉樹,然后將這些單編碼二叉樹使用“影像合成”的方法合成為該關(guān)鍵詞的多編碼二叉樹;使用同樣的方法將多關(guān)鍵詞所對(duì)應(yīng)的多編碼二叉樹合成為一棵多關(guān)鍵詞多編碼二叉樹,作為匹配算法的模式樹。
下面以一個(gè)實(shí)例來描述該過程,取“信息”“保密”兩個(gè)詞作為關(guān)鍵詞,分別針對(duì)常用的Unicode、UTF8進(jìn)行樹的構(gòu)建,為了便于描述,用上述編碼的最后四比特來演示多關(guān)鍵詞多編碼樹的構(gòu)建過程,“信息”進(jìn)行Unicode編碼的最后四位是“0000”,進(jìn)行UTF8編碼的最后四位是“1111”,“保密”進(jìn)行Unicode編碼的最后四位是“1011”,進(jìn)行UTF8編碼的最后四位是“0110”。如圖3所示,圖中a、b表示關(guān)鍵詞“信息”的Unicode、UTF8編碼所構(gòu)建的單編碼二叉樹;圖中c、d表示關(guān)鍵詞“保密”的Unicode、UTF8編碼所構(gòu)建的單編碼二叉樹。
將圖3的a、b按照“影像合成”的方法疊加合成為關(guān)鍵詞“信息”的Unicode、UTF8編碼所對(duì)應(yīng)的多編碼二叉樹;將圖3的c、d按照“影像合成”的方法疊加合成為關(guān)鍵詞“保密”的Unicode、UTF8編碼所對(duì)應(yīng)的多編碼二叉樹;將關(guān)鍵詞“信息”的多編碼二叉樹和關(guān)鍵詞“保密”的多編碼二叉樹采用“影像合成”的方法非合成為這兩個(gè)關(guān)鍵詞的多關(guān)鍵詞多編碼二叉樹(M2KE-Tree),如圖4所示。該樹將作為對(duì)關(guān)鍵詞“信息”、“保密”進(jìn)行基于比特流的匹配算法的模式樹。
3.3 AC自動(dòng)機(jī)匹配算法
該算法的基本思想:在預(yù)處理階段,把M2KE-Tree的各個(gè)節(jié)點(diǎn)作為狀態(tài),根節(jié)點(diǎn)作為初始狀態(tài),葉子節(jié)點(diǎn)作為終態(tài),增加兩個(gè)功能函數(shù)DD轉(zhuǎn)向函數(shù)g和實(shí)效函數(shù)f作為轉(zhuǎn)移函數(shù)DD將M2KE-Tree擴(kuò)展成一個(gè)樹型有限自動(dòng)機(jī)。
由M2KE-Tree擴(kuò)展所得的AC自動(dòng)機(jī)M是一個(gè)六元組:
M=(Q,∑,g,f,q0,F)
1)Q是有窮狀態(tài)集(M2KE-Tree上的節(jié)點(diǎn));
2)∑是有窮的輸入符號(hào)集{0,1};
3)g是轉(zhuǎn)移函數(shù),該函數(shù)定義如下:
g(s,a):從當(dāng)前狀態(tài)s開始,沿著邊上標(biāo)簽為a的路徑所到達(dá)的狀態(tài)。如果(u,v)邊上的標(biāo)簽為a,那么g(u,a)=v;
4)f(不匹配時(shí)自動(dòng)機(jī)的狀態(tài)轉(zhuǎn)移)也是轉(zhuǎn)移函數(shù),該函數(shù)定義如下:
f(s):當(dāng)w是L(s)最長真后綴并且w是某個(gè)模式的前綴,那么f(s)就是以w為標(biāo)簽的節(jié)點(diǎn);
5)q0∈Q,是初始狀態(tài)(根節(jié)點(diǎn),標(biāo)識(shí)符為0);
6)F?哿Q,是終結(jié)狀態(tài)集(以模式為標(biāo)簽的節(jié)點(diǎn)集)
這樣,在比特流檢索模式的過程就轉(zhuǎn)換成在M2KE-Tree中的查找過程,在檢索一個(gè)比特流T時(shí),從M2KE-Tree的根節(jié)點(diǎn)開始,沿著以T中每個(gè)比特為標(biāo)簽的路徑向下查找:
1)若自動(dòng)機(jī)能夠抵達(dá)終態(tài)v,則說明T中存在模式L(v);
2)否則說明T中不存在模式。
以圖4為基礎(chǔ),構(gòu)造出來的自動(dòng)機(jī)如圖5所示,其中虛線為f函數(shù),實(shí)線為g函數(shù),細(xì)圈為自動(dòng)機(jī)各個(gè)狀態(tài),粗圈為終態(tài),雙圈為初始態(tài)。
整個(gè)AC自動(dòng)機(jī)匹配算法的輸出是一個(gè)布爾值,如果輸出為TRUE,說明比特流中存在與模式相匹配的串,該比特流中可能包含敏感信息,應(yīng)拒絕寫入移動(dòng)存儲(chǔ)設(shè)備;如果輸出為FALSE,則說明比特流中不存在與模式相匹配的串,該比特流中不包含敏感信息,寫入移動(dòng)存儲(chǔ)設(shè)備。
AC自動(dòng)機(jī)匹配算法利用有窮自動(dòng)機(jī)將二進(jìn)制運(yùn)算轉(zhuǎn)換成自動(dòng)機(jī)的狀態(tài)轉(zhuǎn)移。當(dāng)一個(gè)長度為n bit的數(shù)據(jù)T進(jìn)行掃描,由于對(duì)于T中的每個(gè)比特,每次僅使用g函數(shù)和f函數(shù)中的一個(gè),因此在模式匹配階段時(shí)間復(fù)雜度為O(n×k),其中k為整個(gè)M2KE-Tree建立的AC自動(dòng)機(jī)個(gè)數(shù)。
3.4 算法實(shí)驗(yàn)
本文對(duì)KMP算法、BM算法、蠻力算法、以及AC自動(dòng)機(jī)算法在同等條件下分別進(jìn)行單模式和多模式的測試。考慮到磁盤傳輸速度不是勻速等原因,不考慮算法的運(yùn)行時(shí)間,只考慮比特流中符號(hào)的比較次數(shù)。
實(shí)驗(yàn)1進(jìn)行單模式測試,使用大小為512bit隨機(jī)產(chǎn)生的二進(jìn)制比特流,對(duì)單模式字符串“1101”進(jìn)行匹配,結(jié)果如表1所示。
實(shí)驗(yàn)2進(jìn)行多模式測試,使用大小為10192bit隨機(jī)產(chǎn)生的二進(jìn)制比特流,對(duì)多模式字符串“1101,1011,0011,0100”進(jìn)行匹配,結(jié)果如表2所示。
由實(shí)驗(yàn)結(jié)果可以看出,雖然AC自動(dòng)機(jī)匹配算法在單模式匹配情況下,匹配速度沒有BM算法快。但是,在多模式匹配中每一個(gè)比特平均比較次數(shù)明顯比其它三個(gè)算法小,而且模式越多,這個(gè)優(yōu)點(diǎn)越明顯。在敏感信息過濾中,往往需要進(jìn)行多模式匹配,因此,基于AC自動(dòng)機(jī)匹配算法的敏感信息過濾具有較高的實(shí)用價(jià)值。
4 結(jié)束語
本文對(duì)基于內(nèi)容的敏感信息過濾算法進(jìn)行設(shè)計(jì),重點(diǎn)對(duì)匹配算法進(jìn)行了深入分析,在此基礎(chǔ)上提出了基于AC自動(dòng)機(jī)的多關(guān)鍵詞多編碼匹配算法,并對(duì)算法進(jìn)行了實(shí)驗(yàn)?;贏C自動(dòng)機(jī)的多關(guān)鍵詞多編碼匹配算法具有小巧、速度快等優(yōu)點(diǎn),實(shí)現(xiàn)了主機(jī)敏感信息過濾,有效防止主機(jī)敏感信息的泄漏。
參考文獻(xiàn):
[1] 符敏慧.基于文本的信息過濾模型[J].圖書館理論與實(shí)踐,2006(2):43-45.
[2] 閔聯(lián)營,趙婷婷.BM算法的研究與改進(jìn)[J].武漢理工大學(xué)學(xué)報(bào):交通科學(xué)與工程版,2006,30(3):528-530.
[3] Boyer R S,Moore J S.A Fast String Searching Alogrithm[J].Communications of the ACM,1997,20(10):762-772.
對(duì)于硬盤而言,在持續(xù)高速數(shù)據(jù)存儲(chǔ)中,關(guān)鍵是它的持續(xù)數(shù)據(jù)傳輸速率(sustained transfer rate)能否滿足要求。目前,15000r/min的小型計(jì)算機(jī)系統(tǒng)接口scsi(small computer system interface)硬盤,總線數(shù)據(jù)傳輸速率為80~320mb/s,持續(xù)數(shù)據(jù)傳輸速率大于40mb/s。而pc機(jī)普遍配置的ide硬盤,雖然它的總線數(shù)據(jù)傳輸速率可以達(dá)到33~100mb/s,但持續(xù)數(shù)據(jù)傳輸速率只有15mb/s左右,性能低于scsi硬盤。
本文設(shè)計(jì)了一種專用高速硬盤存儲(chǔ)設(shè)備,它脫離微機(jī)平臺(tái)實(shí)時(shí)將高速數(shù)據(jù)送入scsi硬盤,持續(xù)存儲(chǔ)速率可達(dá)35mb/s(使用seagate公司生產(chǎn)的st336752lw型硬盤)。
1 scsi總線及硬盤
scsi是美國ansi9.2委員會(huì)定義的計(jì)算機(jī)和外設(shè)之間的接口標(biāo)準(zhǔn),最初是以磁盤存儲(chǔ)設(shè)備為主,但由于它的靈活性、設(shè)備獨(dú)立等特點(diǎn),使之不僅在磁帶設(shè)備、打印設(shè)備、光盤驅(qū)動(dòng)設(shè)備等外設(shè)中得到普遍應(yīng)用,也在許多i/o設(shè)備和計(jì)算機(jī)網(wǎng)絡(luò)、計(jì)算機(jī)工業(yè)控制等領(lǐng)域不斷發(fā)展。隨著外設(shè)速率的不斷提高,scsi的性能幾乎每5年提高一倍,目前ultra320 scsi總線數(shù)據(jù)傳輸速率可達(dá)320mb/s。
scsi是設(shè)備無關(guān)的輸入輸出總線,可以掛接多達(dá)8個(gè)以上的設(shè)備。對(duì)于scsi總線上的設(shè)備,如果是任務(wù)的觸發(fā)者,則稱為啟動(dòng)設(shè)備;如果是任務(wù)的執(zhí)行者,則稱為目標(biāo)設(shè)備。通常啟動(dòng)設(shè)備先選擇一個(gè)目標(biāo)設(shè)備,繼而由目標(biāo)設(shè)備決定繼續(xù)控制總線或釋放總線,直到完成任務(wù)。本文的專用高速硬盤存儲(chǔ)設(shè)備采用單啟動(dòng)、單目標(biāo)結(jié)構(gòu)。
scsi硬盤在標(biāo)識(shí)硬盤扇區(qū)時(shí)使用了線性的概念,即硬盤只有順序的第1扇區(qū)、第2扇區(qū)…第n扇區(qū),不像ide硬盤的“柱面/磁頭/扇區(qū)”三維格式。這種線性編排方式訪問延時(shí)最小,可加快硬盤存取速率,尤其在持續(xù)大容量數(shù)據(jù)存儲(chǔ)時(shí),所顯現(xiàn)的優(yōu)勢較明顯。目前,操作系統(tǒng)內(nèi)部也使用線性編號(hào)的扇區(qū),其目的是加快介質(zhì)存取速度,加大介質(zhì)訪問容量。
綜上所述,該專用高速硬盤存儲(chǔ)設(shè)備使用scsi總線不僅數(shù)據(jù)傳輸速率高,而且在需要時(shí)可以增加設(shè)備中的硬盤數(shù)量來擴(kuò)展存儲(chǔ)空量,甚至可以把硬盤替換為其它scsi存儲(chǔ)設(shè)備。
2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
為了實(shí)現(xiàn)scsi協(xié)議和硬盤存儲(chǔ),一般需要有微處理器、dma控制器、scsi協(xié)議控制器、數(shù)據(jù)緩存器等硬件支持和相應(yīng)的軟件控制模塊。
·微處理器用來控制設(shè)備中各部件的工作,實(shí)現(xiàn)設(shè)備本身的特定功能。該專用高速硬盤存儲(chǔ)設(shè)備實(shí)現(xiàn)數(shù)據(jù)的持續(xù)高速存儲(chǔ),要求處理數(shù)據(jù)的速度高。通常這些需要傳輸和處理大量數(shù)據(jù)的設(shè)備均選用數(shù)字信號(hào)處理器DSP作為微處理器。同時(shí),scsi協(xié)議中許多復(fù)雜的控制功能也需要這個(gè)微處理器來實(shí)現(xiàn)。
·傳送大量數(shù)據(jù)大多會(huì)采用直接存儲(chǔ)器訪問dma(direct memory access)方式,因此需要獨(dú)立的dma控制器或選用內(nèi)置dma控制器的微處理器。出于簡化電路和提高速率的考慮,該設(shè)備采用復(fù)雜可編程邏輯器件cpld構(gòu)造了一個(gè)獨(dú)立的dma控制器。
·要實(shí)現(xiàn)scsi協(xié)議需要有scsi協(xié)議控制器。dsp中通常不會(huì)集成scsi協(xié)議控制器,因此一般情況下,需要選擇通用的scsi協(xié)議控制器,輔助dsp實(shí)現(xiàn)scsi協(xié)議和通信。
·在設(shè)備的輸入接口部分,需要有數(shù)據(jù)緩存單元。普通的存儲(chǔ)器在寫入的同時(shí)不能讀取;采用雙口隨機(jī)存儲(chǔ)器ram雖然可以解決并發(fā)訪問的問題,但它必需的雙邊地址譯碼又是不可忽視的問題。對(duì)于單純的數(shù)據(jù)存儲(chǔ)設(shè)備,不需要對(duì)數(shù)據(jù)做壓縮、信號(hào)分析等預(yù)處理工作,緩存單元在結(jié)構(gòu)上相當(dāng)于先進(jìn)先出(first in first out,fifo)隊(duì)列,先到的數(shù)據(jù)先被存儲(chǔ)。所以采用專用fifo芯片,可以去掉復(fù)雜的緩存器譯碼電路,大大簡化系統(tǒng)設(shè)計(jì)。而且,采用專用fifo芯片,整個(gè)設(shè)備從外部數(shù)據(jù)接口看來,就是一個(gè)寫不滿的fifo,也大大簡化了對(duì)設(shè)備數(shù)據(jù)接口的操作。
專用高速硬盤存儲(chǔ)設(shè)備的框圖如圖1所示。圖1中各方框表示一個(gè)基本模塊,括號(hào)中文字表示具體實(shí)現(xiàn)的器件,虛線左側(cè)部分不屬于設(shè)備模塊。
該高速硬盤存儲(chǔ)設(shè)備設(shè)計(jì)中向處理器選用了ti公司生產(chǎn)的tms320f206,scsi協(xié)議控制器選用了qlogic公司生產(chǎn)的fas368m,dma控制器和其它邏輯轉(zhuǎn)換電路選用了altera公司生產(chǎn)的cpld器件epm7064。
tms320c206是ti公司生產(chǎn)的cpld器件epm7064。
tms320c206是ti公司生產(chǎn)的tms320系列單片數(shù)字信號(hào)處理器中的一種低價(jià)格、高性能的定點(diǎn)dsp芯片。該芯片功耗低,處理能力強(qiáng),指令周期最短為25ns,運(yùn)算能力達(dá)40mips,片內(nèi)具有32kb的閃爍存儲(chǔ)器和4.5kb的ram,是最早使用閃爍存儲(chǔ)器的dsp芯片之一。由于閃爍存儲(chǔ)器具有比rom靈活、比ram便宜的特點(diǎn),因此使用tms320f206不僅降低了成本、減小了體積,同時(shí)系統(tǒng)升級(jí)也比較方便。
fas368m是與scsi-3標(biāo)準(zhǔn)完全兼容的scsi協(xié)議控制器,它支持啟動(dòng)設(shè)備與目標(biāo)設(shè)備兩種模式,同步數(shù)據(jù)傳輸速率為40mb/s。另外,fas368m支持最大50 mb/s的快速dma數(shù)據(jù)傳。由于采用分離的微處理器總線和dma總線結(jié)構(gòu),因此能以較高速率產(chǎn)生響應(yīng)而不會(huì)造成瓶頸效應(yīng)。
3 硬件電路及功能描述
tms320f206、fas368m、emp7064和idt7208之間的具體連接線路如圖2所示。
3.1 fas368m的信號(hào)及內(nèi)部寄存器說明
圖2中fas368m的主要信號(hào)和控制邏輯如下:
·ack、atm、bsy、cd、io、msg、req、rst、sd0~15、sdp0~1、sel及其差分信號(hào),都是fas368m與scsi總線的接口信號(hào)。
·cs信號(hào)是讀寫fas368m內(nèi)部寄存器片選信號(hào)。
·rd、wr是fas368m內(nèi)部寄存器的讀寫信號(hào)。
·fas368m的tni端對(duì)應(yīng)tms
320f206的外部中斷int1,當(dāng)其有效時(shí),表明有錯(cuò)誤產(chǎn)生(如校驗(yàn)出錯(cuò))、一個(gè)事件需要服務(wù)(如fas368m作為目標(biāo)設(shè)備被選中)或已結(jié)束某服務(wù)(如dma結(jié)束)。 ·dreq,fas368m使dreq有效向dma控制器(epm7064)發(fā)出dma傳輸請求。
·dack,epm7064對(duì)fas368m dma請求信號(hào)dreq的響應(yīng)。
·dbwr,dma數(shù)據(jù)寫信號(hào)。當(dāng)dreq和dack信號(hào)均有效時(shí),epm7064控制該信號(hào)和緩存器idt7208的rd信號(hào),實(shí)現(xiàn)數(shù)據(jù)從idt7208向fas368m的同步快速傳輸。
fas368m在tms320f206的控制下實(shí)現(xiàn)所有的scsi協(xié)議,包括仲裁、選擇、消息、命令、數(shù)據(jù)、狀態(tài)等各階段規(guī)定的信號(hào)電平轉(zhuǎn)化等。在設(shè)備中tms320f206對(duì)fas368m的控制是通過對(duì)其寄存器的讀寫來實(shí)現(xiàn)的。
·指令寄存器(command register),tms320f206通過向指令寄存器寫入相應(yīng)指令,實(shí)現(xiàn)諸如fas368m的初始化與復(fù)位、scsi總線分配與復(fù)位、scsi總線各階段的遷移等所有針對(duì)fas358m和scsi總線的控制。
·fifo寄存器(fifo register)是一個(gè)16字的fifo寄存器,硬盤和fas368m之間的數(shù)據(jù)都要通過fifo寄存器。它有兩方面的用途:當(dāng)fas368m通過scsi總線向硬盤傳送數(shù)據(jù)和命令時(shí),可以先把要傳送的數(shù)據(jù)和命令放在fifo寄存器,等scsi總線空閑,并獲得總線控制權(quán)以后再開始傳送;另一方面,由scsi總線傳送到fas368m的數(shù)據(jù),也可因?yàn)閠ms320f206或dma控制器忙而停止,數(shù)據(jù)先送到fifo寄存器空出scsi總線,等tms320f206或dma控制器空閑再從fifo寄存器讀取數(shù)據(jù)。
·傳輸計(jì)數(shù)寄存器(transfer count register)是一個(gè)減計(jì)數(shù)器,它通常用來保存一次dma命令所要傳輸數(shù)據(jù)的字節(jié)數(shù)。
·中斷寄存器(interrupt register),fas368m所有的都以中斷的方式通知tms320f206。tms320f206通過讀取中斷寄存器和其他狀態(tài)寄存儲(chǔ)器判斷fas368產(chǎn)生中斷的原因,決定下一步操作,從而實(shí)現(xiàn)fas368m對(duì)tms320f206的通信。
3.2 epm7064內(nèi)部邏輯和作用
設(shè)備中的dma控制器由cpld器件epm7064實(shí)現(xiàn),這主要有下面幾方面的考慮:
(1)設(shè)備接口緩存器采用專用fifo芯片idt7208,它的數(shù)據(jù)總線可以和fas368m的dma數(shù)據(jù)總線直接連接,不需要復(fù)雜的緩存器地址譯碼電路。因此,dma控制器不需要數(shù)據(jù)與地址總線,硬件連線可以大大減少。而配合fas368m dma數(shù)據(jù)傳輸?shù)臅r(shí)序,dma控制器只需在dma傳輸請求信號(hào)dreq有效且idt7208空信號(hào)ef無效時(shí),使dma傳輸響應(yīng)信號(hào)dack有效,隨后在時(shí)鐘信號(hào)clk驅(qū)動(dòng)下連續(xù)產(chǎn)生同步的idt7208讀信號(hào)rd和dma寫信號(hào)dbwr,實(shí)現(xiàn)從idt7208到fas368m的dma傳輸;反之,則使dma傳輸響應(yīng)信號(hào)dack無效,隨后停止產(chǎn)生idt7208讀信號(hào)rd和dma寫信號(hào)dbwr,中斷從idt7208到fas368m的dma傳輸。這些時(shí)序邏輯完全可以用一片小的cpld器件實(shí)現(xiàn),因此選用epm7064設(shè)計(jì)了該dma控制器。
(2)fas368m支持高達(dá)50mb/s的快速dma傳輸。一般的專用dma控制器芯片難以勝任,而且專用dma控制器與fas368m的連接需要一定的邏輯轉(zhuǎn)換電路,硬件連線也較多。同時(shí),它還必須在tms320f206的控制下與fas368m一起協(xié)調(diào)工作才能實(shí)現(xiàn)dma傳輸,又增加了軟件的復(fù)雜程度。
電腦有成千上萬的數(shù)據(jù)需要記錄,我們使用的電腦都具備從高速存儲(chǔ)設(shè)備中讀取信息的能力。早在一九五六年,鼻祖IBM公司的RAMAC 350就已經(jīng)可以實(shí)現(xiàn),網(wǎng)絡(luò)電子信息的存儲(chǔ)了,雖然它的容量只有5MB,但是它的體積卻相當(dāng)于兩個(gè)冰箱。它的出現(xiàn)是現(xiàn)代信息存儲(chǔ)技術(shù)的開端,直至今日,存儲(chǔ)技術(shù)已經(jīng)有了半個(gè)世紀(jì)的發(fā)展。
一、現(xiàn)代硬件存儲(chǔ)設(shè)備的現(xiàn)狀
近年來計(jì)算機(jī)硬件技術(shù)得到了飛速的發(fā)展,而另一方面,信息和數(shù)據(jù)也在不斷的增長,為了滿足信息存儲(chǔ)的要求,硬件存儲(chǔ)設(shè)備被不斷的改良,現(xiàn)今指甲蓋大小的儲(chǔ)存卡,就有幾個(gè)G,甚至是幾十G的信息容量,這在以前是想都不敢想的。硬件存儲(chǔ)設(shè)備包括硬盤、光盤、U盤,移動(dòng)存儲(chǔ)設(shè)備等等,這一類的存儲(chǔ)設(shè)備統(tǒng)稱為固態(tài)存儲(chǔ)設(shè)備,目前在世界的范圍內(nèi)都是用固態(tài)存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)信息存儲(chǔ)的,這主要是因?yàn)槠渥陨淼牡吞贾谱餍再|(zhì),再加上它是由固態(tài)電子存儲(chǔ)芯片通過矩陣排列制成的,具有很多傳統(tǒng)設(shè)備不具有的優(yōu)點(diǎn),所以固態(tài)存儲(chǔ)設(shè)備成為主流的存儲(chǔ)設(shè)備。固態(tài)硬盤(Solid State Drives),簡稱固盤,固態(tài)硬盤(Solid State Drive)用固態(tài)電子存儲(chǔ)芯片陣列而制成的硬盤,由控制單元和存儲(chǔ)單元(FLASH芯片、DRAM芯片)組成。被廣泛應(yīng)用于軍事、車載、工控、視頻監(jiān)控、網(wǎng)絡(luò)監(jiān)控、網(wǎng)絡(luò)終端、電力、醫(yī)療、航空、導(dǎo)航設(shè)備等領(lǐng)域。固態(tài)硬盤和普通硬盤的接口規(guī)范、定義、功能以及使用方法都是相同的,在外型上也和普通硬盤一致;固態(tài)硬盤相比磁盤驅(qū)動(dòng),更加的抗震,而且機(jī)械故障點(diǎn)比較小,而且能夠承受更強(qiáng)的沖撞影響。其次,固態(tài)硬盤還有噪音小的優(yōu)點(diǎn),幾乎是無聲的,如此一來也就適合在居住環(huán)境下使用,由于固態(tài)硬盤消耗的能源較少,產(chǎn)生的熱量也很小,因此它不需要風(fēng)扇進(jìn)行散熱處理。這取決于固態(tài)硬盤的無聲運(yùn)作,不同于旋轉(zhuǎn)硬盤驅(qū)動(dòng),不會(huì)產(chǎn)生很大的噪音。雖然固態(tài)存儲(chǔ)設(shè)備的造價(jià)比較昂貴,由于固態(tài)存儲(chǔ)設(shè)備具有更加的耐震、更加耐用,噪音更小,體積更小的特點(diǎn),使其被廣泛應(yīng)用到航空,軍事等諸多領(lǐng)域之中,隨著現(xiàn)代存儲(chǔ)技術(shù)的不發(fā)展,固態(tài)存儲(chǔ)設(shè)備也會(huì)逐漸的普及[1]。
二、網(wǎng)絡(luò)存儲(chǔ)的形式
最早的網(wǎng)絡(luò)儲(chǔ)存形式只有電子郵箱服務(wù)系統(tǒng)的存儲(chǔ),該存儲(chǔ)只能是將較小的文件或者圖片放入郵箱之中,不能進(jìn)行大文件的存儲(chǔ)。但是隨著網(wǎng)絡(luò)科學(xué)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)存儲(chǔ)的形式出現(xiàn)在了人們的生活之中,這種網(wǎng)絡(luò)存儲(chǔ)形式叫做網(wǎng)絡(luò)硬盤、網(wǎng)盤、又稱網(wǎng)絡(luò)U盤。無論何時(shí)何地,只要有互聯(lián)網(wǎng)覆蓋就可以使用網(wǎng)絡(luò)硬盤,用戶可以很方便的對(duì)網(wǎng)絡(luò)硬盤中存儲(chǔ)的數(shù)據(jù)信息進(jìn)行編輯和使用,而且不用擔(dān)心數(shù)據(jù)信息丟失,非常的安全。正是由于網(wǎng)絡(luò)硬盤具有方便、快捷、靈活、安全等特點(diǎn),所以它受到了廣大人民群眾的喜愛?,F(xiàn)如今,很多網(wǎng)盤企業(yè)都想要以盈利的方式來服務(wù)人群,例如:網(wǎng)絡(luò)硬盤的存儲(chǔ)量只有1GB,如果用戶想要存儲(chǔ)更多的數(shù)據(jù)信息,就必須進(jìn)行消費(fèi),購買更大容量的網(wǎng)盤。這樣做可以使網(wǎng)盤企業(yè)的收入有所保障,自然就可以讓用戶享受更好的服務(wù)質(zhì)量,但是,一旦采取收費(fèi)服務(wù)必然會(huì)失去很多用戶,網(wǎng)盤企業(yè)一致在免費(fèi)服務(wù)和收費(fèi)服務(wù)之間糾結(jié)著,始終是找不到一個(gè)很好的解決方法,這個(gè)難點(diǎn)在很大程度上制約了網(wǎng)盤技術(shù)的發(fā)展[2]。
三、網(wǎng)絡(luò)存儲(chǔ)的發(fā)展現(xiàn)狀
早在2006年,“云”概念及其理論就在谷歌推出的“Google101計(jì)劃”中被正式提出,云概念是基于“云計(jì)算”技術(shù),實(shí)現(xiàn)各種終端設(shè)備之間的互聯(lián)互通。用戶享受的所有資源、所有應(yīng)用程序全部都由一個(gè)存儲(chǔ)和運(yùn)算能力超強(qiáng)的云端后臺(tái)來提供。隨后微軟、IBM等公司也宣布了各自的“云計(jì)劃”,在這之后,云存儲(chǔ)和云服務(wù)等相關(guān)的云概念相繼出現(xiàn)。隨著我國網(wǎng)盤技術(shù)的不斷發(fā)展,市場競爭日益激烈的情勢下,傳統(tǒng)的網(wǎng)盤技術(shù)也逐漸的顯現(xiàn)出一些弊端,也逐漸的滿足不了人們的方便需求。云網(wǎng)盤存儲(chǔ)是目前最為先進(jìn)的網(wǎng)盤存儲(chǔ)技術(shù),它以更高的性能逐漸取代了傳統(tǒng)的網(wǎng)盤存儲(chǔ)。云存儲(chǔ)技術(shù)是通過應(yīng)用軟件將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備集合起來協(xié)同工作,共同對(duì)外提供業(yè)務(wù)訪問和數(shù)據(jù)存儲(chǔ)功能的一個(gè)存儲(chǔ)系統(tǒng),該系統(tǒng)具有安全系數(shù)高、存儲(chǔ)量大、使用方便、適用人群廣等等優(yōu)點(diǎn),因此,云存儲(chǔ)系統(tǒng)受到人們廣泛的喜愛[3]。
四、結(jié)束語
隨著我國互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,人們在使用信息和儲(chǔ)存信息的需求越來越大?,F(xiàn)如今,各個(gè)行業(yè)領(lǐng)域都實(shí)現(xiàn)了信息化的辦公模式,需要儲(chǔ)存的信息也變得更多了,儲(chǔ)存形式的發(fā)展關(guān)乎著每個(gè)企業(yè)及個(gè)人的利益。因此,網(wǎng)絡(luò)儲(chǔ)存不但要有高速安全性,同時(shí)也要具備超大的容量。安全性,高速度,大容量是未來網(wǎng)絡(luò)儲(chǔ)存的發(fā)展方向,除此之外,網(wǎng)絡(luò)存儲(chǔ)的自我管理和數(shù)據(jù)恢復(fù)也是必須要具備的功能。但是在網(wǎng)絡(luò)儲(chǔ)存技術(shù)發(fā)展和使用的過程中是不可能一帆風(fēng)順的,肯定會(huì)出現(xiàn)這樣那樣的難題,這就需要我們不斷完善和提高網(wǎng)絡(luò)存儲(chǔ)的安全性和可靠性,促進(jìn)其發(fā)展。
參考文獻(xiàn):
[1]陳川.計(jì)算機(jī)硬件儲(chǔ)存設(shè)備與網(wǎng)絡(luò)儲(chǔ)存的發(fā)展現(xiàn)狀[J].科技經(jīng)濟(jì)市場,2011,11:22-23.