在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-07-16 08:09 ? 次閱讀

這里開發(fā)了一個基于閃存平臺的嵌入式文件系統(tǒng)。為保證閃存扇區(qū)的平均使用率和均衡擦寫次數(shù),引入了損壞管理辦法,在這種辦法中采用了動態(tài)存儲空間管理模式和先入先出(FIFO)策略。所采用的冗余設(shè)計、快速計算和跟蹤辦法還可以延長核心扇區(qū)使用壽命,保證系統(tǒng)啟動可靠的服務(wù)。

1 FFS存儲結(jié)構(gòu)和框架

嵌入式系統(tǒng)是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對功能,對可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)。

閃存的英文名稱是 \“Flash Memory\” ,一般簡稱為 \“Flash\” ,它也屬于內(nèi)存器件的一種。不過閃存的物理特性與常見的內(nèi)存有根本性的差異:目前各類 DDRSDRAM 或者 RDRAM 都屬于揮發(fā)性內(nèi)存,只要停止電流供應(yīng)內(nèi)存中的數(shù)據(jù)便無法保持,因此每次電腦開機都需要把數(shù)據(jù)重新載入內(nèi)存;閃存則是一種不揮發(fā)性 (Non-Volatile) 內(nèi)存,在沒有電流供應(yīng)的條件下也能夠長久地保持數(shù)據(jù),其存儲特性相當于硬盤,這項特性正是閃存得以成為各類便攜型數(shù)字設(shè)備的存儲介質(zhì)的基礎(chǔ)。

嵌入式系統(tǒng)中閃存有以下特點:(1)閃存以扇區(qū)為單位執(zhí)行,如果修改扇區(qū)內(nèi)1 B的數(shù)據(jù),則整個扇區(qū)的數(shù)據(jù)都將被重寫;(2)通常任一扇區(qū)可重寫大約0.1~1萬次;(3)損壞扇區(qū)難免。在計算機數(shù)控系統(tǒng)中應(yīng)用了閃存特性和局部處理程序訪問特征,在邏輯上非結(jié)構(gòu)化的數(shù)據(jù)流模式被應(yīng)用到FFS,在物理上存儲空間以扇區(qū)為基礎(chǔ)分成不同的塊。閃存文件系統(tǒng)(FFS)不僅提供了根據(jù)文件名查找和訪問文件,使得有限的存儲空間得到合理和充分利用,而且還提供基于存儲內(nèi)容的擦寫策略損壞扇區(qū)的適應(yīng)性管理。

為了使閃存文件系統(tǒng)在不同的平臺上更易于進行維護、升級和移植,基于Madnick分層模型設(shè)計了一個文件系統(tǒng)分層結(jié)構(gòu)。圖1所示的文件系統(tǒng)包括2個主要部分:文件管理單元和存儲空間管理單元。較低層為上層部分提供服務(wù)。每一層僅涉及接口,而不是更低或上層內(nèi)部結(jié)構(gòu)。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

2 存儲空間管理

作為嵌入式系統(tǒng)的一部分,閃存存儲管理的主要功能包括提高使用效率、加快執(zhí)行速度和根據(jù)其物理特性使用特殊算法管理閃存內(nèi)存單元的使用頻率。存儲空間管理單元在邏輯上由3個層次組成:文件物理層、存儲設(shè)備分配層和閃存驅(qū)動層。閃存驅(qū)動層為上層提供最基本的驅(qū)動程序,如下:

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

2.1 存儲扇區(qū)管理

本文開發(fā)的FFS存儲結(jié)構(gòu)類似于MS-DOS的FAT,是FAT系統(tǒng)的修改。圖2顯示了一系列模式的基本存儲結(jié)構(gòu)。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

