嵌入式系統(tǒng)中基于閃存平臺的存儲管理策略
由于嵌入式系統(tǒng)軟硬件的限制,在應(yīng)用于通用計算機(jī)系統(tǒng)的標(biāo)準(zhǔn)文件系統(tǒng)(例如用于Win32/DOS的FAT和用于Linux的EXT)時,必須進(jìn)行相應(yīng)修改以適應(yīng)嵌入式環(huán)境。在通用的文件系統(tǒng)趨向于簡單化和專業(yè)化的進(jìn)程中,研究主要集中在以下幾個方面[2,3]:在一個小的高速存儲器上實現(xiàn)嵌入式系統(tǒng)處理速度和有限資源的平衡;實現(xiàn)特定性能,如用于滿足不同的嵌入式應(yīng)用環(huán)境的數(shù)據(jù)加密和運行的可靠性的功能;提高嵌入式系統(tǒng)的實時性能。事實上,不少嵌入式系統(tǒng)是根據(jù)客戶的特殊要求定做的。針對這種情況,開發(fā)了具有高可靠性的簡化嵌入式閃存文件系統(tǒng),與復(fù)雜的商用文件系統(tǒng)相比,這個嵌入式計算機(jī)數(shù)值控制系統(tǒng)更實用。
1 FFS存儲結(jié)構(gòu)和框架
嵌入式系統(tǒng)中閃存有以下特點:(1)閃存以扇區(qū)為單位執(zhí)行,如果修改扇區(qū)內(nèi)1 B的數(shù)據(jù),則整個扇區(qū)的數(shù)據(jù)都將被重寫;(2)通常任一扇區(qū)可重寫大約0.1~1萬次;(3)損壞扇區(qū)難免。在計算機(jī)數(shù)控系統(tǒng)中應(yīng)用了閃存特性和局部處理程序訪問特征,在邏輯上非結(jié)構(gòu)化的數(shù)據(jù)流模式被應(yīng)用到FFS,在物理上存儲空間以扇區(qū)為基礎(chǔ)分成不同的塊[4]。閃存文件系統(tǒng)(FFS)不僅提供了根據(jù)文件名查找和訪問文件,使得有限的存儲空間得到合理和充分利用,而且還提供基于存儲內(nèi)容的擦寫策略損壞扇區(qū)的適應(yīng)性管理,因此,在某種程度上FFS的可靠性有所提高。
為了使閃存文件系統(tǒng)在不同的平臺上更易于進(jìn)行維護(hù)、升級和移植,基于Madnick分層模型設(shè)計了一個文件系統(tǒng)分層結(jié)構(gòu)。圖1所示的文件系統(tǒng)包括2個主要部分:文件管理單元和存儲空間管理單元。較低層為上層部分提供服務(wù)。每一層僅涉及接口,而不是更低或上層內(nèi)部結(jié)構(gòu)。本文引用地址:http://m.butianyuan.cn/article/151786.htm
2 存儲空間管理
作為嵌入式系統(tǒng)的一部分,閃存存儲管理的主要功能包括提高使用效率、加快執(zhí)行速度和根據(jù)其物理特性使用特殊算法管理閃存內(nèi)存單元的使用頻率[5]。存儲空間管理單元在邏輯上由3個層次組成:文件物理層、存儲設(shè)備分配層和閃存驅(qū)動層[6]。閃存驅(qū)動層為上層提供最基本的驅(qū)動程序,如下:
評論