Данный стоп код означает что процессор Intel сгенерировал программное прерывание, а ядро не смогло его перехватить для обработки. Это может быть прерывание связанное с операцией проверки выхода за границы (bound trap, перехват которых запрещен для ядра) или вложенная ошибка (когда ошибка произошла в процесса обработки другой ошибки).
Первый параметр данного стоп кода описывает номер программного прерывания. Наиболее распространенные программные прерывания следующие:
- 0x00000000 или деление на ноль, обозначает ситуацию, когда выполняется инструкция процессора div и делитель равен нулю. Причиной этой ошибки может также быть проблемы с исправностью памяти или другие проблемы с железом или даже проблемы в работе ПО;
- 0x00000004 или переполнение возникает когда процессора выполняет вызов обработчика прерывания в то время, когда установлен флаг переполнения (OF);
- 0x00000005 или ошибка выхода за граница массива, означает, что процессор в ходе выполнения инструкции BOUND, обнаружил выход за границы.
- 0x00000006 означает, что процессор попытался выполнить недопустимую инструкцию. Эта ошибка обычно возникает в случае повреждения данных в регистре IP (instruction pointer). Частой причиной данной ошибки является поврежденная память.
- 0x00000008 или вложенная ошибка означает, что исключение произошло в процессе вызова обработчика для предыдущего исключения, например когда два исключения обрабатываются последовательно. Однако, определенные исключения не могут быть обработанными последовательно, в таких случаях процессор сигнализирует об этом, данным программным прерыванием. Существуют две распространенных причин данной ошибки: переполнение стека и проблема с аппаратной частью компьютера.
Менее распространенные номера программных прерываний следующие:
- 0x00000001 — A system-debugger call
- 0x00000003 — A debugger breakpoint
- 0x00000007 — A hardware coprocessor instruction with no coprocessor present
- 0x0000000A — A corrupted Task State Segment
- 0x0000000B — An access to a memory segment that was not present
- 0x0000000C — An access to memory beyond the limits of a stack
- 0x0000000D — An exception not covered by some other exception; a protection fault that pertains to access violations for applications
Остальные номера наведены в инструкции к процессору Intel.
Причины
Обычно крах с данным стоп кодом возникает после установки неисправного аппаратного оборудования (особенно памяти).
Исправление
Если вы недавно установили какие-либо устройства в компьютер, попробуйте убрать их и проверить остались ли крахи.
Протестируйте память, как это сделать описано в статьях:
Если ошибка появляется на недавно установленной системе, попробуйте обновить прошивку BIOS до последней версии.
Проверьте что все адаптеры в системном блоке установлены должным образом, в случае необходимости (наличие следов окисления) протрите контакты ластиком.
Проверьте что установленные аппаратные устройства совместимы с используемой версией ОС.
Если ошибка возникает в процессе обновления версии Windows, это может означать, что проблема связана с одним из драйверов, который несовместим (некорректно работает) в более новой версии ОС.
Эту ошибку также могут вызывать повреждения материнской платы.