<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM7系統中CF卡存儲的文件系統設計實(shí)現

ARM7系統中CF卡存儲的文件系統設計實(shí)現

作者: 時(shí)間:2013-11-09 來(lái)源:網(wǎng)絡(luò ) 收藏

為了達到這些目的,我們針對不同CPU的不同處理方法,對硬件操作程序進(jìn)行分離,將設備有關(guān)的底層程序變成與設備無(wú)關(guān)的上層操作。這樣,當系統新增功能之后,不必更改每個(gè)子程序,只需要在某些接口文件的數據結構中添加或者更改數據項即可;又考慮到用戶(hù)對上層操作的透明性,我們采用面向對象的方法,上層結構中存取操作的Driver結構(含Read、Write數據項)是虛擬的,在底層才將它具體化為的讀寫(xiě)扇區命令(操作碼為:20h、30h)。

軟件程序的主要流程如圖3所示。

2 系統設計實(shí)現

根據上述原理,可完成軟件設計,其基本框架如圖4所示,分為六個(gè)主要部分。

其中,驅動(dòng)程序設計的關(guān)鍵是的存取操作函數所采用的命令碼有些不同。另外,我們使用驅動(dòng)程序對象來(lái)代表CF卡設備驅動(dòng)程序。該驅動(dòng)程序對象對于用戶(hù)是部分不透明的,數據項包括讀寫(xiě)函數的指針,這些函數由文件系統程序輸出(包括兩部分函數,用戶(hù)可見(jiàn)API函數調用和用戶(hù)不見(jiàn)驅動(dòng)存取函數)。此對象的數據結構聲明如下:

Typedef Struct CF_XFILE_DRIVER{

BYTE Driver_name; /*介質(zhì)標示;CF卡、IDE硬盤(pán)、Flash卡、RAMDISK等,刪除驅動(dòng)的話(huà),需要重新記錄DRIVER號*/

…… /*IRP處理函數*/

}CF_XFILE_DRIVER;

如果有多個(gè)CF卡,需要用另外一個(gè)特定的數據結構Next_Driver來(lái)把它們水平連接在一起。然后,用鏈表來(lái)管理這些數據結構,管理方式類(lèi)似于WDM(Windows Driver Model)。

3 測試分析

經(jīng)過(guò)調試運行,該文件系統性能良好。與我們之前已經(jīng)移植過(guò)的Nucleus、ΜC/OS- II、UNIX的操作系統的文件系統相比,本文介紹的文件系統可移植性更強;除了文中著(zhù)重介紹的CF卡,經(jīng)過(guò)對底層驅動(dòng)的簡(jiǎn)單修改就可以應用于其它存儲介質(zhì)如RAMdisk、IDE硬盤(pán)、Flash等(其中IDE硬盤(pán)和Flash也已經(jīng)調試成功)。另外,本文介紹的文件系統對硬件平臺的配置要求降低,并且對于文件操作的運行速度并未減慢。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: ARM CF卡 微控制器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>