欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于直接附接的存儲設(shè)備的會話的制作方法

文檔序號:6360496閱讀:235來源:國知局
專利名稱:用于直接附接的存儲設(shè)備的會話的制作方法
用于直接附接的存儲設(shè)備的會話
背景技術(shù)
客戶端直接附接的(direct attached)存儲協(xié)議的未充分開發(fā)的方面在于對發(fā)現(xiàn)的外部真實世界事件的任何記錄和通信。對于直接附接的存儲設(shè)備,諸如串行高級技術(shù)附件(SATA)設(shè)備、IEEE 1394設(shè)備和通用串行總線(USB)設(shè)備,包括但不限于硬盤驅(qū)動器(HDD)和固態(tài)驅(qū)動器(SSD),客戶端配置和使用包括頻繁的電力循環(huán)(power cycle)、分離和漫游。雖然目前設(shè)備能夠具有時鐘并且能夠跟蹤相對于開始它的電力循環(huán)的時間的時間推移,但是沒有機制用于主機和設(shè)備以同步當(dāng)前的時間。許多存儲設(shè)備(包括HDD和SSD)基于特定數(shù)量時間的推移而執(zhí)行定期媒體維護。雖然設(shè)備在電力循環(huán)之間可以處在無電力狀態(tài)一分鐘或一年,但是設(shè)備不能夠確定在它電力關(guān)閉期間經(jīng)過了多長時間。 主機感興趣的一種場景是發(fā)現(xiàn)兩個設(shè)備的分離,其構(gòu)成分離的緩存解決方案,該場景取決于直接附接的存儲設(shè)備至主機的重復(fù)連接。如果目標(biāo)存儲設(shè)備在沒有緩存設(shè)備的情況下被使用,或者如果在被返回至實現(xiàn)分離的緩存解決方案的主機之前緩存設(shè)備被使用在不同的主機上,則被劃分以包含來自目標(biāo)存儲設(shè)備的緩存數(shù)據(jù)的設(shè)備可能變得無效。主機可以進一步受益于發(fā)現(xiàn)間歇的設(shè)備故障。由于存儲設(shè)備是不可操作的,主存儲設(shè)備遭受間歇故障的主機不能夠記錄故障信息。主機可以受益于在復(fù)位之后發(fā)現(xiàn)來自存儲設(shè)備的故障信息。例如,來自存儲設(shè)備的故障信息可以弓I導(dǎo)主機去確定在主機和存儲設(shè)備之間的先前會話由于間歇的設(shè)備故障而過早地結(jié)束。當(dāng)前,不存在機制用以通過程序來關(guān)聯(lián)、共享和同步事件,或者管理在主機和設(shè)備之間的可操作的電力會話。

發(fā)明內(nèi)容
本發(fā)明內(nèi)容被提供以按照簡化的形式介紹概念的選擇,其將在下面的具體實施方式
中被進一步描述。本發(fā)明內(nèi)容的目的既不是確定所請求保護的主題的關(guān)鍵特征或者必要特征,也不是用來限制所請求保護的主題的范圍。在多個實施方式的一個方面,為主機提供了一種機制以便建立與用戶可移除的存儲設(shè)備之間的主機組件活動會話的開始和結(jié)束。存儲設(shè)備可以被主機引導(dǎo)(directed)以存儲關(guān)于與主機的活動會話的開始時間和結(jié)束時間的時間信息。通過將存儲的時間信息與先前存儲的時間信息相比較,存儲設(shè)備可以確定在電力會話之間經(jīng)過了多少時間。結(jié)果,存儲設(shè)備可以執(zhí)行動作,包括但不限于識別后臺管理操作應(yīng)當(dāng)在什么時間被執(zhí)行,確定在什么時間存儲設(shè)備在未與任何主機相關(guān)聯(lián)的情況下被上電,和當(dāng)存儲設(shè)備在未與任何主機相關(guān)聯(lián)的情況下被上電時執(zhí)行后臺管理操作。在多個實施方式的另一個方面中,存儲設(shè)備能夠記錄關(guān)于其與主機的關(guān)聯(lián)和主機對存儲設(shè)備的使用的歷史。結(jié)果,依賴能夠識別不中斷的關(guān)聯(lián)的跨度(即使跨過電力循環(huán))的場景變得可檢測。這允許主機進行優(yōu)化,包括但不限于即使在主機電力循環(huán)之后,繼續(xù)信任存儲在被用作緩存的存儲設(shè)備的介質(zhì)中的數(shù)據(jù),或者識別何時發(fā)生了意外的設(shè)備丟失或主機崩潰。


