我正在尝试编写一个内核模块,它将一些数据写入 proc 文件。我正在尝试编写类似 5000 个字符的内容,但是当我说 $>cat /proc/myentry 时,我只能读取 1000 个字符。
int procfile_read(char *buffer, char **buffer_location, off_t offset, int buffer_length, int *eof, void *data){
int ret;
static char my_buffer[4096];
if (offset > 0) {
ret = 0;
} else {
ret = sprintf(my_buffer, LARGE STRING HERE);
}
*buffer_location=my_buffer;
return ret;
}
这是我的代码。提前致谢。