操作系统 存储设备 文件系统三者之间的关系 疑惑:linux下ext系列文件系统适用于什么存储设备

嵌入式Linux上的文件系统,大多是为linux内核在flash上存放做准备的。
运行linux内核,一般先把linux内核放到开发板的flash上

例如:
Ext4 文件系统用于 EMMC 卡
JFFS2 是 RedHat 的 David Woodhouse 在 JFFS 基础上改进的文件系统,是用于微型嵌入
式设备的原始闪存芯片的实际文件系统。 JFFS2 文件系统是日志结构化的可读写的文
件系统。
yaffs2 是专门为 NAND Flash 设计的嵌入式文件系统

常见的rootfs格式有:ext2、jffs2 、yffs/yffs2、RamDisk。

基于存储设备的文件系统和不基于存车设备的文件系统

疑惑:ext文件系统适用于哪种存储设备

Ext4 文件系统用于 EMMC 卡。
ext4
Ext4 文件系统是一个高效的、优秀的、可靠的和极具特点的文件系统,相对于 Ext3 的
的改进是更深层次的,是文件系统数据结构方面的优化。

步骤 1. 制作支持 Ext4 的内核镜像。进入 linux-3.4.y 目录下,执行以下命令:
cparch/arm/configs/hi3518ev200_full_defconfig .config
make ARCH=arm CROSS_COMPILE=arm-hisiXXX-linux- menuconfig(保存退出即可)
make ARCH=armCROSS_COMPILE=arm-hisiXXX-linux- uImage
步骤 2. 制作 Ext4 文件系统镜像。在发布包SDK/package/osdrv/tools/pc_tools 目录下的 make_ext4fs 为制作 Ext4文件系统工具。使用方法如下:
./make_ext4f –l 32M –s rootfs.ext4.img

其中, -l 32M 是指定 uboot 中配置 emmc 的文件系统分区大小为 32M, -s 为使用 gzip 压缩,
rootfs.ext4.img 是生成的 Ext4 文件系统映像文件, rootfs 是之前已经制作好的根
文件系统。请根据实际情况修改参数。
----结束

linux中常用文件系统介绍——cramfs、 JFFS2、 NFS、 initrd、 yaffs2、 Ext4、 squashfs
制作eMMC文件系统

不同的文件系统类型有不同的特点,因而根据存储设备的硬件特性、系统需求等有不同的应用场合。在嵌入式Linux应用中,主要的存储设备为RAM(DRAM, SDRAM)和ROM(常采用FLASH存储器),常用的基于存储设备的文件系统类型包括:jffs2, yaffs, cramfs, romfs, ramdisk, ramfs/tmpfs等。

EXT(Extended file system)是延伸文件系统、扩展文件系统,ext1于1992年4月发表,是为linux核心所做的第一个文件系统
格式化命令:mkfs -t <文件系统类型> <分区设备文件名>

mkfs.xfs /dev/sdb1

man 5 fs可以取得全部文件系统的简要介绍

linux操作系统想让某个磁盘的某一分区帮它存储文件,就要先把他格式化成ext格式?????
磁盘是用来储文件的,但是必须先把磁盘格式化为某种格式的文件系统,才能存储文件。文件系统的目的就是组织和管理磁盘中的文件。在 Linux 系统中,最长见的是 ext2 系列的文件系统。其早期版本为 ext2,后来又发展出 ext3 和 ext4。ext3 和 ext4 虽然对 ext2 进行了增强,但是其核心设计并没有发生变化,所以我们仍是以较老的 ext2 作为演示对象。

顺便一提,一块Flash芯片可以被划分为多个分区,各分区可以采用不同的文件系统;两块Flash芯片也可以合并为一个分区使用,采用一个文件系统。即文件系统是针对于存储器分区而言的,而非存储芯片。

文件系统的特点:
Linux系统将磁盘、flash等存储设备划分为若干个分区,在不同的分区存放不同类别的文件,与Windows的C盘类似,Linux一样要在一个分区上存放系统启动所必须的文件,比如内核映像文件(在嵌入式系统中,内核一般单独存放在一个分区中)、内核启动后运行的第一个程序(init)、给应用户提供操作界面的shell程序、应用程序所依赖的库等。这些必须的、基本的文件合称为根文件系统,他们存放在一个分区中。Linux系统启动后首先挂接这个分区,称为挂接(mount)根文件系统。其他分区上所有的目录、文件的集合,也称为文件系统。
Linux以树状结构管理所有目录,文件,其他分区挂接在某个目录上,这个目录被称为挂接点或安装点,然后就可以通过这个目录来访问这个分区上的文件了。比如根文件系统被挂接在根目录"/"上后,在根目录下就有根文件系统的各个目录、文件:/bin、/sbin、/mnt 等;再将其他分区挂接到/mnt目录上,/mnt目录下就有这个分区的各个目录、文件。
在一个分区上存储文件时,需要遵循一定的格式,这种格式称为文件系统类型,比如ntfs,ext2,yaffs等。除这些拥有实实在在的存储分区的文件系统类型外,Linux还有几种虚拟的文件系统类型,比如proc、sysfs等,他们的文件并不存储在实际的设备上,而是在访问他们是由内核临时生成。