系統(tǒng)記錄區(qū)(SRA)存儲介質(zhì)信息和最重要的文件系統(tǒng)信息,如閃存類型、容量、扇區(qū)數(shù)和扇區(qū)利用現(xiàn)狀。這個扇區(qū)的利用狀況包括文件數(shù)、損壞扇區(qū)數(shù)、第一個和最后一個未使用的扇區(qū)編號。圖3顯示了在SRA上的內(nèi)存分配。文件信息區(qū)域(FIA)用于存儲文件的詳細信息,如文件名、文件類型、文件大小、文件屬性和閃存鏈表項。程序數(shù)據(jù)區(qū)(PDA)用于存儲程序數(shù)據(jù)。圖3為SRA上的內(nèi)存分配情況,不同部分存儲特定的記錄信息:1為閃存內(nèi)存類型;2為閃存內(nèi)存容量;3為扇區(qū)數(shù);4為文件數(shù);5為未使用扇區(qū)數(shù);6為損壞的扇區(qū)數(shù);7為最后一次寫入FIA的扇區(qū)組數(shù);8為第一個未使用扇區(qū)號;9為最后未使用扇區(qū)號;10為系統(tǒng)記錄控制的關(guān)鍵字;11為下一個要寫入的扇區(qū)號。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

不同的系統(tǒng)有不同的存儲空間管理模式,最簡單的可能是一個命令模式。另一個常用的方式是靜態(tài)存儲模式,這意味著每一個文件分配固定的扇區(qū)數(shù)。在這種情況下,如果文件大小超過了給定的空間,雖然仍有未使用的扇區(qū),但寫操作卻不能成功完成。同樣,小文件顯然將導致存儲空間浪費。另外,由于過度頻繁地訪問同一個文件,與其他的扇區(qū)相比這種更容易損壞。所以,靜態(tài)存儲模式不是一個很好的選擇。

基于MS-DOS的FAT系統(tǒng)只為數(shù)據(jù)區(qū)提供損害管理,忽視了文件系統(tǒng)結(jié)構(gòu)區(qū)域。相對地,SRA作為FFS結(jié)構(gòu)區(qū)域,由于存儲了系統(tǒng)關(guān)鍵信息而成為最重要的區(qū)域。而且因頻繁訪問, SRA往往更易損壞。所以,這一區(qū)域應(yīng)當運用一種安全策略。可以充分利用閃存存儲能力,寫校驗時間將會減少,從而寫速度將有所改善。

2.2 SRA的平均擦除和寫入管理

為了實現(xiàn)對System record area(SRA)平均擦除和寫管理,避免由系統(tǒng)記錄扇區(qū)物理損傷而導致整體系統(tǒng)的故障,SRA被平均劃分成3個小組。3組依次進行寫操作,可以為系統(tǒng)記錄存儲安全提供一個冗余策略,從而提高系統(tǒng)的可靠性,延長系統(tǒng)壽命。這對于每次在系統(tǒng)通電之后獲取SRA代碼值是必要的。由系統(tǒng)記錄關(guān)鍵字(SysKeyword)控制的值,標記著系統(tǒng)關(guān)閉前最后一次寫操作的系統(tǒng)扇區(qū)的執(zhí)行記錄,它顯示為:

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

在系統(tǒng)初始化時,SRA中每組的相應(yīng)系統(tǒng)變量關(guān)鍵字(1~3)初始化為0。在后續(xù)操作中,各組關(guān)鍵字(SysKeyword)的真實值應(yīng)該更新,在系統(tǒng)每次啟動時分別從SRA讀出。因此,SysCodeValue的值可根據(jù)式(1)得到。執(zhí)行最后一次寫操作的組號可以通過調(diào)用函數(shù)GetLastGroup-Num()獲得。一旦SRA的記錄數(shù)據(jù)被更改,系統(tǒng)關(guān)鍵字應(yīng)該相應(yīng)更新。然后包括SysKeyword的記錄數(shù)據(jù),應(yīng)寫入到根據(jù)以下方法獲得的相應(yīng)扇區(qū)。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

下一次將被寫入的該系統(tǒng)記錄扇區(qū)的組號與轉(zhuǎn)移的參量LastGroupNum可以通過調(diào)用函數(shù)GetNextGroupNum(Uchar LastGroupNum)共同獲得。SysCodeValue的值將更新如下:

SysCodeValue=SysCodeValue∧2NextGroupNum-1 (2)

通過組合式(1)和式(2)可以得到每組SysKeyword的值,因此,可以迅速查出最新和最舊的記錄。該方法是一種快速計算和跟蹤策略,這樣,根據(jù)得到的組號和SysKeyword的值,寫操作可以順利執(zhí)行。

