Как мне убить процесс IRQ в Linux?

Grub не монтирует диск как записываемый, а Linux монтирует. Поэтому вы хотите, чтобы это было в строке linux. For example:

linux /boot/vmlinuz-linux root=/dev/sda5 rw
4
24.01.2020, 16:25
3 ответа

Как объяснил @hobbs, это поток ядра. Более широкая перспектива заключается в следующем:

Обработка IRQ проблематична в любой ОС, поскольку прерывания могут поступать в любое время. Прерывания могут поступать даже тогда, когда ядро ​​работает над сложной задачей, а ресурсы несовместимы (указатели указывают на недопустимые адреса и т. д. ). Эту проблему можно решить с помощью блокировок, то есть не позволять обработчикам прерываний работать до тех пор, пока ядро ​​​​не перейдет в прерываемое, согласованное состояние. Недостатком использования блокировок является то, что слишком много блокировок делают систему медленной и неэффективной.

Таким образом, оптимальное решение задачи таково:

  1. Обработчики прерываний ядра максимально короткие.
  2. Их единственная задача — переместить все соответствующие данные прерывания во временный буфер.
  3. Некоторый «фоновый» поток постоянно работает с этим буфером и выполняет реальную работу от имени обработчиков прерываний.

Эти «фоновые» потоки являются потоками ядра обработчика прерываний.

  • Вы видите их в topкак нормальные процессы.
  • Однако они отображаются так, как если бы они использовали нулевую память.
  • И да, это правда, потому что им не принадлежит реальная память пользовательского пространства .

По сути, это потоки ядра, работающие в фоновом режиме.

Вы не можете уничтожать потоки ядра :они полностью управляются ядром. Если бы вы могли убить его, обработчик irq/142 в вашем драйвере nvidia больше не существовал бы :, если ваша видеокарта отправляет прерывание, ничто не обработает его. Результатом, скорее всего, будет зависание, но ваше видео точно больше не будет работать.

Проблема в вашей системе заключается в том, что этот обработчик прерываний получает много ресурсов ЦП. Есть много потенциальных причин:

  • Почему-тоаппаратное обеспечение (ваша видеокарта )посылает так много прерываний, что ваш ЦП не может обработать их все.
  • Аппаратный сбой.
  • Драйвер содержит ошибки.

Зная качество драйверов Nvidia, к сожалению, наиболее вероятно, что драйвер содержит ошибки.

Решение состоит в том, чтобы как-то сбросить этот драйвер. Некоторые идеи, упорядоченные по возрастанию жестокости:

  • Запускается ли в фоновом режиме какой-либо процесс с 3D-ускорением? Google Планета Земля, например? Если да, остановите или убейте его.
  • Из X переключитесь обратно на консоль персонажей (alt/ctrl/f1 )и затем обратно (alt/ctrl/f7 ). Тогда большая часть видео будет повторно -инициализирована.
  • Перезапустите X (выйдите в обычном режиме или нажмите alt/ctrl/backspace, чтобы убить X-сервер ).
  • Kill X (killall -9 Xorg ). Лучше, если вы сделаете это из консоли персонажа.

Если вы убьете X, но все равно увидите этот поток ядра, вы можете попытаться удалить модуль ядра Nvidia (, вы можете увидеть его в списке, указанном lsmod, затем вы можете удалить его с помощьюrmmod). Перезапуск X insmodпроизведет автоматическую перезагрузку оборудования.

Если ничего из этого не работает, необходимо перезагрузить компьютер. Если обычная перезагрузка не работает, вы можете сделать это с дополнительной жестокостью :используйте alt/printscreen/s, а затем alt/printscreen/b.


Расширение :в качестве временного обходного пути вы можете попробовать дать этому потоку очень низкий приоритет(renice +20 -p 1135). Тогда он все еще будет работать, но это будет меньше влиять на производительность вашей системы.

6
27.01.2020, 20:53

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

3
27.01.2020, 20:53

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

Обязательно заблокируйте исходящий ssh. Затем посмотрите в ufw.log, как пиры пытаются подключиться (к списку других взломанных узлов в сети ). Обратите внимание на список репозиториев при запуске обновления. Вы, вероятно, заметите файлы «имя пользователя» -вашего рабочего стола как субдомен в списке. Потому что они заархивированы и ex -фильтруют файлы вашей рабочей станции при подключении.

Тогда копайтесь... Я ищу учетные данные, чтобы убить репозиторий.

-2
27.01.2020, 20:53

Теги

Похожие вопросы