Как убить поток ядра? И я действительно хочу это сделать?

8

Как я узнал из этот вопрос , [bracketed] процессов, перечисленных командой ps aux , являются потоками ядра. Так есть способ убить их из командной строки? Если нет, я думаю, причина в том, чтобы сохранить пользователя от более высокого риска получить панику ядра, правильно?

    
задан math 12.12.2011 в 09:12
источник

2 ответа

8

Вы не можете убивать потоки ядра или любой процесс, который заблокирован в состоянии D, потому что сигналы доставляются только тогда, когда ядро ​​возвращается в пользовательский режим. Помимо технического ограничения доставки сигнала, уничтожение потока в середине кода ядра приведет к повреждению системы, так как код ядра может содержать важный ресурс в то время, такой как блокировка спина или мьютекса, и убийство будет предотвращать эти ресурсы от выпуска.

Если у вас есть процесс, который застрял в состоянии D в течение длительного периода времени, у вас есть ошибка ядра. См. Ссылка , чтобы узнать, как сообщить об этом.

    
ответ дан psusi 12.12.2011 в 16:11
источник
2

Нити ядра - это необходимые потоки, созданные вашим ядром для управления вашей системой.

Не все необходимы, но все (большинство) все полезны и не требуют в основном лишних ресурсов, нет причин, по которым в нормальных условиях можно было бы подумать об убийстве нити ядра.

Ядро Linux может создавать уничтожить те потоки, когда это необходимо, вы не должны беспокоиться о них, и убивать при большинстве обстоятельств не то, что вы можете сделать.

    
ответ дан Bruno Pereira 12.12.2011 в 09:53
источник

Ознакомьтесь с другими вопросами по меткам