【摘要】本發明涉及一種大容量數據加密存儲功能的智能密碼鑰匙及其工作方法,由大容量存儲、智能密碼鑰匙主控芯片、主機、電源電路和狀態指示器等構成。所述智能密碼鑰匙主控芯片是一個集成了智能密碼鑰匙處理器、輸入輸出端口和存儲器的微處理器,所述存儲器
【摘要】 本發明屬于計算機存儲系統結構技術領域,其特征在于:它將存儲設備虛擬化,利用映射技術為系統提供一種虛擬的存儲視圖,系統對存儲設備的所有操作均在該虛擬視圖上進行,在去掉虛擬視圖后,系統還原為真實視圖,從而實現系統的快速還原。它含有:虛擬設備控制程序⑦:該模塊是用戶和存儲設備虛擬層⑥的接口,用戶可通過該模塊控制和設置系統還原的其它功能模塊。存儲設備虛擬層⑥:該模塊由物理存儲設備的虛擬驅動程序②、虛擬映射算法③和虛擬存儲設備抽象層④三個子模塊組成,該模塊通過子模塊物理存儲設備的虛擬驅動程序②訪問物理設備,通過子模塊虛擬存儲設備抽象層④向文件系統提供“合成”的虛擬存儲視圖。它在保護和還原系統時,不涉及數據的備份和恢復操作。 【專利類型】發明申請 【申請人】清華大學 【申請人類型】學校 【申請人地址】100084北京市100084信箱82分箱清華大學專利辦公室 【申請人地區】中國 【申請人城市】北京市 【申請人區縣】海淀區 【申請號】CN200610165587.7 【申請日】2006-12-22 【申請年份】2006 【公開公告號】CN101004703A 【公開公告日】2007-07-25 【公開公告年份】2007 【授權公告號】CN100428196C 【授權公告日】2008-10-22 【授權公告年份】2008.0 【IPC分類號】G06F11/14; G06F12/08; G06F12/0804 【發明人】管曉宏; 梁金千 【主權項內容】1.一種計算機系統快速還原的方法,其特征在于該方法是在計算機系統中依次按以下 步驟實現的: 步驟(1)按以下步驟把計算機系統擁有的存儲空間動態地分成兩個區域,所有已分 配的空間組成系統存儲區域,所有未分配的空間組成臨時存儲區域,所述系統存儲區域 含有禁止外部操作對其進行直接修改而被保護起來的待還原的目標數據,在臨時存儲區 域存儲的是對該目標數據進行過包括增加、刪除、修改在內的修改操作的目標數據的映 射數據,同時還通過包括虛擬讀算法、虛擬寫算法在內的映射算法進行合成處理; 步驟(1.1)把硬盤以其基本存儲單位扇區為單位,照邏輯塊塊地址LBA進行線性編 址后的硬盤扇區地址表示為:0,1,2,...,MaxLBA,其中的MaxLBA表示硬盤的總 扇區數減1; 步驟(1.2)以2的N(N=1,2,3…)次方個扇區作為一個基本單位,稱為BLOCK塊,把 整個硬盤分成[MaxLBA/2N]+1個BLOCK; 步驟(1.3)每個BLOCK用兩個數DAT和MAP表示:DAT由2位組成,表示BLOCK 所處的四種狀態是:空閑、修改、受保護和映射狀態,其中00表示此BLOCK塊空閑, 屬于臨時存儲區域;01表示此BLOCK塊原為空閑塊,現已作過修改,屬于臨時存儲區 域;10表示此BLOCK塊是受保護塊,屬于系統存儲區域;11表示此BLOCK塊已被 映射,說明該塊原為受保護塊并且被“修改”,對該塊的讀寫操作均需根據MAP中的地 址指針來重定位;當N=5時,MAP由64位組成,其中32位表示BLOCK塊中每個扇區 的映射狀態,其值為1表示該扇區已映射,否則為未映射,MAP中的其它位表示該映射 對應的映射地址,若該塊未映射,則為0,映射地址用pMAP表示,所述映射是指把系 統存儲區中受保護以便在系統還原時需要還原的數據映射到臨時存儲區域經過修改操作 后保存在該臨時區域中,稱為映射數據,映射地址pMAP表示每個BLOCK塊在臨時存 儲區域中對應的映射地址,而pBLOCK表示所述每個BLOCK在系統存儲區域中的實際 塊地址; 步驟(1.4)構造塊分配表BAT和映射索引表MIT: BAT表由表示所有各個BLOCK狀態的DAT組成的數據構成,表示每個BLOCK塊 所處的狀態; MIT表由所有表示各個BLOCK映射地址和映射狀態的MAP組成的數據構成,表示 每個BLOCK塊及其內每個扇區的映射狀態; 步驟(2)在所述計算機系統中設置以下模塊:設在用戶界面的虛擬設備控制程序模 塊,是用戶和存儲設備虛擬層模塊的接口,用戶通過該模塊控制和設置系統還原用的其 它模塊; 存儲設備虛擬模塊,與文件系統系統互連,而該文件系統又與所述虛擬設備控制程 序模塊互連,所述存儲設備虛擬模塊設在存儲設備虛擬層,包括:三個依次互連的虛擬 存儲設備抽象層、虛擬映射算法以及物理存儲設備的虛擬驅動程序共三個子模塊,其中: 虛擬驅動程序子模塊訪問物理存儲設備,虛擬映射算法子模塊設有:虛擬寫操作算法、 虛擬讀操作算法、映射數據提交算法以及系統還原算法,該虛擬算法子模塊通過虛擬驅 動程序對物理存儲設備進行讀寫操作,把系統存儲區域中受保護待還原的原數據和臨時 存儲區域的映射數據合成虛擬存儲視圖,再通過虛擬存儲設備抽象層子模塊向文件系統 提供該虛擬存儲視圖; 步驟(3)建立BAT和MIT表的初始狀態: BAT表的初始狀態由保護程序在安裝時通過掃描文件系統的文件分配表建立該BAT 表中每一項的初始狀態,BAT表中每一項的初始狀態只有空閑和保護兩種狀態,MIT表 的初值均為0; 步驟(4)按以下步驟用虛擬寫操作算法攔截系統對硬盤的所有寫操作,再作相應的 映射變換,實現對系統的動態保護: 步驟(4.1)存儲設備虛擬層中的虛擬映射算法子模塊得到硬盤上要寫扇區的邏輯塊 地址LBA; 步驟(4.2)虛擬映射算法子模塊按下式計算要寫扇區所在的BLOCK塊的實際塊地址 pBLOCK和該扇區在BLOCK塊中的偏移量Offset,其中Offset表示該扇區是BLOCK塊中 的第幾個扇區,公式中“/”表示整除運算,“MOD”表示模運算: pBLOCK=LBA/32, Offset=LBA?MOD32, 步驟(4.3)根據pBLOCK和Offset在BAT表中查得該扇區所在的BLOCK塊的狀態; 步驟(4.4)判斷該塊是否為保護狀態: 若為保護狀態,在臨時存儲區域查找空閑的BLOCK塊, A.若找到,便依次執行以下步驟: 步驟(4.4.1)步驟(4.3)所述的原BLOCK塊的狀態改為映射狀態; 步驟(4.4.2)找到的空閑BLOCK塊的狀態改為保護狀態; 步驟(4.4.3)把找到的空閑BLOCK塊的地址pFREE值放入原BLOCK塊在MIT表中對 應的映射地址pMAP中,并把該扇區在MIT表中的對應位置1; 步驟(4.4.4)計算該扇區在MIT表中的具體映射地址MapLBA=pFREE*32+Offset,轉 入步驟(4.6); B.若未找到空閑的BLOCK塊,便把返回狀態設置為磁盤滿,轉入步驟(4.7) 步驟(4.5)若為非保護狀態,則判斷步驟(4.3)所述的BLOCK塊是否為空閑狀態: 若為空閑狀態,則把BAT表中該BLOCK塊的狀態改為修改狀態,令MapLBA=LBA,再 轉入步驟(4.6); 若為非空閑狀態,則判斷是否為修改狀態; 若為修改狀態,令MapLBA=LBA,再轉入步驟(4.6); 若為映射狀態,則在MIT表中得到該BLOCK塊的映射地址pMAP,且把該扇區在 MIT表中的對應位置1,接著計算該扇區的映射地址MapLBA=pMAP*32+Offset,并轉 入步驟(4.6); 步驟(4.6)把所得到的MapLBA作為物理地址傳遞到物理存儲設備的虛擬驅動程序, 再通過硬盤驅動程序寫入相應的扇區; 步驟(4.7)返回寫操作狀態; 步驟(5)按以下步驟用虛擬讀操作算法攔截系統對硬盤的所有讀操作,并讀出數據: 步驟(5.1)存儲設備虛擬層得到要讀扇區所在的BLOCK塊的地址pBLOCK和偏移量 Offset,其中pBLOCK和Offset的計算方法同步驟(4.2); 步驟(5.2)根據pBLOCK和Offset在BAT表中查該扇區所在BLOCK塊的狀態是否處 于映射狀態; 步驟(5.3)若該BLOCK塊處于映射狀態,按以下步驟依次執行: 步驟(5.3.1)根據pBLOCK在MIT表中的對應項查該扇區的狀態位; 步驟(5.3.2)若該扇區已映射,則: 在MIT表中的對應項得到該塊的映射地址pMAP,并計算該扇區的映射地址 MapLBA=pMAP*32+Offset,接著執行步驟(5.3.4); 步驟(5.3.3)若該扇區未映射,令MapLBA=LBA,直接轉步驟(5.5); 步驟(5.4)若該BLOCK塊處于未映射狀態,則MapLBA=LBA,接著執行步驟(5.5); 步驟(5.5)把MapLBA作為物理地址傳遞到物理存儲設備的虛擬驅動程序,再通過硬 盤驅動程序讀取相應扇區,再返回讀操作狀態; 步驟(6).按以下步驟用映射數據提交算法,把臨時存儲區域中的數據合并到系統存 儲區域: 步驟(6.1)掃描硬盤的第一個BLOCK塊; 步驟(6.2)在BAT表中查該BLOCK塊的狀態; 步驟(6.3)若為映射狀態,按以下步驟執行: 步驟(6.3.1)在MIT表的對應項查該BLOCK塊的每個扇區的狀態位,判斷該扇區是 否已映射; 步驟(6.3.2)若已映射,根據該扇區的映射地址把臨時存儲區域中相對應映射塊內 對應扇區的數據拷貝到步驟(6.3.1)中所選的扇區內;若未映射,則執行步驟(6.3.3); 步驟(6.3.3)判斷步驟(6.2)中所選BLOCK中的所有扇區是否都已檢查完畢,若未檢 查完畢,繼續執行步驟(6.3.1),否則,執行步驟(6.4); 步驟(6.4)判斷硬盤中所有的BLOCK塊是否已掃描完畢,若未掃描完畢,則掃描硬 盤中下一個BLOCK塊,然后轉步驟(6.2),否則轉步驟(7) 步驟(7)按以下步驟用數據還原算法,把臨時存儲區域中的數據丟棄: 步驟(7.1)把BAT表和MIT表清為0; 步驟(7.2)重新掃描磁盤,構造新的BAT表,數據提交或還原完畢。 【當前權利人】清華大學 【當前專利權人地址】北京市100084信箱82分箱清華大學專利辦公室 【專利權人類型】公立 【統一社會信用代碼】12100000400000624D 【被引證次數】7 【被他引次數】7.0 【家族引證次數】2.0 【家族被引證次數】7
未經允許不得轉載:http://www.mhvdw.cn/1776168182.html
喜歡就贊一下






