[發明專利]適合嵌入式Flash文件系統的均衡擦寫實現方法無效
| 申請號: | 200910099832.2 | 申請日: | 2009-06-22 |
| 公開(公告)號: | CN101609464A | 公開(公告)日: | 2009-12-23 |
| 發明(設計)人: | 楊國青;李紅;胡琦;魏城炯;周霖;吳朝暉 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F12/02 |
| 代理公司: | 杭州中成專利事務所有限公司 | 代理人: | 金 祺 |
| 地址: | 310027浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 適合 嵌入式 flash 文件系統 均衡 擦寫 實現 方法 | ||
技術領域
本發明涉及計算機領域,尤其涉及嵌入式系統中Flash(閃速電可擦除可編程只讀存儲器)文件系統均衡擦寫機制的數據結構和算法。
背景技術
目前在嵌入式領域已經存在有嵌入式Linux中的JFFS2等針對嵌入式系統的Flash文件系統,但是由于這些文件系統安全和可靠機制實現的復雜性,對一些存儲資源很少的嵌入式系統并不適用;在這種情況下出現了一些簡化的Flash文件系統,這些簡化的Flash文件系統提供了一種分配合理、使用靈活且節約存儲空間的文件管理方法,但欠缺的是普遍未考慮到Flash的硬件特性。
Flash有一定的使用壽命,一般可擦除的次數為10~100萬次,隨著使用次數的增加,會有一些單元逐漸變得不穩定或損壞。因此,要盡量避免頻繁地對局部地址范圍的操作,以免造成局部單元提前損壞,從而導致整個Flash的損壞,以及Flash的使用壽命縮短。
由于Flash在嵌入式系統中的普遍使用,人們迫切希望有一種簡單實用的Flash文件系統均衡擦寫實現方法可以延長Flash的使用壽命,從而降低工程中由于Flash損壞而產生的不必要成本。
發明內容
本發明要解決的技術問題是提供一種適合嵌入式Flash文件系統的均衡擦寫實現方法,采用該方法能延長Flash的使用壽命,從而降低工程中由于Flash損壞而產生的不必要成本。
為了解決上述技術問題,本發明提供一種適合嵌入式Flash文件系統的均衡擦寫實現方法,將Flash存儲空間分為文件控制信息區和文件數據存儲區兩個區域:文件控制信息區用于保存文件系統的文件控制塊(File?Control?Block)信息和作為基本分配單元的文件塊的分配信息;文件數據存儲區用于存儲文件的實際數據信息;文件控制信息區保存了文件系統的文件控制塊和文件塊的相關控制信息,文件數據區用于保存文件系統中文件的實際數據信息;
文件系統在系統啟動時要將保存在Flash文件控制信息區的控制信息讀入內存中,在系統關閉時要將內存中文件系統的控制信息從內存中寫入到Flash的文件控制信息區內;
整個過程包括如下步驟:
1)、將Flash地址空間按照指定的物理塊的大小,按地址遞增順序依次編號,指定物理塊的大小應為偶數;然后為每一個物理塊分配一個對應的文件塊,編號相同的文件塊與物理塊一一對應;
2)、文件系統中維護了一個文件控制塊(FCB)靜態鏈表,用來記錄文件系統中所有的文件控制塊(FCB)的信息,一個文件控制塊對應一個文件;由于使用的是靜態鏈表,因此鏈表的大小需要預先分配,故文件控制塊靜態鏈表將分成兩部分:一部分為已經被使用的文件控制塊,一部分為空閑的文件控制塊;
3)、文件系統中維護了一個文件塊(FB)靜態鏈表,用來記錄文件系統中所有的文件塊(FB)的信息,一個文件塊對應一個物理塊;由于使用的是靜態鏈表,因此鏈表的大小需要預先分配,故文件塊靜態鏈表將分成兩部分:一部分為已經被使用的文件塊,一部分為空閑的文件塊;
4)、通過地址映射機制將文件塊(FB)靜態鏈表里的每一個文件塊映射到Flash的地址空間中的一個物理塊上,從而使文件塊與Flash上的物理塊形成一對一的映射關系,文件塊記錄了與其對應物理塊的使用信息;
5)、當需要創建一個文件時,若還有空閑的文件控制塊(FCB),即空閑的文件控制塊靜態鏈表不為空,則從空閑的文件控制塊靜態鏈表的表頭取出一個文件控制塊(FCB)分配給申請者;
6)、當需要刪除一個文件時,則將該文件控制塊(FCB)插入到空閑的文件控制塊靜態鏈表的尾部;
7)、當一個文件需要申請一個文件塊(FB)時,若Flash上還有空閑空間,即空閑的文件塊靜態鏈表不為空,則從空閑的文件塊靜態鏈表的表頭取出一個文件塊分配給申請文件;
8)、當文件系統需要釋放一個文件塊(FB)時,則將該文件塊插入到空閑的文件塊靜態鏈表的尾部。
作為本發明的適合嵌入式Flash文件系統的均衡擦寫實現方法的改進:靜態鏈表是用一維數組實現的鏈表。
作為本發明的適合嵌入式Flash文件系統的均衡擦寫實現方法的進一步改進:通過文件塊的編號將內存中文件塊靜態鏈表中的結點與Flash上的物理塊一一對應起來。
作為本發明的適合嵌入式Flash文件系統的均衡擦寫實現方法的進一步改進:靜態鏈表是一種FIFO(先進先出)的數據結構,即隊列;總是從鏈表頭分配資源,被釋放的資源放在鏈表尾。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910099832.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種木紋膜收卷組件
- 下一篇:一種帶圖案片材的定位拼接裝置





