專利名稱:Usb儲(chǔ)存裝置與其控制方法
技術(shù)領(lǐng)域:
本發(fā)明設(shè)涉及一種USB儲(chǔ)存裝置與其控制方法,尤指可在非管理者的使用模式下,可下達(dá)裝置自訂控制命令。
背景技術(shù):
目前在微軟窗口(Microsoft Windows)操作系統(tǒng)下,非管理者身份的使用者沒有對(duì)USB大量存取裝置系統(tǒng)(USB Mass Storage Device)下達(dá)裝置自訂控制命令(Vendor Command)的權(quán)限,一般而言,僅管理者(Administrator)身份才可下達(dá)裝置自訂控制命令給USB裝置中的控制單元(Controller)來執(zhí)行。在微軟窗口操作系統(tǒng)下,管理者身份的使用者通??梢韵逻_(dá)裝置自訂控制命令,其命令傳送流程為使用SCISPass Through的方法來下達(dá)命令給磁盤驅(qū)動(dòng)單元(Disk Driver),再經(jīng)由USB驅(qū)動(dòng)單元(USB Driver)將命令傳至儲(chǔ)存裝置中的控制單元(Controller),以執(zhí)行裝置自訂控制命令所要求的工作,但非管理者身份的使用者則無此權(quán)限來下達(dá)此項(xiàng)命令動(dòng)作。如圖1所示,為現(xiàn)有技術(shù)中對(duì)USB儲(chǔ)存裝置下達(dá)裝置自訂控制命令的控制示意圖,管理者被允許直接對(duì)磁盤驅(qū)動(dòng)單元下達(dá)裝置自訂控制命令,以使USB驅(qū)動(dòng)單元驅(qū)動(dòng)儲(chǔ)存裝置,亦即透過USB總線與儲(chǔ)存裝置的控制單元交換數(shù)據(jù),達(dá)成儲(chǔ)存或讀取存儲(chǔ)器數(shù)據(jù)的功能;非管理者則無法直接對(duì)磁盤驅(qū)動(dòng)單元下達(dá)裝置自訂控制命令。
然而,對(duì)于目前不斷推陳出新且要求功能多樣化的USB儲(chǔ)存裝置而言,若非管理者身份的使用者在計(jì)算機(jī)上無權(quán)限控制USB儲(chǔ)存裝置,將造成許多功能執(zhí)行上的限制與困難,許多特殊功能將因此而無法讓非管理者身份的使用者于計(jì)算機(jī)上執(zhí)行。
發(fā)明內(nèi)容
有鑒于上述現(xiàn)有技術(shù)的缺憾,本發(fā)明提供一種USB儲(chǔ)存裝置與其控制方法,可用以儲(chǔ)存數(shù)據(jù)并經(jīng)一通用串行總線(USBUniversal SerialBus)與一電子裝置交換數(shù)據(jù),更可在非管理者的使用模式下,對(duì)儲(chǔ)存裝置下達(dá)裝置自訂控制命令。
為達(dá)上述目的,本發(fā)明的一種儲(chǔ)存裝置,可儲(chǔ)存數(shù)據(jù)并經(jīng)一通用串行總線(USBUniversal Serial Bus)與一電子裝置交換數(shù)據(jù),該儲(chǔ)存裝置包括一存儲(chǔ)器,其中預(yù)存有包含至少一控制文件的一控制文件數(shù)據(jù)夾,該控制文件中對(duì)應(yīng)該儲(chǔ)存裝置的一控制命令預(yù)存一命令數(shù)據(jù);一控制單元,控制該存儲(chǔ)器與該通用串行總線間的數(shù)據(jù)傳輸;其中,當(dāng)該電子裝置透過該通用串行總線存取該控制文件時(shí),該控制單元即根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。
本發(fā)明的一種透過電子裝置的通用串行總線控制儲(chǔ)存裝置的方法,包括于該儲(chǔ)存裝置的一存儲(chǔ)器中預(yù)存包含至少一控制文件的一控制文件數(shù)據(jù)夾,該控制文件對(duì)應(yīng)儲(chǔ)存裝置的一控制命令預(yù)存有一命令數(shù)據(jù);透過該電子裝置的通用串行總線存取該至少一控制檔之一,使儲(chǔ)存裝置的一控制單元根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。
如此,無管理者權(quán)限的使用者亦可對(duì)儲(chǔ)存裝置下達(dá)裝置自訂控制命令(Vendor Command),便于利用存取裝置的所有功能。
圖1為現(xiàn)有技術(shù)中對(duì)USB儲(chǔ)存裝置下達(dá)裝置自訂控制命令的控制示意圖。
圖2為本發(fā)明中對(duì)USB儲(chǔ)存裝置下達(dá)裝置自訂控制命令的控制示意圖。
圖中符號(hào)說明
1儲(chǔ)存裝置2計(jì)算機(jī)具體實(shí)施方式
圖2為本發(fā)明中對(duì)USB儲(chǔ)存裝置下達(dá)裝置自訂控制命令的控制示意圖。如圖2所示,本發(fā)明的一種儲(chǔ)存裝置1可儲(chǔ)存數(shù)據(jù)并經(jīng)一通用串行總線(USBUniversal Serial Bus)與作為上述電子裝置的計(jì)算機(jī)2交換數(shù)據(jù),此儲(chǔ)存裝置包括一存儲(chǔ)器,可為閃存存儲(chǔ)器,其中預(yù)存有包含至少一控制文件的一控制文件數(shù)據(jù)夾,該控制文件中對(duì)應(yīng)該儲(chǔ)存裝置的一控制命令預(yù)存一命令數(shù)據(jù);一控制單元,可控制該存儲(chǔ)器與該通用串行總線間的數(shù)據(jù)傳輸。
再參考圖2,其中計(jì)算機(jī)2經(jīng)USB總線與上述本發(fā)明的一種儲(chǔ)存裝置1相連,計(jì)算機(jī)2的檔案系統(tǒng)數(shù)據(jù)夾中形成對(duì)應(yīng)儲(chǔ)存裝置1中控制文件數(shù)據(jù)夾的控制文件數(shù)據(jù)夾映像。在微軟窗口操作系統(tǒng)下,管理者身份的使用者可下達(dá)裝置自訂控制命令,其命令傳送流程為使用SCIS Pass Through的方法來下達(dá)命令給磁盤驅(qū)動(dòng)單元(Disk Driver),再經(jīng)由USB驅(qū)動(dòng)單元(USB Driver)將命令傳至儲(chǔ)存裝置中的控制單元(Controller),以執(zhí)行裝置自訂控制命令所要求的工作。因此管理者被允許直接對(duì)磁盤驅(qū)動(dòng)單元下達(dá)裝置自訂控制命令,以使USB驅(qū)動(dòng)單元驅(qū)動(dòng)儲(chǔ)存裝置1,亦即透過USB總線與儲(chǔ)存裝置的控制單元交換數(shù)據(jù),達(dá)成儲(chǔ)存或讀取儲(chǔ)存裝置1的存儲(chǔ)器數(shù)據(jù)的功能。此外,在非管理者的模式下,使用者可透過檔案系統(tǒng)數(shù)據(jù)夾中的控制文件數(shù)據(jù)夾映像讀/寫控制文件,使計(jì)算機(jī)2透過通用串行總線存取儲(chǔ)存裝置1的控制文件,此時(shí),控制單元即根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。
上述儲(chǔ)存裝置1的控制文件數(shù)據(jù)夾為一特殊數(shù)據(jù)夾(File SystemFolder),內(nèi)含可用于該USB裝置中的裝置自訂控制命令與檔案之間的對(duì)應(yīng)關(guān)系,當(dāng)非管理者身份的使用者于計(jì)算機(jī)2的主機(jī)端欲下達(dá)相關(guān)裝置自定控制命令時(shí),可以讀/寫該命令所對(duì)應(yīng)的控制檔,此讀/寫要求將直接傳給儲(chǔ)存裝置1的控制單元,使控制單元執(zhí)行該命令的動(dòng)作。
上述本發(fā)明的一種透過電子裝置的通用串行總線控制儲(chǔ)存裝置的方法中,舉例而言,當(dāng)作為計(jì)算機(jī)2的計(jì)算機(jī)上程序運(yùn)行在非管理者身份下時(shí),若想由程序得到USB大量存取裝置的Inquiry字符串,藉由計(jì)算機(jī)2中檔案系統(tǒng)數(shù)據(jù)夾的控制文件數(shù)據(jù)夾映像,可由事先格式化好的儲(chǔ)存裝置1中得知相對(duì)于Inquiry命令的檔案為Inquiry.dat,并且該檔案的地址為0x00FF。當(dāng)要透過程序得知Inquiry值時(shí),可以讀取Inquiry.dat這個(gè)檔案,操作系統(tǒng)會(huì)將此檔案讀取要求轉(zhuǎn)成Read10命令且地址是0x00FF傳送給儲(chǔ)存裝置1。當(dāng)儲(chǔ)存裝置1收到0x00FF的Read10要求時(shí),知道此命令是要求的Inquiry字符串值,于是將Inquiry字符串回傳上去。而程序收到回傳的值時(shí),就得到儲(chǔ)存裝置1的Inquiry字符串了。因此,非管理者身份的使用者經(jīng)由控制文件數(shù)據(jù)夾來讀取該控制命令所對(duì)應(yīng)的控制檔,可直接告知儲(chǔ)存裝置1使控制單元進(jìn)行欲執(zhí)行的控制作業(yè)。
權(quán)利要求
1.一種儲(chǔ)存裝置,可儲(chǔ)存數(shù)據(jù)并經(jīng)一通用串行總線與一電子裝置交換數(shù)據(jù),該儲(chǔ)存裝置包括一存儲(chǔ)器,其中預(yù)存有包含至少一控制文件的一控制文件數(shù)據(jù)夾,該控制文件中對(duì)應(yīng)該儲(chǔ)存裝置的一控制命令預(yù)存一命令資料;一控制單元,控制該存儲(chǔ)器與該通用串行總線間的數(shù)據(jù)傳輸;其中,當(dāng)該電子裝置透過該通用串行總線存取該控制文件時(shí),該控制單元即根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。
2.如權(quán)利要求1所述的儲(chǔ)存裝置,其中,該控制命令為該儲(chǔ)存裝置的一裝置自訂控制命令。
3.一種透過電子裝置的通用串行總線控制儲(chǔ)存裝置的方法,包括于該儲(chǔ)存裝置的一存儲(chǔ)器中預(yù)存包含至少一控制檔的一控制文件數(shù)據(jù)夾,該控制文件對(duì)應(yīng)儲(chǔ)存裝置的一控制命令預(yù)存有一命令數(shù)據(jù);透過該電子裝置的通用串行總線存取該至少一控制檔之一,使儲(chǔ)存裝置的一控制單元根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。
4.如權(quán)利要求3所述的方法,其中,該控制命令為該儲(chǔ)存裝置的一裝置自訂控制命令。
全文摘要
本發(fā)明提供一種USB儲(chǔ)存裝置與其控制方法,可用以儲(chǔ)存數(shù)據(jù)并經(jīng)一通用串行總線與一電子裝置交換數(shù)據(jù)。儲(chǔ)存裝置的存儲(chǔ)器中預(yù)存有包含至少一控制文件的一控制文件數(shù)據(jù)夾,控制文件中對(duì)應(yīng)該儲(chǔ)存裝置的一控制命令預(yù)存一命令數(shù)據(jù),當(dāng)電子裝置透過通用串行總線存取控制文件時(shí),儲(chǔ)存裝置的控制單元即根據(jù)預(yù)存的命令數(shù)據(jù)執(zhí)行被存取的控制檔所對(duì)應(yīng)的控制命令。如此,無管理者權(quán)限的使用者亦可對(duì)此儲(chǔ)存裝置下達(dá)裝置自訂控制命令,便于利用存取裝置的所有功能。
文檔編號(hào)G06F1/00GK101034338SQ200610059758
公開日2007年9月12日 申請(qǐng)日期2006年3月6日 優(yōu)先權(quán)日2006年3月6日
發(fā)明者楊昌偉, 藍(lán)國能 申請(qǐng)人:晶和科技股份有限公司