Linux内核读取文件流程(系统调用)详解

这里写目录标题
以linux内核3.13版本为例,首先内核通过系统调用read(),执行
sys_read(),在文件linux/fs/read_write.c中:

//linux/fs/read_write.c

SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count)
{
struct fd f = fdget(fd); //先根据文件描述符fd得到对应的file对象
ssize_t ret = -EBADF;

if (f.file) {
loff_t pos = file_pos_read(f.file); //得到文件的当前位置
ret = vfs_read(f.file, buf, count, &pos);

Linux内核读取文件流程(系统调用)详解最先出现在Python成神之路

版权声明:
作者:玉兰
链接:https://www.techfm.club/p/19233.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>