0x0000007F: UNEXPECTED_KERNEL_MODE_TRAP (общий обзор)

OSzone.net » Microsoft » BSOD » 0x0000007F: UNEXPECTED_KERNEL_MODE_TRAP » 0x0000007F: UNEXPECTED_KERNEL_MODE_TRAP (общий обзор)
Автор: Ginger
Иcточник: microsoft.com
Опубликована: 26.01.2005
Эта ошибка означает, что произошло непредвиденное прерывание в режиме ядра, или вид прерывания, которое ядро не разрешает (захват(a bound trap)), или вид прерывания, которое влечёт за собой немедленную смерть (двойная ошибка(double fault)). Первое число в интервалах кода бага - число прерывания (8 = double fault). Чтобы узнать больше, что это за прерывание, обратитесь к мануалу Intel x86 семьи.
Пользуясь отладчиком ядра (kernel debugger), KB и !TRAP можно выяснить от куда прерывание происходит.
В общем, баг появляется, когда процессор допускает ошибку, с которой ядро не может справиться. Чаще всего возникает из-за плохого RAM, так же из-за разгона процессора.
Попробуйте отменить в BIOS - sync negotiation (синхронная передача данных).


Windows XP

Применяется в системам:
Stop 0x0000007F or UNEXPECTED_KERNEL_MODE_TRAP

Причина:
Stop 0x7F сообщение указывает на то, что одна из 3-ёх проблем появилась в режиме ядра (kernel-mode):
  1. Ситуация, которую ядро не допускает, или прерывание (так же называется - bound trap).
  2. Проблема программного обеспечения.
  3. Ошибки устройств.
Параметры:
1. Исключительный код процессора.
2. Это значение 0x00000000 (ноль).
3. Это значение 0x00000000 (ноль).
4. Это значение 0x00000000 (ноль).
Первый параметр самый важный и он может принять насколько различных значений, указывающих на разные причины этой ошибки. Вы можете найти условия возникновения Stop 0x7F на всех x86 микропроцессорах в их мануале, т.к они специфичны для x86 платформ. Вот несколько часто встречающихся:
  1. 0x00000000, или ошибка деления на 0, возникает когда "делить" (DIV) инструкция делит на 0. Битая память, другие проблемы с оборудованием или проблемы с ПО могут привести к этой ошибке.
  2. 0x00000004, или Переполнение, в результате предыдущих операций был взведён флаг переполнения (OF), а процессор обращается к модулю прерывания.
  3. 0x00000005, or Bounds Check Fault, указывет, что процессор, во время выполнения операции BOUND, обнаружил, что операнд (оп.код операции) превысил указанный лимит. Инструкция BOUND используется, чтобы проверять, что числа массива находятся в определённом промежутке.
  4. 0x00000006, or Invalid Opcode, возникает, когда процессор пытается выполнить недопустимую операцию. Обычно такое случается, когда указатель инструкций (instruction pointer) неисправен из-за повреждённой памяти и указывает на неверную позицию.
  5. 0x00000008, или Двойная Ошибка (Double Fault), указывает на двойное исключение во время попытки вызвать модуль (the handler). Обычно, два исключения могут быть выдержанны в очереди, но есть несколько исключений (почти всегда вызванных проблемами с устройствами), из-за которых процессор вызывает двойную ошибку.
Реже встречающиеся ошибки:
  1. 0x00000001: A system-debugger call.
  2. 0x00000003: A debugger breakpoint.
  3. 0x0000000A: A corrupted Task State Segment.
  4. 0x0000000B: An access to a memory segment that was not present.
  5. 0x0000000C: An access to memory beyond the limits of a stack.
  6. 0x0000000D: An exception not covered by some other exception; a protection fault that pertains to access violations for applications.

Решение:
Следующие решения специфичны к Stop 0x7F ошибкам. для дополнительной информации обратитесь к статье M$ "Stop Message Checklist".

1. Stop 0x7F ошибки обычно возникают из-за испорченной, плохо работающей памяти (RAM). Если вы только что подключили новое устройство - отключите его и посмотрите, если это решит проблему. Запустите диагностическое ПО, которое пришло к вам от производителя системы, чтобы выявить если какой-нибудь компонент не рабочий/плохо работает.

2. Разгон процессора (overclocking) может стать причиной Stop 0x7F или другие ошибки из-за перегрева. Когда диагностируете разогнанную систему, сначала снимите все разгоны до тех, которые рекомендованы производителем.

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

4. Stop 0x7F сообщение может появиться после установки несовместимого ПО, драйверов или системных сервисов. Свяжитесь с производителем ПО и выясните о каких-либо дополнительных обновлений для Windows XP Professional. Использование совместимых программ особенно важно в случае с Бэкапными программами (backup programs), мультимедийным ПО, антивирусными и CD-записывающими программами.

5. Для дополнительной информации обратитесь к статье http://www.microsoft.com/windows/reskits/webresources. Используйте в поиске ключевые слова winnt, 0x0000007F и 0x7F.

Ссылка: http://www.oszone.net/1183/