gpt4 book ai didi

从C内核模块检查/proc文件

转载 作者:行者123 更新时间:2023-11-30 17:40:52 24 4
gpt4 key购买 nike

我想在内核和用户空间之间共享一个变量,并且我发现这可以通过 procfs 实现。如果设置了给定值,内核模块必须以某种方式运行。用户空间程序负责更改该值,但内核模块必须在必要时读取它。

我知道我必须在内核模块中创建 /proc 文件。我的问题是,如何从内核模块读取文件?

最佳答案

来源:linux.die.net/lkmpg/x769.html

/**
* This function is called with the /proc file is written
*
*/

int procfile_write(struct file *file, const char *buffer, unsigned long count,
void *data)

{
/* get buffer size */
procfs_buffer_size = count;
if (procfs_buffer_size > PROCFS_MAX_SIZE ) {
procfs_buffer_size = PROCFS_MAX_SIZE;
}

/* write data to the buffer */
if ( copy_from_user(procfs_buffer, buffer, procfs_buffer_size) ) {
return -EFAULT;
}

return procfs_buffer_size;
}

为了澄清,在您的模块中,每当用户写入 procfs 中的文件时,此示例都会显示如何处理此类写入。

关于从C内核模块检查/proc文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21350959/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com