Как да коригирам фатална грешка при изключение



Windows син екран на смъртта

Microsoft Windows и софтуерът използват изключения, за да позволят на Windows или друг софтуер да комуникира на слоеве и да съобщава за грешки или изключения. Ако дадена програма получи изключение, което е невалидно или неизвестно, ще срещнете фатално изключение. Фаталните изключения също често се наричат ​​a Фатално 0Е , или неправилно като a Фатално OE .



Когато се срещне фатално изключение, грешката е в следния формат.

A fatal exception has occurred at xxxx:xxxxxxxx

В горния пример YZ представлява действителното изключение на процесора; това може да варира от 00 до 0F. Всяко от тези изключения на процесора е обяснено под разширена информация .



След изключението на процесора е разширеният указател за инструкции към кодовия сегмент и 32-битовия адрес, където е възникнала грешката.

Потърсете грешката

Често най-лесният и бърз метод за намиране на причиняващото фатално изключение е търсенето на грешката. Въпреки това може да е трудно за някои потребители да знаят какво точно да търсят поради загадъчните фатални съобщения за изключение. По-долу са дадени съвети как да търсите тези грешки.



  1. Както бе споменато по-горе, фаталното изключение има двусимволен код. Например, ако е налице „0E“, използвайте това като част от вашето търсене.
  2. След това съобщението за грешка трябва да съдържа указател (напр. „0028: c001e36“). Въпреки че може да е в търсене, обикновено е уникално за вашия компютър. Ако не намирате никакви резултати от търсенето, изключете това от вашето търсене.
  3. И накрая, много съобщения за грешки с фатални изключения съдържат файл, който е генерирал грешката, който често е VXD файл. Ако фаталната грешка при изключение съдържа препратка към .VXD файл, включете това като част от вашето търсене. VXD файлът може също да бъде посочен като „VXD VWIN32“, което е vwin32.vxd.

Ако търсенето на фаталната грешка при изключение не върне резултати или не помогне за разрешаването на проблема ви, продължете към следващите раздели.

Върнете Windows обратно към по-ранно копие

Ако това наскоро е започнало да се случва и използвате Windows XP или по-нова версия, възстановете Windows до по-ранно копие.

Актуализирайте софтуера или проверете за софтуерни корекции

Ако изпитвате невалидни грешки на страници само в една програма, проверете дали софтуерната програма е съвместима с операционната система на компютъра. Също така се консултирайте с производител или продавач на софтуерната програма, за да видите дали има налични корекции или актуализации.

Също така е важно да имате всички най-нови актуализации на Windows.

Хардуерни драйвери

Ако се случат фатални изключения при използване на хардуер устройство (например, когато печатате), драйверите на устройствата или са в конфликт с друго устройство, повредени са или имат други грешки.

Видео драйверите също са известни с това, че причиняват фатални съобщения за грешки при изключение. Тъй като видеокартата се използва винаги, е трудно да се разбере дали причинява грешката. Затова винаги препоръчваме да имате най-новите видео драйвери на вашия компютър.

Посетете уебсайта на производителя и вземете най-новия софтуер и драйвери. Вижте страницата с компютърни драйвери за списък на компаниите за хардуер.

Наскоро инсталиран софтуер или хардуер

Ако наскоро сте инсталирали нов софтуер или хардуер , деинсталирайте или преинсталирайте този софтуер или хардуер, за да се уверите, че не причинява проблема ви. С хардуерно устройство посетете уебсайта на производителя и вземете най-новия софтуер или драйвери от тях. Вижте страницата с компютърни драйвери за списък на компаниите за хардуер.

Премахнете всички TSR

Деактивирайте всички TSR или програми, работещи във фонов режим, тъй като фатални грешки при изключения могат да бъдат причинени от конфликти между две или повече отворени и работещи програми.

Изтрийте всички временни файлове на програмата

Изтриване на всички временни файлове които все още могат да пребивават в харддиск от текущо или по-рано изпълнявани програми.

Овърклокван компютър

Ако сте овърклоквали някой компонент в компютъра, настройте компютъра на фабричните му настройки, за да проверите дали овърклокиращият компонент не причинява проблема.

Уверете се, че компютърът ви разполага с повече от 200 MB

Ако на компютъра ви остава малко място на твърдия диск, вашият Windows суап файл не може да се увеличи по размер, когато е необходимо, което причинява грешки.

