WinCE文件系統概要

    文件系統是一個實現了數據的存儲、組織、處理和獲取等操作的抽象數據類型。一般分爲磁盤文件系統,網絡文件系統和特定功能的文件系統。

 

      磁盤文件系統主要包括FAT(FAT12FAT16FAT32)NTFSHFSext2ext3,現在ext4也出來了。

      FLASH文件系統是針對FLASH存儲器設計的文件系統。隨着移動設備的不斷普及,和FLASH存儲空間的不斷增長,FLASH文件系統也流行起來。在嵌入式系統中,絕大多數都使用FLASH文件系統。

      數據庫文件系統是基於數據庫的文件系統。與分層結構的管理不同,在數據庫文件系統中,文件由描述符來標識,如文件的類型、主題、作者或其他一些元數據。

      網絡文件系統是用來訪問服務器中文件的文件系統,常見的協議有NFSAFSSMB

      現代操作系統都集成了文件系統,WinCE也不例外。與桌面Windows的文件系統不同,WinCE的文件系統中沒有分區的概念。所有的文件系統,都被Mount到根目錄“/”下面。編程時需要注意,WinCE中也沒有當前目錄的概念,所有的目錄都以根目錄爲參考。

      WinCE中支持的文件系統有如下幾種:

文件系統

概要

FATFATFS

標準的FAT文件系統。單個文件不能超過4G,分區大小也有限制。

exFAT

FAT的升級版,取消了文件和分區大小的限制。

TFAT

基於exFAT的文件系統,支持交互操作,需要驅動的支持。

BinFS

支持將bin文件Mount成一個文件系統,WinCE中的Multi-BIN需要用到該文件系統。

CDFS/UDFS

用來支持CDDVD的文件系統。

RAM(對象存儲)

RAM文件系統由FSD Manager管理。

RELFSD

在開發的過程中,將開發主機的release目錄mount到設備上。

 

 

WinCE文件系統的配置,由註冊表實現,一般在[HKLM/System/StorageManager]中。


    在定製

WinCE操作系統時,我們可以選擇ROM-only 的文件系統或RAM and ROM的文件系統。當選擇RAM and ROM的文件系統時,根目錄文件系統在內存當中,掉電即丟失。爲了實現根文件系統和註冊表的保存,即在冷啓動時不丟失,我們需要選擇ROM-only的文件系統和HIVE BASED註冊表,以將存儲空間Mount成根目錄,並配置註冊表使其支持HIVE BASED註冊表。

      Linux的文件系統有extXFSJFSReiserFS。嵌入式Linux的文件系統主要有rootfsRAMDiskCramfsJFFS2(基於日誌的FLASH FS)、YAFFS2Yet Another FLASH FS)等。

      所以,想要LinuxWinCE共用一個NAND FLASH有沒有可能呢?兩個想法,簡單而又方便的是讓Linux直接掛在WinCE下的FAT分區,第二個想法是WinCE中留一些BLOCK,給Linux處理。先MARK一下,有時間再來求證。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章