該系統(tǒng)記錄扇區(qū)的詳細參數(shù)值如表1所示。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

3 文件管理

文件管理層(FML)封裝了整個文件系統(tǒng),并且為操作系統(tǒng)和上層的應(yīng)用程序提供統(tǒng)一標準的程序接口(APIs)。用戶操作請求將被APIs移交到文件的邏輯層(FLL),然后將請求發(fā)送到文件的物理層(FPL)。

3.1 文件編輯

文件系統(tǒng)應(yīng)提供友好的用戶界面,圖4顯示編輯一個存儲在閃存的文件流程圖。首先要遍歷文件信息鏈表,根據(jù)文件名來查找存儲此文件信息的節(jié)點。因此,該文件存儲空間的第一個扇區(qū)可獲取,后續(xù)扇區(qū)依次獲取。然后,每個扇區(qū)將逐個讀取,數(shù)據(jù)將被寫入緩沖區(qū)。通過建立一個雙鏈表顯示數(shù)據(jù),然后通過人機界面進行編輯操作。最后,將修改后的數(shù)據(jù)寫回到閃存,文件信息和系統(tǒng)記錄將自動更新。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

3.2 文件存儲和文件刪除

連續(xù)的文件存儲結(jié)構(gòu)模式(如圖5中的文件N005和N011)在存儲前,文件通常被劃分成為大小相等的多個數(shù)據(jù)塊。塊的數(shù)量是由文件和塊大小決定,而塊的大小與存儲介質(zhì)有關(guān)。在本文中,閃存的存儲單元(即扇區(qū))為256 B,因此,該塊的大小建議不超過256 B。塊的數(shù)量(即被占用的扇區(qū)數(shù))可以計算出,這是最低整數(shù)不少于文件字節(jié)大小除以塊字節(jié)大小所得的商數(shù)。然后未使用的扇區(qū)鏈表的頭節(jié)點作為這個文件存儲空間的第一個扇區(qū)。緊隨第一個扇區(qū),很多未使用的扇區(qū)被取出后,整個文件的存儲空間可用。該文件成功保存。

基于閃存平臺的嵌入式文件存儲空間管理系統(tǒng)的設(shè)計與實現(xiàn)

閃存的地址空間不允許隨意被刪除,刪除一個文件時必須把扇區(qū)作為一個刪除單元。因此,刪除一個文件,要使用與編輯操作相同的手段獲得該文件節(jié)點的存儲信息,這樣文件的信息可以使用。有了文件信息,文件的存儲空間的第一個扇區(qū)可以得到,其他的也可以依次得到。然后未使用的扇區(qū)鏈表上的扇區(qū)可以通過調(diào)用函數(shù)FreeSect釋放第一個扇區(qū)。最后,根據(jù)雙鏈表的原則,這個節(jié)點將被刪除。

要創(chuàng)建一個文件(文件名為N005,大小為912 B,第一個扇區(qū)是5號),未使用扇區(qū)鏈表的頭節(jié)點作為這個文件的存儲空間的第一個扇區(qū)。同時,在文件信息鏈表的尾節(jié)點寫文件信息。這個文件的存儲扇區(qū)數(shù)可以計算出來,結(jié)果被證明是4。然后,從未使用的扇區(qū)鏈表頭部,4個扇區(qū)依次用于存儲文件數(shù)據(jù)。從而,文件信息和系統(tǒng)記錄更新后,文件的創(chuàng)建操作完成。

為了提高存儲及管理嵌入式平臺上文件數(shù)據(jù)的性能,本文提出了一種新的應(yīng)用于閃存文件系統(tǒng)(FFS)的辦法,有以下特點:

(1)減少寫周期提高寫入速度;

(2)采用動態(tài)分配存儲空間,提高利用效率和延長閃存的使用壽命;

(3)相應(yīng)的文件被刪除后,存儲扇區(qū)可以很快被釋放,并可以連接到未使用的扇區(qū)鏈表;

(4)當損壞扇區(qū)的數(shù)量到達設(shè)置值時自動報警,確保系統(tǒng)處于良好狀態(tài);

(5)FAT分配的內(nèi)存空間存儲指針以數(shù)組的形式作為全局變量;

