TWI389001B - 檔案系統及檔案系統轉換方法 - Google Patents
檔案系統及檔案系統轉換方法 Download PDFInfo
- Publication number
- TWI389001B TWI389001B TW098117964A TW98117964A TWI389001B TW I389001 B TWI389001 B TW I389001B TW 098117964 A TW098117964 A TW 098117964A TW 98117964 A TW98117964 A TW 98117964A TW I389001 B TWI389001 B TW I389001B
- Authority
- TW
- Taiwan
- Prior art keywords
- file system
- file
- storage
- data
- storage unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 23
- 230000001131 transforming effect Effects 0.000 title 1
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本發明有關於一種檔案系統的轉換方法以及一種用以管理儲存裝置的檔案系統,特別是有關於將FAT系統轉換成一資料團塊系統的轉換方法。
在習知技術中,通常在儲存裝置使用FAT(File Allocation Table,檔案配置表)系統來作為管理儲存裝置的儲存空間及記憶資料的工具。然而,在FAT系統下欲存取資料時須在FAT索引表中尋找下一個可用的磁簇(Cluster)並更新FAT索引表。此類尋找的時間會隨著儲存裝置的使用空間以及儲存空間分散的程度(或稱磁碟破碎程度)而有所不同。一般而言,儲存空間越分散,所需時間越長。而且,每次更新FAT索引表時,必須從FAT索引表的表頭從頭開始尋找。因此會耗費相當多的時間,無法滿足需要資料快速讀寫的裝置(如個人數位錄影機-PVR)的讀寫需求。
此外,有些支援FAT檔案系統的環境具有對於同一檔案一次僅能開放一個讀或寫的權限,因此在讀完一檔案後,若欲對同一檔案執行寫的動作,則必須將此檔案關閉後再打開才能執行,反之亦然。如此做法將會讓使用FAT系統的儲存裝置之讀寫效能降低。
因此,本發明之一目的為提供一種檔案系統以及產生此種檔案系統的檔案系統轉換方法,用以改善舊有檔案系統搜尋速度慢以及無法同時讀寫的缺點。
本發明之一實施例揭露了一種檔案系統轉換方法,用以將一第一檔案系統轉換為一第二檔案系統,該第一檔案系統係藉由一檔案配置表來管理一儲存裝置,該檔案系統轉換方法包含:格式化該檔案配置表,使該儲存裝置被劃分成包含複數儲存單元;以及建立一儲存單元索引表,用以記錄該等儲存單元之資訊。
本發明之另一實施例揭露了一種檔案系統,用以管理一儲存裝置內之檔案資料,其包含:一檔案配置表,被格式化成具有複數虛擬檔案,使該儲存裝置為被劃分成包含複數儲存單元用以儲存資料,其中該等虛擬檔案之每一係對應至該等儲存單元之其中之一;以及一儲存單元索引表,用以記錄該等儲存單元之資訊。
藉由上述之實施例,可加快資料存取的速度,且可改善舊有之FAT系統中,檔案不能同時讀取和寫入的問題。
FAT系統係利用一FAT索引表(檔案配置表)來管理一儲存裝置。此種做法下,資料儲存至使用FAT系統的儲存裝置時可能是分散的,而其儲存的位址會記錄至FAT索引表中,在讀取時會查詢FAT索引表以將所需資料讀取出來。在本發明所提供的實施例中,係在FAT系統的架構下,預先格式化FAT索引表,將儲存裝置中的儲存空間規畫成複數個資料團塊(bulk),每一資料團塊可視為是一儲存單元,並產生一資料團塊索引表(bulk index table),以建立一資料團塊系統來管理儲存裝置,其中該資料團塊索引表即為資料團塊系統中的一儲存單元索引表。
詳細來說,本發明之檔案系統轉換方法係預先在FAT索引表中填入適當的值,以建立複數個資料團塊,每一資料團塊在FAT系統中會被看作是一個檔案,也就是說,本發明係預先在FAT索引表上建立複數個檔案,每一檔案(意即每一資料團塊)係分配到儲存裝置一預定的儲存空間,因此,每一資料團塊可視為是一儲存單元。在一實施例中,該些資料團塊係連續地分佈在儲存裝置,而每個資料團塊係具有相同的大小(即佔有相同大小的儲存空間)。雖然FAT索引表中已建立了複數個檔案,但一開始每個檔案在儲存裝置中實際上並未存有對應的資料,亦即,該等檔案為可視為虛擬的檔案。舉例來說,請參考第1圖,第1圖係一FAT索引表經本發明之檔案系統轉換方法預先格式化出多個資料團塊之局部示意圖,在第1圖之實施例中,FAT索引表101係被格式化成複數個64Mb大小的資料團塊,其中FAT索引表101係用以管理儲存裝置103的檔案資料。格式化FAT索引表後,本發明之檔案系統轉換方法更建立一資料團塊索引表,用來記錄各個資料團塊的使用狀況。底下將對於資料團塊、資料團塊檔案以及資料團塊索引做詳細的說明。
第2圖繪示了根據本發明之一實施例的資料檔案以及資料團塊之示意圖。如第2圖所示,儲存裝置中的儲存空間200之至少一部份被劃分成複數資料團塊201~217,儲存空間218則是未被使用的儲存空間。資料團塊201~217的大小可根據不同的需求而有不同的設定。資料檔案(data file)219、221、223、225以及227分別儲存在資料團塊201~217中。資料檔案219係儲存在連續的兩資料團塊201和203中,資料檔案221、223以及225則分別的儲存在資料團塊207~211上,而資料檔案227係儲存在連續的兩資料團塊215和217中。由上述可知,當資料檔案須用兩個以上的資料團塊來儲存時,會連續的儲存在連續的資料團塊中,而不會像習知的FAT系統一樣係儲存在分散的磁區中。而其儲存的位址相關資訊會儲存在資料團塊索引表當中,在存取的時候不須像習知的FAT系統一樣去重新尋找,因此可增加讀寫時的速度。在一較佳實施例中,每一資料團塊僅用來儲存單一資料檔案,意即,當一資料團塊儲存完一資料檔案後,儘管還有剩餘儲存空間,亦不會用來儲存其它資料檔案。而當一資料檔案之大小超過一資料團塊的容量時,該資料檔案係可被儲存於多個連續的資料團塊中。
第3圖繪示了根據本發明之實施例的資料團塊索引表300之示意圖。如第3圖所示,資料團塊索引表300包含一資料團塊首部(Bulk Header)資訊301、一區段起始資訊(Sector Starting Information)303、一配置表(Allocation Table)305、以及複數資料團塊條目(Bulk Entry)資訊307~317。在一實施例中,資料團塊索引表300的每個部分都佔據了4K大小的空間,因此整個資料團塊索引表300會佔據(3+N)*4K的大小,其中N為資料團塊條目的數目,而每一資料團塊條目都記錄了一資料團塊中所儲存的資料檔案之資訊。資料團塊首部資訊301可視為系統資訊,其紀錄了資料團塊系統的各種資訊,例如:整個系統的資料團塊總數、資料團塊系統使用儲存裝置的容量大小、已儲存有資料檔案的資料團塊數目等。區段起始資訊303係記載儲存單元實體資訊,其紀錄了根據本發明之實施例劃分出的儲存單元與儲存裝置的實體單元之對應關係。舉例來說,區段起始資訊303紀錄了每一個資料團塊在儲存裝置中的起始位置。
配置表305係為儲存單元與資料檔案的關聯資訊,其紀錄了儲存單元(例如:資料團塊)和資料檔案間的關連性。舉例來說,配置表305紀錄了每一資料檔案係儲存於哪個或哪些資料團塊之中。資料團塊條目資訊307~317係為個別儲存單元的資訊,每一資料團塊條目資訊中紀錄了所儲存的資料檔案的各種詳細資訊。舉例來說,資料團塊條目資訊307~317分別紀錄了其所儲存的資料檔案的識別碼、檔案名稱,檔案長度、操作模式等。
資料團塊系統在資料檔案進行存取時,係支援至少二個存取參數(例如:讀取指標及寫入指標)來紀錄資料單元的存取位置,舉例來說,讀取指標及寫入指標是動態地記錄在存放於系統的記憶體中,並根據已讀寫之資料檔案的資料量更新存取參數的值。詳細來說,在開始寫入資料檔案之前,會以檔案搜尋功能以及檔案讀寫位置來定出資料檔案的絕對位址(即找出於儲存裝置中對應的區段值,意即,絕對位址為儲存裝置中的實體位址),來對檔案進行寫入,此步驟可簡述如公式(一)。
區段=資料位元開始區段+(搜尋位元長度/每一區段的位元)
經由上述之步驟,讀取的區段和寫入的區段可由公式(二)和(三)計算而得。
讀取區段=資料位元開始區段+(檔案讀取位元長度/每一區段的位元)
寫入區段=資料位元開始區段+(檔案寫入位元長度/每一區段的位元)
根據上述之存取動作,可讓資料檔案在存取時不須和舊有的FAT系統一樣,得先搜尋FAT索引以找出下一個連續的磁簇,而是直接以絕對位置做存取。因此可加快其存取速度。而且不像某些舊有的FAT系統一樣,對於同一檔案一次僅能開放一個讀或寫的權限,因此不須要不斷的開啟或關閉檔案,因而可節省檔案存取的時間。
第4圖係本發明檔案系統轉換方法之一實施例之流程圖,在此實施例中本發明之檔案系統轉換方法係用以將一FAT系統轉換為一資料團塊系統,其包含下列之步驟:
格式化FAT系統之檔案配置表,使儲存裝置被劃分成包含複數個資料團塊,而每一資料團塊可視為是一儲存單元。在此步驟中,係於檔案配置表中建立複數個虛擬檔案,並使該些虛擬檔案之每一對應至該些儲存單元之其中之一。
建立一資料團塊索引表,用以記錄該等儲存單元之資訊。資料團塊索引表係包含一資料團塊首部資訊、一區段起始資訊、一配置表、以及複數資料團塊條目資訊等。
本發明之檔案系統轉換方法之其他詳細特徵已揭露於上述實施例當中,故在此不再贅述。在一實施例,上述的動作可藉由一控制電路(例如:一處理器)執行一特定韌體或軟體來實現,然,亦可藉由個別的電路來實現。
藉由本發明提出之檔案系統轉換方法,可使FAT系統轉換成一資料團塊系統,而本發明提出之資料團塊系統係可加快資料存取的速度,且可改善舊有之FAT系統中,檔案不能同時讀取和寫入的問題。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
101...FAT索引表
103...儲存裝置
200...儲存裝置中的儲存空間
201~217...資料團塊
218...儲存空間
219、221、223、225、227...資料檔案
300...資料團塊索引表
301...資料團塊首部資訊
303...區段起始資訊
305...配置表
307~317...資料團塊條目資訊
第1圖繪示了一FAT索引表經本發明之檔案系統轉換方法預先格式化出多個資料團塊之局部示意圖。
第2圖繪示了根據本發明之實施例的資料團塊檔案以及資料團塊之示意圖。
第3圖繪示了根據本發明之實施例的資料團塊索引表之示意圖。
第4圖繪示了根據本發明之一實施例的檔案系統轉換方法之流程圖。
Claims (16)
- 一種檔案系統轉換方法,用以將一第一檔案系統轉換為一第二檔案系統,該第一檔案系統係藉由一檔案配置表來管理一儲存裝置,該檔案系統轉換方法包含:於該檔案配置表中建立複數虛擬檔案以格式化該檔案配置表,來使該儲存裝置被劃分成包含複數儲存單元,該等虛擬檔案之每一係對應至該等儲存單元之其中之一;以及建立一儲存單元索引表,用以記錄該等儲存單元之資訊。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該等儲存單元係連續地位於該儲存裝置中。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該等儲存單元具有相等的儲存容量。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該儲存單元索引表係儲存於該等儲存單元之其中之一內。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該等儲存單元之每一係用以儲存單一檔案之資料。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該儲存單元索引表至少包含下列其中之一:儲存單元首部資訊、儲存 單元起始資訊、儲存單元關聯資訊、以及儲存單元個別資訊。
- 如申請專利範圍第1項所述之檔案系統轉換方法,其中該第一檔案系統係為一FAT檔案系統。
- 一種檔案系統,用以管理一儲存裝置內之檔案資料,其包含:一檔案配置表,被格式化成具有複數虛擬檔案,使該儲存裝置為被劃分成包含複數儲存單元,其中該等虛擬檔案之每一係對應至該等儲存單元之其中之一;以及一儲存單元索引表,用以記錄該等儲存單元之資訊。
- 如申請專利範圍第8項所述之檔案系統,其中該等儲存單元係連續地位於該儲存裝置中。
- 如申請專利範圍第8項所述之檔案系統,其中該等儲存單元具有相等的儲存容量。
- 如申請專利範圍第8項所述之檔案系統,該儲存單元索引表係儲存於該等儲存單元之其中之一內。
- 如申請專利範圍第8項所述之檔案系統,其中該等儲存單元之每一係用以儲存單一檔案之資料。
- 如申請專利範圍第8項所述之檔案系統,其中該儲存單元索引表至少包含下列其中之一:儲存單元首部資訊、儲存單元起始資訊、儲存單元關聯資訊、以及儲存單元個別資訊。
- 如申請專利範圍第8項所述之檔案系統,其中該檔案配置表係應用於一FAT檔案系統中。
- 如申請專利範圍第8項所述之檔案系統,其中該檔案系統係同時利用至少二個存取參數來控制檔案之存取動作。
- 如申請專利範圍第8項所述之檔案系統,其中該至少二個存取參數係儲存於一記憶體中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098117964A TWI389001B (zh) | 2009-06-01 | 2009-06-01 | 檔案系統及檔案系統轉換方法 |
US12/789,090 US9329791B2 (en) | 2009-06-01 | 2010-05-27 | File system and file system converting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098117964A TWI389001B (zh) | 2009-06-01 | 2009-06-01 | 檔案系統及檔案系統轉換方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201044192A TW201044192A (en) | 2010-12-16 |
TWI389001B true TWI389001B (zh) | 2013-03-11 |
Family
ID=43221461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098117964A TWI389001B (zh) | 2009-06-01 | 2009-06-01 | 檔案系統及檔案系統轉換方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9329791B2 (zh) |
TW (1) | TWI389001B (zh) |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5675769A (en) * | 1995-02-23 | 1997-10-07 | Powerquest Corporation | Method for manipulating disk partitions |
US5742818A (en) * | 1995-12-15 | 1998-04-21 | Microsoft Corporation | Method and system of converting data from a source file system to a target file system |
US5819298A (en) * | 1996-06-24 | 1998-10-06 | Sun Microsystems, Inc. | File allocation tables with holes |
WO1999009513A2 (en) * | 1997-08-20 | 1999-02-25 | Powerquest Corporation | Computer partition manipulation during imaging |
JP3969809B2 (ja) * | 1997-10-31 | 2007-09-05 | 富士通株式会社 | 記憶装置におけるデータバッファの管理方法 |
EP1075676B1 (en) * | 1998-05-01 | 2002-12-11 | Powerquest Corporation | Manipulation of virtual and live computer storage device partitions |
US6377958B1 (en) * | 1998-07-15 | 2002-04-23 | Powerquest Corporation | File system conversion |
JP2001188686A (ja) * | 1999-10-22 | 2001-07-10 | Sony Corp | データ書換装置、制御方法および記録媒体 |
US6704730B2 (en) * | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
US6804746B2 (en) * | 2001-03-01 | 2004-10-12 | Sony Corporation | Method and system for optimizing data storage and retrieval by an audio/video file system using hierarchical file allocation table |
US6675276B2 (en) * | 2001-11-13 | 2004-01-06 | Eastman Kodak Company | Method for providing extensible dos-fat system structures on one-time programmable media |
AU2003226220A1 (en) * | 2002-04-03 | 2003-10-20 | Powerquest Corporation | Using disassociated images for computer and storage resource management |
JP4238514B2 (ja) * | 2002-04-15 | 2009-03-18 | ソニー株式会社 | データ記憶装置 |
WO2006031048A2 (en) * | 2004-09-13 | 2006-03-23 | Lg Electronics Inc. | Method and apparatus for reproducing a data recorded in recording medium using a local storage |
JP2006133882A (ja) * | 2004-11-02 | 2006-05-25 | Canon Inc | 情報処理装置及び方法 |
EP1832054B1 (en) * | 2004-12-23 | 2018-03-21 | Symantec Corporation | Method and apparatus for network packet capture distributed storage system |
US20060167838A1 (en) * | 2005-01-21 | 2006-07-27 | Z-Force Communications, Inc. | File-based hybrid file storage scheme supporting multiple file switches |
US7836105B2 (en) * | 2005-11-14 | 2010-11-16 | Apple Inc. | Converting file-systems that organize and store data for computing systems |
US7478217B2 (en) * | 2006-04-07 | 2009-01-13 | Mediatek Inc. | Method of storing both large and small files in a data storage device and data storage device thereof |
US7694193B2 (en) * | 2007-03-13 | 2010-04-06 | Hewlett-Packard Development Company, L.P. | Systems and methods for implementing a stride value for accessing memory |
US8706976B2 (en) * | 2007-08-30 | 2014-04-22 | Commvault Systems, Inc. | Parallel access virtual tape library and drives |
WO2009101787A1 (ja) * | 2008-02-15 | 2009-08-20 | Panasonic Corporation | 再生装置、記録装置、再生方法および記録方法 |
JP2009271589A (ja) * | 2008-04-30 | 2009-11-19 | Sony Corp | 情報処理装置、その制御方法、制御プログラム及びネームマッピング情報 |
US20100274795A1 (en) * | 2009-04-22 | 2010-10-28 | Yahoo! Inc. | Method and system for implementing a composite database |
-
2009
- 2009-06-01 TW TW098117964A patent/TWI389001B/zh not_active IP Right Cessation
-
2010
- 2010-05-27 US US12/789,090 patent/US9329791B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100306284A1 (en) | 2010-12-02 |
TW201044192A (en) | 2010-12-16 |
US9329791B2 (en) | 2016-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7761648B2 (en) | Caching method for NAND flash translation layer | |
US10275361B2 (en) | Managing multiple namespaces in a non-volatile memory (NVM) | |
JP5129156B2 (ja) | アクセス装置、および、ライトワンス記録システム | |
US7647470B2 (en) | Memory device and controlling method for elongating the life of nonvolatile memory | |
US10423339B2 (en) | Logical block address mapping for hard disk drives | |
JP6391061B2 (ja) | テープ上へのファイル書き込み方法 | |
CN103838853A (zh) | 一种基于不同存储介质的混合文件系统 | |
US8862856B2 (en) | Implementing remapping command with indirection update for indirected storage | |
WO2005066787A1 (ja) | 情報記録媒体 | |
WO2004097650A1 (ja) | データ記録装置 | |
JP2004013276A (ja) | ファイルシステム及び記録媒体 | |
CN113419675A (zh) | 用于存储器的写操作方法及读操作方法 | |
CN104238952A (zh) | 磁盘分区格式转换方法及系统 | |
JP4130808B2 (ja) | フォーマット方法 | |
US20110022774A1 (en) | Cache memory control method, and information storage device comprising cache memory | |
TWI470454B (zh) | 檔案格式轉換方法 | |
CN104951569B (zh) | 文件系统以及采用该文件系统的文件管理方法 | |
US20100169555A1 (en) | Method of writing data into flash memory based on file system | |
JP5394394B2 (ja) | ファイルシステムにおけるファイル管理・編集方法及び装置 | |
TWI389001B (zh) | 檔案系統及檔案系統轉換方法 | |
US8321641B2 (en) | Data access method and data access device | |
TWI476680B (zh) | Archives System for File Management of Flash Memory | |
JP4664869B2 (ja) | データ記録システム | |
CN107608636B (zh) | 一种基于fat文件系统的设计方法及其应用的数据采集装置 | |
US20230205686A1 (en) | Mapping of object data and metadata in an object storage volume |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees | ||
MM4A | Annulment or lapse of patent due to non-payment of fees |