Распространенные причины сбоев операционной системы
Мне интересно узнать: каковы наиболее распространенные технические причины (с точки зрения программирования операционной системы) сбоя операционной системы (не ограничиваясь сбоями Windows)? Я ищу ответ, который не похож на "слишком много открытых приложений", но что конкретно происходит, когда слишком много открытых приложений вызывает сбой.
8 ответов
По моему мнению
- Плохие водители
- Ошибки ядра
- Аппаратный сбой
- Конец ресурсов
Современная операционная система не позволит простому приложению вывести ее из строя.
Это сбой драйверов, которые вызывают сбои ОС. Только сама ОС и драйверы способны нанести вред системе.
Для ваших предложений:
Ни одна ОС не имеет проблем, если приложение обращается к той же памяти, что и ОС. Либо память доступна, либо нет. Если приложение пытается получить доступ к памяти, чего не должно быть, процессор генерирует ошибку сегментации. ОС передает это приложению, и проблема решается. (в 99% случаев приложение вылетает, но это не вина ОС).
Вы предполагаете, что более медленные программы более безопасны. Это не правда. ОС не нужно знать, что именно делает ваша программа.
В современных ОС код приложения и код ОС работают в разных адресных пространствах. Код приложения не может привести к сбою операционной системы. Посмотреть здесь:
http://en.wikipedia.org/wiki/Ring_(computer_security)
Наиболее распространенное чтение для сбоя - это код, который действует как часть ОС, взаимодействуя с другим кодом, действующим как часть ОС. Распространенная причина - плохо написанные драйверы устройств, которые живут в адресном пространстве ОС.
Реже сбои вызваны отказами оборудования.
Любой сбой ОС может произойти по одной из двух основных причин:
- Аппаратная проблема.
- Программная проблема.
АППАРАТНЫЕ ПРОБЛЕМЫ:
Проблемы, связанные с питанием: неправильное функционирование источника питания системы может привести к немедленному отключению системы.
Перегрев ОЗУ. Перегрев ОЗУ может привести к повреждению данных в нем. Это может привести к определенному сбою, когда необходимо выполнить сброс.
Неправильный разгон: вызывает перегрев. Некоторые аппаратные компоненты чувствительны к теплу. Когда перегрев происходит автоматически, система выключается.
Плохие секторы на жестком диске: жесткий диск разделен на сектора, где хранятся данные. Некоторые сектора становятся плохими. Причины: а. Длительное использование - много пишет и читает. б) Производственный дефект. Если секторы на жестком диске, где хранится важная системная информация, становятся плохими секторами, то эти файлы трудно загрузить, что приводит к сбою.
- Проблемы с ОЗУ: Причина: получение данных невозможно. Это очень важно, поскольку это приводит к фатальной ошибке исключения
Основное заблуждение: сбой приложения в вашей системе не всегда приводит к сбою системы. Обычно "ничего" не происходит с ОС. Он просто отправляет вам отчет о том, что приложение так и не работает.
ПРОГРАММНЫЕ ПРОБЛЕМЫ:
- Поврежденный реестр: перед запуском любого приложения ОС просматривает свой реестр. Реестр - это небольшая база данных, где хранится вся информация о ядре, драйверах и информация о приложениях. Реестр может быть поврежден из-за неправильной деинсталляции приложений, неосторожного редактирования реестра, слишком большого количества установленных приложений и т. Д. Больше причин поврежденного реестра. Это приводит к тому, что обычные приложения отказываются запускаться, в результате чего отображается синий экран смерти.
- Неправильные драйверы: для использования дополнительного оборудования нам нужны драйверы, обычно загружаемые из Интернета. Эти драйверы могут содержать ошибки. Эти ошибки приводят к сбою ОС. Современные операционные системы выпускаются с опцией "Безопасный режим загрузки". Безопасный режим загрузки загружает только важные драйверы (минимум) и не все. Безопасный режим загрузки используется в диагностических целях, чтобы найти драйвер с ошибками.
- Вирус и троянец: общие причины сбоя ОС. Вирусы и трояны портят системные файлы, "поглощают" память, не позволяя ОС извлекать ее при остановке программы, изменении административных настроек, частой перезагрузке без каких-либо признаков и т. Д.
- Thrashing: тупик возникает, когда две работающие программы требуют контроля над конкретным ресурсом. Иногда во время тупика ОС пытается переключаться между двумя программами. В конечном итоге это приводит к перебоям, когда жесткий диск перегружается перемещением информации между системной памятью и виртуальной памятью, чрезмерно вызывающим сбой системы.
Если мы используем Vista в качестве примера - драйверы... NVidia, в частности http://arstechnica.com/news.ars/post/20080325-vista-capable-lawsuit-paints-picture-of-buggy-nvidia-drivers.html, Распределение памяти определяет ОС, а не приложения. Ну, это теория.
Сбой ОС также может быть вызван сбоем некоторых секторов на жестком диске. Это связано с тем, что все диски представлены на основном диске в жестком диске.
Нет, ты далеко. Обычно приложение ничего не может сделать, что может привести к сбою ОС. Сбои ОС обычно вызываются ошибочными драйверами устройств и аппаратными сбоями.
Два разных источника, пытающихся получить доступ к заблокированной области, - одна проблема. Получение всех мьютексов, мониторов и блокировок для работы на 100% не тривиально.