FS:VFS层
2021-05-30 09:56:37 0 举报
FS:VFS层流程图
作者其他创作
大纲/内容
do_sync_read
调用具体文件系统read_iter
找到文件当前读写位置即&file->f_pos
init_sync_kiocb
xfs_file_buffered_aio_read
iov_iter_init
new_sync_read
最新内核都不走这条路
初始化struct kiocb(IO控制块)
__vfs_read
__fget_light
解锁保护文件读写pos的互斥量struct file -> f_pos_lock
User
file_pos_read
call_read_iter
file->f_op->read
vfs_read
方法存在
Kernel
初始化struct iov_iter(nr_segs = 1即初始只有一个iov_iter缓冲区b style=\"font-size: inherit;\
通用方法不存在
fdget_pos
read
fdput_pos
file_pos_write
xfs_file_read_iter
file->f_op->read_iter
以后vfs过来的读请求都调用这个接口
generic_file_read_iter
ksys_read
读完更新file的pos信息
收藏
收藏
0 条评论
下一页