嵌入式系統中基于閃存平臺的存儲管理策略
該系統記錄扇區的詳細參數值如表1所示。本文引用地址:http://dyxdggzs.com/article/151786.htm
3 文件管理
文件管理層(FML)封裝了整個(gè)文件系統,并且為操作系統和上層的應用程序提供統一標準的程序接口(APIs)。用戶(hù)操作請求將被APIs移交到文件的邏輯層(FLL),然后將請求發(fā)送到文件的物理層(FPL)。
3.1 文件編輯
文件系統應提供友好的用戶(hù)界面,用戶(hù)可以操作文件,無(wú)需考慮文件的結構或物理位置。圖4顯示編輯一個(gè)存儲在閃存的文件流程圖。首先要遍歷文件信息鏈表,根據文件名來(lái)查找存儲此文件信息的節點(diǎn)。因此,該文件存儲空間的第一個(gè)扇區可獲取,后續扇區依次獲取。然后,每個(gè)扇區將逐個(gè)讀取,數據將被寫(xiě)入緩沖區。通過(guò)建立一個(gè)雙鏈表顯示數據,然后通過(guò)人機界面進(jìn)行編輯操作。最后,將修改后的數據寫(xiě)回到閃存,文件信息和系統記錄將自動(dòng)更新。
3.2 文件存儲和文件刪除
連續的文件存儲結構模式(如圖5中的文件N005和N011)在存儲前,文件通常被劃分成為大小相等的多個(gè)數據塊(除最后一個(gè)塊的大小可能小于其他塊)。塊的數量是由文件和塊大小決定,而塊的大小與存儲介質(zhì)有關(guān)。在本文中,閃存的存儲單元(即扇區)為256 B,因此,該塊的大小建議不超過(guò)256 B。在這里,把文件劃分為252 B大小的塊,每個(gè)數據塊占用一個(gè)扇區的存儲空間。因此,塊的數量(即被占用的扇區數)可以計算出,這是最低整數不少于文件字節大小除以塊字節大小所得的商數。然后未使用的扇區鏈表的頭節點(diǎn)作為這個(gè)文件存儲空間的第一個(gè)扇區。緊隨第一個(gè)扇區,很多未使用的扇區被取出后,整個(gè)文件的存儲空間可用。因此,該文件成功保存。
評論