Стартирайте ScanDisk и Defrag

Бягай ScanDisk и Дефрагментиране на твърдия диск, твърдият диск може да има проблем, който да доведе до повреда или невалидност на файла за суап или файловете с данни.

Проблем, свързан с топлината

Уверете се, че всички фенове в компютъра ви работят правилно. Ако всички вентилатори работят, може да нямате достатъчно вентилатори и компютърът ви се прегрява. Прегряващият компютър може да причини множество проблеми, включително фатални изключения.

Деактивирайте външния кеш в CMOS

Ако опцията е налична, въведете CMOS настройката на вашия компютър и деактивирайте външен кеш . Ако това разреши проблема ви, вероятно ще срещнете проблем, свързан с топлината.

Напрежение на ядрото на процесора

Ако е налично, проверете във вашата CMOS настройка, че напрежението на ядрото на процесора е настроено на фабричната спецификация. Консултирайте се с документацията на дънната платка, която е на уебсайта на вашия производител на дънни платки .

Лоша памет, невалидни битове или физически лоша памет

Лош компютър памет също е често срещана причина за фатални грешки при изключения. Ако наскоро сте добавили памет към компютъра, препоръчваме първо да бъде премахната, за да се уверите, че не изпитвате конфликти.

Ако наскоро към компютъра не е добавена памет и сте опитали всички горепосочени препоръки, тествайте паметта на компютъра си за грешки.

Разширена информация

По-долу е даден списък на по-опитните процесорни изключения, вариращи от 00 до 0F.

00 = Разделяне на грешка

Опитва се разделяне на нула или ако резултатът от операцията не се побира в операнда на местоназначението.

02 = NMI прекъсване

Прекъсване 2 е запазено за хардуерното немаскируемо състояние на прекъсване. Няма изключения, уловени чрез прекъсване 2.

04 = Капан за преливане

Инструкцията INTRO е изпълнена и битът OF е зададен на 1.

05 = Грешка при проверка на границите

Индексът на масива е извън обхвата.

06 = Невалидна грешка в Opcode

Причинени от едно от условията по-долу.

  1. Процесор опит за декодиране на битов модел, който не съответства на нито един правен компютърни инструкции .
  2. Процесорът се опитва да изпълни инструкция, съдържаща невалидни операнди.
  3. Процесорът се опитва да изпълни инструкция в защитен режим, докато работи във виртуален 8086 режим.
  4. Процесорът се опитва да изпълни префикс LOCK с инструкция, която не може да бъде заключена.

07 = Неизправност на копроцесора

Тази грешка може да възникне, ако няма математически съпроцесор. Тази грешка може да възникне и когато се използва математическият съпроцесор и се изпълни превключвател на задачи.

08 = Двойна грешка

Тази грешка възниква, когато обработката на изключение задейства второ изключение.

09 (OD) = Превишаване на сегмента на копроцесора

Операндът с плаваща запетая е извън сегмент .

10 (0Ah / 0A) = Невалидна грешка в сегмента на състоянието на задачата

Множество възможни причини, тъй като сегментът на състоянието на задачата съдържа множество дескриптори.

11 (0Bh) = Не е налице неизправност

Неприсъстващото прекъсване позволява на операционната система да реализира виртуална памет чрез механизма за сегментиране. 0B грешка възниква, когато този сегмент не е наличен.

12 (0Ch) = Грешка в стека

Инструкцията се отнася до паметта извън границата на сегмента на стека.

13 (Odh) = Обща повреда в защитата

Условието не се покрива от нито едно от другите изключения на процесора. Изключението показва, че тази програма е била повредена в паметта, което е довело до незабавното прекратяване на програмата.

14 (Oeh) = Грешка на страницата

Правилото за защита на пейджинга е нарушено. С други думи, когато извличането е неуспешно, извлечените данни са невалидни или кодът, издал неизправността, е нарушил правилото за защита на процесора.

16 (10h) = Грешка на копроцесора

Немаскираното изключение с плаваща запетая сигнализира за предходна инструкция.

17 (11h) = Неизправност при проверка на подравняването

Използва се само на 80486 компютри. Причинява се, когато код, изпълняващ се при привилегия на звънене 3, се опитва да получи достъп до операнд на дума, който не се дели на четири, или дълъг реален или временен реален, чийто адрес не се дели на осем.