Результаты поиска по запросу "linux-kernel"

1 ответ

который содержит базовый адрес.

ел бы знать адрес модуля ядра. Фактически, из трассировки стека это выглядит так, что сбой был вызван модулем ядра (который был преобразован после загрузки системы). Есть несколько модулей, которые я удаляю вручную. Поэтому мне нужно определить, ...

1 ответ

Использование mmap () с O_DIRECT сложно. Есть некоторые ограничения. Вывод в файл должен быть выровнен по блокам. Например, если вы установите смещение в mmap () равным 0, ваш код будет работать. Вы должны проверить размер блока вашей файловой системы, чтобы правильно установить это значение.

у не работает псевдокод (O_DIRECT приводит к EFAULT) in_fd = open("/dev/mem"); in_mmap = mmap(in_fd); out_fd = open("/tmp/file", O_DIRECT); write(out_fd, in_mmap, PAGE_SIZE);пока следует (не O_DIRECT) in_fd = open("/dev/mem"); in_mmap = ...

0 ответов

Зачем вообще нужен orig_eax? Почему было бы важно, какой это системный вызов после вызова соответствующего? Как я понимаю, возвращаемое значение системного вызова записывается в стек, где поздно мы его выталкиваем и сохраняем в eax. И orig_eax существует только для того, чтобы мы не потеряли вызванный вызов sys. Мой другой вопрос, почему возвращаемое значение записывается в стек, а не сразу в eax?

уorig_eax член включен вsys/user.h«sstruct user_regs_struct?

ТОП публикаций

2 ответа

Добавление поддержки menuconfig / Kconfig в моем проекте

Я планирую добавить поддержку menuconfig в моем проекте. Проект не связан с ядром Linux, поэтому я должен написать все с нуля в menuconfig и Makefile. Как добавить поддержку menuconfig, создать Kconfig и заставить make-файл читать определения в ...

8 ответов

Как установить глобальный лимит файлов, чтобы избежать ошибки «много открытых файлов»?

У меня есть служба веб-сокетов. это странно, что есть ошибка: «слишком много открытых файлов», но я установил конфигурацию системы: /etc/security/limits.conf * soft nofile 65000 * hard nofile 65000 /etc/sysctl.conf net.ipv4.ip_local_port_range = ...

1 ответ

Случай с mutex_lock совершенно другой - затрагиваются только потоки, пытающиеся получить доступ к блокировке, и если поток достигает заблокированного мьютекса, то происходит перепланирование. По этой причине mutex_locks нельзя использовать в прерываниях (или других элементарных) контекстах.

процесс в пространстве ядра содержитspin_lockпроцесс не может быть прерван из-за какого-либо из следующих условий: Когда временной интервал процесса истощаетсяКогда процесс с высоким приоритетом становится работоспособнымКогда происходит ...

1 ответ

Но когда switch_to () переходит от задачи A к задаче B, задача B фактически начинает выполняться после переключения? Потому что я понимаю, если это происходит из одной задачи, переходящей непосредственно в другую, но если, например, switch_to () вызывается из прерывания (из schedule ()), мне кажется, что это будет выходить из кода прерывания раньше он заканчивается, и перейти непосредственно к новой задаче. Если бы это было правильно, новая задача запустилась бы в режиме ядра, несмотря ни на что, потому что IRET не был бы выполнен. Я скучаю по тому, что не имеет смысла в этом сценарии.

аюсь понять, как на самом деле работает процесс расписания в ядре Linux. Мой вопрос не об алгоритме планирования. Это о том, как функцииschedule() а такжеswitch_to() работай. Я постараюсь объяснить. Я видел это: Когда у процесса заканчивается ...

1 ответ

Как начинается процесс инициализации в ядре Linux?

Я пытаюсь понять процесс init в ядре linux, который является первым процессом и статически инициализируется макросом INIT_TASK. 161 #define INIT_TASK(tsk) \ 162 { \ 163 .state = 0, \ 164 .stack = &init_thread_info, \ 165 .usage = ATOMIC_INIT(2), ...

1 ответ

 (последний ответ Идолона) кажется актуальным. Любые комментарии?

способ убить приложение Dalvik (активно работающее) на переднем плане из ядра Linux (используя его идентификатор процесса)? Как мне этого добиться? есть идеи? Видит ли ядро ​​pid работающего приложения? Как, например, для. Диспетчер процессов ...

1 ответ

Ах, я подозревал что-то подобное .. Но как это все равно сработает, поскольку даже с патчем PREEMPT_RT (или другой жесткой ОС реального времени) задержка прерывания составляет, IIRC, порядка десятков микросекунд ??

ли способ исключить процессор из обычного планирования? То есть используяsched_setaffinity Я могу указать, на каком процессоре должен выполняться поток, но я ищу вид обратного. То есть я хочу исключить данный процессор из обычного планирования, ...