[發明專利]基于CF卡的嵌入式文件系統在審
| 申請號: | 201110346063.9 | 申請日: | 2011-11-01 |
| 公開(公告)號: | CN103092876A | 公開(公告)日: | 2013-05-08 |
| 發明(設計)人: | 楊際榮 | 申請(專利權)人: | 鎮江華揚信息科技有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 212009 江蘇省鎮江市鎮江新*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 cf 嵌入式 文件系統 | ||
技術領域
本發明涉及基于CF卡的嵌入式文件系統,本發明說明短文件名和長文件名之間的差異,分析了支持長文件名的數據結構,以CF為存儲介質設計和實現了FAT16文件系統.這一文件系統支持長文件名文件的讀寫操作,有效地解決了嵌入式環境下使用長文件名所存在的問題。
背景技術
隨著電子技術、計算機技術的飛速發展,嵌入式系統越來越多地出現在消費類、通訊類的電子產品中。嵌入式系統的發展,要求系統能夠存儲和管理大量的數據。SEP3203是東南大學自主研發的一款ARM7TDMI的嵌入式微處理器。SEP3203移動終端應用處理器針對低成本個人移動終端的應用需求,為用戶提供了面向移動終端應用的豐富外設、低功托管理和低成本的外存配置。CF卡是專門為海量存儲設計的的閃存卡,具有成本低、兼容性好等優點。為了CF卡能夠和Windows系統進行數據交換,實現以FAT16文件系統來驅動基于CF卡的文件操作。
FAT文件系統在嵌入式系統中應用越來越廣泛,傳統的8.3格式文件名已經滿足不了某些應用的需求。
發明內容
基于上述問題,特此發明基于CF卡的嵌入式文件系統.此系統支持長文件名文件的讀寫操作,有效地解決了嵌入式環境下使用長文件名所存在的問題。
1.CF卡驅動程序設計;CF卡的瀆寫操作都是通過內部寄存器實現的。CF卡有兩組內部寄存器:命令寄存器組和控制寄存器組。命令寄存器組給磁盤寄存器發送命令并進行數據交換,控制寄存器組用來控制磁盤驅動器。這兩組寄存器是通過CE1和CE2來選擇的。A2一A0是寄存器的尋址線。通過地址線A2一A0和片選CE1和CE2訪問各個寄存器。在讀寫時,IDE接口有兩種工作方式:LBA(邏輯塊地址)和CHS(柱面磁頭/扇區)。這兩種方式由磁頭寄存器的第六位區分。在LBA方式下,系統隱藏扇區是不能訪問的,能訪問的扇區從0柱面、0磁頭、1扇區開始,在LBA方式下為第0號扇區。所有的扇區依次統一編號。CHS(柱面P磁頭P扇區)尋址時,直接輸人相應的柱面P磁頭P扇區數值就可以了。在LBA訪問方式時,要將所要訪問的邏輯扇區值轉換成相應的物理磁道、柱面和扇區號。本設計采用LBA尋址。
在0、卡讀寫操作過程中,首先設置瀆寫訪問地址的尋址方式,然后按照所設置的尋址方式分別設置驅動器/磁頭寄存器、柱面低字節寄存器、柱面高字節寄存器、扇區號寄存器以得到瀆寫操作的起始地址。接著設置扇區計數器來決定所要讀寫的數據塊數量,最后以塊為單位對CF卡進行讀寫。
2.文件系統的設計;眾多的嵌入式的應用領域涉及到文件的瀆寫,同時CF卡讀卡器一般是在Windows系統下操作。所以必須建立一套文件系統,本設計選取FAT16格式,支持長文件名、中文文件名。
(1).CF卡磁盤劃分為:引導扇區,FAT區,根目錄區和數據區。引導扇區占512字節,包括跳轉指令、廠商標識和版本號、BPB、擴展BPB和系統引導程序。FAT區是FAT文件系統用來記磁盤錄數據區簇鏈結構的。根目錄區用來保存目錄信息。數據區保存文件的數據。
其中,RS為保留扇區數,FS為FAT表占用扇區數,NF為FAT表備份數,默認是2,DB為根目錄起始扇區,DS為根目錄數,SS為每扇區所占字節數。
(2).長文件名的實現;FAT文件系統在長文件名方面的擴展稱為VFAT。傳統的FAT16文件系統只支持8.3格式的文件名。一個8.3格式的文件名目錄格式如表2所示。一個長文件名在目錄上實際上存儲著兩個名字:一個長文件名的別名(短文件名)和一個長文件名。作為別名的短文件名以8.3格式存儲在目錄項中,長文件名則存儲在屬性標志為OFH的若干個目錄項中。
其中,短名目錄項使用GR2312碼格式,每個字符需要1個字節空間;長文件名目錄項使用Unicode碼格式,所以必須建立GB2312碼到Unicode碼之間的轉換表。由于在嵌人式領域中,只建立常用3600個漢字的轉換表,通常可以滿足應用的需求了。GB2312碼是規則排列的,而與GB2312碼一一對應的Unicode碼是不規則的L6J。所以可以按照GB2312碼的規則建立一張表。當GB2312碼轉換為Unicode碼時,就可以很方便得到偏移量,當Unicode碼轉換為GB2312碼時,就只能通過順序查找整張表。對于一個長文件名來說,短文件名和長文件名都存儲在目錄項中,長文件名目錄按照第一個字節的目錄序列號存儲。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鎮江華揚信息科技有限公司,未經鎮江華揚信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110346063.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種不臟衣袖的黑板擦
- 下一篇:一種使能XML數據庫的映射轉換方法