為了描述能夠獲得上面提及的和其它的優(yōu)勢和特征的方式,更詳細(xì)的描述在下面被討論,且將通過參照在附圖中圖示的具體實施方式
而呈現(xiàn)。應(yīng)當(dāng)理解這些圖僅描述典型的實施方式,因此不能認(rèn)為是對其范圍的限制,通過使用附圖,實現(xiàn)方式將被帶有附加的特異性和細(xì)節(jié)地描述和解釋。圖I是圖示了用于多個實施方式的示例性操作環(huán)境的功能框圖。圖2是圖示了用戶可移除的存儲設(shè)備的示例性實施方式的功能框圖。圖3圖示了多個計算設(shè)備組件,其具有互相排它的與用戶可移除地附接的存儲設(shè)備(user-removably attached storage device)的活動會話。 圖4是可以由計算設(shè)備和用戶可移除地附接的存儲設(shè)備執(zhí)行以生成和登記(register)組件標(biāo)識符的示例性過程的流程圖。圖5是向用戶可移除地附接的存儲設(shè)備登記組件標(biāo)識符的示例性過程的流程圖。圖6是向用戶可移除地附接的存儲設(shè)備登記一個或多個邏輯塊地址(LBA)范圍的示例性過程的流程圖。圖7是圖示了關(guān)于用戶可移除地附接的存儲設(shè)備從連接的計算設(shè)備接收開始會話命令的示例性處理的流程圖。圖8圖示了計算設(shè)備的多種計算設(shè)備組件開始和結(jié)束與用戶可移除地附接的存儲設(shè)備的會話。圖9是圖示了可以與處理關(guān)于對用戶可移除地附接的存儲設(shè)備的介質(zhì)的修改的查詢相關(guān)地被執(zhí)行的示例性過程的流程圖。圖10圖示了關(guān)于計算設(shè)備中驅(qū)動器堆棧的示例性分層。
具體實施例方式在下面詳細(xì)地討論具體實施方式
。雖然討論了特定實現(xiàn)方式,但是應(yīng)當(dāng)理解這僅是為了闡釋的目的而做出。相關(guān)領(lǐng)域技術(shù)人員將認(rèn)識到其它組件和配置也可以被使用,而不脫離本公開的主題的精神和范圍。綜述
在多個實施方式中,存儲設(shè)備被用戶可移除地附接至計算設(shè)備(主機),該存儲設(shè)備可以記錄關(guān)于計算設(shè)備組件與用戶可移除地附接的存儲設(shè)備的活動會話什么時候已經(jīng)開始和結(jié)束的時間的信息。組件可以表示主機操作系統(tǒng)組件(例如驅(qū)動器堆棧)以及預(yù)引導(dǎo)(preboot)環(huán)境組件(例如可擴展固件接口 EFI模塊)??梢詮挠嬎阍O(shè)備發(fā)送命令至用戶可移除地附接的存儲設(shè)備,以向用戶可移除地附接的存儲設(shè)備登記或注銷(unregister)計算設(shè)備組件。命令可以包括時間戳和指明登記命令或注銷命令的參數(shù)(argument)。用戶可移除地附接的存儲設(shè)備可以記錄開始會話時間戳和結(jié)束會話時間戳。用戶可移除地附接的存儲設(shè)備能夠識別控制用戶可移除地附接的存儲設(shè)備的計算設(shè)備(主機)組件,能夠識別相對于其它一些計算設(shè)備組件,哪些I/O來自于所識別的計算設(shè)備組件,還能夠識別用戶可移除地附接的存儲設(shè)備的介質(zhì)的哪些邏輯塊地址(LBA)與計算設(shè)備組件相關(guān)聯(lián),這樣只有對于敏感區(qū)域的修改被考慮。登記命令和注銷命令可以分別包括要向用戶可移除地附接的存儲設(shè)備登記或注銷的標(biāo)識符。該標(biāo)識符可以與計算設(shè)備組件相關(guān)聯(lián)。在向特定的用戶可移除地附接的存儲設(shè)備登記的所有標(biāo)識符的范圍中,每個登記的標(biāo)識符可以不同于所有其它登記的標(biāo)識符。在一些實施方式中,標(biāo)識符可以由計算設(shè)備的組件在運行時生成。在其它實施方式中,標(biāo)識符可以被編碼到計算系統(tǒng)的非易失性存儲器中。當(dāng)創(chuàng)建要與特定計算設(shè)備組件相關(guān)聯(lián)的標(biāo)識符時,計算設(shè)備可以向用戶可移除地附接的存儲設(shè)備查詢向用戶可移除地附接的存儲設(shè)備登記的標(biāo)識符,并可以創(chuàng)建與所登記的標(biāo)識符不同的標(biāo)識符。用戶可移除地附接的存儲設(shè)備可以識別在記錄會話開始的時間和記錄會話結(jié)束的時間之間發(fā)生的對于用戶可移除地附接的存儲設(shè)備的介質(zhì)的修改。用戶可移除地附接的存儲設(shè)備可以識別源自特定計算設(shè)備組件的修改。一種登記機制被提供,用以建立與特定計算設(shè)備組件(例如,如軟件組件或其它組件)相關(guān)聯(lián)的LBA的一個或多個范圍,可以由計算設(shè)備組件使用命令以向用戶可移除地附接 的存儲設(shè)備查詢來自相同計算設(shè)備或不同計算設(shè)備的任何其它計算設(shè)備組件對于登記的LBA范圍的任何修改的發(fā)生。查詢命令可以具有參數(shù),包括與計算設(shè)備組件關(guān)聯(lián)的標(biāo)識符,和被查詢的(多個)LBA范圍。查詢命令可以返回清潔(沒有其它計算設(shè)備組件修改給定的(多個)LBA范圍)或臟(至少一個其它計算設(shè)備組件修改了給定的(多個)LBA范圍或者另一個計算設(shè)備或虛擬計算設(shè)備的組件修改了給定的LBA范圍)的狀態(tài)。作為記錄會話開始和結(jié)束的結(jié)果,用戶可移除地附接的存儲設(shè)備可以向計算設(shè)備組件提供關(guān)于先前活動的會話由于例如復(fù)位命令或者在會話結(jié)束之前發(fā)生掉電而沒有恰當(dāng)?shù)臅捊Y(jié)束的通知。用戶可移除地附接的存儲設(shè)備可以響應(yīng)于登記命令或者單獨的查詢命令而提供該通知。與用戶可移除地附接的存儲設(shè)備的計算設(shè)備(主機)會話可以包括多個互相排它的活動計算設(shè)備組件,諸如例如基本輸入輸出系統(tǒng)(BIOS)、正常會話驅(qū)動器(Normalsession driver)、后操作驅(qū)動器(休眠(hibernate),崩潰轉(zhuǎn)儲(crashdump))或者其它計算設(shè)備組件。每個計算設(shè)備組件可以在活動時排它地使用設(shè)備。因此每個計算設(shè)備組件可以具有它自己的與用戶可移除地附接的存儲設(shè)備的活動會話。與用戶可移除地附接的存儲設(shè)備的會話可以包括從用戶可移除地附接的存儲設(shè)備開啟電源到關(guān)閉電源的全部時間。示例性計算設(shè)備
圖I是用于多個實施方式的示例性操作環(huán)境100的功能框圖。示例性操作環(huán)境100可以包括可以起到主機的作用的計算設(shè)備108和用戶可移除的存儲設(shè)備110。計算設(shè)備108可以包括處理器102、隨機存取存儲器(RAM) 104、只讀存儲器(ROM)和連接處理器102、RAM 104和ROM 106的通信總線112。處理器102可以包括一個或多個傳統(tǒng)的處理器,其解釋并執(zhí)行指令。存儲器可以包括RAM 104、ROM 106和/或另外一個類型的動態(tài)或靜態(tài)存儲設(shè)備,其存儲信息和由處理器102執(zhí)行的指令。RAM 104或者另外一個類型的動態(tài)存儲設(shè)備可以存儲指令以及臨時變量或在處理器102執(zhí)行指令期間使用的其它中間信息。ROM 106或者另外一個類型的靜態(tài)存儲設(shè)備可以為處理器102存儲靜態(tài)信息和指令。計算設(shè)備102可以響應(yīng)于處理器102執(zhí)行在非瞬態(tài)機器可讀介質(zhì)(諸如例如RAM104、ROM 106或其它非瞬態(tài)介質(zhì))中包含的指令序列而執(zhí)行功能。該指令可以從另一個非瞬態(tài)機器可讀介質(zhì)或者從分離的設(shè)備經(jīng)由通信接口(未示出)被讀入RAM 106。用戶可移除的存儲設(shè)備110可以被用戶可移除地附接至計算設(shè)備108,這樣處理器102和用戶可移除的存儲設(shè)備110可以經(jīng)由通信總線112彼此通信。示例性用戶可移除的存儲設(shè)備
圖2是示例性用戶可移除的存儲設(shè)備110的功能框圖。用戶可移除的存儲設(shè)備110可以包括處理器202、RAM 204,ROM 206、介質(zhì)208、非易失性存儲介質(zhì)210和連接處理器202、RAM 204、ROM 206、介質(zhì)208和非易失性存儲介質(zhì)210的通信總線212。處理器202可以包括一個或多個傳統(tǒng)的處理器,其解釋并執(zhí)行指令。存儲器可以包括RAM 204、ROM 206和/或另外一個類型的動態(tài)或靜態(tài)存儲設(shè)備,其存儲信息和由處理器202執(zhí)行的指令。RAM 204或者另外一個類型的動態(tài)存儲設(shè)備可以存儲指令以及臨時變 量或在處理器202執(zhí)行指令期間使用的其它中間信息。ROM 206或者另外一個類型的靜態(tài)存儲設(shè)備可以為處理器202存儲靜態(tài)信息和指令。介質(zhì)208可以包括閃存(flash) RAM、磁盤、光盤或其它用于存儲數(shù)據(jù)和/或指令的介質(zhì)。非易失性存儲介質(zhì)210可以包括能夠在電力循環(huán)期間自始至終保持所存儲的信息的非易失性介質(zhì)。在一些實施方式中,介質(zhì)208可以包括非易失性存儲介質(zhì)210。示例性實施方式 登記
圖3圖示了多個計算設(shè)備組件,具有互相排它的與用戶可移除地附接的存儲設(shè)備的活動會話。圖3中的多個計算設(shè)備組件包括基本輸入/輸出系統(tǒng)(BI0S)302、正常會話設(shè)備驅(qū)動器304、休眠驅(qū)動器306。每個與用戶可移除地附接的存儲設(shè)備的會話可以具有會話ID,通過該會話ID多個計算設(shè)備組件中的每一個和用戶可移除地附接的存儲設(shè)備可以識別特定的會話。圖4是當(dāng)計算設(shè)備組件嘗試生成和向可移除地附接的存儲設(shè)備登記新的組件標(biāo)識符時,可以由計算設(shè)備和用戶可移除地附接的存儲設(shè)備執(zhí)行的示例性過程的流程圖。該過程可以開始于計算設(shè)備組件生成組件標(biāo)識符,該組件標(biāo)識符將與計算設(shè)備組件相關(guān)聯(lián)(動作402)??商鎿Q地,組件標(biāo)識符可以是先前已存儲的。在一個實施方式中,組件標(biāo)識符可以被隨機地生成。然后計算設(shè)備組件可以發(fā)送查詢命令至用戶可移除地附接的存儲設(shè)備(動作404)。該查詢命令可以包括組件標(biāo)識符。然后用戶可移除地附接的存儲設(shè)備可以接收該查詢命令并確定在該查詢命令中包括的組件標(biāo)識符是否已經(jīng)向用戶可移除地附接的存儲設(shè)備登記(動作406)。如果用戶可移除地附接的存儲設(shè)備確定該組件標(biāo)識符已經(jīng)登記,則用戶可移除地附接的存儲設(shè)備返回指示至計算設(shè)備以指示該組件標(biāo)識符已經(jīng)登記,然后計算設(shè)備組件可以重復(fù)執(zhí)行動作402-406以生成新的組件標(biāo)識符并確定該新的組件標(biāo)識符是否已經(jīng)向用戶可移除地附接的存儲設(shè)備登記。如果用戶可移除地附接的存儲設(shè)備在動作406處確定組件標(biāo)識符沒有向用戶可移除地附接的存儲設(shè)備登記,則計算設(shè)備可以發(fā)送登記命令至用戶可移除地附接的存儲設(shè)備(動作408)。登記命令可以包括組件標(biāo)識符和登記標(biāo)識符。在一些實施方式中,登記標(biāo)識符可以包括時間信息,諸如例如對應(yīng)于計算設(shè)備的時間的時間戳,包括但不限于根據(jù)計算設(shè)備的當(dāng)前時間。在其它實施方式中,登記標(biāo)識符可以包括隨機生成的數(shù)字。用戶可移除地附接的存儲設(shè)備可以接收該登記命令并登記該組件標(biāo)識符和登記標(biāo)識符,并可以返回成功或失敗的指示至計算設(shè)備(動作408)。然后計算設(shè)備可以確定返回的指示(或者從用戶可移除地附接的存儲設(shè)備發(fā)送的指示)是否是成功指示。如果返回的指示是成功指示,則過程完成。否則,計算設(shè)備可以基于失敗指示的特定值而采取或執(zhí)行行動(動作412)。在一個實現(xiàn)方式中,所采取的行動可以包括再次重復(fù)動作408和410直到返回的指示是成功指示或者動作408和410已經(jīng)重復(fù)了給定的次數(shù)。在另一個實現(xiàn)方式中,采取的行動可以包括提供失敗指示給調(diào)用過程并返回至調(diào)用過程。圖5是圖示了在多個實施方式中在動作408 (圖4)期間執(zhí)行的示例性過程的流程圖。該過程可以開始于用戶可移除地附接的存儲設(shè)備確定在登記命令中包括的組件標(biāo)識符是否向用戶可移除地附接的存儲設(shè)備登記了(動作502)。用戶可移除地附接的存儲設(shè)備可以通過檢查該用戶可移除地附接的存儲設(shè)備的介質(zhì)或非易失性介質(zhì)而做出該確定。如果組件標(biāo)識符被確定為沒有向該用戶可移除地附接的存儲設(shè)備登記,則用戶可 移除地附接的存儲設(shè)備可以在該介質(zhì)或該非易失性介質(zhì)中記錄該組件標(biāo)識符(動作504)和登記標(biāo)識符(動作506)。然后用戶可移除地附接的存儲設(shè)備可以發(fā)送響應(yīng)至計算設(shè)備以指示成功登記(動作512)并且該過程可以完成。如果在動作502期間用戶可移除地附接的存儲設(shè)備確定在登記命令中包含的組件標(biāo)識符已經(jīng)向用戶可移除地附接的存儲設(shè)備登記,則用戶可移除地附接的存儲設(shè)備可以參考與登記的組件標(biāo)識符相關(guān)聯(lián)的所記錄的登記標(biāo)識符,并且可以確定所記錄的登記標(biāo)識符是否匹配在接收到的登記命令中包含的登記標(biāo)識符(動作508)。如果所記錄的登記標(biāo)識符匹配在接收到的登記命令中包含的登記標(biāo)識符,則用戶可移除地附接的存儲設(shè)備可以發(fā)送成功登記指示至計算設(shè)備(動作512),并且該過程可以完成。如果在動作508期間用戶可移除地附接的存儲設(shè)備確定所記錄的登記標(biāo)識符不匹配在接收到的登記命令中包含的登記標(biāo)記符,則用戶可移除地附接的存儲設(shè)備可以發(fā)送登記失敗指示至計算設(shè)備(動作512),并且該過程可以完成。在一些實施方式中,用戶可移除地附接的存儲設(shè)備的介質(zhì)的一個或多個邏輯塊地址(LBA)范圍可以關(guān)于組件標(biāo)識符被登記。多個登記的組件標(biāo)識符可以被登記為具有相應(yīng)的重疊LBA范圍。登記LBA范圍命令可以包括組件標(biāo)識符、登記標(biāo)識符和創(chuàng)建者簽名。創(chuàng)建者簽名可以指明一個或多個LBA范圍的特性,諸如例如新技術(shù)文件系統(tǒng)(NTFS)、微軟(MSFT)閃存緩存(flash cache)、Intel閃存緩存格式I、Intel閃存緩存格式A等。圖6是在一個實施方式中登記一個或多個LBA范圍的示例性過程的流程圖。該過程可以開始于用戶可移除地附接的存儲設(shè)備確定在從計算設(shè)備接收的登記LBA命令中包含的組件標(biāo)識符是否已經(jīng)向用戶可移除地附接的存儲設(shè)備登記(動作602)。在一些實施方式中,在接收命令以向用戶可移除地附接的存儲設(shè)備登記計算設(shè)備組件之后,登記一個或多個LBA范圍的命令可以被用戶可移除地附接的存儲設(shè)備接收。如果組件標(biāo)識符不是已經(jīng)登記,則用戶可移除地附接的存儲設(shè)備可以通過將該組件標(biāo)識符記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中來登記該組件標(biāo)識符(動作604)。在一些實施方式中,介質(zhì)可以是非易失性介質(zhì)。然后用戶可移除地附接的存儲設(shè)備可以將在登記LBA命令中包含的登記標(biāo)識符記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中(動作606)。接下來,用戶可移除地附接的存儲設(shè)備可以通過將一個或多個LBA范圍記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中來登記在登記LBA范圍命令中包含的一個或多個LBA范圍(動作610)。然后用戶可移除地附接的存儲設(shè)備可以發(fā)送指示至計算設(shè)備,以指示成功登記(動作612)。然后該過程可以完成。如果在動作602期間用戶可移除地附接的存儲設(shè)備確定組件標(biāo)識符被登記,則用戶可移除地附接的存儲設(shè)備可以確定在登記LBA命令中包含的登記標(biāo)識符是否匹配與在用戶可移除地附接的存儲設(shè)備中記錄的登記的組件標(biāo)識符相關(guān)聯(lián)的登記標(biāo)識符(動作608)。如果在登記LBA命令中包含的登記標(biāo)識符匹配與在用戶可移除地附接的存儲設(shè)備中記錄的登記的組件標(biāo)識符關(guān)聯(lián)的登記標(biāo)識符,則動作610和612可以如先前所描述的被執(zhí)行。然后該過程可以完成。如果在動作608期間用戶可移除地附接的存儲設(shè)備確定在登記LBA命令中包含的登記標(biāo)識符不匹配與用戶可移除地附接的存儲設(shè)備中記錄的登記的組件標(biāo)識符相關(guān)聯(lián) 的登記標(biāo)識符,則用戶可移除地附接的存儲設(shè)備可以發(fā)送指示至計算設(shè)備以指示登記失敗(動作614)。然后該過程可以完成。計算設(shè)備組件可以通過發(fā)送查詢登記的LBA范圍命令至用戶可移除地附接的存儲設(shè)備來向用戶可移除地附接的存儲設(shè)備查詢登記的LBA范圍。在接收到查詢登記的LBA范圍命令時,用戶可移除地附接的存儲設(shè)備可以確定是否有任何LBA范圍被登記,如果有,則可以將關(guān)于與用戶可移除地附接的存儲設(shè)備相關(guān)的所有登記的LBA范圍和相應(yīng)的在登記期間使用的創(chuàng)建者簽名的信息返回至計算設(shè)備。在一些實施方式中,如果LBA范圍被多次登記,則LBA范圍將與在每次登記期間使用的相應(yīng)的創(chuàng)建者簽名一起被多次地包括在來自用戶可移除地附接的存儲設(shè)備的查詢響應(yīng)中。會話管理
在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間的任何I/o發(fā)生之前,開始會話命令可以從計算設(shè)備組件被發(fā)送至用戶可移除地附接的存儲設(shè)備以開始它們之間的會話。在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間的最后的I/O之后,結(jié)束會話命令可以從計算設(shè)備組件被發(fā)送至用戶可移除地附接的存儲設(shè)備以結(jié)束在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間的會話。開始會話命令和結(jié)束會話命令可以包括主機組件標(biāo)識符、會話標(biāo)識符和時間戳。時間戳可以包括來自計算設(shè)備的時間信息。在一些實施方式中,會話標(biāo)識符可以包括來自計算設(shè)備的時間信息。響應(yīng)于接收開始會話命令或結(jié)束會話命令,用戶可移除地附接的存儲設(shè)備可以返回成功或失敗的指示至計算設(shè)備。圖7是圖示了在接收來自連接的計算設(shè)備的開始會話命令之后可以由用戶可移除地附接的存儲設(shè)備執(zhí)行的示例性處理的流程圖。該過程可以開始于用戶可移除地附接的存儲設(shè)備確定與在開始會話命令中包含的組件標(biāo)識符對應(yīng)的計算設(shè)備的組件是否已經(jīng)在會話中(動作702)。如果該組件不在會話中,則用戶可移除地附接的存儲設(shè)備可以將會話的開始、會話標(biāo)識符和關(guān)于會話開始時間的時間信息記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中(動作704)。然后用戶可移除地附接的存儲設(shè)備可以發(fā)送指示至計算設(shè)備以指示會話成功地開始(動作706)。然后該過程可以完成。
如果在動作702期間用戶可移除地附接的存儲設(shè)備確定組件在會話中,則用戶可移除地附接的存儲設(shè)備可以確定在開始會話命令中包含的會話標(biāo)識符是否匹配所記錄的會話的會話標(biāo)識符(動作708)。如果會話標(biāo)識符匹配,則用戶可移除地附接的存儲設(shè)備可以在介質(zhì)中將會話的結(jié)束和關(guān)于會話的結(jié)束時間的時間信息記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中(動作710)。然后用戶可移除地附接的存儲設(shè)備可以在介質(zhì)中將會話的開始和關(guān)于會話開始的時間信息記錄在用戶可移除地附接的存儲設(shè)備的介質(zhì)中(動作712)。用戶可移除地附接的存儲設(shè)備可以發(fā)送指示至計算設(shè)備以指示上一個會話不適當(dāng)?shù)亟Y(jié)束(動作714)。然后該過程可以完成。如果在動作708期間用戶可移除地附接的存儲設(shè)備確定在開始會話命令中包含的會話標(biāo)識符和所記錄的會話標(biāo)識符不匹配,則用戶可移除地附接的存儲設(shè)備可以發(fā)送失敗指示至計算設(shè)備以指示開始會話命令中的會話標(biāo)識符不匹配所記錄的會話標(biāo)識符(動作716)。在一些實施方式中,在接收到失敗指示之后,計算設(shè)備可以提供失敗指示至用戶或者可以覆蓋會話標(biāo)識符的設(shè)置。然后該過程可以完成。圖8圖示了在多種計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間的多個會 話的開始和結(jié)束。在發(fā)起與用戶可移除地附接的存儲設(shè)備的任何I/o之前,計算設(shè)備的BIOS組件可以發(fā)送開始會話命令802至用戶可移除地附接的存儲設(shè)備。然后在BIOS組件和用戶可移除地附接的存儲設(shè)備之間可以發(fā)生I/o。在BIOS組件和用戶可移除地附接的存儲設(shè)備之間的所有I/O活動已經(jīng)完成之后,BIOS組件可以發(fā)送結(jié)束會話命令804至用戶可移除地附接的存儲設(shè)備以結(jié)束該會話。在稍后的時間點,計算設(shè)備的正常驅(qū)動器組件可以發(fā)送開始會話命令806至用戶可移除地附接的存儲設(shè)備,此后才會在它們之間發(fā)生I/O活動。在正常驅(qū)動器組件和用戶可移除地附接的存儲設(shè)備之間的所有I/O活動已經(jīng)完成之后,正常驅(qū)動器組件可以發(fā)送結(jié)束會話命令808至用戶可移除地附接的存儲設(shè)備來結(jié)束會話。在稍后的某個時間,計算設(shè)備的休眠驅(qū)動器組件可以發(fā)送開始會話命令810至用戶可移除地附接的存儲設(shè)備,此后才會在它們之間發(fā)起I/O。然后在休眠驅(qū)動器組件和用戶可移除地附接的存儲設(shè)備之間可以發(fā)生I/o。在休眠驅(qū)動器組件和用戶可移除地附接的存儲設(shè)備之間的所有I/o活動已經(jīng)完成之后,休眠驅(qū)動器組件可以發(fā)送結(jié)束會話命令812至用戶可移除地附接的存儲設(shè)備以結(jié)束該會話。如能夠在圖8中看到的,開始會話命令和結(jié)束會話命令正常情況下圍繞著在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間的I/o活動。結(jié)果,異常的會話終止可以被用戶可移除地附接的存儲設(shè)備檢測到。例如,如果先前會話的開始沒有相應(yīng)的先前會話的結(jié)束,則先前會話是異常終止的。作為具體的例子,假設(shè)正常驅(qū)動器組件發(fā)送第一開始會話命令至用戶可移除地附接的存儲設(shè)備。在稍后的時間點,正常驅(qū)動器組件可以發(fā)送第二開始會話命令至用戶可移除地附接的存儲設(shè)備,而沒有發(fā)送居間的結(jié)束會話命令。當(dāng)兩個開始會話命令被接收到,而沒有居間的結(jié)束會話命令時,用戶可移除地附接的存儲設(shè)備可以確定發(fā)生了異常的會話終止。在一些實施方式中,計算設(shè)備組件可以發(fā)送查詢異常會話終止命令至用戶可移除地附接的存儲設(shè)備。用戶可移除地附接的存儲設(shè)備可以接收該查詢異常會話終止命令并確定是否已經(jīng)接收到兩個開始會話命令而沒有居間的結(jié)束會話命令。如果接收到兩個開始會話命令而沒有居間的結(jié)束會話命令,則用戶可移除地附接的存儲設(shè)備可以連同與該異常會話終止相關(guān)聯(lián)的組件標(biāo)識符一起發(fā)送異常會話終止指示至計算設(shè)備組件。如果用戶可移除地附接的存儲設(shè)備確定沒有出現(xiàn)其間沒有結(jié)束會話命令的兩個開始會話命令,則用戶可移除地附接的存儲設(shè)備可以發(fā)送無失敗指示至計算設(shè)備組件。在其它實施方式中,當(dāng)用戶可移除地附接的存儲設(shè)備接收開始會話命令時,可以自動地進行檢查以確定是否先前的開始會話命令被接收而沒有居間的結(jié)束會話命令。如果先前的開始會話命令被接收而沒有居間的結(jié)束會話命令,則用戶可移除地附接的存儲設(shè)備可以發(fā)送異常會話終止指示至計算設(shè)備。在計算設(shè)備組件從用戶可移除地附接的存儲設(shè)備接收異常會話終止指示之后,計算設(shè)備組件可以發(fā)送查詢失敗信息命令至用戶可移除地附接的存儲設(shè)備。響應(yīng)于接收到該查詢失敗信息命令,用戶可移除地附接的存儲設(shè)備可以獲得關(guān)于失敗的詳細(xì)信息,包括但不限于組件標(biāo)識符、會話標(biāo)識符、其間沒有結(jié)束會話命令的已經(jīng)被接收的第一開始會話命令和第二開始會話命令的時間戳。用戶可移除地附接的存儲設(shè)備然后發(fā)送該詳細(xì)信息至計 算設(shè)備組件。在其它實施方式中,附加的或不同的信息可以從用戶可移除地附接的存儲設(shè)備發(fā)送至計算設(shè)備組件,包括但不限于診斷信息和特定失敗碼。在多個實施方式中,計算設(shè)備組件可以發(fā)送命令至用戶可移除地附接的存儲設(shè)備以查詢自從上次會話結(jié)束以來對于用戶可移除地附接的存儲設(shè)備的介質(zhì)所作出的修改。圖9是圖示了可以由計算設(shè)備和用戶可移除地附接的存儲設(shè)備執(zhí)行的示例性過程的流程圖,該過程關(guān)于查詢自從上次會話結(jié)束以來對于用戶可移除地附接的存儲設(shè)備的介質(zhì)是否作出了修改的命令。該過程可以開始于計算設(shè)備發(fā)送源自計算設(shè)備組件的命令至用戶可移除地附接的存儲設(shè)備以查詢是否對于用戶可移除地附接的存儲設(shè)備的介質(zhì)作出了修改(動作902)。命令可以包括組件標(biāo)識符和用戶可移除地附接的存儲設(shè)備的介質(zhì)的一個或多個LBA范圍。在接收到該命令后,用戶可移除地附接的存儲設(shè)備可以確定一個或多個LBA范圍是否包括在所接收到的命令中(動作904)。如果沒有LBA范圍被包括在所接收到的命令中,則用戶可移除地附接的存儲設(shè)備可以確定介質(zhì)是否被相同計算設(shè)備或不同計算設(shè)備的任何其它計算設(shè)備組件修改了(動作906)。為了確定介質(zhì)是否被修改,用戶可移除地附接的存儲設(shè)備可以參考所記錄的關(guān)于與組件標(biāo)識符關(guān)聯(lián)的上次會話結(jié)束的信息,并可以確定在與組件標(biāo)識符關(guān)聯(lián)的上次會話結(jié)束之后是否建立了與任何其它計算設(shè)備組件相關(guān)聯(lián)的任何會話和/或用戶可移除地附接的存儲設(shè)備可以參照在介質(zhì)中記錄的信息,該信息指示是否任何其它計算設(shè)備組件修改了用戶可移除地附接的存儲設(shè)備的介質(zhì),如果是,還指示任何其它計算設(shè)備組件何時修改了用戶可移除地附接的存儲設(shè)備的介質(zhì)。記錄的信息可以包括組件標(biāo)識符、時間信息和一個或多個LBA范圍。如果用戶可移除地附接的存儲設(shè)備確定自從上次會話結(jié)束以來介質(zhì)已經(jīng)被修改,則用戶可移除地附接的存儲設(shè)備發(fā)送“臟(dirty)”指示至計算設(shè)備組件,指示自從上次會話結(jié)束以來在用戶可移除地附接的存儲設(shè)備的介質(zhì)中記錄的信息已經(jīng)被修改(動作912)。否則,用戶可移除地附接的存儲設(shè)備可以發(fā)送“清潔(clean)”指示至計算設(shè)備組件,指示自從上次會話結(jié)束以來在用戶可移除地附接的存儲設(shè)備的介質(zhì)中記錄的信息沒有被修改(動作908)。然后計算設(shè)備的計算設(shè)備組件可以根據(jù)接收到“臟”指示還是“清潔”指示來采取特定行動(動作910)。例如,如果接收到“臟”指示,計算設(shè)備可以呈現(xiàn)錯誤指示給計算設(shè)備的用戶,或者可以采取不同的行動。如果接收到“清潔”指示,計算設(shè)備可以采取行動,諸如例如信任用戶遠(yuǎn)程設(shè)備的介質(zhì)的內(nèi)容,或者可以采取不同的行動。如果在動作904期間用戶可移除地附接的存儲設(shè)備確定接收到的命令包括一個或多個LBA范圍,則用戶可移除地附接的存儲設(shè)備可以確定LBA范圍中的一個LBA范圍是否可能已經(jīng)被修改(動作914)。如果用戶可移除地附接的存儲設(shè)備確定LBA范圍可能已經(jīng)被修改,則用戶可移除地附接的存儲設(shè)備可以準(zhǔn)備發(fā)送臟指示至計算設(shè)備的計算設(shè)備組件以指示在上次會話結(jié)束之后在該LBA范圍內(nèi)存儲的信息可能已經(jīng)被修改(動作916)。否則,用戶可移除地附接的存儲設(shè)備可以準(zhǔn)備發(fā)送清潔指示至計算設(shè)備組件以指示自從上次會話結(jié)束以來在用戶可移除地附接的存儲設(shè)備的介質(zhì)的LBA范圍中記錄的信息沒有被修改(動作918)。在執(zhí)行動作916或動作918中的任一個之后,用戶可移除地附接的存儲設(shè)備可以確定接收到的命令是否包含另外的LBA范圍(動作920)。如果用戶可移除地附接的存儲設(shè)備確定接收到的命令包含另外的LBA范圍,則用戶可移除地附接的存儲設(shè)備可以執(zhí)行與該 另外的LBA范圍相關(guān)的動作914-920。否則,用戶可移除地附接的存儲設(shè)備可以發(fā)送用于一個或多個LBA范圍中的每一個的相應(yīng)的清潔和/或臟指示至計算設(shè)備的計算設(shè)備組件(動作922)。然后計算設(shè)備可以基于接收到的清潔和/或臟指示采取合適的行動(動作924)。在一些實施方式中,計算設(shè)備可以設(shè)置和校正用戶可移除地附接的存儲設(shè)備的時間信息。這可以通過計算設(shè)備發(fā)送設(shè)置和校正時間命令至用戶可移除地附接的存儲設(shè)備來完成。該設(shè)置和校正時間命令可以包含來自計算設(shè)備的時間信息。在一個實施方式中,時間信息可以被包含在設(shè)置和校正時間命令中包含的時間戳中。在接收了設(shè)置和校正時間命令后,用戶可移除地附接的存儲設(shè)備可以根據(jù)在該設(shè)置和校正時間命令中包含的時間信息來設(shè)置和校正用戶可移除地附接的存儲設(shè)備的時間信息。在成功地設(shè)置和校正時間信息后,用戶可移除地附接的存儲設(shè)備可以發(fā)送成功指示至計算設(shè)備。如果用戶可移除地附接的存儲設(shè)備不能夠成功地設(shè)置和校正時間信息,則用戶可移除地附接的存儲設(shè)備可以發(fā)送失敗指示至計算設(shè)備。在實現(xiàn)設(shè)置和校正時間命令的實施方式中,只有當(dāng)在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間建立了會話時,計算設(shè)備組件才可以發(fā)送設(shè)置和校正時間命令至用戶可移除地附接的存儲設(shè)備。在其它實施方式中,計算設(shè)備組件可以在任何時間發(fā)送設(shè)置和校正時間命令至用戶可移除地附接的存儲設(shè)備,無論在計算設(shè)備組件和用戶可移除地附接的存儲設(shè)備之間是否建立了會話。示例性實現(xiàn)方案
在計算設(shè)備上的一個示例性實現(xiàn)方案中,驅(qū)動器堆棧可以封裝上面關(guān)于計算設(shè)備所描述的實施方式。圖10圖示了關(guān)于驅(qū)動器堆棧的示例性分層。如圖10中所圖示的,驅(qū)動器堆棧1006可以位于文件系統(tǒng)層1004之下,文件系統(tǒng)層1004進一步位于端口堆棧1002之下。當(dāng)驅(qū)動器堆棧1006封裝該先前描述的關(guān)于計算設(shè)備的實施方式時,文件系統(tǒng)層1004和端口堆棧1002可以保持不知道對于驅(qū)動器堆棧1006中的驅(qū)動器做出的任何改變,以實現(xiàn)先前描述的實施方式。在一個示例性實現(xiàn)方案中,驅(qū)動器堆棧1006中的驅(qū)動器可以發(fā)現(xiàn)用戶可移除地附接的存儲設(shè)備是否能夠支持與計算設(shè)備的會話。在一個實施方式中,驅(qū)動器可以發(fā)送特定命令至用戶可移除地附接的存儲設(shè)備,并且作為響應(yīng),驅(qū)動器可以預(yù)計接收來自用戶可移除地附接的存儲設(shè)備的特定響應(yīng)。當(dāng)接收到特定響應(yīng)時,驅(qū)動器然后可以發(fā)現(xiàn)用戶可移除地附接的存儲設(shè)備支持與計算設(shè)備的會話。否則,驅(qū)動器可以發(fā)現(xiàn)用戶可移除地附接的存儲設(shè)備不支持與計算設(shè)備的會話。在其它實施方式中,驅(qū)動器可以經(jīng)由其它方法發(fā)現(xiàn)用戶可移除地附接的存儲設(shè)備是否支持與計算設(shè)備的會話。當(dāng)驅(qū)動器發(fā)現(xiàn)用戶可移除地附接的存儲設(shè)備能夠支持與計算設(shè)備的會話時,驅(qū)動器可以確定自從上次在計算設(shè)備和用戶可移除地附接的存儲設(shè)備之間的會話結(jié)束以來用戶可移除地附接的存儲設(shè)備的存儲介質(zhì)是否被修改。正如關(guān)于圖9的流程所描述的,驅(qū)動器可以確定自計算設(shè)備和用戶可移除地附接的存儲設(shè)備之間的上一次會話之后存儲介質(zhì)是否被修改。例如,在動作902 (圖9)中,驅(qū)動器可以發(fā)送關(guān)于對存儲介質(zhì)的修改的查詢至用戶可移除地附接的存儲設(shè)備。該查詢可以不包含關(guān)于存儲介質(zhì)的LBA范圍或者可以包括一個或多個LBA范圍。用戶可移除地附接的存儲設(shè)備可以確定對于存儲介質(zhì)的任何部分是否做出了任何修改(在查詢中沒有LBA范圍的情形中),或者對于存儲介質(zhì)的一個或多個范圍是否做出了修改(在查詢中有一個或多個LBA范圍的情形中)。 如果用戶可移除地附接的存儲設(shè)備確定做出了修改,則臟指示可以從用戶可移除地附接的存儲設(shè)備發(fā)送至驅(qū)動器。否則,用戶可移除地附接的存儲設(shè)備可以發(fā)送清潔指示至驅(qū)動器,如圖9中所圖示的。當(dāng)驅(qū)動器從用戶可移除地附接的存儲設(shè)備接收到清潔指示時,驅(qū)動器可以信任存儲介質(zhì)的內(nèi)容。否則,當(dāng)驅(qū)動器從用戶可移除地附接的存儲設(shè)備接收到臟指示時,驅(qū)動器不可以信任存儲介質(zhì)的內(nèi)容。進一步地,在一個示例性實現(xiàn)方案中,用戶可移除地附接的存儲設(shè)備可以檢測異常的會話終止,如先前所描述的,并且可以發(fā)送異常會話終止指示至驅(qū)動器堆棧1006中的驅(qū)動器。通過響應(yīng)于接收該異常會話終止指示發(fā)送查詢失敗命令至用戶可移除地附接的存儲設(shè)備,驅(qū)動器可以獲取關(guān)于異常會話終止的詳細(xì)信息。在一些實施方式中,驅(qū)動器可以發(fā)送查詢異常會話終止命令至用戶可移除地附接的存儲設(shè)備。響應(yīng)于接收該查詢異常會話終止命令,用戶可移除地附接的存儲設(shè)備可以發(fā)送指示是否檢測到異常的會話終止的響應(yīng)。另外,在一個示例性實現(xiàn)方案中,驅(qū)動器堆棧1006的一個或多個驅(qū)動器可以生成組件標(biāo)識符,查詢組件標(biāo)識符是否已經(jīng)向用戶附接的存儲設(shè)備登記,登記組件標(biāo)識符,以及開始和結(jié)束與用戶可移除地附接的存儲設(shè)備的會話,如在前所討論的。結(jié)論
多個實施方式被描述,其中用戶可移除地附接的存儲設(shè)備可以變得知道用戶可移除地附接的存儲設(shè)備關(guān)機后經(jīng)過的時間量。進一步地,在多個實施方式中,計算設(shè)備組件可以查詢用戶可移除地附接的存儲設(shè)備以確定相同計算設(shè)備或者不同計算設(shè)備的另一個計算設(shè)備組件是否已經(jīng)訪問了該用戶可移除地附接的存儲設(shè)備并可能已經(jīng)修改了用戶可移除地附接的存儲設(shè)備的介質(zhì)的內(nèi)容。另外,計算設(shè)備可以從發(fā)現(xiàn)來自用戶可移除地附接的存儲設(shè)備的失敗信息(包括但不限于異常的會話終止)中受益。雖然已經(jīng)用對于結(jié)構(gòu)特征和/或方法動作特定的語言描述了主題,但是應(yīng)該理解所附權(quán)利要求的主題不是必須限于上述特定特征或動作。相反,上述特定特征和動作是作為實現(xiàn)權(quán)利要求的示例形式而公開的。所述實施方式的其它配置是本公開的范圍的一部分。例如,在其它實施方式中,由過程執(zhí)行的動作的次序可以不同和/或可以包括附加的或其它動作。因此,是所附權(quán)利要求和它們的合法等效方案定義了實施方式,而不是所給出的 任何特定示例。
權(quán)利要求
1.一種用于管理在計算設(shè)備的組件和存儲設(shè)備之間的會話的方法,該方法包括 由存儲設(shè)備響應(yīng)于接收來自計算設(shè)備的查詢而確定自從在該組件和存儲設(shè)備之間的上次會話以來是否發(fā)生對存儲設(shè)備的介質(zhì)的修改,和 當(dāng)自從上次會話以來對于存儲設(shè)備的介質(zhì)的修改被確定為已經(jīng)發(fā)生時,由存儲設(shè)備向計算設(shè)備返回關(guān)于自從上次會話以來對于存儲設(shè)備的介質(zhì)的修改的發(fā)生的指示。
2.權(quán)利要求I的方法,其中 確定自從在該組件和存儲設(shè)備之間的上次會話以來是否發(fā)生對存儲設(shè)備的介質(zhì)的修改進一步包括 響應(yīng)于接收來自計算設(shè)備的查詢,確定自從在該組件和存儲設(shè)備之間的上次會話以來是否發(fā)生對于存儲設(shè)備的介質(zhì)的特定邏輯塊地址范圍中的任何地址的修改;和 返回關(guān)于自從上次會話以來對于存儲設(shè)備的介質(zhì)的修改的發(fā)生的指示進一步包括當(dāng)自從在該組件和存儲設(shè)備之間的上次會話以來對于存儲設(shè)備的介質(zhì)的特定邏輯塊地址范圍中的任何地址的修改被確定為已經(jīng)發(fā)生時,返回關(guān)于對于存儲設(shè)備的介質(zhì)的特定邏輯塊地址范圍中的任何地址的修改的發(fā)生的指示。
3.權(quán)利要求I的方法,進一步包括 由存儲設(shè)備基于記錄的會話數(shù)據(jù)確定是否發(fā)生在該組件和存儲設(shè)備之間的上次會話的異常終止;和 當(dāng)在組件和存儲設(shè)備之間的上次會話的異常終止被確定為已經(jīng)發(fā)生時,返回第二指示至計算設(shè)備,該第二指示關(guān)于在該組件和存儲設(shè)備之間的上次會話的異常終止的發(fā)生。
4.權(quán)利要求I的方法,進一步包括 由存儲設(shè)備響應(yīng)于從計算設(shè)備接收關(guān)于設(shè)置和校正時間的命令,設(shè)置和校正時間。
5.權(quán)利要求I的方法,進一步包括 由存儲設(shè)備從計算設(shè)備接收開始會話命令,該開始會話命令包含相應(yīng)于計算設(shè)備的組件的標(biāo)識符; 由存儲設(shè)備確定組件是否已經(jīng)在與存儲設(shè)備的會話中;和 當(dāng)所述確定步驟確定組件沒有已經(jīng)在與存儲設(shè)備的會話中時,執(zhí)行 由存儲設(shè)備記錄在存儲設(shè)備的組件和存儲設(shè)備之間的新會話的開始,和 從存儲設(shè)備向計算設(shè)備返回請求成功的指示。
6.權(quán)利要求5的方法,進一步包括 當(dāng)所述確定步驟確定組件已經(jīng)在與存儲設(shè)備的會話中時,執(zhí)行 確定在開始會話命令中包含的會話標(biāo)識符是否匹配記錄的會話標(biāo)識符,和 當(dāng)開始會話命令中包含的會話標(biāo)識符匹配記錄的會話標(biāo)識符時,執(zhí)行 由存儲設(shè)備記錄和結(jié)束會話,和 由存儲設(shè)備記錄在計算設(shè)備的組件和存儲設(shè)備之間的新會話的開始。
7.權(quán)利要求I的方法,進一步包括 由存儲設(shè)備從計算設(shè)備接收登記命令; 由存儲設(shè)備確定在接收到的登記命令中包含的組件標(biāo)識符是否已經(jīng)向存儲設(shè)備登記; 當(dāng)組件標(biāo)識符被確定為沒有向存儲設(shè)備登記時,由存儲設(shè)備執(zhí)行由存儲設(shè)備登記該組件標(biāo)識符,和 由存儲設(shè)備記錄在接收到的登記命令中包含的登記標(biāo)識符。
8.權(quán)利要求7的方法,其中登記標(biāo)識符是基于來自組件的時間信息的。
9.一種存儲設(shè)備,被配置為用戶可移除地附接至計算設(shè)備,該存儲設(shè)備包含指令,用于存儲設(shè)備的處理器執(zhí)行方法,該方法包括 從計算設(shè)備接收包含組件標(biāo)識符的登記命令, 響應(yīng)于接收登記命令,確定組件標(biāo)識符是否已經(jīng)向存儲設(shè)備登記; 當(dāng)組件標(biāo)識符被確定為沒有向存儲設(shè)備登記時,執(zhí)行 向存儲設(shè)備登記該組件標(biāo)識符,該組件標(biāo)識符相應(yīng)于計算設(shè)備的組件, 記錄在登記命令中包含的登記標(biāo)識符,和 提供成功登記的指示至計算設(shè)備;和 當(dāng)組件標(biāo)識符被確定為已向存儲設(shè)備登記時,執(zhí)行 確定在登記命令中包含的登記標(biāo)識符是否匹配先前記錄的登記標(biāo)識符,和 當(dāng)在登記命令中包含的登記標(biāo)識符被確定為匹配先前記錄的登記標(biāo)識符時,執(zhí)行 提供成功登記的指示至計算設(shè)備。
10.權(quán)利要求9的存儲設(shè)備,其中該方法進一步包括 接收第二命令,第二命令包含關(guān)于存儲設(shè)備的至少一個登記的邏輯塊地址范圍的查詢;和 響應(yīng)于接收到的查詢,通過指示至少一個登記的邏輯塊地址范圍的信息和被用于登記該至少一個登記的邏輯塊地址范圍的創(chuàng)建者簽名來響應(yīng)。
11.權(quán)利要求9的存儲設(shè)備,其中該方法進一步包括 響應(yīng)于從組件接收關(guān)于會話的輸出活動的結(jié)束的指示,在會話數(shù)據(jù)中記錄關(guān)于在存儲設(shè)備和計算設(shè)備之間的會話的結(jié)束的時間信息;和 當(dāng)基于記錄的會話數(shù)據(jù)檢測到異常的會話終止時,提供異常會話終止的指示。
12.權(quán)利要求11的存儲設(shè)備,其中該方法進一步包括 當(dāng)記錄的會話數(shù)據(jù)指示在組件和存儲設(shè)備之間先前會話的開始之后是在組件和存儲設(shè)備之間的下一個會話的開始,而沒有居間的記錄的先前會話的結(jié)束時,檢測異常的會話終止。
13.權(quán)利要求9的存儲設(shè)備,其中 登記命令包含關(guān)于存儲設(shè)備的介質(zhì)的邏輯塊地址范圍,并且 該方法進一步包括 確定自從在組件和存儲設(shè)備之間的上次會話以來是否發(fā)生對于介質(zhì)的邏輯塊地址范圍中的任何地址的修改,和 作為確定發(fā)生了對介質(zhì)的邏輯塊地址范圍中的任何地址的修改的結(jié)果,提供自從在組件和存儲設(shè)備之間的上次會話以來發(fā)生了對于存儲設(shè)備的介質(zhì)的邏輯塊地址范圍中的任何地址的修改的指示。
14.權(quán)利要求9的存儲設(shè)備,其中該方法進一步包括 從計算設(shè)備接收包含第二標(biāo)識符的查詢; 確定第二標(biāo)識符是否已經(jīng)向存儲設(shè)備登記;當(dāng)?shù)诙?biāo)識符被確定為已向存儲設(shè)備登記時,向計算設(shè)備返回第二標(biāo)識符已經(jīng)被登記的指不;和 當(dāng)?shù)诙?biāo)識符被確定為沒有向存儲設(shè)備 登記時,向計算設(shè)備返回第二標(biāo)識符沒有被登記的指示。
15.一種計算設(shè)備,包括 至少一個處理器;和 連接至該至少一個處理器的存儲器,該存儲器包括指令,供計算設(shè)備的至少一個處理器用以執(zhí)行根據(jù)權(quán)利要求1-8中的任意一項的方法。
全文摘要
提供了一種機制和存儲設(shè)備以向用戶可移除地附接的存儲設(shè)備登記計算設(shè)備的組件,以及管理在組件和存儲設(shè)備之間的會話。存儲設(shè)備可以記錄關(guān)于與組件的活動會話的開始和結(jié)束的時間信息。存儲設(shè)備可以確定自從與組件的上次會話以來,由組件登記的存儲設(shè)備介質(zhì)的至少一個邏輯塊地址范圍是否已經(jīng)被不同的組件修改。當(dāng)存儲設(shè)備向組件指示自從上次會話以來該介質(zhì)的至少一個邏輯塊地址范圍沒有被修改時,組件可以信任介質(zhì)的內(nèi)容。計算設(shè)備可以提供時間信息給存儲設(shè)備,這樣存儲設(shè)備可以確定是否要執(zhí)行管理操作。
文檔編號G06F3/06GK102884513SQ201180024729
公開日2013年1月16日 申請日期2011年5月11日 優(yōu)先權(quán)日2010年5月18日
發(fā)明者N.S.奧布爾, V.薩多夫斯基 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
虎林市| 思南县| 大新县| 罗定市| 遵义市| 黑河市| 沭阳县| 扎赉特旗| 巩留县| 建始县| 屯留县| 宜宾县| 岢岚县| 集贤县| 新密市| 三原县| 阿瓦提县| 临朐县| 平阳县| 宜兰市| 米泉市| 读书| 珠海市| 宜阳县| 特克斯县| 博野县| 上蔡县| 五河县| 林西县| 白玉县| 抚顺市| 长宁县| 尼玛县| 怀来县| 清苑县| 阿合奇县| 林周县| 沅陵县| 安图县| 岗巴县| 宁河县|