Тут уже предлагали программу, "которая показывает, какой процесс или драйвер тормозит систему".
Я разовью мысль. У пользователя нет потребности видеть, кто тормозит систему, но у пользователя есть потребность исправить это, даже когда всё зависло.
Каким я вижу функционал:
— Иметь окно типа диспетчера задач (лучше заменять его по Ctrl+Alt+Del), но с вменяемым показом загрузки процессора и памяти как в top/htop — на одной странице
— Плюс на той же странице показывать IO загрузку
— Функционал как в xkill — нажимаем шорткат, кликаем на окно — процесс без вопросов убит
— Всё зависло и даже диспетчер задач не грузится, а наша программа — вуаля — доступна по шорткату без тормозов, чтобы ни случилось. Уж не знаю, как это реализовать, приоритеты, собственный драйвер, блокирующий IO или выполнение других программ, или что-то ещё
— Всё зависло по причине того, что кончилась оперативка, а файла подкачки нет, но не беда — наша программа опознала эту ситуацию и что-то убила или предложила убить (тормозов нет — см. предыдущий пункт)
Это, конечно, сложнее CD ejector'a, но порог входа стал выше. Теперь недостаточно просто написать что-то. Надо написать что-то лучше других.