專利名稱:安全可移動介質驅動器的制作方法
安全可移動介質驅動器背景計算機經常讀和/或寫數據到可移動介質??梢苿咏橘|的例子包括 但不限于例如軟盤、磁帶、可移動硬盤驅動器的磁性介質,以及例如致密盤(CD)或數字視頻盤(DVD)的光學介質??梢苿咏橘|通常插 入到通信耦合至計算機的"驅動器"。計算機與驅動器通信,從而讀寫 數據到插入該驅動器的可移動介質。通常,計算機用戶能夠通過至少兩種方式使可移動介質從驅動器 彈出。在一種方式中,用戶與在計算機上執(zhí)行的軟件(例如,通過由 在計算機上執(zhí)行的操作系統(tǒng)提供的圖形用戶接口 )互動,從而請求從 驅動器彈出插入物。這種互動在此稱為"彈出請求"。計算機確定此時從驅動器彈出該可移動介質是否恰當。如果此時彈出插入物是恰當的, 則計算機發(fā)送命令(此處也稱為"彈出命令")到驅動器,該命令致使 驅動器彈出插入物。在一個例子中,當計算機接收彈出請求而計算機 正在對插入物執(zhí)行輸入/輸出操作時,則計算機等待該輸入/輸出操作完 成,然后發(fā)送彈出命令到驅動器以彈出可移動介質。該彈出操作在此 也稱為"軟件彈出"或"軟彈出"。計算機的用戶能夠使可移動介質從驅動器彈出的另一種方式是通 過啟動位于驅動器本身上的"彈出按鈕"。在一個實施例中,當用戶啟 動該彈出按鈕時,驅動發(fā)送彈出請求到計算機。計算機接收彈出請求 并確定此時從驅動器彈出該可移動介質是否恰當。如果此時彈出插入 物是恰當的,則計算機發(fā)送彈出命令到驅動器,該彈出命令致使驅動 器彈出插入物。在另一實施例中,該彈出按鈕包括"緊急彈出,,按鈕, 該按鈕被啟動時使驅動器彈出插入該驅動器的任何可移動介質,而不 與該驅動器所通信耦合至的任何計算機"協(xié)商"且不管任何這些計算機 的狀態(tài)。然而,通常這些驅動單元不包含減小插入的介質從該驅動器被強 制移除可能性的任何機構。此外,通常,任何緊急彈出按鈕是位于驅 動器上(例如,位于驅動器前表面上),使得當驅動器通信耦合至計算 機時,用戶可以啟動該緊急彈出按鈕。在該驅動器所通信耦合至的計算機不允許驅動器彈出插入物的情形下(例如,當輸入/輸出操作仍在 執(zhí)行或者當在計算機上實施的安全策略不容許用戶彈出插入物時),任 何該計算機通常無法防止可移動介質被強行移除或者防止使用緊急彈 出按鈕從驅動器彈出可移動介質。
圖1為依據本發(fā)明的計算機的一個示例性實施例的高級方框圖。圖2為依據本發(fā)明的安全可移動介質驅動器的一個示例性實施例 的高級方框圖。圖3A至3B為依據本發(fā)明的圖2的安全可移動介質驅動器的一個 示例性實施例的透^見圖。圖4為依據本發(fā)明的安全可移動介質驅動器控制方法的一個示例 性實施例的流程圖。圖5為依據本發(fā)明的安全可移動介質驅動器的一個示例性實施例 的高級方框圖。各附圖中相同的參考標記表示相同的部件。發(fā)明詳述圖1為計算機100的一個示例性實施例的高級方框圖。在一個實 施中,計算機100包括便攜計算機。在其它實施和實施例中,計算機 100以其它方式實施,例如,實施為服務器計算機或臺式計算機。計算 機100包括至少一個中央處理器(CPU)102用于執(zhí)行軟件104。在CPU 102上執(zhí)行的軟件104執(zhí)行至少一些處理,這些處理在此被描述成是由 計算機100執(zhí)行。在圖l所示實施例中,CPU 102執(zhí)行的軟件104包括 操作系統(tǒng)108以及一個或多個應用程序110。軟件104包括程序指令, 這些程序指令實施在一件或多件計算機可讀取介質上(例如,計算機 100本地的硬盤驅動器和/或通過例如局域網的網絡來訪問的諸如文件 服務器的共享介質)。計算機100還包括存儲器106,至少部分軟件104 (和相關數據結 構)在由CPU 102執(zhí)行過程中存儲在該存儲器106內。存儲器106包 括現(xiàn)在已知或者以后研發(fā)的任何合適存儲器,例如隨機存取存儲器 (RAM)、只讀存儲器(ROM)、和/或CPU102內的寄存器。在圖l所示實施例中,用于從計算機100的用戶接收輸入的一個 或多個輸入裝置112通信耦合至計算機100。在一個實施中,輸入裝置 112包括鍵盤和指示裝置(例如鼠標或跟蹤球)。在圖l所示實施例中, 用于顯示輸出給用戶的至少一個顯示裝置114 (例如計算機監(jiān)視器)通 信耦合至計算機100。在其它實施例和實施中, 一個或多個輸入裝置 112和/或顯示裝置114包含在計算機100內(例如,計算機100包含便_攜計算機的情形)。計算機100還包括驅動器架116,安全可移動介質驅動器118插入 該驅動器架116。在圖1所示實施例中,驅動器118可以從驅動器架116 移除。計算機100還包括驅動器接口 120,在驅動器118插入驅動器架 116時,將安全可移動介質驅動器118通信耦合至計算機100 (及其其 它部件)。 一件或多件可移動介質可以插入安全可移動介質驅動器118。 驅動器118能夠對插入驅動器118的每件可移動介質讀寫數據。在圖1 所示實施例中,操作系統(tǒng)108包括一個或多個驅動器122,該驅動器 122控制驅動器118的操作并提供軟件接口 ,在CPU 102上執(zhí)行的軟件 104可以通過該軟件接口對插入驅動器118的可移動介質讀寫數據。例 如,在一個實施中,安全可移動介質驅動器118包含例如CD和/或DVD 驅動器的光學驅動器,驅動器接口 120包含AT附件包接口 (ATAPI) 或小型計算機系統(tǒng)接口 (SCSI)接口,用于將光學驅動器通信耦合至 計算機IOO(及其其它部件)。在其它實施和實施例中,使用其它類型 的驅動器118(例如,軟盤驅動器、可移動硬盤驅動器、磁帶驅動器或 ZIP驅動器)和/或驅動器接口 120 (例如,智能驅動器電路(IDE)、 通用串行總線(USB)、或者IEEE 1394(也稱為"FIREWIRE")接口 )。計算機100各種部件使用例如總線、端口等的恰當接口而相互通 信耦合。圖2為安全可移動介質驅動器118的一個實施例的高級方框圖。 圖2所示安全可移動介質驅動器118在此描述為被實施用于圖1的計算 機100,不過其它實施例以其它方式實施。驅動器118包含介質支架202, 該介質支架202物理上支持插入驅動器118的一件或多件可移動介質。 在圖2所示具體實施例中, 一次可將一件可移動介質201插入驅動器 118 (不過其它實施例支持多件可移動介質)。在這種實施例中,驅動 器118還包括形成于驅動器118的前面板206內的插槽204 (在此也稱為"介質槽")??梢苿咏橘|201在插入驅動器118時以及從驅動器118 彈出時,穿過該插槽204。驅動器118還包括一個或多個介質接口 208,該介質接口 208從插 入驅動器118的相應介質201物理讀取數據或向相應介質201物理寫入 數據。在圖2所示具體實施例中,驅動器118包括一個介質接口 208。 驅動器118還包括馬達210,該馬達210用于定位插入的可移動介質 201,使得介質接口 208能夠對插入物上的具體位置讀寫數據。在支持 光盤(例如,致密盤和/或數字視頻盤)的驅動器118的一種實施中, 介質支架202包括其上放置光盤的托架。在這種實施中,介質接口 208 包括光學接口 (例如,包括發(fā)光二極管和/或光電探測器),且馬達210 包括,在讀寫操作時旋轉光盤的馬達,從而定位光盤的恰當部分以由 光學接口讀取或寫入。驅動器118還包括計算機接口 212,在驅動器118插入計算機100 的驅動器架116時,將驅動器118通信耦合至計算機100 (及其其它部 件)。計算機接口 212包括接口,該接口與驅動器118所耦合至的計算 機IOO中包含的驅動器接口 120兼容(匹配)。例如,在驅動器118支 持光盤的一種實施中,計算機接口 212包括ATAPI或SCSI接口,用 于將光學驅動器通信耦合至計算機(及其其它部件)。在其它實施和實 施例中,使用其它類型的計算機接口 212 (例如,IDE、 USB或者 FIREWIRE接口 )。驅動器118還包括機械耦合至介質支架202的介質彈出器214,用 于將插入驅動器118的每件可移動介質201從驅動器118彈出。在圖2 所示具體實施例中,介質彈出器214包括彈簧215,該彈簧215在可移 動介質201插入驅動器118時被介質支架202壓縮(或者其它方式負 荷)。介質彈出器214還包括彈簧銷217,該彈簧銷217在可移動介質 201被完i插入驅動器118時將彈簧215保持在完全壓縮狀態(tài)。介質彈 出器214還包括通信耦合至驅動器訪問控制器224 (下述)的換能器 219。當控制電壓施加到換能器219,同時可移動介質插入驅動器118 時,換能器219移動彈簧銷217從而釋放彈簧215。彈簧215不被壓縮 時,彈簧215移動介質支架202 (以及其上插入的可移動介質201)穿 過插槽204,從而從驅動器118彈出插入物。在其它實施例中,介質彈 出器214通過其它方式與介質支架202和/或插入的可移動介質201互動,從而彈出插入的可移動介質201。驅動器118還包括鎖216(此處也稱為"硬件"鎖或"物理"鎖216)。 鎖216用于將插入的可移動介質201物理地鎖在驅動器118內。也就是 說,在鎖216處于鎖定狀態(tài)下,鎖216防止插入的可移動介質201從驅 動器118彈出(或者其它方式移除)。當鎖216處于解鎖狀態(tài)時,插入 驅動器118的可移動介質201可以從驅動器118彈出。在圖2所示具體 實施例中,鎖216包括電磁鎖(solenoid lock),其中螺線管218用于當 鎖216處于鎖定狀態(tài)時將螺栓220移動到鎖定位置,以及當鎖216處于 解鎖狀態(tài)時將螺栓220移動到解鎖位置。當螺栓220處于鎖定位置時, 螺栓220防止可移動介質201從驅動器118彈出或其它方式移斷例如, 通過物理地阻擋插入物和/或物理介質支架202穿過介質插槽204,和/ 或物理地防止介質彈出器214致使插入物和/或物理介質支架202穿過 介質插槽204)。當螺栓220處于解鎖位置時,螺栓220不防止可移動 介質201從驅動器118彈出,這種情況下介質彈出器214能夠從驅動器 118彈出插入物。驅動器118還包括驅動器訪問控制器224。驅動器訪問控制器224 通信耦合至計算機接口 212,使得驅動器訪問控制器224能夠與該驅動 器118所通信耦合至的任何計算機100通信。驅動器訪問控制器224 控制鎖216和介質彈出器214。在圖2所示實施例中,驅動器訪問控制 器224使用可編程處理器225和存儲器227來實施。此處描述成由驅動 器訪問控制器224執(zhí)行的功能的至少一部分,是通過使用恰當的程序 指令編程該可編程處理器225而實施的。通常,由可編程處理器225 執(zhí)行的程序指令的一部分以及該程序指令在執(zhí)行過程中使用的一個或 多個數據結構存儲于存儲器227內。在一個實施例中,存儲器227包 括現(xiàn)在已知或者以后研發(fā)的任何合適形式的存儲器,例如隨機存取存 儲器(RAM)、只讀存儲器(ROM)以及處理器寄存器。在其它實施 例中,驅動器訪問控制器224以其它方式實施(例如,使用其它類型 的可編程裝置、離散邏輯元件和/或專用集成電路)。驅動器118還包括用戶可訪問彈出開關228。用戶可訪問彈出開關 228位于,當驅動器118通信耦合至計算機100時(例如,當驅動器118 插入計算機100的驅動器架116時),驅動器118的用戶物理上可訪問 的位置。在圖2所示實施例中,用戶可訪問彈出開關228位于驅動器118的前面板206上。通過啟動用戶可訪問彈出開關228,驅動器118 的用戶可以請求從驅動器118彈出該可移動介質??梢苿咏橘|201插入 驅動器118且用戶啟動用戶可訪問彈出開關228時,如果驅動器118 不是"鎖定"的(即,如果鎖216處于解鎖狀態(tài)),則驅動器118彈出插 入物。當用戶可訪問彈出開關228被啟動時,如果驅動器118不是鎖定 的,則驅動器118彈出插入物而不首先與計算機100 (以及在其上執(zhí)行 的軟件104)交互。在圖2所示的實施例中,用戶可訪問彈出開關228 通信耦合至驅動器訪問控制器224,驅動器訪問控制器224判定彈出插 入的可移動介質201是否恰當(也就是說,鎖216是處于鎖定狀態(tài)還 是解鎖狀態(tài))。驅動器118還包括緊急彈出機構230,用于從驅動器118機械地彈 出插入物201,而不管驅動器118是鎖定還是解鎖。緊急彈出機構230 包括用戶接口 232 (此處也稱為"緊急彈出用戶接口"232),驅動器118 的用戶通過該用戶接口 232可以訪問該緊急彈出機構230。緊急彈出用 戶接口 232位于,當驅動器118通信耦合至計算機100時(例如,當驅 動器118插入計算機100的驅動器架116時),驅動器118的用戶無法 訪問的位置。在圖2所示實施例中,緊急彈出用戶接口 232位于驅動 器118的表面234上,當驅動器118插入計算機100的驅動器架116時 該表面234置于驅動器架116的內部。表面234在此也稱為"內表 面,,234。在圖2所示實施例中,計算機接口 212還位于驅動器118的一 個內表面234上。在一個實施中,緊急彈出用戶接口 232包括孔236,該孔236形成 于緊急彈tt!用戶接口 232所在的內表面234中。當驅動器118從計算機 100的驅動器架116移除時,驅動器118的用戶可以將桿(或其它剛性 件)插入孔236。在這種實施中,緊急彈出用戶接口 232還包括杠桿 238,該杠桿238接收插入該孔的桿,并引導施加到桿的力以將鎖216 的螺栓220移動到解鎖位置(如果鎖216鎖定)以及移動介質彈出器 214的彈簧銷217從而釋放介質彈出器214的彈簧215。釋放彈簧215 則致使彈簧215移動介質支架202和插入的介質201穿過插槽204。在 其它實施例和實施中,緊急彈出機構230和緊急彈出用戶接口 232以 其它方式實施。圖3A至3B為圖2的安全可移動介質驅動器118的一個實施例的透視圖。圖3A說明驅動器118的一個實施例,其中驅動器118沒有插 入(或以其它方式通信耦合至)計算機。圖3B示出驅動器118的一個 實施例,其中驅動器118插入圖1的計算機100的一個實施例的驅動器 架116中。在圖3A至3B所示的具體實施例中,驅動器118支持光盤。 如圖3A所示,驅動器118包括托架形式的介質支架202,介質支架202 移入和移出前面板206的介質插槽204。用戶可訪問彈出開關228位于 前面板206上(即,在驅動器118上的用戶可訪問位置)。此外,如圖 3A所示,圖3A所示的驅動器118包括位于驅動器118的內表面234 上的緊急彈出用戶接口 232。更具體而言,緊急彈出用戶接口 232包括 形成于該內表面234上的孔236。當驅動器118插入計算機100的驅動 器架116時(如圖3B所示),用戶無法訪問緊急彈出用戶接口 232。為 了使用戶能夠訪問緊急彈出用戶接口 232,驅動器118從計算機100的 驅動器架116移除。在其它實施和實施例中,安全可移動介質驅動器118以其它方式 實施。在一個備選實施例中,每件可移動介質包含可移動硬盤??梢?動硬盤包括磁性介質的多個旋轉圓形磁盤片,旋轉該圓形磁盤片的 一個或多個馬達,以及對該圓形磁盤片讀寫數據的一個或多個介質接 口。在該實施例中,驅動器118無需包括馬達和介質接口,因為該功 能包含在每個可移動硬盤內。圖4為控制安全可移動介質驅動器118的方法400的一個實施例 的流程圖。圖4的方法400在此描述成使用圖2的驅動器118來實施, 不過其它實施例以其它方式實施。在圖4所示實施例中,方法400的 部分處理(與區(qū)塊402至420相關聯(lián)的處理)是由驅動器訪問控制器 224執(zhí)行。當驅動器訪問控制器224從計算機IOO接收指示驅動器118應鎖 定的信息時(在區(qū)塊402檢查),驅動器訪問控制器224"鎖定"驅動器 118(區(qū)塊404)。當驅動器訪問控制器224從計算機100接收指示驅動 器118應解鎖的信息時(在區(qū)塊406檢查),驅動器訪問控制器224"解 鎖"驅動器118(區(qū)塊408)。在這種實施例的一個實施中,在驅動器118 所通信耦合至的計算機100上執(zhí)行的驅動器122發(fā)送"鎖定命令"到驅 動器118以鎖定驅動器118,且驅動器122發(fā)送"解鎖命令"到驅動器118 以解鎖驅動器118。驅動器122通過驅動器接口 120發(fā)送鎖定命令和解鎖命令到驅動器118,驅動器118的驅動器訪問控制器224通過計算機 接口 212接收該鎖定命令和解鎖命令。驅動器訪問控制器224通過激 勵鎖216的螺線管218來鎖定驅動器118,從而將螺栓220移動到鎖定 位置,這防止插入的可移動介質201從驅動器118彈出。驅動器訪問控 制器224通過激勵鎖216的螺線管218來解鎖驅動器118,從而將螺栓 220移動到解鎖位置,使得螺栓220不阻止插入的可移動介質201從驅 動器118彈出。在其它實施例中,驅動器118以其它方式鎖定和解鎖。在一個這種實施中,操作系統(tǒng)108支持多個用戶,其中每次僅一 個用戶能夠本地登錄計算機IOO。在這種實施中,操作系統(tǒng)108支持這 樣的安全策略,其中僅特定用戶具有足夠訪問權限,通過執(zhí)行軟彈出 或者安全硬彈出操作來彈出插入驅動器118的可移動介質201。具有足 夠訪問權限以從驅動器118彈出可移動介質201的用戶本地登錄計算 機100的任何時刻,驅動器122發(fā)送解鎖命令到驅動器118。否則,訪 問權限不足以從驅動器118彈出可移動介質201的用戶本地登錄計算 機100的任何時刻或者無用戶登錄計算機100時,驅動器122發(fā)送鎖定 命令到驅動器118。此外,在該實施中,具有足夠訪問權限的用戶鎖定 計算機100的該用戶當前會話時(例如,當用戶打算離開計算機100 一段時間但又不想注銷用戶的當前會話時),驅動器122發(fā)送鎖定命令 到驅動器118。當用戶隨后解鎖該用戶的當前會話時(例如,通過向操 作系統(tǒng)108提供用戶密碼),驅動器122發(fā)送解鎖命令到驅動器118。當驅動器訪問控制器224確定用戶可訪問彈出開關228已經被啟 動(區(qū)塊410),如果驅動器118解鎖(在區(qū)塊412檢查),則驅動器訪 問控制器224從驅動器118彈出插入的可移動介質201 (區(qū)塊414)。如 果驅動器118鎖定,則可移動介質201不從驅動器118彈出。在圖4所 示實施例中,驅動器訪問控制器224通過檢查鎖216的狀態(tài)來確定鎖 216是否處于鎖定狀態(tài)。在該實施例中,如果鎖216處于解鎖狀態(tài),驅 動器訪問控制器224施加控制電壓到換能器219,這導致?lián)Q能器219釋 放彈簧銷217。當彈簧銷217被釋放時,彈簧215解壓縮并將介質支架 202 (以及其上插入的可移動介質201)經過介質插槽204移出驅動器 118。在其它實施例中,驅動器118的解鎖或鎖定通過其它方式確定, 和/或可移動介質201以其它方式從驅動器118彈出。當驅動器訪問控制器224通過計算機接口 212從計算機100接收彈出命令時(在區(qū)塊416檢查),如果驅動器118解鎖(在區(qū)塊418檢 查),驅動器訪問控制器224從118彈出該插入的可移動介質(區(qū)塊 420)。如果驅動器118鎖定,則可移動介質201不從驅動器118彈出。 例如,在一種使用場合中,用戶與計算機100上執(zhí)行的軟件104提供 的圖形用戶接口互動,從而請求執(zhí)行軟彈出操作。在這種示例中,驅 動器122確定彈出該插入物是否恰當,且如果是恰當的,發(fā)送彈出命 令到驅動器118的驅動器訪問控制器224。如果當驅動器訪問控制器224 接收到該彈出命令時,驅動器118是解鎖的,則驅動器訪問控制器224 彈出所插入的可移動介質201。在另外實施例中,彈出命令被發(fā)送到其 它情形下的驅動器118的驅動器訪問控制器224。驅動器訪問控制器224 通過激勵螺線管218來彈出可移動介質201,從而將鎖216的螺栓220 移動到解鎖位置(如果鎖216鎖定)并施加控制電壓到換能器219,這 導致?lián)Q能器219釋放彈簧銷217。當彈簧銷217釋放時,彈簧215解壓 縮并將介質支架202 (以及其上插入的可移動介質201)經過介質插槽 204移出驅動器118。在其它實施例中,可移動介質201以其它方式從 驅動器118彈出。如果用戶通過緊急彈出用戶接口 232訪問緊急彈出機構230(在區(qū) 塊422檢查),緊急彈出機構230致使可移動介質201從驅動器118彈 出,而與驅動器118的狀態(tài)無關(區(qū)塊424)。為了使用戶訪問緊急彈 出機構230,驅動器118從驅動器架116移除,從而訪問緊急彈出用戶 接口 232。例如,在利用圖2的驅動器118的一種使用場合中,當驅動 器118從驅動器架116移除時,用戶將桿插入孔236內,以致使杠桿 238將鎖216的螺栓220移動到解鎖位置(如果鎖216鎖定),以及移 動介質彈出器214的彈簧銷217從而釋放介質彈出器214的彈簧215。 釋放彈簧215致使彈簧215移動該介質支架202和所插入的可移動介質 201穿過介質插槽204。圖5為安全可移動介質驅動器500的一個實施例的高級方框圖。 安全可移動介質驅動器500類似于圖2的驅動器118,除了如下所述。 與圖2的驅動器118的部件相似的驅動器500的部件,在圖5中使用與 圖2中用于這些部件的相同參考標記來表示。此外,除了此處所述, 驅動器500的驅動器訪問控制器224執(zhí)行與結合圖4所述處理相似的處 理。驅動器500不包含物理鎖(例如圖2的物理鎖216),其中當驅動 器訪問控制器224從計算機100分別接收鎖定和解鎖命令時,該物理 鎖被驅動器訪問控制器224物理鎖定和解鎖。相反,當驅動器訪問控 制器224從計算機IOO接收鎖定命令時,驅動器訪問控制器224將第一 值(在此也稱為"鎖定"值)寫入存儲器227的預定部分。存儲器227 的該預定部分在此也稱為"鎖存儲器"502。在圖5所示具體實施例中, 鎖存儲器502包括寄存器,該寄存器包含在可編程處理器225內用于 實施驅動器訪問控制器224。當驅動器訪問控制器224從計算機100接 收解鎖命令時,驅動器訪問控制器224將第二值(在此也稱為"解鎖" 值)寫入鎖存儲器502。當鎖定值存儲在鎖存儲器502內時,驅動器訪問控制器224認為 驅動器500鎖定,且當解鎖值存儲在鎖存儲器502內時,驅動器訪問 控制器224認為驅動器500解鎖。當驅動器500被鎖定時(即,當鎖定 值存儲在鎖存儲器502內時),驅動器訪問控制器224并不響應于用戶 可訪問彈出開關228被啟動而將插入驅動器500的可移動介質201彈 出。當驅動器500被解鎖時(即,當解鎖值存儲在鎖存儲器502內時), 驅動器訪問控制器224響應于用戶可訪問彈出開關228被啟動而將插 入驅動器500的可移動介質201彈出。在該實施例的一些實施中,發(fā)送到驅動器500的每個鎖定命令和 解鎖命令包括密鑰。當鎖定命令被驅動器500接收時,驅動器500將 該密鑰存儲在鎖存儲器502中作為該鎖定值的一部分。當解鎖命令隨 后被驅動器500接收時,包含在解鎖命令內的密鑰與存儲于鎖存儲器 502內的密鑰比較,且如果密鑰匹配,則驅動器500解鎖該驅動器500。 在一個這種實施中,使用密碼技術(例如,使用公開密鑰加密技術) 來加密和/或驗證密鑰。在一些其它實施例中,驅動器包含鎖存儲器(例如圖5的鎖存儲 器502)和物理鎖(例如圖2的物理鎖216)。在這種實施例的一種實 施中,當驅動器鎖定時(例如,響應于從該驅動器所通信耦合至的計 算機接收到的鎖定命令),該物理鎖被鎖定且鎖定值寫入該鎖存儲器。 當驅動器解鎖時(例如,響應于從該驅動器所通信耦合至的計算機接 收到的解鎖命令),該物理鎖被解鎖且解鎖值寫入該鎖存儲器。在這種 實施中,通過檢查存儲在鎖存儲器內的值來確定該物理鎖狀態(tài)的值,且該物理鎖無需包含用于報告該物理鎖的狀態(tài)(例如,到驅動器訪問 控制器)的功能。再者,在這種實施中,發(fā)送到驅動器的每個鎖定命 令和解鎖命令包括用于驗證解鎖命令的密鑰.此處所述的方法和技術可以實施于數字電子電路,或者用可編程 處理器(例如,專用處理器或諸如計算機的通用處理器)固件、軟件、 或其組合來實施。實施這些技術的設備可包括恰當的輸入和輸出裝置、 可編程處理器、以及有形地實施由該可編程處理器執(zhí)行的程序指令的 存儲介質。實施這些技術的處理可以由可編程處理器來執(zhí)行,該可編 程處理器通過對輸入數據進行操作并產生恰當的輸出,由此執(zhí)行指令 程序以執(zhí)行期望功能。該技術可有利地在可編程系統(tǒng)上執(zhí)行的一個或多個程序中實施,其中該可編程系統(tǒng)包括至少一個可編程處理器, 被耦合以從數據存儲系統(tǒng)接收數據和指令以及將數據和指令發(fā)送到該 數據存儲系統(tǒng);至少一個輸入裝置;以及至少一個輸出裝置。 一般而 言,處理器將從只讀存儲器和/或隨機存取存儲器接收指令和數據。適 于有形地實施計算機程序指令和數據的存儲裝置包括先前或現(xiàn)在已知 或者以后研發(fā)的所有形式的非易失性存儲器,示例性地包括半導體 存儲器裝置,例如可擦除可編程只讀存儲器(EPROM)、電可擦除可 編程只讀存儲器(EEPROM)、和閃存存儲器裝置;磁盤,例如內部硬 盤和可移動盤;磁光盤;以及DVD盤。任一前述可以補充有或結合到 專門設計的專用集成電路(ASIC)中.
權利要求
1.一種驅動器(118),包括計算機接口(212),將所述驅動器通信耦合至計算機(100);用戶可訪問彈出開關(228),位于當所述驅動器通信耦合至所述計算機時所述驅動器的用戶物理上可訪問位置的驅動器上;以及緊急彈出機構(230),從所述驅動器彈出插入所述驅動器的可移動介質(201),而與所述驅動器是否處于解鎖狀態(tài)無關;其中所述驅動器響應于從所述計算機接收鎖定命令而進入鎖定狀態(tài);和其中所述驅動器響應于從所述計算機接收解鎖命令而進入解鎖狀態(tài);其中當所述用戶可訪問彈出開關被啟動,同時所述可移動介質插入所述驅動器時,且如果所述驅動器處于所述解鎖狀態(tài),則所述驅動器從驅動器彈出所述可移動介質。
2. 如權利要求l所述的驅動器,還包括物理鎖(216),以在所述物 理鎖處于鎖定狀態(tài)時鎖定所述驅動器內的所述可移動介質,其中當所述 物理鎖處于解鎖狀態(tài)時,所述物理鎖沒有鎖定所述驅動器內的所述可移 動介質'
3. 如權利要求l所述的驅動器,還包括鎖存儲器(502),其中當所 述驅動器處于所述鎖定狀態(tài)時,鎖定值存儲于所述鎖存儲器內,且當所 述驅動器處于所述解鎖狀態(tài)時,解鎖值存儲于所述鎖存儲器內。
4. 一種驅動器(118),包括 計算機接口,將所述驅動器通信耦合至計算機;介質彈出器(214),從所述驅動器彈出插入所述驅動器的可移動介 質(201);以及緊急彈出機構(230),耦合至所述介質彈出器,其中所述緊急彈出 機構還包括緊急彈出用戶接口 (232),用戶通過所述緊急彈出用戶接口 能夠致使所述緊急彈出機構從所述驅動器彈出所述可移動介質,而與所 述計算機是否通信耦合至所述驅動器無關;其中所述緊急彈出用戶接口物理上位于當所述驅動器通信耦合至所述計算機時所述驅動器的用戶物理上無法訪問位置的驅動器上。
5. 如權利要求4所述的驅動器,還包括物理鎖(216),以在所述物理鎖處于鎖定狀態(tài)時鎖定所述驅動器內的可移動介質.
6. 如權利要求5所述的驅動器,還包括驅動器訪問控制器(224), 通信耦合至所述物理鎖用以^^所述物理鎖進入所述鎖定狀態(tài)。
7. 如權利要求5所述的驅動器,還包括用戶可訪問彈出開關(228), 物理上位于當所述驅動器通信耦合至所述計算機時用戶物理上可訪問的 位置,其中當所述用戶可訪問彈出開關被啟動,同時所述可移動介質插 入所述驅動器時,且如果所述鎖處于解鎖狀態(tài),則所述可移動介質由所 述介質彈出器從所述驅動器彈出。
8. —種計算機(100 ),包括中央處理器(102),軟件(104)在所述中央處理器上執(zhí)行; 驅動器接口 (120),在驅動器(118)通信耦合至所述計算機時將所述驅動器通信耦合至所述計算機,其中所述驅動器包括用戶可訪問彈出開關(228);其中所述軟件致使所述中央處理器發(fā)送鎖定命令到所述驅動器,所 述鎖定命令致使所述驅動器進入鎖定狀態(tài),其中對于所述用戶可訪問彈 出開關^t啟動的情形,所述驅動器不彈出插入所述驅動器的可移動介質; 以及其中所述軟件致使所述中央處理器發(fā)送解鎖命令到所述驅動器,所 述解鎖命令致使所述驅動器進入解鎖狀態(tài),其中對于所述用戶可訪問彈 出開關被啟動的情形,所述驅動器彈出插入所述驅動器的可移動介質而 不與所述計算機協(xié)商。
9. 一種控制驅動器(118)的方法,其中可移動介質(201)插入所 述驅動器,所述方法包括當從所述驅動器所通信耦合至的計算機(100)接收鎖定命令時,鎖 定所述驅動器;當從所述驅動器所通信耦合至的所述計算機接收解鎖命令時,解鎖 所述驅動器;當包含在所述驅動器內的用戶可訪問彈出開關(228)被啟動時,如 果所述驅動器是解鎖的,則彈出所述可移動介質;以及當所述驅動器的緊急彈出機構(230)通過緊急彈出用戶接口 (232) 被訪問時,從所述驅動器彈出所述可移動介質,而與所述驅動器是鎖定 或解鎖無關,其中所述緊急彈出用戶接口物理上位于當所述驅動器通信耦合至所述計算機時所述驅動器的用戶物理上無法訪問位置的驅動器 上。
10.如權利要求9所述的方法,其中當所述用戶可訪問彈出開關被 啟動時,如果所述驅動器是鎖定的,則所述可移動介質不被彈出。
全文摘要
本發(fā)明涉及安全可移動介質驅動器。一種驅動器(118),包括計算機接口(212),將該驅動器通信耦合至計算機(100);以及用戶可訪問彈出開關(228),位于當該驅動器通信耦合至該計算機時該驅動器的用戶物理上可訪問位置的驅動器上。該驅動器還包括緊急彈出機構(230),從該驅動器彈出插入該驅動器的可移動介質(201),而與該驅動器是否處于解鎖狀態(tài)無關。該驅動器響應于從該計算機接收鎖定命令而進入鎖定狀態(tài)。該驅動器響應于從該計算機接收解鎖命令而進入解鎖狀態(tài)。當該用戶可訪問彈出開關被啟動,同時該可移動介質插入該驅動器時,且如果該驅動器處于解鎖狀態(tài),則該驅動器從該驅動器彈出該可移動介質。
文檔編號G06F3/06GK101278255SQ200680036435
公開日2008年10月1日 申請日期2006年7月17日 優(yōu)先權日2005年9月29日
發(fā)明者C·W·索, J·I·馬丁內斯, J·佩卡圖 申請人:惠普開發(fā)有限公司