Я застрял в одной проблеме, в которой я получаю __отчет _плохой _стек вызовов irq непоследовательно. Насколько мне известно, всякий раз, когда у нас есть 100000 необработанных прерываний, этот стек срабатывает. Вывод из cat /proc/irq/128/...
Я знаю, как работает обработка прерывания (переключение режима, сохранение регистров, изменение стека...). Однако мне любопытно, а что, если прерывание произойдет, когда мы все еще находимся в режиме ядра, а не в пользовательском режиме?
Я пытаюсь установить динамическое поведение без тиков на определенных ядрах (ядра 2–11), перемещая все хронометраж на единственные неуказанные ядра (ядра 0-1). Однако, когда я выполняю инструкции, указанные в: ...
(Это в контексте x86-64 Linux.) Я пытаюсь написать высоконадежный исполняемый файл пользовательской среды, и у меня есть полный контроль над сгенерированной сборкой. Я не хочу полагаться на автоматический стек...
cat /proc/interrupts показывает кучу IRQ, таких как NMI и LOC. Построчные комментарии в выводе дают четкое объяснение, но если они не имеют числового номера IRQ, как реагирует ЦП x86 ...
В частности, в ядре Linux возможна перезапись таблицы страниц (level3_kernel_pgt) при возникновении контекста асинхронного прерывания (прерывания по локальному таймеру).
Я видел...
Мы тестируем Linux Server в качестве VPN-маршрутизатора. У нас неплохой сервер, и количество прерываний, с которыми мы сталкиваемся сейчас, составляет ~ 170 000, но мы ожидаем большего. Использование процессора в порядке. Как узнать, когда слишком...
Я запускаю два дочерних процесса из bash-скрипта и жду завершения обоих с помощью команды ожидания: ./proc1 &
pid1=$!
echo "запущен proc1: ${pid1}" ./proc2 &
pid2=$!
echo "started proc2: ${...
Я пытаюсь загрузить/установить Linux для обучения, используя старый ПК (HP Pavilion Elite m9660de). Следующее сообщение — первое, что появляется при загрузке (Ubuntu и Fedora, обе из ...
Я читал, что прерывание в Linux (это было о Raspberry Pi) может занять «долгое время» для обработки или, скажем, «начать делать то, что хочет программист». Так ли это и насколько это плохо?
Есть ли большое...
Я читал Linux Kernel Development и кое-что не совсем понял для меня — когда аппаратное прерывание вызывается аппаратным обеспечением, каков критерий выбора процессора для запуска...
Я написал набор программ, предназначенных для использования радиопередатчика-приемника (NRF24L01) для соединения двух устройств, как если бы они были подключены через последовательный интерфейс. В настоящее время я могу ...
У меня есть Linux ферма в VMware Enterprise 5.5. ВМ - это (в основном) 64-битные серверы amd64 Debian Jessie с SysVinit, а не systemd. На ВМ установлен open-vm-tools. Я паравиртуализировал их ...
Я некоторое время занимался программированием ядра и хотите создать этот простой интерфейс сбора данных с помощью специального оборудования. Для переносимости и повторного использования я все это делаю на своем ...
Я читаю об учебнике по request_irq, я новичок в этой теме, так что мне нужна некоторая проверка идей: Когда он установлен, этот флаг инструктирует ядро отключать все прерывания при выполнении этого ...
У меня есть модуль ядра с крючками NetFilter в разных точках на маршруте пакетов, а крюки используют общие ресурсы. Кроме того, модуль имеет шарное устройство, которое может быть записано, что также ...
в следующей цепочке командных команд, когда прерывание отправляется с Ctrl-C, Ping может распечатать его сводную статистику перед выходом, до тех пор, пока TEE имеет -i (игнорировать прерывания) Флаг: Ping -...
У меня есть куча файлов журнала, и я хочу сделать для них tail -f в цикле, чтобы, когда я нажимаю Ctrl-C, текущий tail -f убивается, и я перехожу к следующий файл журнала: для входа в систему * .log; сделать ...
Я пытаюсь установить аффинность IRQ на Linux, изменив значение в SMP_affinity. Когда я повторяю новое значение в файл, я не получаю никакой ошибки, но когда я справляюсь, значение остается неизменным. Я ...
Скажем, мой сетевой интерфейс получает слишком много пакетов, а у меня одноядерный процессор. Что мешает ему (если вообще) продолжать прерывать работу ядра и по существу монополизировать ЦП (top -...
Я понимаю: когда в пользовательском режиме происходит прерывание / системный вызов, регистры сохраняются в стеке ядра, переключатель переводится в режим ядра, а прерывание обрабатывается и возвращается в пользовательский режим.
...
Я запускаю виртуальную машину в QEmu.
Следующая команда в гостевой виртуальной машине
cat / proc / interrupts | egrep 'virtio. * (input | output)' дает мне следующий результат: 26: 0 3376 0 ...
Я пытаюсь протестировать функциональность NAPI во встроенной среде linux. Я использовал 'pktgen' для генерации большого количества пакетов и попытался проверить количество прерываний моего сетевого интерфейса по адресу /...
У меня есть эта ошибка, которая заполняет мой системный журнал каждый день. В качестве решения на форуме arch linux есть hpet=disable в командной строке ядра, но я думаю, что это плохая идея, и я ищу другое решение. Есть...
Я заметил, что у меня есть высокое время ядра при выполнении большого сетевого трафика в Linux. Я также заметил, что 45% моего ЦП потрачены, делая прерывания. Как я могу далее диагностировать это?
Я занимаюсь разработкой приложений с малой задержкой, использую isocpu и устанавливаю сходство потоков, чтобы уменьшить (устранить?) переключение контекста во время критических потоков. Однако я не знаю, какие другие типы ...
У меня есть простое прерывание, которое запускается через вход GPIO. IRQ только увеличивает значение переменной и возвращает ее. Когда я увеличиваю частоту прерываний примерно до 10-20 кГц, система ...
Ядро Linux имеет отдельные стеки для пользовательского режима и процесса режима ядра, а также некоторые специальные стеки. Один из этих специальных стеков - стек прерываний размером 16 килобайт, помещенный в ...
В то время как я знаю, что партия пакетной обработки (вычисления CRC, обработка сегментации пакетов, и т.д.) может быть разгружена к NIC, затем каждый пакет все еще вызывает прерывание к ЦП? Есть ли различие если...