(6)為延長內(nèi)核扇區(qū)壽命確保系統(tǒng)啟動可靠服務(wù),采用冗余設(shè)計、快速計算和追蹤策略。

因此,本文中的FFS,特別是在可靠性、存儲效率和良好的可移植性方面已獲得明顯的成效。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5083

    文章

    19133

    瀏覽量

    305612
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1637

    瀏覽量

    148107
  • 存儲
    +關(guān)注

    關(guān)注

    13

    文章

    4318

    瀏覽量

    85886
收藏 人收藏

    評論

    相關(guān)推薦

    嵌入式系統(tǒng)U盤實時啟動技術(shù)

    應(yīng)用中,由于嵌入式系統(tǒng)功能的增強,系統(tǒng)映像文件的體積會不斷增大,會出現(xiàn)超過目標板的程序存儲空間的問題,從而使得新的映像
    發(fā)表于 12-25 19:40

    嵌入式Linux的文件系統(tǒng)及其存儲機制分析

    嵌入式系統(tǒng)與通用PC機不同,一般沒有硬盤這樣的存儲設(shè)備而是使用Flash閃存芯片、小型閃存卡等專為嵌入式
    發(fā)表于 09-22 15:58

    什么是基于閃存平臺存儲管理策略?

    作者:李建勛 樊曉光 禚真福來源:什么是基于閃存平臺存儲管理策略?在嵌入式系統(tǒng)中,由于
    發(fā)表于 07-31 08:17

    嵌入式掌上娛樂系統(tǒng)實現(xiàn)原理是什么?

    嵌入式游戲,增加了系統(tǒng)的娛樂性。使用觸摸屏方便作為人機交互的平臺。采用跨平臺性能良好的Qt4 設(shè)計了應(yīng)用程序和人機界面,界面友好,漢化顯示,美觀,操作簡便,運行流暢。整個
    發(fā)表于 08-19 06:27

    嵌入式手持移動終端中文件系統(tǒng)實現(xiàn)

    器件而廣泛應(yīng)用于便攜電子產(chǎn)品中。在Flash存儲器中使用文件系統(tǒng),可將存儲空間當作直觀的名稱空間,不用在每次應(yīng)用開發(fā)中都從頭使用存儲器,還可
    發(fā)表于 01-05 07:29

    嵌入式系統(tǒng)中的數(shù)據(jù)存儲管理的相關(guān)資料分享

    【功能】: 嵌入式系統(tǒng)中的數(shù)據(jù)存儲管理 數(shù)據(jù)查詢【定義】:嵌入式數(shù)據(jù)庫系統(tǒng)是指支持移動計算或某
    發(fā)表于 12-17 07:15

    基于嵌入式Linux操作系統(tǒng)的GUI平臺設(shè)計與實現(xiàn)

    針對嵌入式系統(tǒng)低處理能力和低存儲空間的特點,設(shè)計了GUI 平臺的分層體系結(jié)構(gòu),并在此分層體系結(jié)構(gòu)的基礎(chǔ)上用C 和C++語言實現(xiàn)。GUI
    發(fā)表于 08-06 10:58 ?13次下載

    嵌入式系統(tǒng)中基于閃存平臺存儲管理策略

    開發(fā)了一個基于閃存平臺嵌入式文件系統(tǒng)。為保證閃存扇區(qū)的平均使用率和均衡擦寫次數(shù),引入了損壞管理
    發(fā)表于 09-30 16:24 ?21次下載

    基于閃存平臺嵌入式文件存儲管理系統(tǒng)

    嵌入式系統(tǒng)中,由于閃存成本低、容量大、非易失、訪問速度高和機械故障少的優(yōu)勢已逐漸成為最流行的存儲大量數(shù)據(jù)的存儲器。然而,
    發(fā)表于 06-21 15:10 ?562次閱讀
    基于<b class='flag-5'>閃存</b><b class='flag-5'>平臺</b>的<b class='flag-5'>嵌入式</b><b class='flag-5'>文件</b><b class='flag-5'>存儲</b><b class='flag-5'>管理</b><b class='flag-5'>系統(tǒng)</b>

    嵌入式Linux文件系統(tǒng)存儲機制

    本文分析了嵌入式系統(tǒng)中常用的存儲設(shè)備及其管理機制,介紹了常用的基于FLASH的文件系統(tǒng)類型
    發(fā)表于 05-14 10:22 ?1671次閱讀
    <b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>文件系統(tǒng)</b>及<b class='flag-5'>存儲</b>機制

    基于DSP平臺嵌入式文件系統(tǒng)的開發(fā)與研究

    基于DSP平臺嵌入式文件系統(tǒng)的開發(fā)與研究
    發(fā)表于 10-19 14:28 ?4次下載
    基于DSP<b class='flag-5'>平臺</b>的<b class='flag-5'>嵌入式</b><b class='flag-5'>文件系統(tǒng)</b>的開發(fā)與研究

    VDK與嵌入式文件系統(tǒng)的投入使用

    由于低功耗、數(shù)據(jù)非易失、存儲速度快、存儲密度大等優(yōu)點,Nand Flash在閃存行列中脫穎而出,常被用作大容量數(shù)據(jù)的存儲媒質(zhì)。隨著存儲系統(tǒng)
    發(fā)表于 03-27 10:50 ?1924次閱讀
    VDK與<b class='flag-5'>嵌入式</b><b class='flag-5'>文件系統(tǒng)</b>的投入使用

    需要了解嵌入式Linux文件系統(tǒng)及其存儲機制

    嵌入式系統(tǒng)與通用PC機不同,一般沒有硬盤這樣的存儲設(shè)備而是使用Flash閃存芯片、小型閃存卡等專為嵌入式
    發(fā)表于 05-06 16:43 ?1039次閱讀

    基于μC/OS嵌入式操作系統(tǒng)嵌入式數(shù)據(jù)管理設(shè)計

    了程序查找空閑存儲空間的難度,數(shù)據(jù)管理操作時間長(類似微機系統(tǒng)中硬盤長時間不做磁盤碎片整理會造成程序運行變慢的情況),另一方面可能造成存儲空間利用率降低。本文提出了一種利用μC/OS任
    發(fā)表于 10-09 16:24 ?1234次閱讀
    基于μC/OS<b class='flag-5'>嵌入式</b>操作<b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>嵌入式</b>數(shù)據(jù)<b class='flag-5'>管理</b>設(shè)計

    線性文件系統(tǒng)的設(shè)計方案在嵌入式應(yīng)用管理Flash空間中的應(yīng)用

    嵌入式系統(tǒng)中,為了便于對閃存(Flash)空間進行管理,會采用文件的形式來訪問Flash。目前
    的頭像 發(fā)表于 09-10 17:54 ?3063次閱讀
    線性<b class='flag-5'>文件系統(tǒng)</b>的設(shè)計方案在<b class='flag-5'>嵌入式</b>應(yīng)用<b class='flag-5'>管理</b>Flash<b class='flag-5'>空間</b>中的應(yīng)用
    主站蜘蛛池模板: www.五月天婷婷| 欧美污网站| 日本不卡一| 日韩一级片免费在线观看| 黄色片啪啪| 色拍拍拍| 四虎一影院区永久精品| 日韩欧美一区二区三区不卡视频| 亚洲综合丁香| 萌白酱一线天粉嫩喷水在线观看| 51vv福利视频在线精品| 黑粗硬大欧美视频| 4388x17亚洲最大成人网| 精品欧美| 日本一区二区三区四区视频 | 欧美一区二区三区免费高| 亚洲va中文字幕| 欧美一二三区在线| 中文字幕第13亚洲另类| 久久激情网| 欧美19禁| 亚洲 欧美 丝袜 制服 在线| 色婷婷综合久久久久中文一区二区| 国产午夜视频在线观看网站| 69日本xxⅹxxxxx19| 在线观看视频免费| 免费一级毛片清高播放| 波多野吉衣一区二区三区在线观看| 欧美jizzhd精品欧美4k| 成人窝窝午夜看片| 特大一级aaaaa毛片| 视频一区二区在线播放| 曰本福利写真片视频在线| 综合99| 亚欧美综合| 亚洲欧洲综合网| 五月婷婷中文字幕| 天天怕夜夜怕狠狠怕| 亚洲成在人色婷婷| 四月婷婷七月婷婷综合| 色网站欧美|