Lex Kravetski (lex_kravetski) wrote,
Lex Kravetski
lex_kravetski

Category:

Лечение компьютерных проблем при помощи высших сил

Кстати, про Операционные Системы.

Некоторое время назад заметил, что после погружения компа в ждущий/спящий режим в игры играться нереально — всё тормозит так, будто у меня комп 95-го года выпуска. После перезагрузки всё отлично, но до неё — вот так. Игры тормозят, видео тормозит, даже браузер тормозит. Сначала как-то даже не обращал внимания, но включение с нуля, оно как-то не особо удобно. Грузится долго (даже в сравнении со спящим режимом), всё ранее открытое надо заново открывать и так далее. Поэтому решил разобраться.

Посмотрел, что там с ресурсами компьютера, — одно ядро занято под завязку. С хрена ли — неясно. В «процессах» ничего такого нет. Внезапно вспомнил про «монитор ресурсов». Вхожу туда, там все ресурсы одного из ядер отъедают «отложенные системные прерывания». Что делать? Без системных прерываний, ясен перец, никуда — их не заанинстоллишь. В гугла́х и интернетах по этому поводу советы вида «поставьте Хрен-в-Пень дебаггер и дебажте им до посинения». Я-то ожидал простого и понятного совета: «удалите вот такую хрень» или «поставьте галку вон там», — тут у нас не Линукс, фанатов что-то там дебажить в ОС — нет.

Или пишут: «а это драйвера». Ну, я и сам догадался, что драйвера, мне легче от этого стало. По поводу драйверов советуют, как обычно, всё обновить, потом удалить, а потом заново установить. Сначала по очереди драйвера всех устройств, потом ещё какие-нибудь программы, а когда и их не останется — операционную систему. Свежепоставленная, пишут, должна работать без этой проблемы. Ну, гарантии, конечно, нет, но шансы есть.

Такой вариант меня, само собой, тоже не устроил. Я был готов на откат к предыдущим конфигурациям или, как максимум, к переустановке Винды поверх текущей, но не более. Таким образом, оставался только отказ от ждущего режима или же пользование им с перезагрузками перед любой ресурсоёмкой операцией: раз в день вроде как не страшно.

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

После удаления драйвера проблема внезапно исчезла. Жёсткий диск при этом продолжил работать без изменений.

Данное явление — прерывания, отжирающие все ресурсы ядра — по-английски называется «interrupt storm». Называется уже очень давно. Явление часто возникает при работе под «Продвинутым Программируемом Контроллере Прерываний», что в очередной раз как бы намекает нам: «продвинутыми» в современности зачастую называется проявляющее себя крайне странно.

Говорят, такая штука затрахивает большинство операционных систем до глубокой комы, хотя некоторые ОС иногда всё-таки и пытаются с ней бороться.

Лично же мне при этом непонятно: если это такая распространённая проблема, отчего бы не встроить в ОС простейший способ её решения? ОС ведь знает, какой девайс/драйвер сейчас изводит её прерываниями. Казалось бы, по требованию пользователя можно было бы сказать что-то типа: «а вот сейчас особо активен драйвер марвелл-хренавера, не желаете ли, мы его сейчас сразу же тоталитарно заанинстоллим, переинициализируем или хотя бы на время приподотключим?». Что мешает ровно то же самое сказать даже без требования, обратно же, неясно. Просто, вот, не говорят почему-то. ОС знает, но молчит. Только пытка спец-дебаггером позволяет развязать ей язык, да и то не всегда.

При этом седьмая Винда запросто перезапускает без перезагрузки не только драйвера, но и даже эксплорер, если с ними что-то вдруг стало не так. Но если спамить прерываниями — всё нормально. Видимо, это слишком мало для перезапуска — отожрать все ресурсы всего-то одного ядра. Их ведь у большинства народа минимум два, а у многих даже четыре.

И как в такой ситуации быть пользователю, на которого внезапное озарение от Будды не снизошло?



Subscribe

  • Кратковременное оповещение

    И ещё о «молчании космоса». Изобретя радио и начав фигарить им в эфир, человечество быстро догадалось, что фигарит оно не только в эфир, но и в…

  • Пессимистическое молчание космоса

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

  • Скрытая аксиома теории множеств

    После долгих размышлений я наконец-то её сформулировал. Согласно контексту её широкого использования, звучать она должна как-то так. Если вашим…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 134 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →

  • Кратковременное оповещение

    И ещё о «молчании космоса». Изобретя радио и начав фигарить им в эфир, человечество быстро догадалось, что фигарит оно не только в эфир, но и в…

  • Пессимистическое молчание космоса

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

  • Скрытая аксиома теории множеств

    После долгих размышлений я наконец-то её сформулировал. Согласно контексту её широкого использования, звучать она должна как-то так. Если вашим…