Я абсолютный новичок ie на Linux ядре. Приносим искренние извинения, если на это был дан ответ. Я потратил много часов и не смог ее решить, поэтому решил спросить (читая также книгу драйверов Linux). Моя постановка проблемы: я хотел бы прочитать файл pro c (/ proc / pid / maps) в моем модуле ядра (еще несколько). На proc_create имеется множество примеров, которые создают файл, а затем записывают / читают его. Я просто хочу прочитать существующий файл pro c. Похоже, что все предыдущие опции устарели (read_pro c, create_proc_read_entry и т. Д.). Вариант, который я прочитал, это вызвать proc_pid_maps_operations из task_mmu. c. Это происходит, когда вызывается / proc / pid / maps? Это правильный подход? Или я могу абстрагировать его.
Фрагмент кода proc_create из различных учебных пособий находится здесь. В тот момент, когда я изменяю имя на существующий файл, insmod перестает работать.
if (!proc_create( "testcpuinfo", // define ENTRY_NAME "hello_world"
0, // permissions 0644
NULL, // proc directory
&fops)) // file_operations
{
printk("ERROR! proc_create\n");
remove_proc_entry(ENTRY_NAME, NULL);
return -ENOMEM;
}