и наглухо застрял в одном месте
мне нужно прочитать файл, но все попытки оказались тщетны и модуль застревает (dmesg пишет что null pointer)
ну так конечно , ты создал указатель на массив чаров и заполняешь его нулями unsigned char buf[stdin_file_size]; for (i = 0; i < stdin_file_size; i++) { buf[i] = 0; } а дальше пытаешься из него читать error = kernel_read(stdin_file, buf, stdin_file_size, 0);
Што А как тогда следует это делать? Немного не понятна логика
Ой, а у тебя есть пдфки с лабами, методички, лекции по этой теме? Вообще могу тебе что-нибудь подсказать по Си.
Это индивидуальное задание Описывается как "создать модуль, который изменяет файлы /etc/passwd и прочие такие" Никаких методичек и всего такого
А что за универ?
Инфобез
Вообще первое правило ядерных модулей – никогда не работать с файлами. В лучшем случае дать интерфейс, через которых можно закинуть файл внутрь ядерной структуры, но явно не читать что-либо из файловой системы.
Читал, в курсе про это Но задание есть задание
Обсуждают сегодня