我正在尝试编写一个模块来读取文件(在内核模式下)。但是,问题是内核版本2.6.30,之后是,而不是导出sys_read()
我已将代码更改为
struct file* file_open(const char* path, int flags, int rights)
和 int file_read(struct file* file, unsigned long long offset, unsigned char* data, unsigned int size)
读取文件。
在这里我有在使用的参数混乱int rights
中file_open()
(是同mode
在“的open()”)。
请给我一个例子或帮助我获取的手册页file_open()
。
是的,它们是相同的。
struct file * filp_open(const char * filename, int flags, int mode);
争论
- filename:打开的路径。
- flags:根据第二个open(2)参数打开标志。
- mode:如果设置了O_CREAT,则为新文件的模式,否则被忽略。
file_open
将第三个参数int rights
作为第三个参数传递给filp_open
,即int mode
。
file_open
由您定义为基础VFS级别函数的包装函数filp_open
。因此,您不能期望在上找到联机帮助页file_open
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句