Скомпилировать автономную программу ext4 для пользователя - PullRequest
1 голос
/ 14 октября 2019

Я с нетерпением жду написания автономной программы для пользовательского пространства, в которой используются некоторые функции, определенные в модуле ядра ext4, например:

struct ext4_group_desc * ext4_get_group_desc(struct super_block * sb,
                            ext4_group_t block_group,
                            struct buffer_head ** bh);

Я привел это конкретное имя функции в качестве примера, ноЯ смогу вызвать любую из функций модуля ext4.

Вопросы:

  1. Какие заголовки мне нужны для компиляции? Существуют ли библиотеки ext4 для пользовательского пространства?

  2. Предполагая, что у меня была файловая система ext4 на /dev/sda5 и что я хотел работать с группой блоков номер 23, как правильно инициализировать переменные длябыть переданным в ext4_get_group_desc? Как получить суперблок в частности?

Спасибо

1 Ответ

1 голос
/ 14 октября 2019

Вы не можете сделать это. В целом, код ядра может быть вызван напрямую только другим кодом ядра (главное исключение - системные вызовы). Эта функция не подпадает ни под одно из исключений.

...