專利名稱:用于在嵌入式系統(tǒng)中安全執(zhí)行的協(xié)議腳本語言的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在存儲(chǔ)設(shè)備上執(zhí)行的腳本,具體而言,涉及一種用于在嵌入到存儲(chǔ)設(shè)備的微處理器中控制腳本或者程序設(shè)計(jì)語言的執(zhí)行的方法。
背景技術(shù):
包括閃速存儲(chǔ)器設(shè)備和可移去存儲(chǔ)器設(shè)備在內(nèi)的磁盤驅(qū)動(dòng)器及其他存儲(chǔ)子系統(tǒng)典型地在其嵌入式電子儀器中具有處理器(有時(shí)稱作微處理器)。處理器可用于隱藏計(jì)算結(jié)果以及存儲(chǔ)的數(shù)據(jù)。在許多安全申請(qǐng)中,以及在許多申請(qǐng)?zhí)峁┱邥?huì)希望防止申請(qǐng)或者內(nèi)容的竊取使用的申請(qǐng)中,也許需要以隱藏的方式執(zhí)行某些計(jì)算。這包括隱藏密鑰,所述密鑰可以被采用以經(jīng)由密碼證據(jù)或者經(jīng)由對(duì)共享秘密的簡(jiǎn)單認(rèn)識(shí)來開啟資產(chǎn)。以隱藏方式執(zhí)行計(jì)算也可以包括隱藏某些計(jì)算,其可以被采用以允許在存儲(chǔ)設(shè)備以外的軟件或者內(nèi)容可以以希望的方式運(yùn)行。不同于常規(guī)的讀/寫命令,安全命令典型地被提供在協(xié)議環(huán)境內(nèi),所述協(xié)議規(guī)定在存儲(chǔ)設(shè)備和主機(jī)之間必須根據(jù)嚴(yán)格定義的局部規(guī)則約束來交換特殊序列的消息。數(shù)字權(quán)利管理及其他內(nèi)容保護(hù)協(xié)議具有該形式。讀/寫命令本身是一個(gè)整體,而只有當(dāng)嚴(yán)格序列完成且沒有錯(cuò)誤或者妨礙的情況下協(xié)議才是一個(gè)整體。
一種方便的和通用的用于執(zhí)行這種隱藏的且定義明確的運(yùn)算和計(jì)算的方式是通過在存儲(chǔ)設(shè)備處理器上執(zhí)行的腳本或者編程語言。允許外力程序設(shè)計(jì)存儲(chǔ)設(shè)備處理器的潛在缺點(diǎn)是所述外力能因此存心不良地使用該程序設(shè)計(jì)能力?;蛘叱鲇趷阂猓蛘叱鲇谝馔?,外力可以削弱存儲(chǔ)設(shè)備的運(yùn)行而產(chǎn)生出乎意外的后果。本發(fā)明的實(shí)施例提供了這些及其他問題的解決方案,并且提供了相對(duì)于
發(fā)明內(nèi)容
一種用于腳本的安全執(zhí)行的具有加固安全特性的存儲(chǔ)設(shè)備具有存儲(chǔ)介質(zhì)、接口、安全命令集以及腳本解釋器。所述接口適合于可通信地將所述存儲(chǔ)設(shè)備與一主機(jī)系統(tǒng)相連接以及在主機(jī)系統(tǒng)和存儲(chǔ)設(shè)備之間傳送接口命令和信息。在存儲(chǔ)介質(zhì)上存儲(chǔ)所述安全命令集。所述腳本解釋器被設(shè)置在存儲(chǔ)設(shè)備內(nèi)用于根據(jù)一個(gè)或多個(gè)所接收的接口命令處理腳本。所述腳本解釋器適合于實(shí)施按嚴(yán)格次序的腳本執(zhí)行并且在接口命令違反嚴(yán)格次序啟用腳本的情況下終止腳本執(zhí)行并重新運(yùn)行(roll back)與腳本執(zhí)行有關(guān)的任何改變。
在一個(gè)實(shí)施方式中,描述了一種用于在設(shè)置在存儲(chǔ)子系統(tǒng)內(nèi)的處理器上處理腳本的方法。根據(jù)經(jīng)由將存儲(chǔ)子系統(tǒng)連接至主機(jī)系統(tǒng)的接口接收的命令處理每個(gè)腳本。存儲(chǔ)子系統(tǒng)所響應(yīng)的安全命令集被存儲(chǔ)在存儲(chǔ)子系統(tǒng)內(nèi)的存儲(chǔ)介質(zhì)上。存儲(chǔ)子系統(tǒng)內(nèi)的控制器檢驗(yàn)每個(gè)所接收的命令是否同安全命令集內(nèi)的至少一個(gè)命令相匹配。如果所接收的命令同命令集中的任一命令均不匹配,那么終止所接收的命令的執(zhí)行。
在另一個(gè)實(shí)施方式中,一種腳本處理系統(tǒng)被設(shè)置在存儲(chǔ)設(shè)備上。所述存儲(chǔ)設(shè)備具有存儲(chǔ)介質(zhì)和適合于往返于存儲(chǔ)介質(zhì)讀和寫數(shù)據(jù)的電路,并且所述存儲(chǔ)設(shè)備經(jīng)由接口連接主機(jī)系統(tǒng)。允許命令集定義嚴(yán)格的輸入命令期望集。允許命令集包括接口命令和內(nèi)部函數(shù)。腳本解釋器適合于執(zhí)行腳本并根據(jù)允許命令集實(shí)施嚴(yán)格的輸入命令期望集。腳本解釋器適合于在違反輸入命令期望的情況下終止腳本的執(zhí)行。
通過讀取下列詳細(xì)說明并參照對(duì)相關(guān)附圖的評(píng)述,表征本發(fā)明的實(shí)施方式的其他特征和優(yōu)勢(shì)將變得顯而易見。
圖1是磁盤驅(qū)動(dòng)器的立體圖。
圖2是根據(jù)本發(fā)明的實(shí)施方式實(shí)現(xiàn)的系統(tǒng)的簡(jiǎn)化方框圖。
圖3是根據(jù)本發(fā)明的實(shí)施方式的存儲(chǔ)子系統(tǒng)的簡(jiǎn)化方框圖。
圖4是根據(jù)本發(fā)明的實(shí)施方式的用于處理在位于主系統(tǒng)和存儲(chǔ)設(shè)備之間的接口上方接收的命令的方法的簡(jiǎn)化流程。
圖5是根據(jù)本發(fā)明的實(shí)施方式的用于在存儲(chǔ)設(shè)備上處理由接收的命令啟用的腳本的方法的簡(jiǎn)化流程。
圖6是根據(jù)本發(fā)明的實(shí)施方式實(shí)現(xiàn)的系統(tǒng)的簡(jiǎn)化方框圖。
圖7是根據(jù)本發(fā)明的實(shí)施方式的用于利用存儲(chǔ)子系統(tǒng)的腳本解釋器處理腳本的方法的簡(jiǎn)化流程。
具體實(shí)施萬式圖1是其中本發(fā)明的實(shí)施方式是有益的磁盤驅(qū)動(dòng)器100的立體圖。磁盤驅(qū)動(dòng)器100包括具有基座102和頂蓋(未顯示)的外殼。磁盤驅(qū)動(dòng)器100還包括磁盤組106,其通過磁盤夾108安裝在主軸電動(dòng)機(jī)(未顯示)上。磁盤組106包括多個(gè)專用磁盤,這些專用磁盤是以圍繞中心軸109同軸旋轉(zhuǎn)的方式安裝的。每個(gè)磁盤表面具有相關(guān)的磁盤磁頭浮動(dòng)塊110,其被安裝到磁盤驅(qū)動(dòng)器100用于同磁盤表面進(jìn)行通信。
在圖1所示的實(shí)例中,浮動(dòng)塊110由支架(suspensions)112支持,所述支架112又附著于激勵(lì)器116的磁道存取臂114上。圖1所示的激勵(lì)器具有通常所說的旋轉(zhuǎn)電液轉(zhuǎn)換器的類型并包括直線電機(jī)(VCM),在圖中通常以118來標(biāo)示。直線電機(jī)118利用它的附裝磁頭110圍繞樞軸120旋轉(zhuǎn)激勵(lì)器116,以便沿在磁盤內(nèi)徑124和磁盤外徑126之間的拱式路徑122在期望的數(shù)據(jù)磁道上方定位位于浮動(dòng)塊110上的磁頭。直線電機(jī)118由伺服電子儀器130根據(jù)由位于滑動(dòng)塊110和接口103上方的主機(jī)系統(tǒng)101的磁頭生成的信號(hào)驅(qū)動(dòng)。
對(duì)本領(lǐng)域的技術(shù)人員而言應(yīng)該理解的是圖1所示的實(shí)施方式是在其上可以實(shí)現(xiàn)本發(fā)明的一種可能的存儲(chǔ)系統(tǒng)。用于控制驅(qū)動(dòng)器側(cè)腳本執(zhí)行的本發(fā)明也可以在任何具有微處理器的存儲(chǔ)子系統(tǒng)上實(shí)現(xiàn)。在此使用的術(shù)語“腳本”指的是命令和有關(guān)信息的有序集,其可以改變數(shù)據(jù),存取外圍設(shè)備,或者執(zhí)行功能。驅(qū)動(dòng)器側(cè)或設(shè)備側(cè)腳本是利用存儲(chǔ)設(shè)備的嵌入式的電子儀器執(zhí)行的腳本。
通常,本發(fā)明提供了一種手段,所述手段允許程序員經(jīng)由存儲(chǔ)設(shè)備中的微處理器編寫由存儲(chǔ)設(shè)備處理的腳本,同時(shí)提供對(duì)大型病毒的保護(hù)措施。本發(fā)明利用在存儲(chǔ)設(shè)備內(nèi)的腳本解釋器。腳本解釋器被配置成或者適合于接受經(jīng)接口接收的預(yù)定命令。假定這種命令是公知的并且這種命令是完全受約束的,那么可以假設(shè)所述命令是安全的。在此使用的術(shù)語“命令”指的是由存儲(chǔ)設(shè)備經(jīng)由接口接收的“等到結(jié)束”、ATA或者SCSI類型的命令,其中所述接口是本領(lǐng)域公知的。
對(duì)腳本而言有效的命令僅僅是經(jīng)由接口的調(diào)用有效的。唯一的接受命令是跨越接口處理的函數(shù)調(diào)用,以及任何其他類型的命令被腳本解釋器拒絕。特征函數(shù)根本不能被調(diào)用除非其在存儲(chǔ)設(shè)備上的“安全”命令中已經(jīng)預(yù)先被定義。此外,特征函數(shù)不能以出乎意外的次序被調(diào)用,或者腳本解釋器將拒絕函數(shù)調(diào)用并重新運(yùn)行起源于腳本執(zhí)行的任何改變至它的初始狀態(tài)。
腳本(命令和信息的有序序列)定義嚴(yán)格的部分有序集。如果曾經(jīng)經(jīng)由接口傳送違反嚴(yán)格部分有序的命令,那么整個(gè)腳本被終止并且系統(tǒng)重新運(yùn)行與腳本有關(guān)的任何改變以將存儲(chǔ)設(shè)備返回至它的以前的狀態(tài)。換句話說,系統(tǒng)重新運(yùn)行改變以便就好像腳本從未被啟動(dòng)一樣。
在嚴(yán)格部分有序的外部命令以外,允許命令也可以包括與條件檢驗(yàn)有關(guān)的命令,以便存儲(chǔ)設(shè)備可以根據(jù)它自己的內(nèi)部檢驗(yàn)生成條件分支。這些檢驗(yàn)包括像代替外部命令的輸出,檢驗(yàn)以查看輸出是否等于或者大于某些值,那么根據(jù)那個(gè)輸出生成條件分支至部分有序之類的東西。用這樣的方式,腳本可以被利用以便完全內(nèi)部地回答例如“是/否”類型的問題,并按結(jié)果進(jìn)行轉(zhuǎn)移。
圖2是根據(jù)本發(fā)明的實(shí)施方式實(shí)現(xiàn)的系統(tǒng)200的簡(jiǎn)化方框圖。系統(tǒng)200包括存儲(chǔ)設(shè)備202和主機(jī)系統(tǒng)204,其通過接口203可通信地相互連接。存儲(chǔ)系統(tǒng)202可以是磁盤驅(qū)動(dòng)器、可移動(dòng)或者固定存儲(chǔ)器子系統(tǒng)、閃速存儲(chǔ)器磁盤、MRAM、EEPROM或者任何其他的存儲(chǔ)系統(tǒng)。主機(jī)系統(tǒng)204可以是具有操作系統(tǒng)和用于經(jīng)由接口203同存儲(chǔ)系統(tǒng)202連接的SCSI或者ATA總線的計(jì)算機(jī)。
通常,存儲(chǔ)設(shè)備202包括存儲(chǔ)介質(zhì)206、微處理器208、命令集210、腳本解釋器212(運(yùn)行時(shí)間或者命令集執(zhí)行規(guī)則)和控制器214。通常,微處理器208適合于執(zhí)行計(jì)算和經(jīng)由腳本解釋器212(或者運(yùn)行時(shí)間)處理腳本和程序,與由主機(jī)系統(tǒng)204執(zhí)行的任何處理無關(guān)。命令集210是之前定義的命令,從所述命令具有公知的輸出而且其以公知被確定的方式來處理這個(gè)意義上而言所述命令的特征是安全的。命令集210可以被存儲(chǔ)在控制器214的固件中、存儲(chǔ)在存儲(chǔ)介質(zhì)206上、或者存儲(chǔ)在任何其他的為控制器214能達(dá)到的并且沒有越權(quán)存取危險(xiǎn)的存儲(chǔ)單元中??刂破?14管理在存儲(chǔ)介質(zhì)206和外部空間(諸如來自主機(jī)系統(tǒng)204)之間的通信。
應(yīng)當(dāng)理解,存儲(chǔ)設(shè)備202也可以作為獨(dú)立的存儲(chǔ)設(shè)備。主機(jī)204以虛線表示用于指示在某些環(huán)境中主機(jī)204不是必需的。例如,如果存儲(chǔ)設(shè)備202是獨(dú)立的網(wǎng)絡(luò)設(shè)備,那么存儲(chǔ)設(shè)備202可以經(jīng)由標(biāo)準(zhǔn)接頭(諸如雙絞線以太網(wǎng)連接、共軸網(wǎng)絡(luò)連接、撥號(hào)網(wǎng)絡(luò)連接等等)直接連接至網(wǎng)絡(luò)。如果存儲(chǔ)設(shè)備202是獨(dú)立的網(wǎng)絡(luò)設(shè)備,那么存儲(chǔ)設(shè)備202可以包括用于認(rèn)證用戶和設(shè)備的認(rèn)證算法以控制對(duì)存儲(chǔ)在存儲(chǔ)設(shè)備202上的數(shù)據(jù)的訪問。
通常,命令集210表示存儲(chǔ)設(shè)備202所響應(yīng)的容許或者允許命令。此外,命令集210可以包括定義腳本解釋器212可以執(zhí)行經(jīng)由接口203接收的指令所采用的次序的可允許命令次序。程序員可以編寫腳本用于以嚴(yán)格控制的方式經(jīng)由接口203存取命令集210。
在存儲(chǔ)設(shè)備202的微處理器208上用于處理的腳本主要是由允許命令集210組成的。腳本中的每個(gè)命令可以作為期待輸入,作為內(nèi)部執(zhí)行的指令,或者作為用于提供輸出的裝置。命令可以被設(shè)計(jì)成提供輸入和輸出,僅僅提供輸入,或者僅僅提供輸出。
通常,從每一安全命令具有公知的輸出并以公知確定的方式執(zhí)行這個(gè)意義上而言,存儲(chǔ)設(shè)備所響應(yīng)的安全命令集的特征在于其安全性。腳本主要是由下述三種角色的安全命令組成1)作為期待的輸入,2)作為內(nèi)部執(zhí)行的指令,或者3)作為輸出生成命令。腳本本身標(biāo)識(shí)期待的輸入命令。在嵌入式平臺(tái)上的腳本的執(zhí)行要求腳本內(nèi)的命令以下述的次序出現(xiàn)所述命令可以被腳本所代替并且沒有任何插入的命令。如果由腳本支配的按照嚴(yán)格順序的命令是違反,那么整個(gè)腳本被終止,并且由腳本所代替的動(dòng)作被“重新運(yùn)行”。用這種方式,腳本可以被看作根據(jù)多個(gè)輸入執(zhí)行單一的計(jì)算。在優(yōu)選實(shí)施方式種,每個(gè)命令表示式返回一可分配的值。
除了設(shè)備通過外部指令所響應(yīng)的命令之外,還存在僅在腳本環(huán)境中執(zhí)行的命令集。一種該命令是條件IF-THEN-ELSEIF-..-ENDIF命令。其他命令或者運(yùn)算符包括不等式、等式、邏輯和算術(shù)命令或者運(yùn)算符。諸如類型之類的其他程序設(shè)計(jì)語言抽象概念被設(shè)置為“安全”。腳本不允許直接存儲(chǔ)器操作。另外,循環(huán)和遞歸具有作為默認(rèn)設(shè)置的上限。
應(yīng)當(dāng)理解的是,允許外營(yíng)力編程存儲(chǔ)設(shè)備處理器的缺點(diǎn)是外營(yíng)力能因此使用程序設(shè)計(jì)能力從而存心不良或者意外地削弱運(yùn)行并可能產(chǎn)生出乎意外的結(jié)果。本發(fā)明介紹了一種用于將這種編程限制為允許命令的嚴(yán)格可控程序,被在腳本環(huán)境內(nèi)執(zhí)行所述命令。如果由腳本啟用的命令被越出期待次序范圍外或者以不同于由腳本所支配的序列被執(zhí)行,那么處理器208重新運(yùn)行腳本所代替的全部動(dòng)作。假如這種編程符合允許命令的嚴(yán)格可控序列,在某種程度上,因?yàn)槊顖?zhí)行是根據(jù)以受控制的次序執(zhí)行的允許命令集,因此,由外營(yíng)力對(duì)存儲(chǔ)設(shè)備處理器的編程是被允許并安全的。在某種程度上,因?yàn)槟_本執(zhí)行是確定的,所以通過這種方法,可以保證腳本的安全執(zhí)行。
在一個(gè)實(shí)施方式中,腳本可以被概念化為受管理的密碼,其是利用語言編譯程序被發(fā)展為把運(yùn)行時(shí)間作為目標(biāo)的代碼。管理代碼典型地提供“元數(shù)據(jù)”以便允許運(yùn)行時(shí)間來設(shè)置在組合模塊中代碼化的方法,從而存儲(chǔ)并檢索保密信息,處理異常等等。用于管理代碼的執(zhí)行的管理代碼以運(yùn)行時(shí)間為目標(biāo),提供諸如存儲(chǔ)器管理、線索管理等等之類的核心服務(wù)。在替換實(shí)施方式中,微處理器208利用執(zhí)行規(guī)則集或者腳本解釋器212執(zhí)行腳本語言。為了處理管理代碼塊起見,腳本解釋器212也可以是運(yùn)行時(shí)間。
如上所述,本發(fā)明的方法考慮了條件命令,其僅在腳本環(huán)境內(nèi)被執(zhí)行。這種條件命令提供了用于根據(jù)通過存儲(chǔ)設(shè)備內(nèi)的腳本執(zhí)行的檢驗(yàn)結(jié)果進(jìn)行分支的裝置。這種檢驗(yàn)可以出于各種目的搜索并且檢索狀態(tài)或者其他信息的類型并根據(jù)檢索信息產(chǎn)生輸出而不顯示該信息。其一個(gè)實(shí)例可以是在醫(yī)學(xué)裝置內(nèi)的數(shù)據(jù)庫。在醫(yī)學(xué)環(huán)境中,數(shù)據(jù)庫可以包括有關(guān)病人的出生日期、社會(huì)保險(xiǎn)號(hào)及其他保密信息的介紹。通常需要保護(hù)這種信息避免越權(quán)存取和檢驗(yàn),并且防止這種信息以通過接口執(zhí)行命令的方式被暴露。允許接口命令集可以存取局部函數(shù)及其他命令以檢驗(yàn)?zāi)承╊愋偷男畔⑹欠袷钦鎸?shí)的,但是其不顯示任何數(shù)據(jù)給用戶。例如,護(hù)士可以檢驗(yàn)病人記錄是否存在。護(hù)士可以促使經(jīng)由接口發(fā)送命令以檢驗(yàn)病人的記錄。命令存取局部函數(shù),所述局部函數(shù)允許系統(tǒng)內(nèi)部地檢驗(yàn)記錄。取決于該調(diào)用的函數(shù),在內(nèi)部檢驗(yàn)以后,系統(tǒng)可以向護(hù)士展示用于編輯與病人概貌相關(guān)的信息的頁而不暴露保密資料給該護(hù)士。
本發(fā)明的一個(gè)主要優(yōu)點(diǎn)是復(fù)數(shù)運(yùn)算完全可以在存儲(chǔ)設(shè)備內(nèi)執(zhí)行。例如,涉及加密/解密對(duì)稱密鑰或者公共專用密鑰對(duì)的操作可以查詢轉(zhuǎn)發(fā)區(qū),其中在所述轉(zhuǎn)發(fā)區(qū)中提供密鑰至授權(quán)的設(shè)備。如果密鑰是未加密的,那么這可能潛在地暴露密鑰至未被授權(quán)的計(jì)算機(jī)竊賊,如果計(jì)算機(jī)竊賊正在監(jiān)視事務(wù)處理。利用本發(fā)明經(jīng)由網(wǎng)絡(luò)發(fā)出的用于獲取密鑰的命令(諸如“Get Key”命令)被腳本解釋器捕獲,并且代替返回未加密的密鑰至用戶,所述密鑰可以被設(shè)備的內(nèi)部處理器在存儲(chǔ)設(shè)備內(nèi)檢索并加密,而不會(huì)暴露密鑰。密鑰或者密鑰對(duì)可以被經(jīng)由接口返回到請(qǐng)求設(shè)備中,例如,包封PKES密鑰的RSA。以這種方法,存儲(chǔ)設(shè)備可以被制造得利用智能卡來運(yùn)行(其需要密鑰),而無需暴露密鑰該“特洛伊木馬”或者特工人員。
另外,應(yīng)當(dāng)理解的是條件命令允許期望兩個(gè)或更多輸入命令同時(shí)發(fā)生。在這一情況下,任何一個(gè)命令可以繼續(xù)而無需另一個(gè)繼續(xù)。雖然如此,還有腳本解釋器212將接受的命令的嚴(yán)格部分有序。腳本本身可以被吸入到存儲(chǔ)介質(zhì)206上的存儲(chǔ)位置(或者任何其他的存儲(chǔ)位置),并且可以通過啟用處于該存儲(chǔ)單元中的內(nèi)容的方式被啟用。腳本的輸出可以包括各種各樣的設(shè)備輸出,并且可以包括對(duì)存儲(chǔ)在存儲(chǔ)介質(zhì)206上的數(shù)據(jù)的轉(zhuǎn)換。
圖3是根據(jù)本發(fā)明的實(shí)施方式的存儲(chǔ)子系統(tǒng)300的簡(jiǎn)化方框圖。對(duì)本領(lǐng)域的技術(shù)人員而言應(yīng)當(dāng)理解的是為了簡(jiǎn)化論述起見省略了大量細(xì)節(jié),諸如讀/寫機(jī)制之類的細(xì)節(jié),所述讀/寫機(jī)制包括馬達(dá)、錠子、滑動(dòng)塊等等。該子系統(tǒng)300包括接口302、控制器304、微處理器306、安全(或者允許)命令集308以及存儲(chǔ)介質(zhì)310。在存儲(chǔ)介質(zhì)310上提供腳本解釋器應(yīng)用程序312,并且根據(jù)需要由微處理器306加載以處理存儲(chǔ)設(shè)備側(cè)腳本。該接口302可以是用于直接同主機(jī)系統(tǒng)通信的主機(jī)接口。做為選擇,接口302可以是適合于同網(wǎng)絡(luò)連接并且通過該接口連接接收命令以及期望數(shù)據(jù)的網(wǎng)卡。
如果命令包含在安全命令集中,那么當(dāng)經(jīng)由接口302接收命令時(shí),控制器304存取與命令有關(guān)的存儲(chǔ)單元。命令被通過存取存儲(chǔ)介質(zhì)310的存儲(chǔ)單元的方式被啟用,其中在所述存儲(chǔ)單元中存儲(chǔ)用于執(zhí)行命令的腳本。微處理器306啟用腳本解釋器312(例如加載腳本解釋器312到存儲(chǔ)器里)。微處理器306運(yùn)用腳本解釋器處理腳本。第一腳本解釋器312將每個(gè)命令同安全(允許)命令集308中的命令進(jìn)行比較。然后,腳本解釋器312處理腳本。如果命令不是安全命令集308中的命令,那么不包括期待的信息,或者如果命令以違反期待次序的方式被接收,那么腳本執(zhí)行被終止并且在腳本執(zhí)行期間生成的改變被重新運(yùn)行至之前的命令狀態(tài)。
通常,腳本可以包含被期待跨越接口的命令(“接口命令”)以及其他的命令(所述命令和在此所稱的“局部函數(shù)”或者“內(nèi)部函數(shù)”有關(guān))。通常,“局部函數(shù)”或者“內(nèi)部函數(shù)”可以包括數(shù)據(jù)處理命令或者操作以及不能直接經(jīng)由接口存取的而且不能返回?cái)?shù)據(jù)至接口的邏輯函數(shù)。例如,微處理器306根據(jù)經(jīng)由接口302接收的命令將腳本加載到腳本解釋器312里。該腳本由一系列按照次序執(zhí)行的函數(shù)(Fn1,F(xiàn)n2,F(xiàn)n3,...,F(xiàn)nN)組成。每個(gè)函數(shù)可以包括經(jīng)由接口接收的期待的接口命令,但是一些函數(shù)可以包括局部函數(shù)以及同時(shí)包括命令。局部命令優(yōu)選地包含于安全命令集308中。如果Fn1表示函數(shù)或者邏輯操作,諸如x=1+b,其中b是接口命令,那么設(shè)置期望以使得b跨越接口302。如果b是局部函數(shù)或者局部變量,那么不期望設(shè)置b。重要的是,因此,理解了在接口命令和腳本運(yùn)行以及局部函數(shù)之間的差異。
通常應(yīng)當(dāng)理解的是存儲(chǔ)在存儲(chǔ)器中的腳本不必非要由控制器進(jìn)行檢驗(yàn)直到試圖腳本的執(zhí)行為止。因此,可以經(jīng)由接口302加載腳本至存儲(chǔ)介質(zhì)310上??刂破?04根據(jù)經(jīng)由接口302接收的命令干預(yù)腳本的執(zhí)行。因此,當(dāng)剛一在存儲(chǔ)介質(zhì)310上存取腳本的存儲(chǔ)單元,控制器304就干預(yù)以確信在允許進(jìn)行腳本執(zhí)行以前執(zhí)行的函數(shù)和命令是安全的。如果通過將其同之前確定的安全命令集308進(jìn)行比較后確定腳本函數(shù)或者命令不是安全的,那么腳本執(zhí)行被停止并且與執(zhí)行有關(guān)的任何改變被撤消(重新運(yùn)行至之前的腳本執(zhí)行狀態(tài),所述狀態(tài)是臨腳本被存取時(shí)數(shù)據(jù)和/或存儲(chǔ)設(shè)備300的設(shè)置的狀態(tài))。
圖4是根據(jù)本發(fā)明的實(shí)施方式的用于控制經(jīng)由在主機(jī)系統(tǒng)和存儲(chǔ)設(shè)備之間的接口接收的命令的執(zhí)行的處理的簡(jiǎn)化流程圖。經(jīng)由接口從設(shè)備接收命令(步驟400)。存儲(chǔ)設(shè)備的控制器將所接收的命令同包含在安全命令集中的命令進(jìn)行比較(步驟402),其中所述安全命令集被存儲(chǔ)在存儲(chǔ)設(shè)備中。如果所接收的命令與安全命令集中的命令不匹配(步驟404),那么腳本執(zhí)行被終止(步驟406),由腳本執(zhí)行所引起的任何改變被返回或者重新運(yùn)行至初始狀態(tài)(步驟408),并且關(guān)于事件的記錄被存儲(chǔ)在安全分區(qū)(partition)(SP)記錄中(步驟410)。
相反,如果所接收的命令同安全命令集中的命令匹配(步驟404),那么命令被檢查期待的參數(shù)(步驟412)。例如,如果所接收的命令啟用用于察看“Bob是否21歲”的處理,那么命令的期待參數(shù)典型地將包括人名和當(dāng)前的日期。如果所接收的命令參數(shù)缺乏或者與期待的參數(shù)不相匹配(步驟414),那么腳本執(zhí)行被終止(步驟406),由腳本執(zhí)行所引起的任何改變被返回或者重新運(yùn)行至初始狀態(tài)(步驟408),并且事件的記錄被存儲(chǔ)在安全分區(qū)(SP)記錄中(步驟410)。如果參數(shù)同期待的參數(shù)匹配(步驟414),那么執(zhí)行命令(步驟416)。
典型地,由存儲(chǔ)設(shè)備內(nèi)的微處理器通過存取與命令有關(guān)的存儲(chǔ)單元的方式執(zhí)行命令。與命令有關(guān)的存儲(chǔ)單元可以包含腳本,然后由微處理器結(jié)合腳本解釋器處理所述腳本(如圖5所示)。
應(yīng)當(dāng)理解的是對(duì)經(jīng)過接口接收的每個(gè)命令重復(fù)上述描述的處理,并且在腳本內(nèi)對(duì)每個(gè)接口命令而言都遇到上述處理。接口命令是經(jīng)由接口接收的命令或者直接從存儲(chǔ)設(shè)備將信息經(jīng)由接口發(fā)送的命令。通過在執(zhí)行以前檢驗(yàn)每個(gè)命令,控制器檢驗(yàn)每個(gè)命令是否是安全命令,并且命令執(zhí)行可以被嚴(yán)格限于之前確定列表的安全命令。通過重新運(yùn)行來自失敗腳本執(zhí)行的全部改變,系統(tǒng)確保僅僅緊隨命令式語言程序步驟的安全腳本被執(zhí)行。
圖5顯示了根據(jù)本發(fā)明的實(shí)施方式的處理腳本的方法的簡(jiǎn)化流程圖。在該特殊的實(shí)施方式中,假定經(jīng)由在主機(jī)系統(tǒng)和存儲(chǔ)設(shè)備之間的接口已經(jīng)接收命令,并且所述命令被包容在安全命令集中。另外,因該流程圖起見,腳本解釋器被認(rèn)為已經(jīng)被存儲(chǔ)設(shè)備的微處理器加載,并且以下的處理被理解在存儲(chǔ)設(shè)備內(nèi)完全發(fā)生。
啟用安全接口命令的命令輸入被接收(塊500)。在這種情況下,特殊的命令是用于核對(duì)某個(gè)人的年齡以檢驗(yàn)他或她是否是21歲的命令。在偽碼種,命令是“CheckAge(Name,Today)”,其包括名字參數(shù)和當(dāng)今日期。
腳本解釋器開始存儲(chǔ)在與所接收的命令“CheckAge()”有關(guān)的存儲(chǔ)單元中的腳本的執(zhí)行(步驟502)。腳本解釋器根據(jù)姓名參數(shù)選擇關(guān)于人名字的文件(步驟504)。腳本解釋器對(duì)所選擇的文件執(zhí)行更新二元運(yùn)算(步驟506)。腳本解釋器然后讀取關(guān)于所選擇文件的日期內(nèi)容(例如生日)的二進(jìn)制(步驟508)。腳本解釋器對(duì)所述日期執(zhí)行更新二元運(yùn)算(步驟510)。
腳本解釋器然后處理?xiàng)l件函數(shù),所述條件函數(shù)建立兩種可能的期望或者該人21歲或者21歲以上,或者該人21歲以下。如果該日期大于或等于今天減21年(步驟512),那么返回″是″至該接口(步驟514)。如果該日期少于21年份,然后返回“不”至該接口(步驟516)。
在該實(shí)例中,如果“CheckAge”命令被經(jīng)由接口發(fā)送而不帶有期待的“Name”和“Today”(今天的日期)參數(shù),那么剛一發(fā)現(xiàn)未提供該期待的參數(shù)就終止命令的執(zhí)行(圖4中的步驟412)。應(yīng)當(dāng)理解的是腳本可以包含用于返回?cái)?shù)據(jù)至接口或者執(zhí)行來自安全命令集的接口命令的函數(shù);然而,這種函數(shù)必須以滿足該參數(shù)期望的次序和以期待的次序執(zhí)行。另外,腳本執(zhí)行失敗并且改變被重新運(yùn)行至之前的執(zhí)行狀態(tài)。
圖6舉例說明了根據(jù)本發(fā)明的實(shí)施方式實(shí)現(xiàn)的系統(tǒng)600。系統(tǒng)600包括主機(jī)系統(tǒng)602,所述主機(jī)系統(tǒng)602可以是個(gè)人計(jì)算機(jī)或者其他的處理設(shè)備。系統(tǒng)600還包括可通信地經(jīng)由接口603同主機(jī)系統(tǒng)602相連接的存儲(chǔ)設(shè)備604。存儲(chǔ)設(shè)備包括控制器605和存儲(chǔ)介質(zhì)610。控制器605包括微處理器606和固件608。提供腳本解釋器607,其可以是腳本被寫入其中的運(yùn)行時(shí)間應(yīng)用程序,微處理器606實(shí)施腳本的步驟或者規(guī)則集,或者可以是適合于處理腳本的電路。存儲(chǔ)介質(zhì)610具有包含腳本的存儲(chǔ)單元612。存儲(chǔ)介質(zhì)610還可以被分成數(shù)據(jù)區(qū)域614和一個(gè)或多個(gè)安全分區(qū)616。在一個(gè)實(shí)施方式中,安全或者允許命令集(C)被存儲(chǔ)在控制器605的固件608中。在一個(gè)替換實(shí)施方式中,安全或者允許命令集(C)被存儲(chǔ)在存儲(chǔ)介質(zhì)610的安全分區(qū)616中。
通常,安全分區(qū)616是存儲(chǔ)介質(zhì)610上對(duì)其的訪問被嚴(yán)格控制的區(qū)域。在一個(gè)實(shí)施方式中,僅僅存儲(chǔ)設(shè)備604的控制器605(或者微處理器606或者諸如結(jié)合控制器605運(yùn)行的腳本解釋器607之類的應(yīng)用程序)可以存取安全分區(qū)616。在安全分區(qū)616內(nèi)的權(quán)限表中所標(biāo)識(shí)(唯一地被標(biāo)識(shí)或者標(biāo)識(shí)為合理的角色)的被授權(quán)用戶(或設(shè)備)可以被允許經(jīng)由控制器605對(duì)存儲(chǔ)在分區(qū)616內(nèi)的數(shù)據(jù)的受限存取。以這種方法,安全或者允許命令集(C)可以被保存在存儲(chǔ)介質(zhì)610中而不允許對(duì)命令集的改變。
在這些實(shí)施方式中,存儲(chǔ)在存儲(chǔ)介質(zhì)610的數(shù)據(jù)區(qū)域614中存儲(chǔ)單元612內(nèi)的腳本經(jīng)由命令或者試圖存取存儲(chǔ)單元612的方式通過接口由外部設(shè)備來執(zhí)行。微處理器606分析腳本并存取安全分區(qū)616(或者固件608)中的命令集(C)以便在執(zhí)行每個(gè)命令以前確認(rèn)每個(gè)命令。
腳本解釋器607可以被存儲(chǔ)在固件608中或者可以被存儲(chǔ)在存儲(chǔ)介質(zhì)610的數(shù)據(jù)區(qū)域614中,并且根據(jù)需要由微處理器606加載。腳本解釋器607通常結(jié)合固件608和微處理器606一同運(yùn)行,類似于軟件應(yīng)用程序結(jié)合隨機(jī)存取存儲(chǔ)器(RAM)和計(jì)算機(jī)系統(tǒng)內(nèi)的微處理器一同運(yùn)行的方式。
如預(yù)先指示地那樣,命令可以包括條件命令,所述條件命令可以允許兩個(gè)或更多輸入命令同時(shí)被預(yù)期執(zhí)行,其中或者命令可以在不需要其他必要地繼承的情況下(諸如IF-THEN-ELSEIF-..ENDIF命令)繼續(xù)。雖然如此但仍存在腳本解釋器將處理的嚴(yán)格部分有序的命令。
通常,腳本本身應(yīng)該被寫入到存儲(chǔ)設(shè)備604的存儲(chǔ)介質(zhì)614上的存儲(chǔ)位置中,并且腳本應(yīng)該通過啟用在該位置上的存儲(chǔ)器的內(nèi)容的方式被啟用。此外,腳本執(zhí)行的輸出可以包括在存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)數(shù)據(jù)的改變,如果在腳本解釋器結(jié)束腳本以前腳本被終止那么當(dāng)腳本剛一終止就將返回(撤消或者重新運(yùn)行)所述改變。做為選擇,腳本的輸出可以經(jīng)由接口603被寫入到一個(gè)或多個(gè)外圍設(shè)備618中。
圖7是根據(jù)本發(fā)明的實(shí)施方式的用于管理在存儲(chǔ)設(shè)備上執(zhí)行腳本的方法的簡(jiǎn)化流程圖。為了在圖7中顯示所述流程圖,假定存儲(chǔ)設(shè)備已經(jīng)接收對(duì)存儲(chǔ)在存儲(chǔ)設(shè)備的存儲(chǔ)介質(zhì)上的存儲(chǔ)單元中的內(nèi)容的輸入請(qǐng)求存取,其包含用于執(zhí)行的腳本。控制器檢索存儲(chǔ)單元的內(nèi)容(腳本)并提供內(nèi)容至微處理器,所述微處理器利用腳本解釋器處理所檢索的腳本。
腳本解釋器根據(jù)所接收的命令對(duì)腳本執(zhí)行第一函數(shù)(步驟700)。第一函數(shù)可以利用與所接收的接口命令有關(guān)的一個(gè)或多個(gè)參數(shù)。假定第一函數(shù)是來自安全命令集的內(nèi)部函數(shù)或者安全命令,那么腳本解釋器執(zhí)行從腳本選擇的函數(shù)或者命令(步驟702)。如果函數(shù)或者命令的所期望的參數(shù)不存在(步驟704),那么腳本解釋器終止腳本的執(zhí)行(步驟706),重新運(yùn)行基于腳本的任何改變(步驟708),并在安全日志中記錄失敗的腳本事件(步驟710)。如果函數(shù)或者命令的期望的參數(shù)存在(步驟704),那么腳本解釋器處理腳本函數(shù)至完成(步驟712)。
如果腳本包括更多函數(shù),那么腳本解釋器選擇腳本內(nèi)的下一個(gè)函數(shù)(步驟714)。如果下一個(gè)選擇的腳本函數(shù)不滿足系統(tǒng)對(duì)嚴(yán)格次序的要求,那么終止腳本執(zhí)行(步驟706)。重新運(yùn)行或者撤消與腳本有關(guān)的改變(步驟708),并且失敗的腳本執(zhí)行事件被記錄到事件記錄中(步驟710)。如果滿足嚴(yán)格的次序(步驟716),那么重復(fù)步驟702和序列直到腳本的全部函數(shù)都已經(jīng)被處理為止或者直到腳本失敗為止。
應(yīng)當(dāng)理解的是即使連同本發(fā)明的各種實(shí)施方式的結(jié)構(gòu)和功能的細(xì)節(jié)在上述的說明中已經(jīng)闡述了本發(fā)明的各種實(shí)施方式的許多特征和優(yōu)點(diǎn),但是這些公開的內(nèi)容僅僅是說明性的,并且可以在細(xì)節(jié)上作出改變,特別是在本發(fā)明的原則內(nèi)對(duì)與部件的結(jié)構(gòu)和排列有關(guān)的細(xì)節(jié)作出改變,本發(fā)明的原則是由所附權(quán)利要求所表示的術(shù)語的寬泛廣義用意所指示的最大可能范圍。例如,在不脫離本發(fā)明的范圍和精神的情況下,取決于用于腳本處理存儲(chǔ)系統(tǒng)的特定應(yīng)用程序而可以使得所述特殊元件變化,同時(shí)基本保持相同的功能。此外,雖然在此描述的優(yōu)選實(shí)施方式給出了用于管理在諸如磁盤驅(qū)動(dòng)器之類的存儲(chǔ)子系統(tǒng)的微處理器上執(zhí)行的腳本的方法或者系統(tǒng),但是本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解的是在不脫離本發(fā)明的范圍和精神的情況下本發(fā)明的教導(dǎo)可以被用于控制在任何類型的存儲(chǔ)設(shè)備上執(zhí)行的腳本。
權(quán)利要求
1.一種用于安全執(zhí)行腳本的具有加固安全特性的存儲(chǔ)設(shè)備,所述存儲(chǔ)設(shè)備包括存儲(chǔ)介質(zhì);接口,適合于可通信地將存儲(chǔ)設(shè)備連接至主機(jī)系統(tǒng)并在主機(jī)系統(tǒng)和存儲(chǔ)設(shè)備之間傳送接口命令和信息;存儲(chǔ)在存儲(chǔ)介質(zhì)上的安全命令集;以及位于存儲(chǔ)設(shè)備內(nèi)部的用于根據(jù)一個(gè)或多個(gè)所接收的接口命令處理腳本的腳本解釋器,所述腳本解釋器適合于實(shí)施按嚴(yán)格次序的腳本執(zhí)行以及在接口命令違反嚴(yán)格次序啟用腳本的情況下終止腳本執(zhí)行并重新運(yùn)行與腳本執(zhí)行有關(guān)的任何改變。
2.根據(jù)權(quán)利要求1所述的存儲(chǔ)設(shè)備,其中所述安全命令集包括接口命令,所述接口命令包括從接口接收的命令或者將數(shù)據(jù)返回到接口的命令,并具有公知的輸出和輸入。
3.根據(jù)權(quán)利要求1所述的存儲(chǔ)設(shè)備,其中所述安全命令集還包括內(nèi)部命令和函數(shù),所述內(nèi)部命令和函數(shù)包括數(shù)據(jù)處理操作以及不能直接從接口命令調(diào)用并且不返回信息到接口的邏輯函數(shù)。
4.根據(jù)權(quán)利要求1所述的存儲(chǔ)設(shè)備,其中所述腳本解釋器包括由控制器使用的軟件應(yīng)用程序,用于處理存儲(chǔ)設(shè)備內(nèi)的腳本。
5.根據(jù)權(quán)利要求1所述的存儲(chǔ)設(shè)備,其中所述腳本解釋器適合于在存儲(chǔ)設(shè)備內(nèi)實(shí)施按嚴(yán)格局部次序的安全命令的執(zhí)行。
6.根據(jù)權(quán)利要求1所述的存儲(chǔ)設(shè)備,還包括控制器,位于存儲(chǔ)設(shè)備內(nèi)部,適合于控制至存儲(chǔ)介質(zhì)的訪問;以及在存儲(chǔ)介質(zhì)上的安全分區(qū),對(duì)安全分區(qū)的存取是由控制器嚴(yán)格控制的,其中所述安全命令集被存儲(chǔ)在安全分區(qū)內(nèi)并且其中控制器禁止對(duì)安全命令集未授權(quán)情況下的訪問。
7.一種用于在位于存儲(chǔ)子系統(tǒng)內(nèi)的處理器上處理腳本的方法,所述方法包括在存儲(chǔ)子系統(tǒng)的存儲(chǔ)介質(zhì)上提供安全命令集,所述安全命令集包括存儲(chǔ)子系統(tǒng)所適合于響應(yīng)的腳本和接口命令;利用存儲(chǔ)子系統(tǒng)內(nèi)的腳本解釋器檢驗(yàn)所接收的命令是否同安全命令集中的至少一個(gè)命令相匹配;以及如果接收的命令同命令集內(nèi)的任一命令均不匹配,那么利用腳本解釋器終止所接收的命令的執(zhí)行。
8.根據(jù)權(quán)利要求7所述的方法,其中如果所接收的命令與命令集中的一個(gè)命令相匹配,那么所述方法還包括從存儲(chǔ)介質(zhì)上的存儲(chǔ)單元加載與所接收的命令有關(guān)的腳本;以及利用腳本解釋器處理所加載的腳本。
9.根據(jù)權(quán)利要求8所述的方法,其中所述加載步驟還包括根據(jù)所加載的腳本通過要求一個(gè)或多個(gè)輸入?yún)?shù)的方式對(duì)所接收的命令施加期望;如果所接收的命令的輸入?yún)?shù)與一個(gè)或多個(gè)所需的輸入?yún)?shù)不相匹配,那么利用腳本解釋器終止腳本的執(zhí)行;以及如果所接收的命令的輸入?yún)?shù)不相匹配,那么重新運(yùn)行與腳本執(zhí)行有關(guān)的任何改變至在前腳本執(zhí)行狀態(tài)。
10.根據(jù)權(quán)利要求7所述的方法,還包括在事件記錄中存儲(chǔ)關(guān)于失敗命令執(zhí)行的記錄。
11.根據(jù)權(quán)利要求8所述的方法,其中所述處理步驟包括根據(jù)所加載的腳本執(zhí)行數(shù)據(jù)運(yùn)行和邏輯函數(shù)。
12.根據(jù)權(quán)利要求7所述的方法,其中所述腳本解釋器適合于實(shí)施由與所接收的命令相關(guān)的腳本所定義的嚴(yán)格命令序列。
13.根據(jù)權(quán)利要求12所述的方法,其中如果所接收的命令同命令集中的一個(gè)命令相匹配,那么所述方法還包括在檢測(cè)到對(duì)嚴(yán)格命令序列的違反的情況下終止命令的執(zhí)行或者與命令有關(guān)的腳本的執(zhí)行。
14.一種設(shè)置在存儲(chǔ)設(shè)備上用于處理的腳本處理系統(tǒng),所述腳本處理系統(tǒng)包括存儲(chǔ)介質(zhì);適合于往返于存儲(chǔ)介質(zhì)讀寫數(shù)據(jù)的讀/寫機(jī)制;定義嚴(yán)格的輸入命令期望集的允許命令集,所述允許命令集包括接口命令和內(nèi)部函數(shù);以及腳本解釋器,適合于執(zhí)行腳本并根據(jù)允許命令集實(shí)施嚴(yán)格的輸入命令期望集,所述腳本解釋器適合于在違反輸入命令期望的情況下終止腳本的執(zhí)行。
15.根據(jù)權(quán)利要求14所述的腳本處理系統(tǒng),其中所述腳本解釋器適合于倒轉(zhuǎn)與終止的腳本的腳本執(zhí)行有關(guān)的任何改變。
16.根據(jù)權(quán)利要求14所述的腳本處理系統(tǒng),其中所述腳本解釋器包括腳本解釋器軟件應(yīng)用程序,適合于處理存儲(chǔ)設(shè)備內(nèi)的腳本;以及微處理器,適合于加載腳本解釋器軟件應(yīng)用程序以及通過處理腳本的每個(gè)命令的方式阻止可允許命令集;其中如果所接收的命令與可允許命令集中的任一命令均不相匹配,那么腳本解釋器使腳本失敗。
17.根據(jù)權(quán)利要求14所述的腳本處理系統(tǒng),其中所述存儲(chǔ)介質(zhì)包括數(shù)據(jù)區(qū)域以及一個(gè)或多個(gè)安全分區(qū),其中對(duì)安全分區(qū)的存取是由存儲(chǔ)設(shè)備內(nèi)的控制器嚴(yán)格控制的,其中允許命令集被存儲(chǔ)在一個(gè)或多個(gè)安全分區(qū)中的至少一個(gè)安全分區(qū)內(nèi)的存儲(chǔ)介質(zhì)上。
18.根據(jù)權(quán)利要求14所述的腳本處理系統(tǒng),其中允許權(quán)利集還包括僅在腳本環(huán)境內(nèi)執(zhí)行的用于啟動(dòng)腳本執(zhí)行內(nèi)的邏輯操作的命令的子集。
19.根據(jù)權(quán)利要求18所述的腳本處理系統(tǒng),其中所述命令的子集包括用于根據(jù)兩個(gè)或更多同時(shí)的輸入做出判斷的條件轉(zhuǎn)移命令。
20.根據(jù)權(quán)利要求14所述的腳本處理系統(tǒng),其中允許命令集包括具有公知的輸入和輸出并用于執(zhí)行公知確定的操作的命令。
全文摘要
用于安全執(zhí)行腳本的具有加固安全特性的存儲(chǔ)設(shè)備具有存儲(chǔ)介質(zhì)、接口、安全命令集和腳本解釋器。所述接口適合于可通信地將存儲(chǔ)設(shè)備連接至主機(jī)系統(tǒng)以及在主機(jī)系統(tǒng)和存儲(chǔ)設(shè)備之間傳送接口命令和信息。所述安全命令集被存儲(chǔ)在存儲(chǔ)介質(zhì)上。所述腳本解釋器被設(shè)置在存儲(chǔ)設(shè)備內(nèi)用于根據(jù)一個(gè)或多個(gè)所接收的接口命令處理腳本。所述腳本解釋器適合于實(shí)施嚴(yán)格序列的腳本執(zhí)行以及在接口命令違反嚴(yán)格序列啟用腳本的情況下終止腳本執(zhí)行并重新運(yùn)行與腳本執(zhí)行有關(guān)的任何改變。
文檔編號(hào)G06F9/44GK1877525SQ20061010605
公開日2006年12月13日 申請(qǐng)日期2006年5月10日 優(yōu)先權(quán)日2005年5月10日
發(fā)明者R·H·泰巴德奧 申請(qǐng)人:西加特技術(shù)有限責(zé)任公司