首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

(46)STM32——FATFS文件系统实验

get_fattime 代码 总结  ---- 学习目标         我们要来介绍的是FATFS文件系统,这是一个为嵌入式设计的文件系统,甚至8051系列也可以使用,好了,我们开始介绍吧!...运行结果 文件系统         负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。即在磁盘上组织文件的方法。...常用系统 FAT/FATFS NTFS:基于安全性的文件系统,是Windows NT所采用的独特的文件系统结构。 CDFS:CDFS是大部分的光盘的文件系统。...它支持FAT12、FAT16和FAT32,支持多个存储媒介:有独立的缓冲区,可以对多个文件进行读/写,并特别对8位单片机和16位单片机做了优化。...特点 Windows 兼容的 FAT 文件系统(支持 FAT12/FAT16/FAT32) 与平台无关,移植简单 代码量少、效率高 多种配置选项 支持多卷(物理驱动器或分区,最多 10 个卷

76510
您找到你想要的搜索结果了吗?
是的
没有找到

文件系统:抽象的“文件系统

IFileProvider对象构建了一个抽象的文件系统,我们不仅可以利用它提供的统一API来读取各种类型的文件,还能及时监控目标文件的变化。...一、树形层次结构 IFileProvider对象为我们构建了一个具有层次化目录结构的文件系统。...由于IFileProvider是一个接口,所以由它构建的是一个抽象化的文件系统,这里所谓的目录和文件都是一个抽象的概念。...为了让读者朋友们对这个文件系统有一个大体认识,我们先来演示几个简单的实例。 文件系统管理的所有文件以目录的形式进行组织,一个IFileProvider对象可以视为针对一个根目录的映射。...该方法具有一个类型为Action的参数负责将文件系统的节点(目录或者文件)名称呈现出来。

1.4K40

文件系统专栏 | 之文件系统架构

文件系统的第一块是超级块,描述文件系统的总体信息,挂载文件系统的时候在内存中创建超级块的副本。 (2)挂载描述符。虚拟文件系统在内存中把目录组织为一棵树。...每次挂载文件系统,虚拟文件系统就会创建一个挂载描述符:mount 结构体,并且读取文件系统的超级块,在内存中创建超级块的一个副本。 (3)文件系统类型。...Cannot be worse than a second */  u32     s_time_gran;//文件访问修改时间的最小单位  /*   * The next field is for ...每次挂载文件系统,虚拟文件系统就会创建一个挂载描述符。挂载描述符用来描述文件系统的一个挂载实例,同一个存储设备上的文件系统可以多次挂载,每次挂载到不同的目录下。... struct path *, struct kstat *, u32, unsigned int);//获取文件属性  ssize_t (*listxattr) (struct dentry *, char

2.5K30

文件系统:程序集内嵌文件系统

由于内嵌于程序集的资源文件采用扁平化存储形式,所以在通过 EmbeddedFileProvider构建的文件系统中并没有目录层级的概念。我们可以认为所有的资源文件都保存在程序集的“根目录”下。...由于资源文件系统并不具有层次化的目录结构,它所谓的物理路径毫无意义,所以PhysicalPath属性直接返回Null。...对于内嵌资源文件系统来说,根本就不存在所谓的文件更新的问题,所以它的Watch方法会返回一个HasChanged属性总是False的IChangeToken对象。...[ASP.NET Core 3框架揭秘] 文件系统[1]:抽象的“文件系统” [ASP.NET Core 3框架揭秘] 文件系统[2]:总体设计 [ASP.NET Core 3框架揭秘] 文件系统[3]...:物理文件系统 [ASP.NET Core 3框架揭秘] 文件系统[4]:程序集内嵌文件系统

1.4K30

文件系统

文件和路径 命名规则 扩展名 隐藏文件 工作目录和主目录 绝对路径和相对路径 目录结构 /bin - 基本命令的二进制文件 /boot - 引导加载程序的静态文件 /dev - 设备文件 /etc -...配置文件 /home - 用户主目录的父目录 /lib - 共享库文件 /lib64 - 共享64位库文件 /lost+found - 存放未链接文件 /media - 自动识别设备的挂载目录 /mnt...- 临时挂载文件系统的挂载点 /opt - 可选插件软件包安装位置 /proc - 内核和进程信息 /root - root账户主目录 /run - 存放系统运行时需要的东西 /sbin - 超级用户的二进制文件.../sys - 设备的伪文件系统 /tmp - 临时文件夹 /usr - 用户应用目录 /var - 变量数据目录 访问权限 chmod。...磁盘管理 列出文件系统的磁盘使用状况 - df。 磁盘分区表操作 - fdisk。 格式化文件系统 - mkfs。 文件系统检查 - fsck。 挂载/卸载 - mount / umount。

81630

文件系统

文件系统的了解阶段 当文件没有打开的时候,那么文件存储在磁盘之中。...扇区就是磁盘的基本单位 虽然磁盘的基本单位是扇区(512字节),但是比较小,而且有可能不同的生产商给出的扇区的大小可能本不一样,所以操作系统(文件系统)和磁盘进行I/O操作的基本单位的块 块是对磁盘存储和访问的抽象...块通常由下面几个部分构成: Block Group:ext2文件系统根据分区的大小划分为数个快组BlockGroup。...,且每一个BlockGroup都有着相同的结构 Block Group分为: 超级块:存放文件系统本身的结构信息。...为什么这么说看下文 一个目录下,可以有很多文件,但是这些文件都没有重复的文件名! 数据区存储的是文件的内容,没有存储文件名的地方,那么文件名存储在哪里呢? 还有一个问题就是目录是文件吗?

48120

基于STM32完成FATFS文件系统移植与运用--这是完全免费开源的FAT文件系统

二、FATFS文件系统介绍 2.1 FATFS简介 FatFs 是一种完全免费开源的 FAT 文件系统模块,专门为小型的嵌入式系统而设计。...fatf模块假设大小的字符/短/长8/16/32位和int是16或32位。 这些数据类型在integer.h文件中定义。这些数据类型在大多数的编译器中定义都符合要求。...三、 移植FATFS文件系统 移植之前,首先得准备一个能正常编译的工程,并且工程里有SD卡的驱动代码,提供了读写扇区这些函数才能进行FATFS文件系统的正常移植。...这篇文章重点是FATFS文件系统的移植过程。...; // 用户定义的文件系统结构体 FIL file; // 用户定义的文件系统结构体 u8 buff[]="123 知识!!"

3.1K30

proc文件系统

一、proc文件系统是什么? proc是一个伪文件系统,伪文件系统的定义: 它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。...由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。...我们常常用它来追踪进程的状态、内核的状态、内存信息、CPU使用率、系统启动时间(可以使用系统正常运行时间)等相应的信息; 二、proc文件系统详解 1、进程pid的相应的内容(以数字命名的内容): 每一个进程都有相应的进程号...proc/execdomains linux内核当前支持的execution domains /proc/fb 帧缓冲设备列表,包括数量和控制它的驱动 /proc/filesystems 内核当前支持的文件系统类型...系统总线(Bus)信息,例如pci/usb等 /proc/driver 驱动信息 /proc/fs 文件系统信息 /proc/ide ide设备信息 /proc/irq 中断请求设备信息 /proc/net

2.6K70

漫谈文件系统

Wikipedia对文件系统定义: In computing, a file system or filesystem is used to control how data is stored and...翻译成中文大致意思:文件系统主要是管理数据存储以及数据如何检索的,而数据存储在磁盘或内存中。上期我们聊过了漫谈虚拟内存,本期我们就重点介绍磁盘中的机械磁盘的组成以及工作原理,然后引申到文件系统。...文件系统设计 文件系统采用分层设计,最底层的是设备,接着是IO控制(设备驱动),基本文件系统(向设备驱动程序发出命令),文件组织模块(负责文件的逻辑块和物理块,以及管理空闲空间),逻辑文件系统(管理元数据...) 文件系统的实现 文件系统的实现包括磁盘结构和内存结构,即我们将文件以什么结构存储于磁盘,以什么结构存储于内存。...内存结构 我们每次打开一个文件,即open 文件,需要发起操作系统调用,系统调用会查看一个表:系统范围打开的文件表,每个进程会维护打开的文件表,索引号指向的是系统范围打开的文件表,这个索引号在Linux

3.8K120

ext文件系统文件写入与日志文件系统简介

写入文件的流程 确定目录的权限与使用者的权限 在inode bitmap 查找未使用的inode号码, 并写入新文件的权限与属性 在block bitmap 中查找未使用的block号码, 将数据写入block...中, 更新inode的block指向数据 同步2/3步中使用的inode与block信息到inode bitmap, 并更新superblock中的内容 数据不一致状态 当在写入文件的流程中出现以外情况..., 由于其非原子性, 可能导致超级块/区块对照表/inode对照表/block具体使用等信息与实际有误 对此, ext2文件系统使用的应对方法是, 在开机时全文件系统扫描, 确认一致性, 非常浪费时间,...因此日志式文件系统诞生 日志式文件系统文件系统中专门划分出一个区块, 进行记录写入/修改 当系统要写入一个文件时, 会先在日志记录区块中记录某个文件准备要写入的信息 实际写入,更新中介数据 在日志记录区块中完成该文件的记录

1.4K20

linux文件系统

Linux是一个基于Unix的操作系统,具有强大的文件系统功能。Linux文件系统是在硬盘上组织和存储数据的一种结构,通过文件系统可以管理文件、目录、权限等信息。...在Linux中,文件系统被组织成一个树形结构,称为文件系统层次结构(Filesystem Hierarchy Standard,FHS),该标准规定了Linux操作系统中各级目录的名称和用途,使得Linux...文件系统具有统一性和规范性。...根目录 根目录(/)是Linux文件系统中的最顶层目录,所有其他的目录和文件都是从根目录开始构建的。在根目录下可以存放各种文件和目录,如用户目录、系统文件、配置文件等。.../mnt /mnt目录是Linux系统中用于挂载文件系统的目录,通过挂载可以将其他文件系统的内容挂载到/mnt目录下,使得这些文件系统可以被访问。

8.7K00

文件系统杂谈

文件系统中重要的概念有大概有超级块、inode、file、文件描述符、文件缓存系统、目录。下面我们逐个说一下。 文件系统的概念: 1.超级块 超级块是负责管理整个文件系统,他记录了文件系统的元数据。...从数据结构中我们可以看到他记录了文件系统的inode数量、文件系统在硬盘中占据的扇区数、inode位图、数据块位图、文件系统在硬盘中第一块的块号、该文件系统文件大小的最大值。...#define NAME_LEN 14 // 文件系统的根inode节点号 #define ROOT_INO 1 // 块位图和inode位图占据的最大硬盘块数 #define I_MAP_SLOTS...20 // 系统同时打开的inode数大小,即同时只能打开32文件 #define NR_INODE 32 // file结构体数,进程间共享的 #define NR_FILE 64 // 超级块数...* mi; if (32 !

1.5K32

Linux文件系统

文件系统 磁盘 磁盘的物理结构 磁盘的储存结构 磁盘的逻辑结构 文件系统 分治 inode与数据块 软硬链接 什么是软硬连接 文件与引用计数 文件的三大时间 动静态库 什么是库 库的使用 静态库...文件系统 分治 虽然对应的磁盘访问基本单位是512字节,但是依旧很小。 所以操作系统定制的进行多个扇区的读取->1KB,2KB,4KB(现在基本都是4KB)为基本单位。...Super Block:超级块对象,保存的是整个文件系统的信息。 如果想清空哪个盘里面的所有数据内容,其实就相当于重写文件系统。一个磁盘,第一步是分区,第二部就是格式化,也就是写入文件系统。...文件系统的信息有分区的使用状态,分区的每个组的状态和信息。 既然这么重要,为何放在这里呢?其实在大部分文件系统中,块组前几个开头就是Super Block,这就相当于备份。...inode与数据块 文件 = 内容 + 属性 Linux中,文件的属性和内容是分批存储的。 保存文件属性的叫inode块:具体大小跟文件系统的版本有关,我的是ext3,128字节。

12.6K00

文件系统概述

今天讲一下文件系统,遇见过单个最大文件的问题,所以将此问题记录下来,希望对大家有用。 FAT32(Windows):支持最大分区128GB,最大文件4GB。...FAT16(Windows):支持最大分区2GB,最大文件2GB。 NTFS(Windows):支持最大分区2TB,最大文件2TB。 HPFS(OS/2):支持最大分区2TB,最大文件2GB。...JFS(AIX):支持最大分区4P(block size=4k),最大文件4P。 XFS(IRIX):这是个正经的64位的文件系统,可以支持9E(2的63次方)的分区。...CE 5.0、6.0、Windows Mobile5、6、6.1)中引入的一种适合于闪存的文件系统,为了解决FAT32等不支持4G及其更大的文件而推出。...(比如海思Hi3559V200的SDK中,SD卡采用的是FAT32文件系统,而FAT32文件系统支持单个最大文件是4G,所以一般会主动截断视频,这样也不会因为一个小错误,整个几个小时的录像文件失效,只不过查看的时候不是一个文件

1.6K40

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券