基于NOR FLASH存儲(chǔ)器的嵌入式文件系統(tǒng)的設(shè)計(jì)
出處:今日電子 發(fā)布于:2007-09-28 14:53:59
引言
在便攜電子設(shè)備中,隨著系統(tǒng)復(fù)雜性的增加,存儲(chǔ)容量的擴(kuò)大,嵌入文件系統(tǒng)成為一種必然趨勢。而Flash存儲(chǔ)器由于具有存儲(chǔ)容量大、掉電數(shù)據(jù)不丟失、何種小以及可多次擦寫等許多優(yōu)點(diǎn),正逐步取代其他半導(dǎo)體存儲(chǔ)器件而廣泛應(yīng)用于便攜電子產(chǎn)品中。在Flash存儲(chǔ)器中使用文件系統(tǒng),可將存儲(chǔ)空間當(dāng)作直觀的名稱空間,不用在每次應(yīng)用開發(fā)中都從頭使用存儲(chǔ)器,還可方便地利用標(biāo)準(zhǔn)接口同主系統(tǒng)通信。
本文中,我們將以嵌入式操作系統(tǒng)WINCE為背景,來討論嵌入式手持移動(dòng)終端中文件系統(tǒng)的實(shí)現(xiàn)。
WINCE文件系統(tǒng)結(jié)構(gòu)
WINCE文件系統(tǒng)采用了模塊化設(shè)計(jì),允許自定義文件系統(tǒng)、篩選器和多種不同的塊設(shè)備類型。文件系統(tǒng)和所有與文件相關(guān)的API都是通過FileSys.exe進(jìn)程來管理的。
FileSys.exe 由下列幾個(gè)組件組成:
·ROM文件系統(tǒng)
·存儲(chǔ)管理器
·對(duì)象存儲(chǔ)
ROM文件系統(tǒng)是基于ROM的文件系統(tǒng)。用來固化系統(tǒng)信息。
存儲(chǔ)管理器 (Storage Manager),負(fù)責(zé)管理系統(tǒng)中的存儲(chǔ)設(shè)備,以及用于訪問它們的文件系統(tǒng)。存儲(chǔ)管理器功能由系統(tǒng)中的fsdmgr.dll模塊實(shí)現(xiàn)。其主要的組成部分為塊設(shè)備驅(qū)動(dòng)程序管理器、分區(qū)管理器、文件系統(tǒng)驅(qū)動(dòng)程序管理器。存儲(chǔ)管理器組件之間的關(guān)系如圖1所示。

圖1 存儲(chǔ)管理器組件之間的關(guān)系
對(duì)象存儲(chǔ)是一個(gè)內(nèi)存堆,由FileSys.exe控制。對(duì)象存儲(chǔ)包含RAM系統(tǒng)注冊表、RAM文件系統(tǒng)和屬性數(shù)據(jù)庫。它們都是FileSys.exe模塊的可選組件。RAM文件系統(tǒng)和屬性數(shù)據(jù)庫是完全可選的,并且在某些系統(tǒng)中可以根本不存在。
FileSys.exe各組件之間的關(guān)系如圖2所示。

圖2 FileSys.exe各組件之間的關(guān)系圖
操作系統(tǒng)啟動(dòng)時(shí),NK.exe將直接從ROM文件系統(tǒng)加載FileSys.exe。然后,F(xiàn)ileSys.exe對(duì)ROM文件系統(tǒng)內(nèi)的默認(rèn)注冊表進(jìn)行初始化。接著,F(xiàn)ileSys.exe將讀取注冊表項(xiàng),以便啟動(dòng)各種應(yīng)用程序。
我們在WINCE文件結(jié)構(gòu)的基礎(chǔ)上構(gòu)建自文件系統(tǒng)。
構(gòu)建基于PXA272存儲(chǔ)器的嵌入式文件系統(tǒng)
嵌入式手持設(shè)備硬件結(jié)構(gòu)如圖3所示。其主要由嵌入式微控制器PXA272,采集單元,顯示單元,存儲(chǔ)單元,通信模塊和電源單元構(gòu)成。

圖3 手持設(shè)備終端硬件結(jié)構(gòu)框圖
Intel PXA272處理器是Intel公司推出的32位,基于Xscale架構(gòu)的高性能的嵌入式芯片。其工作頻率為512MHZ,內(nèi)部集成64Mb NOR Flash。我們在NOR Flash上基于WINCE的文件結(jié)構(gòu)來構(gòu)建我們自己的文件系統(tǒng)。
先將Flash劃分位三部分,部分存放EBOOT和512K配置文件,第二部分存放32M的NK.BIN,一部分劃為32M的文件系統(tǒng),其具體劃分如圖4所示。

圖4 Flash的劃分
PSM(Peristent Storage Manage)是Inter公司獨(dú)有技術(shù),是專門為WEINCE系統(tǒng)定制的,它為各種Flash存儲(chǔ)設(shè)備提供了統(tǒng)一的設(shè)備接口,支持Inter的CPU架構(gòu)。我們利用PSM作為存儲(chǔ)管理器,用微軟提供的Flash驅(qū)動(dòng)構(gòu)建文件系統(tǒng),支持FAT格式的文件。其系統(tǒng)結(jié)構(gòu)圖如圖5所示。

圖5 系統(tǒng)文件結(jié)構(gòu)圖
,文件系統(tǒng)的配置文件是一組注冊表值,用于定義有關(guān)塊設(shè)備和應(yīng)當(dāng)如何在系統(tǒng)中使用它的信息。配置文件位于注冊表HKEY_LOCAL_MACHINE \System\StorageManager\Profiles下,每個(gè)配置文件都是位于基本配置文件項(xiàng)的下面,以此配置文件名稱標(biāo)識(shí)的項(xiàng)。例如,我們利用了Inter的PSM文件系統(tǒng),其配置文件位于注冊表HKEY_LOCAL _MACHINE\System\StorageManager \Profiles\PSMFSD下。Flash驅(qū)動(dòng)的配置文件位于注冊表HKEY_LOCAL_ MACHINE\Drivers\BuiltIn\StrataFMD下,在此文件系統(tǒng)中,我們使用了微軟自帶的Flash驅(qū)動(dòng)。
結(jié)語
此文件系統(tǒng)已經(jīng)在手持移動(dòng)終端上得到應(yīng)用,和上層的數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn)對(duì)接。經(jīng)過多次測試,此文件系統(tǒng)穩(wěn)定可靠,效果良好??梢杂脕泶鎯?chǔ)大量數(shù)據(jù)而且又能滿足不同需求。相對(duì)于TrueFFS文件系統(tǒng),在可靠性、系統(tǒng)資源開銷等方面的性能提高是可觀的,特別是和Inter的Flash相結(jié)合時(shí)。
?。?nbsp;郭克敏)
參考文獻(xiàn):
[1]. ROM datasheet http://m.58mhw.cn/datasheet/ROM_1188413.html.
[2]. PSM datasheet http://m.58mhw.cn/datasheet/PSM_1196425.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識(shí)介紹2025/8/29 16:58:56
- SQL核心知識(shí)點(diǎn)總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識(shí)2025/6/18 16:30:52









