麻豆一区二区三区蜜桃免费_中文字幕Va一区二区三区 _国产成人综合久久二区_丰满多毛的大隂户毛茸茸_国产麻豆剧果冻传媒免费老狼_无码人妻精品一区二区三区久久久 _亚洲中文无码精品卡通_蜜臀亚洲AV永久无码精品老司机

【ARM】MDK的文件系統(tǒng)-2022

文件系統(tǒng)的工作原理:

文件系統(tǒng)組件提供創(chuàng)建、保存、讀取和修改文件的功能。ARM C/ C++編譯器運(yùn)行庫的重定向接口允許使用ANSI C標(biāo)準(zhǔn)文件I/O函數(shù)。文件系統(tǒng)組件是為基于Cortex-M處理器的設(shè)備設(shè)計(jì)的,需要一個符合CMSIS-RTOS的實(shí)時(shí)操作系統(tǒng)來實(shí)現(xiàn)線程安全的操作。


文件系統(tǒng)組件由兩個不同的文件系統(tǒng)組成,根據(jù)媒體類型,它們位于不同的層之上:


FAT文件系統(tǒng)(使用FAT12、FAT16或FAT32)用于內(nèi)存卡設(shè)備、USB記憶棒、NAND Flash設(shè)備和RAM磁盤。FAT是許多計(jì)算機(jī)上使用的標(biāo)準(zhǔn)文件系統(tǒng)。


嵌入式文件系統(tǒng)(EFS)為NOR閃存設(shè)備進(jìn)行了優(yōu)化。


FAT文件系統(tǒng)的日志記錄是FAT文件系統(tǒng)的擴(kuò)展,它有助于在嵌入式系統(tǒng)中保持文件系統(tǒng)的一致性。


存儲卡控制層用于控制SDxC/MMC/eMMC存儲設(shè)備。


NAND Flash Translation Layer提供了對NAND Flash設(shè)備進(jìn)行磨損均衡、壞塊管理和錯誤糾正的方法。


使用文件系統(tǒng)

文件系統(tǒng)組件與ARM標(biāo)準(zhǔn)實(shí)時(shí)運(yùn)行庫集成,需要一個與CMSIS-RTOS兼容的實(shí)時(shí)操作系統(tǒng)。它不能與ARM MicroLIB庫一起使用,因?yàn)檫@個庫沒有提供用于I/O文件處理的鉤子.


下圖從開發(fā)人員的角度展示了文件系統(tǒng)的結(jié)構(gòu)。



系統(tǒng)、文件管理: 管理文件系統(tǒng)的功能,提供格式化驅(qū)動器、管理文件和目錄的操作。

標(biāo)準(zhǔn)文件I/O:對文件進(jìn)行讀、寫、尋道等輸入輸出操作的函數(shù)。

ARM標(biāo)準(zhǔn)實(shí)時(shí)運(yùn)行庫:是ARM編譯器的標(biāo)準(zhǔn)C庫,含有管理文件的函數(shù)。

FS_Config.c:文件系統(tǒng)一般特征的配置文件。

定義可以同時(shí)打開的文件數(shù)量。

設(shè)置當(dāng)前驅(qū)動器的初始設(shè)置。 當(dāng)前驅(qū)動器用于文件系統(tǒng)功能



FS_Config_xxx_n.h:每個驅(qū)動器或媒體(MC、NAND、NOR、RAM或USB記憶棒)的特性配置文件。



文件系統(tǒng)核心:處理低級的輸入和輸出文件操作(有些被重新定位為使用ARM標(biāo)準(zhǔn)實(shí)時(shí)運(yùn)行庫)。根據(jù)配置設(shè)置,它使用適當(dāng)?shù)奈募到y(tǒng)(FAT或EFS)并實(shí)現(xiàn)NAND Flash轉(zhuǎn)換層。

FAT媒體API:用于FAT文件系統(tǒng)訪問物理扇區(qū)的I/O控制接口例程。

FAT、EFS Media: FAT文件系統(tǒng)支持MC (Memory card)、NAND Flash、u盤和RAM盤。嵌入式文件系統(tǒng)(EFS)支持NOR Flash設(shè)備。

驅(qū)動文件系統(tǒng)核心通過cmsis驅(qū)動程序訪問驅(qū)動器,這些驅(qū)動程序通常是設(shè)備家族包的一部分。每個驅(qū)動器都使用專用驅(qū)動器。