linux文件系统
文章平均质量分 65
eeblacksmith
这个作者很懒,什么都没留下…
展开
-
Extent (file systems)
According toExtent (file systems) - Wikipedia.Incomputing, anextentis a contiguous area of storage reserved for a file in afile system, represented as a range of block numbers, ortracksoncount key datadevices. A file can consist of zero or more ...原创 2022-05-11 16:43:43 · 118 阅读 · 0 评论 -
如何统计包含子目录下的文件的行数
find ./ -type -f | xargs wc -l原创 2020-10-28 10:42:43 · 221 阅读 · 0 评论 -
Ext4文件系统架构分析(十一) ——ioctl源码分析之强制立即分配延迟分配给文件的数据块
原文来自 http://blog.chinaunix.net/uid-28989651-id-4552508.htmlExt4文件系统支持强制立即分配延迟分配给文件的数据块,本质上是强制立即进行数据同步,也就是立即刷新文件的写缓冲。在Ext4文件系统中,写文件产生新数据时,文件系统并不立即分配数据块存储这些新数据(脏数据),而是延时等待到不得不写数据到磁盘为止,才会为新数据分配磁盘转载 2015-03-30 14:47:10 · 1084 阅读 · 0 评论 -
ext4的fsync性能和nodelalloc参数的分析
原文来自http://thinksrc.com/?p=189001ext4的fsync性能和nodelalloc参数的分析感叹归感叹,发泄完了还得继续过。前几天忙的不可开交,周报上面竟然能列出11项,想想以前在T公司时候的清闲,现在的老板的真幸运了。好了,言归正传。我们的系统是使用ext4作为文件系统的,ext4怎么好呢? 主要是我对它感觉比较好,呵呵,开玩笑的。还记得第一转载 2015-03-30 13:59:48 · 1737 阅读 · 0 评论 -
Ext4文件系统架构分析(九) ——ioctl源码分析之交换两个文件的物理extents
原文来自 http://blog.chinaunix.net/uid-28989651-id-4111618.html1. 交换两个文件的extentsExt4 的EXT4_IOC_MOVE_EXT命令用于交换两个文件的extents,实际上是交换两个文件的对应逻辑长度的数据的物理存储空间(见下图),也是EXT4文件系统碎片整理的基础。用户可以通过ioctl函数使用Ex转载 2015-03-30 14:43:16 · 1586 阅读 · 0 评论 -
Ext4文件系统架构分析(五) ——ioctl源码分析之设置/获取文件版本号
原文来自 http://blog.chinaunix.net/uid-28989651-id-4070725.html1. EXT4_IOC_GETVERSION获取文件的版本号Ext4 的EXT4_IOC_GETVERSION命令用于获取文件的版本号(inode.i_generation),将获取的文件版本号传给ioctl的第三个参数unsigned int arg: i转载 2015-03-30 14:35:51 · 1101 阅读 · 0 评论 -
用debugfs查看EXT4分区相关信息
带flex_bg feature的分区的信息.root@user:/# debugfs /dev/sda2debugfs 1.42 (29-Nov-2011)debugfs: statsFilesystem volume name: Last mounted on: /Filesystem UUID: 55b62fb2-66原创 2015-03-24 16:04:13 · 3345 阅读 · 0 评论 -
debugfs一点小用法
1. ls -il 可以观察文件对应的inode号29643522 drwxrwxr-x 31 user user 4096 3ÔÂ 24 09:17 original011329643520 -rwxr--r-- 1 nobody nogroup 14708372056 3ÔÂ 19 13:53 original0113.tar.gz29645382原创 2015-03-24 16:37:52 · 3024 阅读 · 0 评论 -
EXT4文件系统代码阅读的一点思考
自问自答的一个记录.要显示一个 Ext2/Ext3/Ext4 信息,可以使用 e2fsprogs 中的 dumpe2fs 或 tune2fs -l 命令,例如:dumpe2fs /dev/sda1 或者 tune2fs -l /dev/sda1, 还可以用 # debugfs /dev/sda2debugfs 1.42 (29-Nov-2011)debugfs: stats原创 2015-04-09 13:21:48 · 1232 阅读 · 0 评论 -
linux mount流程
以EXT4为例, 基于2.6.29.mount系统调用,fs/namespace.cSYSCALL_DEFINE5(mount, char __user *, dev_name, char __user *, dir_name, char __user *, type, unsigned long, flags, void __user *, data)d原创 2015-04-09 11:10:27 · 634 阅读 · 0 评论 -
Ext4文件系统架构分析(八) ——ioctl源码分析之增加块组扩展EXT4文件系大小
原文来自 http://blog.chinaunix.net/uid-28989651-id-4104571.html1. 增加块组扩展Ext4文件系统Ext4 的EXT4_IOC_GROUP_ADD命令用于增加块组来扩展文件系统的大小,它通过向文件系统中加入新的块组的方式来扩展文件系统的大小。单次能扩展的最大范围是向文件系统中增加一个完整的块组(128MB,4KB数据块计算转载 2015-03-30 14:41:51 · 1108 阅读 · 0 评论 -
Ext4文件系统架构分析(三) ——目录哈希、扩展属性与日志
原文来自 http://blog.chinaunix.net/uid-28989651-id-3981448.html1.19 哈希树目录线性目录项不利于系统性能提升。因而从ext3开始加入了快速平衡树哈希目录项名称。如果在inode中设置EXT4_INDEX_FL标志,目录使用哈希的B树(hashed btree,htree)组织和查找目录项。为了向后只读兼容Ext2,htree转载 2015-03-30 14:33:28 · 6878 阅读 · 1 评论 -
VFS文件系统结构分析
本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接。内容可任意使用,但对因使用该内容引起的后果不做任何保证。作者:[email protected] 博客:fireaxe.blog.chinaunix.net原文地址 http://blog.chinaunix.net/uid-20528014-id-40947转载 2015-01-05 17:41:26 · 528 阅读 · 0 评论 -
开始学习EXT4文件系统
文件系统是个有意思的东西, 之前接触了FAT和NTFS(都是基于开源的项目, 工作中需要用到, 了解的还算比较深入), 但是EXT2/3都只浅浅的了解了下(知道一些基本的概念),代码并没有通读过.正好android上的文件系统也从YAFFS换成了EXT4,因此打算借此契机通读一下EXT4文件系统.http://zh.wikipedia.org/zh-sg/Ext4 上说Linux 2.原创 2015-03-26 15:31:55 · 1748 阅读 · 0 评论 -
Ext4文件系统架构分析(一)
原文来自 http://blog.chinaunix.net/uid-28989651-id-3847039.html 感谢作者.本文描述Ext4文件系统磁盘布局和元数据的一些分析,同样适用于Ext3和Ext2文件系统,除了它们不支持的Ext4的特性外。整个分析分两篇博文,分别概述布局和详细介绍各个布局的数据结构及组织寻址方式等。感兴趣的看官敬请留意和指导!1. Ext4文转载 2015-03-26 15:27:24 · 2233 阅读 · 0 评论 -
Ext4文件系统架构分析(二)
原文来自 http://blog.chinaunix.net/uid-28989651-id-3848863.html 感谢作者.1.7 超级块超级块记录整个文件系统的大量信息,如数据块个数、inode个数、支持的特性、管理信息,等待。如果设置sparse_super特性标志,超级块和块组描述符表的冗余备份仅存放在编号为0或3、5、7的幂次方的块组中。如果未设置spars转载 2015-03-26 16:21:00 · 1500 阅读 · 0 评论 -
YAFFS 介绍
10年时候同事做的一个PPT, 把它整理上来.OutlineNAND Flash介绍YAFFS2 OverviewTnode StructureYAFFS2 ObjectYAFFS2 MiscReferenceNand Flash页(page)页是Nand Flash的写入操作的最小单位 ○现在常见的flash page si原创 2015-03-13 08:41:51 · 3817 阅读 · 0 评论 -
Ext4文件系统架构分析(六) ——ioctl源码分析之设置/获取Inode标志位
原文来自 http://blog.chinaunix.net/uid-28989651-id-4070715.html1. EXT4_IOC_GETFLAGS获取inode标志位Ext4 的EXT4_IOC_GETFLAGS命令用于获取inode已设置的标志信息,将获取的inode标志位的信息的结果传给ioctl的第三个参数unsigned int arg: ioctl(转载 2015-03-30 14:36:59 · 1401 阅读 · 0 评论 -
Ext4文件系统架构分析(十二) ——ioctl源码分析之在线扩展Ext4文件系统
原文来自 http://blog.chinaunix.net/uid-28989651-id-4552536.htmlExt4文件系统在线扩展大小的本质是将文件系统的数据块个数扩展到用户期望的数据块的个数。从功能上来看是扩展文件系统最后一个块组(EXT4_IOC_GROUP_EXTEND)与增加块组扩展文件系统(EXT4_IOC_GROUP_ADD)两种方式的结合,但是处理上稍微有点不转载 2015-03-30 14:48:52 · 1703 阅读 · 0 评论 -
Ext4文件系统架构分析(四)—— Ext4 文件系统 ioctl功能概述
原文来自 http://blog.chinaunix.net/uid-28989651-id-4070729.htmlioctl.c 源码功能概述Ext4的ioctl提供给用户以下接口,以方便用户更改文件系统的各种设置和状态:(1) EXT4_IOC_GETFLAGS: 获取inode的标志位,用户获取当前的inode标志位信息;(2) EXT4_IOC_S转载 2015-03-30 14:35:11 · 2030 阅读 · 0 评论 -
Ext4文件系统架构分析(七) ——ioctl源码分析之扩展EXT4文件系统最后一个块组大小
原文来自 http://blog.chinaunix.net/uid-28989651-id-4101371.html1. 扩展Ext4文件系统最后一个块组的大小Ext4 的EXT4_IOC_GROUP_EXTEND命令用于扩展文件系统最后一个块组的大小,它通过扩展文件系统最后一个块组的方式来扩展文件系统的大小。能扩展的最大范围是将文件系统的最后一个块组扩展为一个完整的块组(转载 2015-03-30 14:38:40 · 791 阅读 · 0 评论 -
Ext4文件系统架构分析(十) ——ioctl源码分析之迁移文件数据块的映射方式
原文来自 http://blog.chinaunix.net/uid-28989651-id-4147043.html1. 将文件数据块的映射方式由间接索引迁移到extents树映射Ext4文件系统数据块映射方式迁移是指,将文件的inode管理文件数据块映射方式由间接索引转变为extents树表示。Ext4文件系统的Ioctl命令EXT4_IOC_MIGRATE用于实现这转载 2015-03-30 14:44:50 · 1283 阅读 · 0 评论 -
EXT2文件系统的一点思考和小结
之前看EXT2文件系统的一点思考和小结.原创 2015-01-04 17:36:49 · 765 阅读 · 0 评论