Ext4文件系统架构分析(四)—— Ext4 文件系统 ioctl功能概述

5980阅读 0评论2014-01-08 登高望远海
分类:LINUX

 ioctl.c 源码功能概述

Ext4的ioctl提供给用户以下接口,以方便用户更改文件系统的各种设置和状态:

(1)    EXT4_IOC_GETFLAGS: 获取inode的标志位,用户获取当前的inode标志位信息;

(2)    EXT4_IOC_SETFLAGS: 设置inode的标志位,用户为inode标志位设置新的信息;

(3)    EXT4_IOC_GETVERSION 或EXT4_IOC_GETVERSION_OLD:获取inode->i_generation,用户获取当前inode对应的文件的版本号;

(4)    EXT4_IOC_SETVERSION 或EXT4_IOC_SETVERSION_OLD:设置inode->i_generation,用户设置当前inode对应的文件的版本号;

(5)    EXT4_IOC_WAIT_FOR_READONLY:用于JBD2调试时使用,未定义编译开关CONFIG_JBD2_DEBUG 则该ioctl命令不可用;

(6)    EXT4_IOC_GROUP_EXTEND: 块组扩展,在文件系统的最后一个块组上扩展文件系统的容量;

(7)    EXT4_IOC_MOVE_EXT:交换一个文件的指定范围到另一个文件的指定位置;

(8)    EXT4_IOC_GROUP_ADD:增加块组扩展文件系统容量;

(9)    EXT4_IOC_MIGRATE:将文件数据块的映射方式由间接映射迁移为extents方式;

(10)  EXT4_IOC_ALLOC_DA_BLK:强制将延迟分配的所有数据块分配给文件。

上一篇:Ext4文件系统架构分析(五) ——ioctl源码分析之设置/获取文件版本号
下一篇:Ext4文件系统架构分析(七) ——ioctl源码分析之扩展EXT4文件系统最后一个块组大小