TWI435219B - 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 - Google Patents
資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 Download PDFInfo
- Publication number
- TWI435219B TWI435219B TW099125120A TW99125120A TWI435219B TW I435219 B TWI435219 B TW I435219B TW 099125120 A TW099125120 A TW 099125120A TW 99125120 A TW99125120 A TW 99125120A TW I435219 B TWI435219 B TW I435219B
- Authority
- TW
- Taiwan
- Prior art keywords
- file
- area
- configuration table
- data
- backup
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/22—Safety or protection circuits preventing unauthorised or accidental access to memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
- G11C29/765—Masking faults in memories by using spares or by reconfiguring using address translation or modifications in solid state disks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/80—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
- G11C29/816—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
- G11C29/82—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Library & Information Science (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種用於資料保護方法,且特別是有關於一種用於保護儲存於非揮發性記憶體模組中之檔案的的資料保護方法及使用此方法的記憶體控制器與可攜式記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體具有資料非揮發性、省電、體積小與無機械結構等的特性,適合可攜式應用,最適合使用於這類可攜式由電池供電的產品上。隨身碟就是一種以NAND型快閃記憶體作為儲存媒體的儲存裝置。由於隨身碟體積小容量大,所以已廣泛用於資料的儲存與交換。
例如,使用者會彼此借用對方的隨身碟以將欲傳送給對方的資料儲存至其隨身碟中。然而,隨身碟是相當私人的物品,其往往儲存有個人之重要資料。因此,當使用者將隨身碟借用給他人時,如何不讓其他人看到或存取原先儲存於其中的個人檔案是使用者所相當重視的議題。
本發明提供一種資料保護方法,其能夠依據使用者的需求隱藏儲存於記憶體模組中的檔案。
本發明提供一種記憶體控制器,其能夠依據使用者的需求隱藏儲存於記憶體模組中的檔案。
本發明提供一種非揮發性記憶體儲存系統,其能夠依據使用者的需求隱藏儲存於記憶體模組中的檔案。
本發明提出一種資料保護方法,用於一非揮發性記憶體模組,其中此非揮發性記憶體模組具有多個實體區塊。本資料保護方法包括將此些實體區塊至少分組為資料區、備用區與系統區;配置多個邏輯位址;並且將此些邏輯位址分組為多個邏輯區塊以映射資料區的實體區塊,其中此些邏輯位址會被格式化為一個分割區,此分割區包括檔案配置表區、檔案區與目錄區,此檔案配置表區儲存檔案配置表,此檔案區儲存第一檔案,此目錄區儲存對應第一檔案的第一檔案描述區塊,並且此檔案配置表記錄對應用以儲存第一檔案的邏輯位址的第一登錄值。本資料保護方法還包括判斷模式訊號是否處於資料保護模式;並且當模式訊號處於資料保護模式時,執行一檔案隱藏程序。在此,此檔案隱藏程序包括:依據檔案配置表產生檔案配置表備份;將所產生之檔案配置表備份儲存在系統區中;依據第一檔案描述區塊產生檔案描述區塊備份;將所產生之檔案描述區塊備份儲存於系統區中;在檔案配置表中將對應用以儲存第一檔案的邏輯位址的第一登錄值標記為無法儲存資料的壞叢集;以及抹除在分割區中的第一檔案描述區塊。
在本發明之一實施例中,上述之依據檔案配置表產生檔案配置表備份的步驟包括:複製在檔案配置表中對應用以儲存第一檔案的邏輯位址的第一登錄值以產生檔案配置表備份。
在本發明之一實施例中,上述之依據檔案配置表產生檔案配置表備份的步驟包括:完整地複製檔案配置表以產生檔案配置表備份。
在本發明之一實施例中,上述之資料保護方法更包括:當模式訊號非處於資料保護模式時,判斷系統區是否存有檔案配置表備份與檔案描述區塊備份。並且,當系統區存有檔案配置表備份與檔案描述區塊備份時,上述之資料保護方法更包括執行一檔案顯示程序。在此,此檔案顯示程序包括:依據儲存於系統區中的檔案配置表備份更改在檔案配置表中對應用以儲存第一檔案的邏輯位址的第一登錄值;依據儲存於系統區的檔案描述區塊備份在目錄區中回存第一檔案描述區塊;以及抹除儲存於系統區中的檔案配置表備份與檔案描述區塊備份。
在本發明之一實施例中,上述之資料保護方法更包括:在執行上述檔案隱藏程序之後且執行上述檔案顯示程序之前依據來自於主機系統的寫入指令將第二檔案寫入至資料區的實體區塊中。在此,第二檔案被儲存在檔案區中,對應第二檔案的第二檔案描述區塊被儲存在目錄區中並且檔案配置表記錄對應用以儲存第二檔案的邏輯位址的第二登錄值。
在本發明之一實施例中,上述之依據儲存於系統區的檔案描述區塊備份在目錄區中回存第一檔案描述區塊的步驟包括:依據儲存於系統區的檔案描述區塊備份在目錄區中接續第二檔案描述區塊來儲存第一檔案描述區塊。
在本發明之一實施例中,上述之資料保護方法更包括:配置一模式切換開關,其中上述模式訊號是由此模式切換開關來產生。
本發明範例實施例提出一種記憶體控制器,其包括記憶體介面、記憶體管理電路與主機介面。記憶體介面耦接至記憶體管理電路,並且用以耦接至上述非揮發性記憶體模組。主機介面耦接至記憶體管理電路並且用以耦接至主機系統。記憶體管理電路單元用以執行上述資料保護方法。
本發明範例實施例提出一種可攜式記憶體儲存裝置,其包括模式切換開關、連接器、上述非揮發性記憶體模組與耦接至此非揮發性記憶體模組的記憶體控制器。在此,此記憶體控制器用以執行上述資料保護方法。
本發明範例實施例提出一種資料保護方法,用於可攜式記憶體儲存裝置,其中此可攜式記憶體儲存裝置具有非揮發性記憶體模組並且此非揮發性記憶體模組具有多個實體區塊。本資料保護方法包括將此些實體區塊至少分組為一資料區、一備用區與一系統區;配置多個邏輯位址並且將此些邏輯位址分組為多個邏輯區塊以映射資料區的實體區塊,其中此些邏輯位址會被格式化為一個分割區,此分割區包括檔案配置表區、檔案區與目錄區,此檔案配置表區儲存檔案配置表,此檔案區儲存第一檔案,此目錄區儲存對應第一檔案的第一檔案描述區塊,並且此檔案配置表記錄對應用以儲存第一檔案的邏輯位址的第一登錄值。本資料保護方法也包括判斷模式訊號是否處於資料保護模式。當模式訊號處於資料保護模式時,本資料保護方法包括執行檔案隱藏程序來修改檔案配置表,其中耦接至此可攜式記憶體儲存裝置的主機系統根據修改後的檔案配置表僅能存取此些邏輯位址之中的一部分邏輯位址,其中第一檔案被儲存在此些邏輯位址之中的另一部分邏輯位址。此外,當此模式訊號非處於資料保護模式時,本資料保護方法更包括執行檔案顯示程序來修改檔案配置表,其中主機系統根據修改後的檔案配置表存取所有邏輯位址。
基於上述,本發明範例實施例的資料保護方法、記憶體控制器與可攜式記憶體儲存裝置能夠根據模式訊號隱藏或顯示儲存於可攜式記憶體儲存裝置中的檔案,由此保護使用者的重要資料。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
為了保護儲存於可攜式記憶體儲存裝置內的檔案,根據本發明範例實施例的資料保護方法、記憶體控制器與可攜式記憶體儲存裝置會根據可攜式記憶體儲存裝置之模式切換開關的狀態(即,所產生之模式訊號)來修改檔案配置表以使得主機系統無法存取儲存有欲保護之檔案的邏輯位址。具體來說,主機系統的作業系統需透過檔案配置表來存取儲存於可攜式記憶體儲存裝置內的檔案。基此,本發明範例實施例的資料保護方法、記憶體控制器與可攜式記憶體儲存裝置是透過變更檔案配置表內的記錄來使得主機系統的作業系統無法從檔案配置表內獲取關於儲存於可攜式記憶體儲存裝置內的檔案之資訊,由此隱藏儲存於可攜式記憶體儲存裝置內的資料。以下將以一範例實施例來詳細說明本發明。
圖1A是根據本發明範例實施例繪示使用可攜式記憶體儲存裝置的主機系統。
請參照圖1A,主機系統1000一般包括電腦1100與輸入/輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108、資料傳輸介面1110與主儲存裝置1112。輸入/輸出裝置1106包括如圖1B的滑鼠1202、鍵盤1204、顯示器1206與印表機1208。必須瞭解的是,圖1B所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明範例實施例中,可攜式記憶體儲存裝置100是透過資料傳輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104、輸入/輸出裝置1106與安裝於主儲存裝置1112中之作業系統1200的運作可將資料寫入至可攜式記憶體儲存裝置100或從可攜式記憶體儲存裝置100中讀取資料。例如,可攜式記憶體儲存裝置100為如圖1B所示的隨身碟1212。
圖2A是繪示圖1A所示的可攜式記憶體儲存裝置的概要方塊圖。
請參照圖2A,可攜式記憶體儲存裝置100包括連接器102、記憶體控制器104、記憶體模組106與模式切換開關108。
在本範例實施例中,連接器102為通用序列匯流排(Universal Serial Bus,USB)連接器。然而,必須瞭解的是,本發明不限於此,在本發明另一範例實施例中,連接器102亦可以是電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE) 1394連接器、高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)連接器、序列先進附件(Serial Advanced Technology Attachment,SATA)連接器、安全數位(secure digital,SD)介面連接器、記憶棒(Memory Stick,MS)介面連接器、多媒體儲存卡(Multi Media Card,MMC)介面連接器、小型快閃(Compact Flash,CF)介面連接器、整合式驅動電子介面(Integrated Device Electronics,IDE)連接器或其他適合的連接器。
記憶體控制器104用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在記憶體模組106中進行資料的寫入、讀取與抹除等運作。特別是,記憶體控制器104用以執行根據本範例實施例的資料保護方法與記憶體管理方法。
記憶體模組106是耦接至記憶體控制器104,並且用以儲存主機系統1000所寫入之資料。記憶體模組106包括實體區塊304(0)~304(R)。各實體區塊分別具有複數個頁面,其中屬於同一個實體區塊之實體頁面可被獨立地寫入且被同時地抹除。
在本範例實施例中,記憶體模組106為可複寫式非揮發性記憶體模組。例如,記憶體模組106為多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體模組。然而,本發明不限於此,記憶體模組106亦可是單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體模組、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
模式切換開關108是耦接至記憶體控制器104並且可根據使用者的需求輸出不同的模式訊號。特別是,記憶體控制器104會識別模式切換開關108所產生之模式訊號是處於資料保護模式或非資料保護模式。也就是說,使用者可改變模式切換開關108的狀態以輸出不同之模式訊號以使記憶體控制器104以資料保護模式或非資料保護模式來管理記憶體模組106。
例如,模式切換開關108可為按鈕開關或指撥開關等接觸式開關,其位於可攜式記憶體儲存裝置100的表面以讓使用者可以操弄模式切換開關108以使其處於資料保護模式或非資料保護模式。
此外,例如,模式切換開關108亦可為磁感應開關或無線射頻辨識(Radio-frequency identification,RFID)開關。圖2B與2C是根據本發明範例實施例所繪示的可攜式記憶體儲存裝置的外觀示意圖。請參照圖2B與2C,可攜式記憶體儲存裝置100包括主體2100與帽蓋2200。帽蓋2200具有磁性並且當其與主體2100結合(如圖2B所示)時可使模式切換開關108為導通狀態,由此表示模式切換開關108是處於非資料保護模式。此外,當帽蓋2200與主體2100分離(如圖2C所示)時可使模式切換開關108為非導通狀態,由此表示模式切換開關108是處於資料保護模式。
圖3是根據本發明範例實施例所繪示的記憶體控制器的概要方塊圖。
請參照圖3,記憶體控制器104包括記憶體管理電路202、主機介面204與記憶體介面206。
記憶體管理電路202用以控制記憶體控制器104的整體運作,以進行資料的寫入、讀取、抹除等運作。例如,記憶體管理電路202具有多個控制指令,並且在可攜式記憶體儲存裝置100運作時,此些控制指令會被執行以根據本範例實施例的資料保護方法與記憶體管理方法來管理記憶體模組106。此資料保護方法與記憶體管理方法將於以下配合圖式作詳細說明。
例如,在本範例實施例中,記憶體管理電路202的控制指令是以韌體型式來實作。例如,記憶體管理電路202具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當可攜式記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以完成根據本發明實施例的資料保護方法與記憶體管理方法。
在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以程式碼型式儲存於記憶體模組106的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路202具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有驅動碼段,並且當記憶體控制器104被致能時,微處理器單元會先執行此驅動碼段來將儲存於記憶體模組106中之控制指令載入至記憶體管理電路202的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以執行本發明範例實施例的資料保護方法與記憶體管理方法。此外,在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以一硬體型式來實作。
主機介面204是耦接至記憶體管理電路202並且用以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面204來傳送至記憶體管理電路202。在本範例實施例中,主機介面204是對應連接器102為USB介面。然而,必須瞭解的是本發明不限於此,主機介面204亦可以是PATA介面、IEEE 1394介面、PCI Express介面、SD介面、MS介面、MMC介面、CF介面、SATA介面、IDE介面或其他適合的資料傳輸介面。
記憶體介面206是耦接至記憶體管理電路202並且用以存取記憶體模組106。也就是說,欲寫入至記憶體模組106的資料會經由記憶體介面206轉換為記憶體模組106所能接受的格式。
在本發明一範例實施例中,記憶體控制器104還包括緩衝記憶體252。緩衝記憶體252是耦接至記憶體管理電路202並且用以暫存來自於主機系統1000的資料與指令或來自於記憶體模組106的資料。
在本發明一範例實施例中,記憶體控制器104還包括電源管理電路254。電源管理電路254是耦接至記憶體管理電路202並且用以控制可攜式記憶體儲存裝置100的電源。
在本發明一範例實施例中,記憶體控制器104還包括錯誤檢查與校正電路256。錯誤檢查與校正電路256是耦接至記憶體管理電路202並且用以執行錯誤檢查與校正程序以確保資料的正確性。例如,當記憶體管理電路202從主機系統1000中接收到寫入指令時,錯誤檢查與校正電路256會為對應此寫入指令的資料產生對應的錯誤檢查與校正碼(Error Checkihg and Correcting Code,ECC Code),並且記憶體管理電路202會將對應此寫入指令的資料與對應的錯誤檢查與校正碼寫入至記憶體模組106中。之後,當記憶體管理電路202從記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤檢查與校正碼,並且錯誤檢查與校正電路256會依據此錯誤檢查與校正碼對所讀取的資料執行錯誤檢查與校正程序。
圖4與圖5是根據本發明範例實施例所繪示之管理記憶體模組的範例示意圖。
必須瞭解的是,在此描述記憶體模組106之實體區塊的運作時,以“提取”、“交換”、“分組”、“輪替”等詞來操作實體區塊是邏輯上的概念。也就是說,記憶體模組106之實體區塊的實際位置並未更動,而是邏輯上對記憶體模組106的實體區塊進行操作。
請參照圖4,記憶體管理電路202會將記憶體模組106的實體區塊304(0)~304(R)邏輯地分組為資料區402、備用區404、系統區406與取代區408。
資料區402與備用區404的實體區塊是用以儲存來自於主機系統1000的資料。具體來說,資料區402是已儲存資料的實體區塊,而備用區404的實體區塊是用以替換資料區402的實體區塊。因此,備用區404的實體區塊為空或可使用的實體區塊,即無記錄資料或標記為已沒用的無效資料。也就是說,在備用區中的實體區塊已被執行抹除運作,或者當備用區中的實體區塊被提取用於儲存資料之前所提取之實體區塊會被執行抹除運作。因此,備用區的實體區塊為可被使用的實體區塊。
邏輯上屬於系統區406的實體區塊是用以記錄系統資料,其中此系統資料包括關於記憶體晶片的製造商與型號、記憶體晶片的實體區塊數、每一實體區塊的實體頁面數等。
邏輯上屬於取代區408中的實體區塊是替代實體區塊。例如,記憶體模組106於出廠時會預留4%的實體區塊作為更換使用。也就是說,當資料區402、備用區404與系統區406中的實體區塊損毀時,預留於取代區408中的實體區塊是用以取代損壞的實體區塊(即,壞實體區塊(bad block))。因此,倘若取代區408中仍存有正常之實體區塊且發生實體區塊損毀時,記憶體管理電路202會從取代區408中提取正常的實體區塊來更換損毀的實體區塊。倘若取代區408中無正常之實體區塊且發生實體區塊損毀時,則記憶體管理電路202會將整個可攜式記憶體儲存裝置100宣告為寫入保護(write protect)狀態,而無法再寫入資料。
特別是,資料區402、備用區404、系統區406與取代區408之實體區塊的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在可攜式記憶體儲存裝置100的運作中,實體區塊關聯至資料區402、備用區404、系統區406與取代區408的分組關係會動態地變動。例如,當備用區中的實體區塊損壞而被取代區的實體區塊取代時,則原本取代區的實體區塊會被關聯至備用區。
請參照圖5,如上所述,資料區402與備用區404的實體區塊是以輪替方式來儲存主機系統1000所寫入之資料。在本範例實施例中,記憶體管理電路202會配置邏輯位址給主機系統1000以利於在以上述輪替方式來儲存資料之實體區塊中進行資料存取。特別是,記憶體管理電路202會將所提供的邏輯位址分組為邏輯區塊510(0)~510(H),並且將邏輯區塊510(0)~510(H)映射至資料區402的實體區塊。例如,當可攜式記憶體儲存裝置100被作業系統1200以檔案系統(例如,FAT 32)格式化時,邏輯區塊510(0)~510(H)分別地映射至資料區402的實體區塊304(0)~304(D)。也就是說,一個邏輯區塊會映射資料區402中的一個實體區塊。在此,記憶體管理電路202會建立邏輯區塊-實體區塊映射表(logical block -physical block mapping table),以記錄邏輯區塊與實體區塊之間的映射關係。
圖6~圖8是根據本發明範例實施例所繪示的寫入資料至記憶體晶片的範例。
請同時參照圖6~圖8,例如,在邏輯區塊510(0)是映射至實體區塊304(0)的映射狀態下,當記憶體控制器104從主機系統1000中接收到寫入指令而欲寫入資料至屬於邏輯區塊510(0)的邏輯位址時,記憶體管理電路202會依據邏輯區塊-實體區塊映射表識別邏輯區塊510(0)目前是映射至實體區塊304(0)並且從備用區404中提取實體區塊304(D+1)作為替換實體區塊來輪替實體區塊304(0)。然而,當記憶體管理電路202將新資料寫入至實體區塊304(D+1)的同時,記憶體管理電路202不會立刻將實體區塊304(0)中的所有有效資料搬移至實體區塊304(D+1)而抹除實體區塊304(0)。具體來說,記憶體管理電路202會將實體區塊304(0)中欲寫入實體頁面之前的有效資料(即,實體區塊304(0)的第0實體頁面與第1實體頁面中的資料)複製至實體區塊304(D+1)的第0實體頁面與第1實體頁面中(如圖6所示),並且將新資料寫入至實體區塊304(D+1)的第2實體頁面與第3實體頁面中(如圖7所示)。此時,記憶體管理電路202即完成寫入的運作。因為實體區塊304(0)中的有效資料有可能在下個操作(例如,寫入指令)中變成無效,因此立刻將實體區塊304(0)中的有效資料搬移至實體區塊304(D+1)可能會造成無謂的搬移。此外,資料必須依序地寫入至實體區塊內的實體頁面,因此,記憶體管理電路202僅會先搬移欲寫入實體頁面之前的有效資料。
在本範例實施例中,暫時地維持此等母子暫態關係(即,實體區塊304(0)與實體區塊304(D+1))的運作稱為開啟(open)母子區塊,並且原實體區塊稱為母實體區塊而替換實體區塊稱為子實體區塊。
之後,當需要將實體區塊304(0)與實體區塊304(D+1)的內容真正合併時,記憶體管理電路202才會將實體區塊304(0)與實體區塊304(D+1)的資料整併至一個實體區塊,由此提升實體區塊的使用效率。在此,合併母子區塊的運作稱為關閉(close)母子區塊。例如,如圖8所示,當進行關閉母子區塊時,記憶體管理電路202會將實體區塊304(0)中剩餘的有效資料(即,實體區塊304(0)的第4實體頁面~第(K)實體頁面中的資料)複製至替換實體區塊304(D+1)的的第4實體頁面~第(K)實體頁面中,然後將實體區塊304(0)抹除並關聯至備用區404,同時,將實體區塊304(D+1)關聯至資料區402。也就是說,記憶體管理電路202會在邏輯區塊-實體區塊映射表中將邏輯區塊510(0)重新映射至304(D+1)。此外,在本範例實施例中,記憶體管理電路202會建立備用區實體區塊表(未繪示)來記錄目前被關聯至備用區的實體區塊。值得一提的是,在開啟母子區塊時記憶體管理電路202需使用更多緩衝記憶體252的儲存空間來儲存管理變數,以記錄更詳細的儲存狀態。例如,此些管理變數會記錄屬於邏輯區塊510(0)的有效資料被分散地儲存在實體區塊304(0)與實體區塊304(D+1)的哪些實體頁面中(如圖7所示)。基此,在可攜式記憶體儲存裝置100運作期間,母子區塊的組數是有限的。因此,當可攜式記憶體儲存裝置100接收到來自於主機系統1000的寫入指令時,倘若已開啟母子區塊的組數達到上限時,記憶體管理電路202需關閉至少一組目前已開啟之母子區塊(即,執行關閉母子區塊運作)以執行此寫入指令。
在本範例實施例中,主機系統1000的作業系統1200使用檔案系統將邏輯區塊510(0)~510(H)的邏輯位址格式化成一個分割區(partition)900(如圖9所示)。分割區900包括主引導磁區902、檔案配置表區904、目錄區906與檔案區908。
屬於主引導磁區902的邏輯位址是用以儲存可攜式記憶體儲存裝置100的可儲存空間的系統資訊。
屬於檔案配置表區904的邏輯位址是用以儲存檔案配置表。檔案配置表是用以記錄儲存檔案之邏輯位址的登錄值。例如,檔案配置表區中會儲存兩個檔案配置表,其中一個檔案配置表為正常存取所使用,而另一個檔案配置表為備份檔案配置表。
屬於目錄區906的邏輯位址是用以儲存檔案描述區塊(File Description Block,FDB),其用以記錄目前儲存於可攜式記憶體儲存裝置100中之檔案與目錄的屬性資訊。特別是,檔案描述區塊會記錄用以儲存此些檔案的起始邏輯位址(即,起始叢集)。
屬於檔案區908的邏輯位址是用以實際地儲存檔案的內容。
在本範例實施例中,一個邏輯位址的大小為一個扇區(sector)。在主引導磁區902、檔案配置表區904與目錄區906中是以扇區為存取單位。
具體來說,磁碟儲存最小單位為扇區,每一個扇區包含了512位元組(byte)的資訊內容。然而,使用扇區當單位來儲存時,主機系統1000的效率會很差。一般來說,主機系統1000的作業系統1200不會以一個扇區當作存取檔案的單位,而是以叢集為一基本檔案單位。每一個叢集是架構在扇區的2次方倍數上。假定連續的8個扇區構成一個叢集,則此叢集的大小就為4096位元組。基此,在作業系統1200在存取資料時會以8個扇區連續讀取而提升了相對效率。但,叢集並非越大越好。因為當叢集越大時相對的可能會浪費許多儲存空間。例如,在一個叢集為4千位元組(kilobyte,KB)的情況下,當主機系統1000所儲存的檔案內容只有1KB時,此檔案還是佔用掉一個叢集的空間,剩餘之3KB的儲存空間就浪費掉了。特別是,叢集的總數目會受限於記憶體模組106的容量與檔案配置表型態而有所不同。以FAT16來說,根據定義其本身最大的叢集數目必須介於4048個~65526個之間,所以當格式化一張128MB的記憶卡,其每一個叢集至少必須要包含4個扇區,不然會超出65526個cluster的限制(127,901,696/512/4=62,452clusters)。所以每一叢集的大小為2KB。類似地,在FAT32中,最大的叢集數目必須介於65526個~4177918個之間。值得一提的是,在FAT16中,目錄區906的大小是固定的。而在FAT32中,目錄區906會被放在檔案區908來一起管理。
例如,在本範例實施例中,分割區(partition)900是符合FAT32規範的分割區。因此,屬於目錄區906與檔案區908的扇區會被分組為叢集(cluster)600(0)~600(W)。在此假設叢集600(0)是被配置為目錄區906的起始叢集。
圖10A與10B為根據本發明範例實施例所繪示的檔案配置表與檔案描述區塊的示意圖。
請參照圖10A,在此範例中檔案配置表1002的叢集索引欄位1002a與登錄值(entry value)欄位1002b依序地記錄每一叢集對應的登錄值,其中記錄於登錄值欄位1002b中的登錄值是以特殊字元來表示所對應之叢集的狀態。例如,在FAT32中,“0000000h”表示此叢集為閒置邏輯位址(即,未儲存資料),“FFFFFF7h”表示此叢集為壞邏輯位址(即,無法儲存資料的壞叢集),“FFFFFF8h”-“FFFFFFFh”表示此叢集為儲存檔案之最後一個邏輯位址等。
請參照圖10B,檔案描述區塊的檔案名稱欄位1004a與起始位址欄位1004b是用以記錄在可攜式記憶體儲存裝置100中所儲存之檔案的檔案名稱及儲存此檔案的起始邏輯位址。每一個檔案會對應一個檔案描述區塊。必須瞭解的是,圖10B所示之檔案描述區塊僅為一範例,實際上檔案描述區塊更包括檔案長度等其他屬性欄位來描述所儲存之檔案的資訊。
請同時參照圖10A與圖10B,從目錄區906之檔案描述區塊1004-1與1004-2中的空間資訊可以得知,可攜式記憶體儲存裝置100中儲存有“f1.exe”與“f2.dll”兩個檔案,其中儲存“f1.exe”的起始邏輯位址為叢集600(1)而儲存“f2.dll”的起始邏輯位址為叢集600(4)。此外,從檔案配置表1002中的登錄值更可得知“f1.exe”的內容是依序地被儲存在叢集600(1)、叢集600(2)與叢集600(3)中,並且“f2.dll”的內容是被儲存在叢集600(4)中。
此外,值得一提的是,在FAT 32中,由於目錄區906是與檔案區908一起管理。因此,屬於目錄區906的叢集是可被動態地擴充以記錄更多檔案描述區塊,而使得可攜式記憶體儲存裝置100可儲存之檔案數量不受限制。具體來說,在檔案配置表1002中會記錄目錄區的起始叢集對應的下一個登錄值。例如,如圖10A所示,當可攜式記憶體儲存裝置100被格式化時,叢集600(0)是目錄區的起始叢集並且叢集600(0)的登錄值為“FFFFFFFh”。也就是說,檔案描述區塊1004-1與1004-2是由叢集600(0)所儲存。之後,當叢集600(0)的儲存空間已被填滿時,作業系統1200會依據檔案配置表1002從檔案區908中選擇一個空的叢集來繼續存放新增的檔案描述區塊並且在檔案配置表1002中將叢集600(0)的登錄值更新為所選擇之叢集。
圖10C是根據本發明範例實施例所繪示的檔案配置表區的範例。
請同時參照圖10A與圖10C,檔案配置表區904包括扇區700(M)~扇區700(M+K)。扇區700(M)的前2個登錄值(即,前8個位元組)會被保留並記錄為"F8hFFhFFh0Fh"與"FFhFFhFFh0Fh"。第2個登錄值為"FFFFFFFh"以對應目錄區906的叢集600(0)。第3個登錄值為"600(2)"以對應叢集600(1)。第4個登錄值為"600(3)"以對應叢集600(2)。第5個登錄值為"FFFFFFFh"以對應叢集600(3)。第6個登錄值為"FFFFFFFh"以對應叢集600(4)。第7個登錄值為"0000000h"以對應叢集600(5)。以此類推,對應叢集600(0)~600(W)都會被記錄在檔案配置表區904的扇區中。
在本範例實施例中,記憶體控制器104會根據模式切換開關108的狀態來改變檔案配置表1002。具體來說,當模式切換開關108處於資料保護模式時,記憶體管理電路202會執行資料隱藏程序來改變檔案配置表1002。
圖11是根據本發明範例實施例中所繪示的資料隱藏程序的流程圖。
請參照圖11,在步驟S1101中記憶體控制器104的記憶體管理電路202會依據目前的檔案配置1002表產生檔案配置表備份,並且在步驟S1103中記憶體管理電路202會依據目前的檔案描述區塊來產生檔案描述區塊備份。
例如,記憶體管理電路202會完整地複製目前的檔案配置表1002以產生檔案配置表備份並且複製對應目前儲存於檔案區908之檔案的檔案描述區塊來產生檔案描述區塊備份。值得一提的是,在本發明另一範例實施例中,記憶體管理電路202亦可僅複製在檔案配置表1002中對應目前儲存於檔案區908之檔案的登錄值。
在步驟S1105中,記憶體管理電路202會將所產生的檔案配置表備份與檔案描述區塊備份儲存於系統區406中。
然後,在步驟S1107中,記憶體管理電路202會將檔案配置表1002中對應目前用以儲存檔案區908之檔案的登錄值標記為壞叢集,並且在步驟S1109中記憶體管理電路202會抹除目錄區906內的檔案描述區塊。
基此,當在執行此資料隱藏程序之後作業系統1200依據修改後的檔案配置表1002來存取記憶體模組106時,作業系統1200無法獲取原本儲存於檔案區908之檔案的相關資訊來進行存取。
圖12是根據本發明範例實施例所繪示檔案配置表區的另一示意圖,其係繪示在圖10A、10B與10C所示的狀態下執行上述資料隱藏程序時修改後檔案配置表。
請參照圖10A、10B與10C,目前儲存於檔案區908的檔案為“f1.exe”與“f2.dll”兩個檔案(以下統稱為第一檔案),目錄區906存有對應“f1.exe”與“f2.dll”的檔案描述區塊1004-1與1004-2(以下統稱為第一檔案描述區塊)檔案配置表1002的第3個登錄值~第6個登錄值(以下統稱為第一登錄值)會記錄用以儲存第一檔案之邏輯位址的登錄值。
請參照圖12,在記憶體管理電路202複製圖10C所示之檔案配置表1002來產生檔案配置表備份之後,記憶體管理電路202會將檔案配置表1002中的第一登錄值標記為壞叢集。例如,在本範例實施例中,檔案系統為FAT 32的例子中,檔案配置表1002的第一登錄值會被標記為“FFFFFF7h”。此外,在執行上述資料隱藏程序期間,分割區900中的第一檔案描述區塊會被抹除。
基此,在執行上述資料隱藏程序之後,主機系統1000的作業系統1200將無法識別出檔案區908存有第一檔案。此外,由於檔案配置表1002的第一登錄值已被標記為壞叢集,因此,檔案區908中用以儲存第一檔案的邏輯位址將不會有機會被作業系統1200用來儲存其他資料。也就是說,倘若可攜式記憶體儲存裝置100的容量為1GB(Gigabyte)並且第一檔案為100MB(Megabyte)時,作業系統1200識別可攜式記憶體儲存裝置100的可用容量為900MB。
也就是說,在圖12所示的狀態下,作業系統1200可繼續儲存新的檔案至分割區900中。
圖13A與13B為根據本發明範例實施例所繪示的檔案描述區塊與檔案配置表區的另一範例。
請參照圖13A與13B,倘若在圖12所示的狀態下,作業系統1200將需佔用兩個叢集的第二檔案(例如,“f3.exe”)儲存至分割區900中時,作業系統1200會在目錄區906中新增對應第二檔案的檔案描述區塊1004-3(或稱為第二檔案描述區塊)並且將檔案配置表1002的第7個登錄值與第8個登錄值分別地改為“600(6)”與“FFFFFFFh”,以記錄叢集600(5)與600(6)是用以儲存第二檔案。
除了上述資料隱藏程序外,在本範例實施例中,當模式切換開關108處於非資料保護模式時,記憶體管理電路202會判斷系統區406中是否存有中檔案配置表備份與檔案描述區塊備份。並且,倘若系統區406中存有中檔案配置表備份與檔案描述區塊備份時,記憶體管理電路202會執行資料顯示程序來改變檔案配置表1002以使作業系統1200可存取分割區900中的所有邏輯位址。
圖14是根據本發明範例實施例中所繪示的資料顯示程序的流程圖。
請參照圖14,在步驟S1401中記憶體控制器104的記憶體管理電路202會依據系統區406中的檔案配置表備份來更改檔案配置表1002中對應用以儲存原先被隱藏之檔案的邏輯位址的登錄值。並且,在步驟S1403中記憶體管理電路202會依據檔案描述區塊備份來回存原先被抹除之檔案描述區塊。
之後,在步驟S1405中記憶體管理電路202會抹除儲存於系統區406中的檔案配置表備份與檔案描述區塊備份。
圖15A與15B為根據本發明範例實施例所繪示的檔案配置表區與檔案描述區塊的另一範例,其係記憶體管理電路202接續圖13A與圖13B的狀態執行上述資料顯示程序。
請參照圖15A與圖15B,第一檔案描述區塊(即,檔案描述區塊1004-1與檔案描述區塊1004-2)會被回存至目錄區906中。例如,第一檔案描述區塊會接續在第二檔案描述區塊之後儲存於目錄區906中。此外,檔案配置表1002的第3個登錄值~第6個登錄值會依據檔案配置表備份被回復為、“600(2)”、“600(3)”、“FFFFFFFh”與“FFFFFFFh”。此時,主機系統1000的作業系統1200可依據目前的檔案配置表1002與檔案描述區塊讀取第一檔案與第二檔案(即,“f1.exe”、“f2.dll”與“f3.exe”)。
圖16是根據本發明範例實施例所繪示的資料保護方法的流程圖。
請參照圖16,當可攜式記憶體儲存裝置100耦接至主機系統1000時,在步驟S1601中,記憶體管理電路202會判斷模式訊號是否處於資料保護模式。例如,如上所述,模式訊號是由模式切換開關108所產生。然而,必須瞭解的是,本發明不限於此。
倘若模式訊號處於資料保護模式時,則在步驟S1603中記憶體管理電路202會執行上述資料隱藏程序。然後,圖16的流程會被結束。例如,圖16的流程結束後,記憶體管理電路202會開使處理來自於主機系統1000的寫入指令、讀取指令或抹除指令等。
倘若模式訊號非處於資料保護模式時,則在步驟S1605中記憶體管理電路202會判斷系統區406是否存有檔案配置表備份與檔案描述區塊備份。
倘若系統區406未存有檔案配置表備份與檔案描述區塊備份,則圖16的流程會被結束。反之,倘若系統區406存有檔案配置表備份與檔案描述區塊備份時,在步驟S1607中記憶體管理電路202會執行上述資料顯示程序。然後,圖16的流程會被結束。
綜上所述,本發明範例實施例的資料保護方法、記憶體控制器與可攜式記憶體儲存裝置能夠根據模式切換開關的模式訊號隱藏或顯示儲存於記憶體模組中的檔案。此外,使用者可很方便的操作模式切換開關以選擇資料保護模式或非資料保護模式。基此,當使用者將隨身碟借給他人時,透過模式選擇開關使用者可避免他人存取其欲保護之檔案。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
1000...主機系統
1100...電腦
1102...微處理器
1104...隨機存取記憶體
1106...輸入/輸出裝置
1108...系統匯流排
1110...資料傳輸介面
1112...主儲存裝置
1200...作業系統
1202...滑鼠
1204...鍵盤
1206...顯示器
1208...印表機
1212...隨身碟
100...可攜式記憶體儲存裝置
102...連接器
104...記憶體控制器
106...記憶體模組
108...模式切換開關
2100...主體
2200...帽蓋
304(0)~304(R)...實體區塊
202...記憶體管理電路
204...主機介面
206...記憶體介面
252...緩衝記憶體
254...電源管理電路
256...錯誤檢查與校正電路
402...資料區
404...備用區
406...系統區
408...取代區
510(0)~510(H)...邏輯區塊
600(0)~600(W)...叢集
900...分割區
902...主引導磁區
904...檔案配置區
906...目錄區
908...檔案區
1002...檔案配置表
1002a...叢集索引欄位
1002b...登錄值欄位
1004-1、1004-2、1004-3...檔案描述區塊
1004a...檔案名稱欄位
1004b...起始位址欄位
700(0)~700(M+K)...扇區
S1101、S1103、S1105、S1107、S1109...資料隱藏程序的步驟
S1401、S1403、S1405...資料顯示程序的步驟
S1601、S1603、S1605、S1607...資料保護方法的步驟
圖1A是根據本發明範例實施例繪示使用記憶體儲存裝置的主機系統。
圖1B是根據本發明範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖2A是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
圖2B與2C是根據本發明範例實施例所繪示的可攜式記憶體儲存裝置的外觀示意圖。
圖3是根據本發明範例實施例所繪示的記憶體控制器與記憶體晶片的概要方塊圖。
圖4與圖5是根據本發明範例實施例所繪示之管理記憶體晶片的範例示意圖。
圖6~圖8是根據本發明範例實施例所繪示的寫入資料至記憶體晶片的範例。
圖9為根據本發明範例實施例所繪示之以檔案系統格式化記憶體模組之邏輯位址的範例。
圖10A與10B為根據本發明範例實施例所繪示的檔案配置表與檔案描述區塊的範例。
圖10C是根據本發明範例實施例所繪示的檔案配置表區的範例。
圖11是根據本發明範例實施例中所繪示的資料隱藏程序的流程圖。
圖12是根據本發明範例實施例所繪示檔案配置表區的另一示意圖。
圖13A與13B為根據本發明範例實施例所繪示的檔案配置表區與檔案描述區塊的另一範例。
圖14是根據本發明範例實施例中所繪示的資料顯示程序的流程圖。
圖15A與15B為根據本發明範例實施例所繪示的檔案配置表區與檔案描述區塊的另一範例。
圖16是根據本發明範例實施例所繪示的資料保護方法的流程圖。
S1601、S1603、S1605、S1607...資料保護方法的步驟
Claims (14)
- 一種資料保護方法,用於一非揮發性記憶體模組,其中該非揮發性記憶體模組具有多個實體區塊,該資料保護方法包括:將該些實體區塊至少分組為一資料區、一備用區與一系統區;配置多個邏輯位址並且將該些邏輯位址分組為多個邏輯區塊以映射該資料區的實體區塊,其中該些邏輯位址會被格式化為一個分割區,該分割區包括一檔案配置表區、一檔案區與一目錄區,該檔案配置表區儲存一檔案配置表,該檔案區儲存一第一檔案,該目錄區儲存對應該第一檔案的一第一檔案描述區塊,並且該檔案配置表記錄對應用以儲存該第一檔案的邏輯位址的至少一第一登錄值;判斷一模式訊號是否處於一資料保護模式;以及當該模式切換開關處於該資料保護模式時,執行一檔案隱藏程序,其中該檔案隱藏程序包括:依據該檔案配置表產生一檔案配置表備份;將該檔案配置表備份儲存在該系統區中;依據該第一檔案描述區塊產生一檔案描述區塊備份;將該檔案描述區塊備份儲存於該系統區中;在該檔案配置表中將對應用以儲存該第一檔案的邏輯位址的該至少一第一登錄值標記為無法儲存資料的壞叢集;以及抹除在該分割區中的該第一檔案描述區塊。
- 如申請專利範圍第1項所述之資料保護方法,其中依據該檔案配置表產生該檔案配置表備份的步驟包括:複製在該檔案配置表中對應用以儲存該第一檔案的該些邏輯位址的該至少一第一登錄值以產生該檔案配置表備份。
- 如申請專利範圍第1項所述之資料保護方法,其中依據該檔案配置表產生該檔案配置表備份的步驟包括:完整地複製該檔案配置表以產生該檔案配置表備份。
- 如申請專利範圍第1項所述之資料保護方法,更包括:當該模式訊號非處於該資料保護模式時,判斷該系統區是否存有該檔案配置表備份與該檔案描述區塊備份,其中當該系統區存有該檔案配置表備份與該檔案描述區塊備份時,執行一檔案顯示程序,其中該檔案顯示程序包括:依據儲存於該系統區中的該檔案配置表備份更改在該檔案配置表中對應用以儲存該第一檔案的該些邏輯位址的該至少一第一登錄值;依據儲存於該系統區的該檔案描述區塊備份在該目錄區中回存該第一檔案描述區塊;以及抹除儲存於該系統區中的該檔案配置表備份與該檔案描述區塊備份。
- 如申請專利範圍第4項所述之資料保護方法,更包括:在執行該檔案隱藏程序之後且執行該檔案顯示程序之前依據來自於一主機系統的一寫入指令將一第二檔案寫入至該資料區的該些實體區塊中,其中該第二檔案被儲存在該檔案區中,對應該第二檔案的一第二檔案描述區塊被儲存在該目錄區中並且該檔案配置表記錄對應用以儲存該第二檔案的邏輯位址的至少一第二登錄值。
- 如申請專利範圍第5項所述之資料保護方法,其中依據儲存於該系統區的該檔案描述區塊備份在該目錄區中回存該第一檔案描述區塊的步驟包括:依據儲存於該系統區的該檔案描述區塊備份在該目錄區中接續該第二檔案描述區塊來儲存該第一檔案描述區塊。
- 如申請專利範圍第1項所述之資料保護方法,更包括:配置一模式切換開關,其中該模式訊號是由該模式切換開關來產生。
- 一種記憶體控制器,用於管理一非揮發性記憶體模組,其中該非揮發性記憶體模組具有多個實體區塊,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該非揮發性記憶體模組;以及一記憶體管理電路,耦接至該主機介面與該記憶體介面,其中該記憶體管理電路用以執行至少下列程序:將該些實體區塊至少分組為一資料區、一備用區與一系統區;配置多個邏輯位址並且將該些邏輯位址分組為多個邏輯區塊以映射該資料區的實體區塊,其中該些邏輯位址會被格式化為一個分割區,該分割區包括一檔案配置表區、一檔案區與一目錄區,該檔案配置表區儲存一檔案配置表,該檔案區儲存一第一檔案,該目錄區儲存對應該第一檔案的一第一檔案描述區塊,並且該檔案配置表記錄對應用以儲存該第一檔案的邏輯位址的至少一第一登錄值;判斷一模式訊號是否處於一資料保護模式;以及當該模式切換開關處於該資料保護模式時,執行一檔案隱藏程序,其中該檔案隱藏程序包括:依據該檔案配置表產生一檔案配置表備份;將該檔案配置表備份儲存在該系統區中;依據該第一檔案描述區塊產生一檔案描述區塊備份;將該檔案描述區塊備份儲存於該系統區中;在該檔案配置表中將對應用以儲存該第一檔案的邏輯位址的該至少一第一登錄值標記為無法儲存資料的壞叢集;以及抹除在該分割區中的該第一檔案描述區塊。
- 一種可攜式記憶體儲存裝置,包括:一模式切換開關,一連接器,用以耦接至一主機系統;一非揮發性記憶體模組,具有多個實體區塊;以及一記憶體控制器,耦接至該模式切換開關、該連接器與該非揮發性記憶體模組,並且用以執行至少下列程序:將該些實體區塊至少分組為一資料區、一備用區與一系統區;配置多個邏輯位址並且將該些邏輯位址分組為多個邏輯區塊以映射該資料區的實體區塊,其中該些邏輯位址會被格式化為一個分割區,該分割區包括一檔案配置表區、一檔案區與一目錄區,該檔案配置表區儲存一檔案配置表,該檔案區儲存一第一檔案,該目錄區儲存對應該第一檔案的一第一檔案描述區塊,並且該檔案配置表記錄對應用以儲存該第一檔案的邏輯位址的至少一第一登錄值;判斷該模式切換開關的一模式訊號是否處於一資料保護模式;以及當該模式切換開關的該模式訊號處於該資料保護模式時,執行一檔案隱藏程序,其中該檔案隱藏程序包括:依據該檔案配置表產生一檔案配置表備份;將該檔案配置表備份儲存在該系統區中;依據該第一檔案描述區塊產生一檔案描述區塊備份;將該檔案描述區塊備份儲存於該系統區中;在該檔案配置表中將對應用以儲存該第一檔案的邏輯位址的該至少一第一登錄值標記為無法儲存資料的壞叢集;以及抹除在該分割區中的該第一檔案描述區塊。
- 如申請專利範圍第9項所述之可攜式記憶體儲存裝置,其中該模式切換開關包括一按鈕、一指撥開關、一磁感應開關、一無線射頻辨識(Radio-frequency identification,RFID)開關或一指紋辨識開關。
- 一種資料保護方法,用於一可攜式記憶體儲存裝置,其中該可攜式記憶體儲存裝置具有一非揮發性記憶體模組並且該非揮發性記憶體模組具有多個實體區塊,該資料保護方法包括:將該些實體區塊至少分組為一資料區、一備用區與一系統區;配置多個邏輯位址並且將該些邏輯位址分組為多個邏輯區塊以映射該資料區的實體區塊,其中該些邏輯位址會被格式化為一個分割區,該分割區包括一檔案配置表區、一檔案區與一目錄區,該檔案配置表區儲存一檔案配置表,該檔案區儲存一第一檔案,該目錄區儲存對應該第一檔案的一第一檔案描述區塊,並且該檔案配置表記錄對應用以儲存該第一檔案的邏輯位址的至少一第一登錄值;判斷一模式訊號是否處於一資料保護模式;當該模式切換開關處於該資料保護模式時,執行一檔案隱藏程序來修改該檔案配置表,其中耦接至該可攜式記憶體儲存裝置的一主機系統根據修改後的該檔案配置表僅能存取該些邏輯位址之中的一部分邏輯位址,其中該第一檔案被儲存在該些邏輯位址之中的另一部分邏輯位址;以及當該模式訊號非處於該資料保護模式時,執行一檔案顯示程序來修改該檔案配置表,其中該主機系統根據修改後的該檔案配置表存取所有該些邏輯位址。
- 如申請專利範圍第11項所述之資料保護方法,其中該檔案隱藏程序包括:依據該檔案配置表產生一檔案配置表備份;將該檔案配置表備份儲存在該系統區中;依據該第一檔案描述區塊產生一檔案描述區塊備份;將該檔案描述區塊備份儲存於該系統區中;在該檔案配置表中將對應用以儲存該第一檔案與該第一檔案描述區塊的邏輯位址的該至少一第一登錄值標記為無法儲存資料的壞叢集;以及抹除在該分割區中的該第一檔案描述區塊。
- 如申請專利範圍第12項所述之資料保護方法,其中該檔案顯示程序包括:依據儲存於該系統區中的該檔案配置表備份更改在該檔案配置表中對應用以儲存該第一檔案的該些邏輯位址的該至少一第一登錄值;依據儲存於該系統區的該檔案描述區塊備份在該目錄區中回存該第一檔案描述區塊;以及抹除儲存於該系統區中的該檔案配置表備份與該檔案描述區塊備份。
- 如申請專利範圍第11項所述之資料保護方法,更包括:配置一模式切換開關,其中該模式訊號是由該模式切換開關來產生。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099125120A TWI435219B (zh) | 2010-07-29 | 2010-07-29 | 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 |
US12/882,212 US8312554B2 (en) | 2010-07-29 | 2010-09-15 | Method of hiding file at data protecting mode for non-volatile memory module, memory controller and portable memory storage apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099125120A TWI435219B (zh) | 2010-07-29 | 2010-07-29 | 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201205288A TW201205288A (en) | 2012-02-01 |
TWI435219B true TWI435219B (zh) | 2014-04-21 |
Family
ID=45527879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099125120A TWI435219B (zh) | 2010-07-29 | 2010-07-29 | 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8312554B2 (zh) |
TW (1) | TWI435219B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563681B1 (en) | 2012-08-08 | 2017-02-07 | Amazon Technologies, Inc. | Archival data flow management |
US9767098B2 (en) | 2012-08-08 | 2017-09-19 | Amazon Technologies, Inc. | Archival data storage system |
KR20120124285A (ko) * | 2011-05-03 | 2012-11-13 | 삼성전자주식회사 | 배드 블록 관리를 위한 방법 및 메모리 시스템 |
US8811913B2 (en) * | 2012-02-21 | 2014-08-19 | Htc Corporation | RF calibration data management in portable device |
TWI563383B (en) * | 2012-04-25 | 2016-12-21 | Phison Electronics Corp | Memory formatting method, memory controller and memory storage apparatus |
TWI498738B (zh) * | 2012-05-18 | 2015-09-01 | Phison Electronics Corp | 檔案保護方法與系統及其記憶體控制器與記憶體儲存裝置 |
US9225675B2 (en) | 2012-08-08 | 2015-12-29 | Amazon Technologies, Inc. | Data storage application programming interface |
US10120579B1 (en) | 2012-08-08 | 2018-11-06 | Amazon Technologies, Inc. | Data storage management for sequentially written media |
US9779035B1 (en) | 2012-08-08 | 2017-10-03 | Amazon Technologies, Inc. | Log-based data storage on sequentially written media |
US9652487B1 (en) | 2012-08-08 | 2017-05-16 | Amazon Technologies, Inc. | Programmable checksum calculations on data storage devices |
US9830111B1 (en) | 2012-08-08 | 2017-11-28 | Amazon Technologies, Inc. | Data storage space management |
US8959067B1 (en) | 2012-08-08 | 2015-02-17 | Amazon Technologies, Inc. | Data storage inventory indexing |
US9904788B2 (en) | 2012-08-08 | 2018-02-27 | Amazon Technologies, Inc. | Redundant key management |
US8805793B2 (en) | 2012-08-08 | 2014-08-12 | Amazon Technologies, Inc. | Data storage integrity validation |
JP2014142748A (ja) * | 2013-01-23 | 2014-08-07 | Sony Corp | 記憶装置およびその制御方法 |
US9652376B2 (en) * | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
US9645950B2 (en) | 2013-01-31 | 2017-05-09 | Vmware, Inc. | Low-cost backup and edge caching using unused disk blocks |
US10558581B1 (en) * | 2013-02-19 | 2020-02-11 | Amazon Technologies, Inc. | Systems and techniques for data recovery in a keymapless data storage system |
GB2520061B (en) * | 2013-11-08 | 2016-02-24 | Exacttrak Ltd | Data accessibility control |
US20150180655A1 (en) * | 2013-12-20 | 2015-06-25 | Huawei Technologies Co., Ltd. | Data storing and reading methods, apparatuses and devices |
US11386060B1 (en) | 2015-09-23 | 2022-07-12 | Amazon Technologies, Inc. | Techniques for verifiably processing data in distributed computing systems |
US10129269B1 (en) * | 2017-05-15 | 2018-11-13 | Forcepoint, LLC | Managing blockchain access to user profile information |
US12086450B1 (en) | 2018-09-26 | 2024-09-10 | Amazon Technologies, Inc. | Synchronous get copy for asynchronous storage |
CN114442903B (zh) * | 2020-10-30 | 2024-07-05 | 伊姆西Ip控股有限责任公司 | 管理存储系统的方法、电子设备和计算机程序产品 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6286013B1 (en) * | 1993-04-01 | 2001-09-04 | Microsoft Corporation | Method and system for providing a common name space for long and short file names in an operating system |
KR100527276B1 (ko) * | 2004-06-04 | 2005-12-13 | 주식회사 르노소프트 | 시스템 변경 데이터를 시스템 영역 내에서 비선점적으로관리하는 컴퓨터 하드디스크 시스템 데이터 보호 장치 및그 방법 |
TWI420305B (zh) * | 2010-10-08 | 2013-12-21 | Phison Electronics Corp | 記憶體儲存裝置、其記憶體控制器與自動產生填充檔案的方法 |
-
2010
- 2010-07-29 TW TW099125120A patent/TWI435219B/zh active
- 2010-09-15 US US12/882,212 patent/US8312554B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW201205288A (en) | 2012-02-01 |
US8312554B2 (en) | 2012-11-13 |
US20120030411A1 (en) | 2012-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI435219B (zh) | 資料保護方法、記憶體控制器及可攜式記憶體儲存裝置 | |
TWI425355B (zh) | 資料存取方法、記憶體控制器與儲存系統 | |
TWI408551B (zh) | 快閃記憶體儲存系統及其控制器與資料處理方法 | |
US8001317B2 (en) | Data writing method for non-volatile memory and controller using the same | |
US8239639B2 (en) | Method and apparatus for providing data type and host file information to a mass storage system | |
TWI515735B (zh) | 資料抹除方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI592800B (zh) | 記憶體管理方法及使用所述方法的儲存控制器 | |
TWI423026B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI385518B (zh) | 用於快閃記憶體的資料儲存方法及儲存系統 | |
US20140250273A1 (en) | Re-building mapping information for memory devices | |
TWI436212B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
US9176865B2 (en) | Data writing method, memory controller, and memory storage device | |
TWI479505B (zh) | 資料管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI498738B (zh) | 檔案保護方法與系統及其記憶體控制器與記憶體儲存裝置 | |
TWI421870B (zh) | 用於快閃記憶體的資料寫入方法及其控制器與儲存系統 | |
TWI438630B (zh) | 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置 | |
US9032135B2 (en) | Data protecting method, memory controller and memory storage device using the same | |
TWI451439B (zh) | 記憶體儲存裝置、其記憶體控制器與資料寫入方法 | |
CN102200946B (zh) | 资料存取方法、记忆体控制器与储存系统 | |
TW201344434A (zh) | 記憶體格式化方法、記憶體控制器及記憶體儲存裝置 | |
CN107943710B (zh) | 存储器管理方法及使用所述方法的存储控制器 | |
CN102375781B (zh) | 数据保护方法、存储器控制器及可携式存储器储存装置 | |
TWI451247B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI414940B (zh) | 區塊管理與資料寫入方法、快閃記憶體儲存系統與控制器 | |
TWI553477B (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |