我正在尝试编写module来读取文件(在内核模式下)。 然而,问题是内核版本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)
读取文件。
here我在int rights
中使用参数file_open()
时感到困惑(与'open()'中的mode
相同。)
请建议我举例或帮我获取file_open()
的手册页。
答案 0 :(得分:1)
是的,它们是一样的。
来自rz2 man pages for FILP_OPEN,
const sampleVideoColor = videoElement => { const canvas = document.createElement('CANVAS') const ctx = canvas.getContext('2d') const { videoWidth, videoHeight } = videoElement canvas.width = videoWidth canvas.height = videoHeight ctx.drawImage(videoElement, 0, 0, videoWidth, videoHeight) const [r, g, b] = ctx.getImageData(1, 1, 1, 1).data ///top left corner return `rgb(${r},${g},${b})` } someBackgroundElement.style.backgroundColor = sampleVideoColor(someVideoElement)
ARGUMENTS
- filename:要打开的路径。
- flags:根据open(2)第二个参数打开标志。
- mode:如果设置了O_CREAT,则为新文件的模式,否则将被忽略。
struct file * filp_open(const char * filename, int flags, int mode);
将第三个参数file_open
作为int rights
的第三个参数传递,即filp_open
。
int mode
被您定义为底层VFS级别函数file_open
的包装函数。因此,您无法在filp_open
找到联机帮助页。