原文链接:https://blog.csdn.net/qq_22863733/article/details/79717601

文件系统和操作系统
磁盘分区完毕后还需要进行格式化,之后操作系统才能够使用这个分区。这是因为每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区进行格式化,以成为操作系统能够利用的文件系统格式。传统的磁盘与文件系统的应用中,一个分区誻只能够被格式化成为一个文件系统,所以我们可以说一个文件系统就是一个分区

操作系统的文件数据除文件内容外,通常还有非常多的属性,Linux中的文件权限(rxw)与文件属性(所有者,群组、时间参数等)。文件系统通常会将这两部分数据分别存放在不同的块,权限与属性放置到inode中,至于实际数据则放置到data block块中。另外还有一个超级块(super block)会记录整个文件系统的的整体信息,包括inode与block的总量、使用量、剩余量,以及文件系统的格式与相关信息等。

原文链接:https://blog.csdn.net/ljianhui/article/details/8604140

操作系统-文件系统

在前面操作系统内核资源管理功能中有三个功能,分别是进程管理、存储器管理和设备管理而唯独没有文件系统的功能,其实在之前是别说操作系统内核就连操作系统中都没有文件系统这个功能的,但随着人们要存储到磁盘上的内容越来越多,众多的信息存储到一起,很不方便,这便有了文件系统。

先给出官方定义:为用户提供了在计算机系统中对数据信息进行长期、大量存储和访问的功能。其实说白了就是解决了人们不知道把内容存到哪以及怎么取出内容的问题。

这也就是文件系统怎么实现磁盘存储空间管理(存到哪)及按名访问(怎么取出)的问题。

原文链接:https://blog.csdn.net/shang_0122/article/details/89188288

Linux入门之ext\ext2\ext3\ext4的介绍与区别
ext
第一代扩展文件系统,一种文件系统,于1992年4月发表,是为linux核心所做的第一个文件系统。采用Unix文件系统(UFS)的元数据结构,以克服MINIX文件系统性能不佳的问题。
它是在linux上,第一个利用虚拟文件系统实现出的文件系统
克服MINIX文件系统性能不佳的问题

ext2
第二代扩展文件系统是LINUX内核所用的文件系统。
它开始由Rémy Card设计,用以代替ext,于1993年1月加入linux核心支持之中。ext2 的经典实现为LINUX内核中的ext2fs文件系统驱动,最大可支持2TB的文件系统,至linux核心2.6版时,扩展到可支持32TB。
在ext2文件系统中,文件由inode(包含有文件的所有信息)进行唯一标识。一个文件可能对应多个文件名,只有在所有文件名都被删除后,该文件才会被删除。此外,同一文件在磁盘中存放和被打开时所对应的inode是不同的,并由内核负责同步。
文件系统高效稳定

ext3
EXT3是第三代扩展文件系统(英语:Third extended filesystem,缩写为ext3),是一个日志文件系统,常用于Linux操作系统。
Ext3文件系统是直接从Ext2文件系统发展而来,目前ext3文件系统已经非常稳定可靠。它完全兼容ext2文件系统。用户可以平滑地过渡到一个日志功能健全的文件系统中来。
1、高可用性:系统使用了ext3文件系统后,即使在非正常关机后,系统也不需要检查文件系统。 2、数据的完整性:避免了意外宕机对文件系统的破坏。 3、文件系统的速度:因为ext3的日志功能对磁盘的驱动器读写头进行了优化。所以,文件系统的读写性能较之Ext2文件系统并来说,性能并没有降低。 4、数据转换 :“由ext2文件系统转换成ext3文件系统非常容易。 5、多种日志模式

ext4
EXT4是第四代扩展文件系统(英语:Fourth extended filesystem,缩写为 ext4)是Linux系统下的日志文件系统,是ext3文件系统的后继版本。Ext4是由Ext3的维护者Theodore Tso领导的开发团队实现的,并引入到Linux2.6.19内核中。
Ext4是Ext3的改进版,修改了Ext3中部分重要的数据结构,而不仅仅像Ext3对Ext2那样,只是增加了一个日志功能而已。Ext4可以提供更佳的性能和可靠性,还有更为丰富的功能
1.与Ext3兼容:执行若干条命令,就能从Ext3在线迁移到Ext4,而无须重新格式化磁盘或重新安装系统。 2.更大的文件系统和更大的文件:较之Ext3目前所支持的最大16TB文件系统和最大2TB文件,Ext4分别支持1EB(1,048,576TB,1EB=1024PB,1PB=1024TB)的文件系统,以及16TB 的文件。 3.无限数量的子目录:Ext3目前只支持32,000个子目录,而Ext4支持无限数量的子目录。 4.Extents:Ext4引入了现代文件系统中流行的extents概念,每个 extent 为一组连续的数据块,相比Ext3采用间接块映射,提高了不少效率。 5.多块分配:Ext4 的多块分配器“multiblock allocator”(mballoc) 支持一次调用分配多个数据块。 *6.延迟分配 7.快速 fsck 8.日志校验 9.“无日志”(No Journaling)模式 10.在线碎片整理 11.inode 相关特性:较之Ext3默认的inode大小128字节,ext4默认inode大小为256字节

