Вопросы по теме 'kernel-module'

Методы связи между ядром и пользовательскими приложениями
Новичок в программировании для Linux в целом. Я пытаюсь связаться с модулем ядра через общую память, но не могу вызвать функции, используемые в пользовательских приложениях, таких как shmget(); Я установил заголовки ядра и ядро-разработку и...
5401 просмотров
schedule 21.05.2023

Могу ли я заменить функцию ядра Linux на модуль?
Я занимаюсь ядром для небольшого летнего исследования. Мы планируем внести изменения в TCP в конкретных расчетах RTT. Я бы хотел заменить разрешение одной из функций в tcp_input.c на функцию, предоставляемую динамически загружаемым модулем ядра. Я...
9656 просмотров
schedule 21.02.2022

inode_operations, предупреждение: инициализация из несовместимого типа указателя
Я пытаюсь скомпилировать простую программу ядра, которая читает и записывает из файла proc. Я пытаюсь установить разрешение для этого файла, переопределив разрешение fp в структуре inode_operations (.permission) static int...
2244 просмотров
schedule 16.07.2023

Как заставить символьное устройство Linux автоматически отображаться в /dev без запуска mknod?
Как лучше всего заставить персонажа появляться в /dev? У меня есть драйвер, который вызывает register_chrdev, и я вижу запись в /proc/devices, когда загружаю модуль. Однако мне по-прежнему приходится вызывать mknod в командной строке, чтобы он...
2813 просмотров

Автоматический вызов модуля LSM
Как можно использовать LSM для автоматического вызова специально написанных модулей ядра? В частности, я хотел бы, чтобы мой модуль вызывался каждый раз, когда создается экземпляр нового процесса, чтобы он мог выполнять некоторую проверку меток...
89 просмотров
schedule 23.04.2022

Тайм-аут подключения к земельному сокету ядра
еще раз, мне нужна ваша помощь в моем модуле ядра. Я реализовал клиентский модуль, но каждый раз функция подключения возвращает errno=110 (время ожидания). Я не понимаю, почему? Чтобы протестировать этот модуль, я запустил netcat в режиме...
2467 просмотров
schedule 01.01.2023

Как скомпилировать модуль ядра с новым исходным кодом
Я пытаюсь скомпилировать модуль Hello World . В моей системе стоит новая Ubuntu, в которой нет скомпилированного ядра. Мое ядро: 2.6.32-34-общий Я дал следующий Makefile и получил ошибку: obj-m += hello-1.o all: make -C...
20267 просмотров
schedule 01.07.2023

Реализация драйвера устройства в виде набора модулей ядра
У меня есть библиотека пользовательского пространства, которая используется для связи с устройством через последовательный порт. Библиотека довольно сложная и выполняет множество задач, включая размещение заголовков в полезной нагрузке, фрагментацию...
280 просмотров
schedule 17.04.2024

Linux/Kernel: как выбрать фреймворк Videobuf2 в качестве модуля ядра?
Я хотел бы выбрать модули videobuf2 в качестве модулей ядра. Делаю "make menuconfig", но ничего не нахожу. Я хотел бы иметь файлы .ko, чтобы загружать их, потому что я программирую драйвер на основе VIVI, который их использует. Я думаю, мне...
1043 просмотров

Предупреждение о создании модуля ядра, использующего экспортированные символы
У меня есть два модуля ядра (скажем, modA и modB). modA экспортирует символ с EXPORT_SYMBOL(symA) , а modB использует его. У меня есть заголовок modA.h для modA: ... extern void symA(int param); ... и в modB.c : #include "modA.h"...
10106 просмотров
schedule 06.10.2023

Как ядро ​​Linux определяет порядок вызовов __init?
В ядре много случаев вызова __init как в драйверах module_init, так и в других функциях ядра. Я сомневаюсь, как именно ядро ​​​​определяет последовательность вызова __init . Что еще более важно, как он также определяет последовательность вызова...
4714 просмотров
schedule 05.04.2022

Параметры модуля ядра в sysfs — быстрая реакция на изменения
Можно ли уведомить модуль, когда один из его системных файлов был изменен? Моя задача - сделать файл, который контролирует размер буфера внутри модуля, я хочу изменить размер буфера при изменении значения в файле. Моя другая идея (если я не могу...
3433 просмотров
schedule 22.09.2022

максимальная выделенная память модулем linux-kernel
Я хочу написать модуль, задачей которого является захват входящих пакетов без отправки их в приложение пользовательского пространства и выполнение некоторых изменений в захваченном пакете. затем этот модуль отправит этот пакет для передачи на сетевую...
1352 просмотров

доступ к памяти при написании модуля ядра Linux на ассемблере
Я пытаюсь написать модуль ядра на ассемблере. В свое время мне понадобился глобальный варс. Я определяю двойное слово в разделе .data (или .bss), а в функции инициализации я пытаюсь добавить 1 к var. Моя программа работает правильно, но insmod...
621 просмотров

Загружаемый модуль ядра: неизвестный символ malloc_sizes (ошибка 0)
Я разработал загружаемый модуль ядра (LKM) для Android. Я использую kzalloc : device = kzalloc(ndevices * sizeof (*device), GFP_KERNEL); и это работало какое-то время, но после обновления моего андроида (с 4.1 он больше не работает) я...
2001 просмотров
schedule 25.08.2022

Невозможно обработать запрос ядра на подкачку в X при перехвате системного вызова
Возможный дубликат: Ядро Linux: пример перехвата системных вызовов Я пытался перехватить системные вызовы на уровне ядра. Я получил основную идею из этого question . Системный вызов, который я пытался перехватить, был fork () ....
1023 просмотров
schedule 08.01.2024

модуль ядра при вызове из одного процесса пишет на страницу из другого процесса
Я пишу модуль ядра, который должен вызываться процессом p1 для перезаписи страницы данных, принадлежащей целевому процессу p2. Во-первых, внутри модуля ядра и при ответе на событие записи в файловую систему proc, выданное p1. Я использовал...
438 просмотров

Вызов kernel_fpu_begin дважды перед kernel_fpu_end
Я использую функции kernel_fpu_begin и kernel_fpu_end в asm/i387.h для защиты состояний регистров FPU для некоторых простых арифметических операций с плавающей запятой внутри модуля ядра Linux. Меня интересует поведение двойного вызова...
2897 просмотров

Используйте одну и ту же file_operation для разных файлов в VFS
Я создаю несколько объектов dentry в securityfs в пользовательском модуле ядра. Вот как я это делаю: inst->output_file = securityfs_create_file("1", S_IRUSR | S_IRGRP, uprp_dir, NULL,...
95 просмотров
schedule 23.04.2024

Почему input_register_device() блокирует всю систему при вызове обратного вызова .disconnect другого устройства ввода в том же модуле?
Почему функция input_register_device() при вызове из обратного вызова .disconnect другого устройства ввода, управляемого в том же модуле ядра, блокирует всю систему? Есть ли способ напрямую отменить регистрацию и зарегистрировать какое-либо...
564 просмотров
schedule 27.08.2022