[發明專利]一種文件系統的存儲方法及系統有效
| 申請號: | 201210121630.5 | 申請日: | 2012-04-23 |
| 公開(公告)號: | CN103377220B | 公開(公告)日: | 2016-11-30 |
| 發明(設計)人: | 李曉輝;胡勝發 | 申請(專利權)人: | 安凱(廣州)微電子技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 曹志霞 |
| 地址: | 510663 廣東省廣州市蘿崗區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 文件系統 存儲 方法 系統 | ||
技術領域
本發明涉及計算機文件系統技術領域,更具體的說,涉及文件系統的存儲方法及系統。
背景技術
FATFS(File?Allocation?Table?File?System)是微軟公司推出著名文件系統,因其簡潔、高效、易用等特性,長期占據著壟斷地位。然而隨著多媒體行業的發展,大容量硬盤的出現,FATFS略顯力不從心。微軟也因此推出了FAT16、FAT32及exFAT等文件系統來適應的新的需求。然而FAT文件分配表結構并沒有革命性變化,文件無論大小,都采用同一FAT文件分配表,統一的簇的大小。其中,一個簇由1或N個扇區組成,是文件存儲的最小單位。
采用現有的存儲文件的方式,用戶在對文件系統格式化時,如果設置大的簇來適應大文件,那么會存在浪費空間的問題。因為一個簇只能被一個文件占用,如果小文件存儲在空間很大的簇中,那么該簇大量的剩余空間因無法存儲其他文件就會被浪費掉,所以采用設置大簇的方式來存儲大量小文件,會造成浪費空間的情況。如果設置小的簇來適應小文件,那么大文件需要存儲在多個小簇中,所以會產生巨大的FAT文件分配表,從而增加了簇鏈的搜索時間,導致造成內存消耗增加,性能下降。
對于一個復雜的文件系統,不同大小的文件必然同時存在。因此,如何解決上述技術缺陷,成為目前最需要解決的問題。
發明內容
有鑒于此,本發明的設計目的在于,提供一種文件系統的存儲方法及系統,以節省文件系統的空間,降低對內存的消耗,而且提高文件系統的性能。
本發明實施例是這樣實現的:
一種文件系統的存儲方法,包括:
將獲取到的文件存儲在簇的多個子簇中,所述子簇為在磁盤的每個簇中被預先均勻劃分出來的;
當所述簇中存儲的文件數為一個時,則在文件分配表中記錄所述簇對應的下一個子簇號;
當所述簇中存儲的文件數大于一個時,則在該簇中建立一個記錄著所述簇的每個子簇對應的下一個子簇號的文件分配從表,并在所述文件分配表中記錄該簇具有所述文件分配從表。
優選地,在上述的文件系統的存儲方法中,當所述簇不存在對應的下一個子簇號時,則在所述文件分配表中記錄所述簇對應的下一個子簇號為空。
優選地,在上述的文件系統的存儲方法中,當所述簇的子簇不存在對應的下一個子簇號時,則在所述文件分配從表中記錄所述子簇對應的下一個子簇號為空。
優選地,在上述的文件系統的存儲方法中,當所述簇中存儲的文件數為一個,且刪除所述簇的子簇中的文件時,則在所述文件分配從表中記錄所述簇的子簇為未分配狀態。
優選地,在上述的文件系統的存儲方法中,當所述簇中存儲的文件數大于一個,且刪除所述簇的子簇中的文件時,則在所述文件分配從表中記錄所述簇的子簇為未分配狀態。
優選地,在上述的文件系統的存儲方法中,當所述簇中存儲的文件數大于一個,且刪除所述簇中的所有文件時,則刪除所述文件分配從表,且在所述文件分配表中記錄所述簇為未分配狀態。
優選地,在上述的文件系統的存儲方法中,當在所述磁盤中存儲一個文件,且所述磁盤的簇中存在文件分配從表時,則將所述文件優先存儲至所述文件分配從表所在的簇中。
優選地,在上述的文件系統的存儲方法中,所述子簇占據一個扇區的空間。
一種FAT文件系統的存儲系統,包括:
子簇分配模塊,用于在磁盤的每個簇中預先均勻的劃分出多個子簇;
存儲模塊,用于將獲取到的文件存儲在簇的多個子簇中;
文件分配表記錄模塊,用于當所述簇中存儲的文件數為一個時,則在文件分配表中記錄所述簇對應的下一個子簇號;當所述簇中存儲的文件數大于一個時,則在所述文件分配表中記錄該簇具有所述文件分配從表;
文件分配從表建立模塊,用于當所述簇中存儲的文件數大于一個時,則在該簇中建立一個記錄著所述簇的每個子簇對應的下一個子簇號的文件分配從表。
與現有技術相比,本實施例提供的技術方案具有以下優點和特點:
在本發明提供的方案中,文件可以存儲在簇的子簇中,并且如果將兩個以上的文件存儲在一個簇中時,只需在該簇中建立一個文件分配從表,并記錄在文件分配表中,這樣就可以通過文件分配表訪問到文件分配從表,從而訪問到每個簇的子簇,所以本發明可以將磁盤中的每個簇的空間都充分利用起來;而且,通過在簇中建立文件分配從表的方式,不會產生巨大的文件分配表,從而不會增加簇鏈的搜索時間。因此,本發明提供的方案不僅充分的利用了磁盤的空間,而且有效降低了簇鏈搜索的時間。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安凱(廣州)微電子技術有限公司,未經安凱(廣州)微電子技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210121630.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種智能檢索方法及其系統
- 下一篇:一種薄層養殖多聯產系統