原文链接:https://blog.csdn.net/weixin_39212776/article/details/81016007

首先你考虑一点描述语句:根文件系统也是一种“文件系统”,可以认为是一种“特殊的”“文件系统”,为什么是叫“特殊的”呢?是因为这种“根”“文件系统”承载着某些“特殊的功能”(其实“文件系统”相同的话,所具备的功能都是一样的),那就是“操作系统”可能需要通过某种“布局”来管理相关设备的,诸如软盘设备、硬盘设备、虚拟磁盘设备等等,这里可能就是用了一种已被定义好了“数据结构”的“布局”,即“文件系统”,而出现的“根文件系统”呢可能是用来担当主要或重要角色。

(形象点来说,Windows下的C盘分区是有一定文件系统的,如FAT32、NTFS,这当然也都是文件系统呀。在安装Windows操作系统时,会要求你先“格式化”C盘[当然我们目前考虑操作系统是被安装在C盘中],采用一种“文件系统”比如NTFS、FAT32等,这一步呀,就类似于安装“根文件系统”,也就是说在C盘中的NTFS文件系统会被称作是“根文件系统”,而在D盘等中的NTFS文件系统会被称作是“文件系统”或你想加上前缀名称也不是不可以,比如“普通文件系统”,而我们从名称上来说的话,因为这里出现了一个字眼“根”,所以我们就有两种名称的叫法了,自然就是FS与RFS,所以这种名称叫法就会让人感觉很是“云里雾里”,而后“不知所云”的],这个“格式化”过程就是将C盘上的存储空间呀按预先定义好的一种FS的“数据结构”去“初始化”这些磁盘,[这里假设MINIX FS也可被Windows用来“格式化”C盘呀]比如建立引导块、建立超级块、建立两类位图块、建立i节点位图块、建立好数据区块等)也就是说,这个磁盘分区必须已经按一定数据结构的方式把磁盘空间“组织”好,以便“某种系统”(OS或FS,好象是FS更准确吧)能“访问”该分区,所以在 0.11内核中会有两种区分:mount_root() 和 sys_mount(),分别指“挂载根文件系统”、“挂载文件系统”[这里我觉得不应该用一个词:安装!我所理解的意思是,“安装”就是指把某种东西“放”到另一种东西上面去,比如你要安装某种软件到C盘,这种软件的安装程序可能在D盘,这时你会启动D盘上该软件的安装程序,然后安装程序就会把软件默认安装到C盘上,所以这个过程会叫做“安装”,安装前C盘上没有该软件的任何信息,安装后C盘上就会有该软件的信息啦],所以呢,要使用sys_mount()功能,某种设备(具体来说就是某一分区)必须已经被某种FS的格式“安装”好,然后该设备才会被“挂载”(mount)到“一个地方”去。

文件系统和内存关系:
在这里插入图片描述
挂载点的意义
在这里插入图片描述
https://blog.csdn.net/weixin_44907813/article/details/102873946?ops_request_misc=&request_id=&biz_id=102&utm_term=%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%8E%E5%85%B7%E4%BD%93%E7%9A%84%E5%AD%98%E5%82%A8%E8%AE%BE%E5%A4%87%E6%B2%A1%E6%9C%89%E5%85%B3%E7%B3%BB&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-0-102873946.first_rank_v2_pc_rank_v29&spm=1018.2226.3001.4187

不同文件系统采用不同的方法来管理磁盘空间,各有优劣;文件系统是具体到分区的,所以格式化针对的是分区,分区格式化是指采用指定的文件系统类型对分区空间进行登记、索引并建立相应的管理表格的过程。

EXT(Extended file system)是延伸文件系统、扩展文件系统,ext1于1992年4月发表,是为linux核心所做的第一个文件系统

https://blog.csdn.net/daduryi/article/details/81299961?ops_request_misc=&request_id=&biz_id=102&utm_term=ext4%E7%B3%BB%E7%BB%9F%E5%92%8Cfat%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-1-81299961.first_rank_v2_pc_rank_v29&spm=1018.2226.3001.4187

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学无止境2022

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值