Доступны ли простые функции для работы с C-файлами, такие как getc, putc и seek, в ядре Linux? - PullRequest
6 голосов
/ 27 февраля 2012

Я собираюсь написать Lexical, который будет частью модуля ядра, в котором я буду анализировать файл и возвращать токены. Для этого мне может понадобиться использовать такие функции, как fopen, getc, putc, fseek и т. Д., Которые, очевидно, являются функциями пользовательского пространства. Я искал альтернативы этим функциям в пространстве ядра и нашел такие функции, как open, filp_open, sys_open и т. Д., Которые, я думаю, будут в порядке для меня. Но я хочу знать, доступны ли в пространстве ядра такие функции, как getc, putc, seek и т. Д. (Которые могут быть очень полезны в файловых операциях)?

1 Ответ

5 голосов
/ 29 февраля 2012

Не.

Чтение файлов, и особенно сложных файлов конфигурации, не нужно делать из ядра.

Существует много информациио том, почему это плохая идея. FAQ по KernelNewbies - хорошее начало.

На самом деле, действительно, не делайте этого.Я интегрирую большое количество кода вендора (ядра), и это одна из ошибок, которая продолжает появляться и кусать нас.Учитесь делать все правильно с самого начала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...