Co to są błędy wyjątków krytycznych

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 150314 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Ten artykuł został opublikowany wcześniej pod numerem PL150314
Jeżeli w tym artykule nie został opisany komunikat o błędzie, który pojawił się na ekranie, zobacz następujący artykuł z bazy wiedzy Microsoft Knowledge Base, aby wyświetlić więcej artykułów opisujących komunikaty o błędach:
315854 Centrum zasobów komunikatów o błędach w systemach Windows 98 i Windows Me
Aby wyświetlić listę artykułów dotyczących błędów pod nazwą „Krytyczny wyjątek 0E” w systemie Windows 98, kliknij następujące łącze: Click here to view a list of Fatal Exception 0E articles
Aby wyświetlić listę artykułów dotyczących błędów pod nazwą „Krytyczny wyjątek 0E” w systemie Windows Me, kliknij następujące łącze: Click here to view a list of Fatal Exception 0E articles
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Streszczenie

Podczas zamykania komputera, uruchamiania systemu Windows lub uruchamiania programu w systemie Windows, można napotkać komunikaty o błędach, podobne do następujących:
Wystąpił wyjątek krytyczny XY w xxxx:xxxxxxxx
Błędy wyjątku krytycznego są kodami zwracanymi przez program, gdy:
  • Wystąpiła próba dostępu do nielegalnej instrukcji.
  • Wystąpiła próba dostępu do nieprawidłowych danych lub kodu.
  • Poziom uprzywilejowania operacji jest nieprawidłowy.
Jeśli wystąpi dowolna z powyższych sytuacji, procesor zwraca wyjątek do systemu operacyjnego, który jest obsługiwany jako błąd wyjątku krytycznego. W wielu przypadkach wyjątek jest nieodwracalny i należy ponownie uruchomić lub zamknąć system, w zależności od wagi błędu.

W przykładowym komunikacie o błędzie, przedstawionym powyżej, XY to rzeczywisty wyjątek procesora z zakresu od 00 do 0F. (Należy zauważyć, że litera h, która występuje w poniższych objaśnieniach za wartościami 0E, 0F i innymi, jest często pomijana w komunikacie o błędzie). Wartość xxxx:xxxxxxxx reprezentuje rozszerzony wskaźnik instrukcji do segmentu kodu, natomiast 32-bitowy adres jest rzeczywistym adresem wystąpienia wyjątku.

System Windows nie powoduje tych błędów, ale zawiera procedurę obsługi tego szczególnego wyjątku procesora, wyświetlającą komunikat o błędzie.

UWAGA: ten artykuł został przedstawiony przede wszystkim w celach informacyjnych. Kliknij poniższe łącze, aby przejść do sekcji „Rozwiązywanie problemów z błędami wyjątków krytycznych” tego artykułu:

Więcej informacji

Wyjątki procesora i ich definicje

00: Błąd dzielenia

Procesor zwraca ten wyjątek, gdy napotka błąd dzielenia. Błąd dzielenia występuje przy próbie dzielenia przez zero lub gdy wynik operacji nie mieści się w argumencie docelowym.

02: Przerwanie NMI

Przerwanie 2 jest zarezerwowane dla stanu niemaskowalnego przerwania sprzętowego. Żaden wyjątek nie korzysta z przerwania 2.

04: Pułapka przepełnienia

Pułapka przepełnienia występuje, gdy zostanie wykonana instrukcja INTO i bit 0F zostanie ustawiony na 1.

05: Błąd sprawdzania granic

Instrukcja BOUND porównuje indeks tablicy z jej górną i dolną granicą. Jeśli indeks znajduje się poza zakresem, procesor przechodzi do przerwania 05.

06: Błąd nieprawidłowej instrukcji Opcode

Ten błąd jest zwracany w przypadku, gdy istnieje jeden z następujących warunków:
  • Procesor próbuje zdekodować wzorzec bitów, który nie odpowiada żadnej poprawnej instrukcji komputera.
  • Procesor próbuje wykonać instrukcję z nieprawidłowymi argumentami.
  • Procesor próbuje wykonać instrukcję trybu chronionego, działając w trybie wirtualnym 8086.
  • Procesor próbuje wykonać prefiks LOCK z instrukcją, której nie można zablokować.

07: Błąd niedostępnego koprocesora

Ten błąd występuje, gdy w komputerze nie ma koprocesora matematycznego, a ustawienie bitu EM Rejestru CR0 wskazuje na korzystanie z emulacji procesora danych numerycznych. Przy każdym wykonaniu operacji zmiennoprzecinkowej wystąpi przerwanie 07.

Ten błąd występuje również w przypadku, gdy używany jest koprocesor matematyczny i zostanie wykonane przełączenie zadania. Przerwanie 07 informuje procesor, że należy zapisać bieżący stan koprocesora, aby umożliwić jego wykorzystanie w innym zadaniu.

08: Podwójny błąd

Przetwarzanie wyjątku często wyzwala drugie przerwanie. W takim przypadku procesor wywoła przerwanie 08 dla podwójnego błędu.

09: Przekroczenie segmentu koprocesora

Ten błąd występuje w przypadku, gdy instrukcja zmiennoprzecinkowa wymaga dostępu do pamięci wykraczającej poza segment. Jeśli adres początkowy argumentu zmiennoprzecinkowego znajduje się poza segmentem, wystąpi ogólny błąd ochrony (przerwanie 0D).

10 (0Ah): Błąd nieprawidłowego segmentu stanów zadań

Ponieważ segment stanów zadań zawiera pewną liczbę deskryptorów, dowolna liczba warunków może spowodować wyjątek 0A. Zwykle procesor może uzyskać wystarczającą ilość informacji z segmentu stanów zadań, aby wywołać inny błąd wskazujący na rzeczywisty problem. Więcej informacji można znaleźć w przewodniku Microsoft's Programming the 80386/80486 Guide .

11 (0Bh): Błąd braku segmentu

Przerwanie braku segmentu pozwala systemowi operacyjnemu na implementację pamięci wirtualnej poprzez mechanizm segmentacji. Jeśli segment oznaczono jako „brakujący”, jest on przenoszony na dysk. Przerwanie 0B jest wyzwalane, gdy aplikacja musi uzyskać dostęp do segmentu.

12 (0Ch): Błąd stosu

Błąd stosu występuje z kodem 0, jeśli instrukcja odwołuje się do pamięci poza granicą segmentu stosu. Jeśli system operacyjny obsługuje segmenty o zmiennej wielkości, zwiększenie rozmiaru stosu może załagodzić problem. Załadowanie segmentu stosu z nieprawidłowymi deskryptorami spowoduje wystąpienie ogólnego błędu ochrony.

13 (0Dh): Ogólny błąd ochrony

Każdy stan nieobsługiwany przez inne wyjątki procesora spowoduje wystąpienie ogólnego błędu ochrony. Wyjątek wskazuje, że program w pamięci jest uszkodzony, co skutkuje zwykle natychmiastowym przerwaniem programu.

14 (0Eh): Błąd strony

Przerwanie błędu strony pozwala systemowi operacyjnemu na implementację pamięci wirtualnej na podstawie żądań stron. Przerwanie 14 występuje zwykle w przypadku dostępu do wpisu katalogu stron lub tablicy stron z bitem obecności ustawionym na 0 (brak segmentu). System operacyjny przywraca stronę (zwykle z pamięci wirtualnej) i ponownie wykonuje wywołującą błąd instrukcję, która ma już dostęp do segmentu. Błąd strony występuje również w przypadku naruszenia reguły ochrony strony (kiedy przywracanie zakończy się niepowodzeniem, przywrócone dane są nieprawidłowe lub kod wywołujący błąd naruszył regułę ochrony procesora). W tych przypadkach system operacyjny przejmuje kontrolę w celu wykonania odpowiedniej akcji.

16 (10h): Błąd koprocesora

To przerwanie występuje, gdy niemaskowalny wyjątek zmiennoprzecinkowy zasygnalizował poprzednią instrukcję. (Ponieważ procesor 80386 nie ma dostępu do jednostki zmiennoprzecinkowej, sprawdza wartość pinu ERROR\, aby przetestować ten stan). Błąd ten jest wyzwalany również przez instrukcję WAIT, jeśli ustawiony jest bit emulacji koprocesora matematycznego Rejestru CR0.

17 (11h): Błąd sprawdzenia dopasowania

To przerwanie używane jest tylko dla procesorów 80486. Przerwanie 17 jest wywoływane, gdy kod wykonywany z przywilejem 3 próbuje uzyskać dostęp do argumentu typu słowo, który nie ma parzystych granic, jest argumentem typu podwójne słowo niepodzielnym przez cztery lub jest długą bądź tymczasową liczbą rzeczywistą, której adres jest niepodzielny przez osiem. Sprawdzanie wyrównania jest wyłączone przy włączeniu zasilania procesora i jest włączane tylko w trybie chronionym.

Rozwiązywanie problemów z błędami wyjątków krytycznych

Przeprowadzanie czystego rozruchu komputera

Ponieważ błąd wyjątku krytycznego może wystąpić z wielu powodów, pierwszym krokiem do rozwiązania problemu jest zawężenie obszaru poszukiwań. Aby zawęzić obszar poszukiwań, należy podjąć próbę czystego rozruchu komputera.

Rozwiązywanie problemów z użyciem czystego rozruchu komputera dotyczy problemów, które mogą być powodowane przez środowisko komputera. Wiele problemów pojawia się z powodu pozostających w konflikcie sterowników, programów rezydentnych (TSR, Terminate-and-Stay-Resident) i innych ustawień, które są ładowane przy uruchomieniu komputera. Aby uzyskać dodatkowe informacje dotyczące czystego rozruchu, kliknij numery artykułów poniżej w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:
192926 Jak rozwiązywać problemy za pomocą czystego rozruchu systemu Windows 98
243039 Jak rozwiązywać problemy za pomocą czystego rozruchu systemu Windows 95

Przeszukiwanie bazy wiedzy Microsoft Knowledge Base

Aby ustalić, czy otrzymywany komunikat o błędzie jest udokumentowany w bazie wiedzy Microsoft Knowledge Base, przeszukaj ją pod adresem:
http://support.microsoft.com/support/
242450 How to Query the Microsoft Knowledge Base Using Keywords

Artykuły na temat komunikatów o błędach wyjątków krytycznych

Aby uzyskać dodatkowe informacje dotyczące komunikatów o błędach wyjątków krytycznych, kliknij numery artykułów poniżej w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:
133440 Error Message: This Program Has Caused a Fatal Exception 0D at 00457:000040B1 and Will Be Terminated
192803 Fatal Exception 0D Using ATI All-in-Wonder Pro Video Adapter
175211 Fatal Exception Error When Opening or Closing Control Panel
171195 Fatal Exception Error Suspending and Resuming with MSDLC32
187214 Wystąpił krytyczny wyjątek 0E w 0028:C02A0201...
190123 Error Message: A Fatal Exception 06 Has Occurred at...
252523 Fatal Exception Error Message When Attempting to Connect to the Internet
189655 A Fatal Exception 0E Has Occurred at 0028:<XXXXXXXX>
UWAGA: Powyższa lista artykułów nie obejmuje wszystkich przypadków. Jeśli żaden z powyższych artykułów nie dotyczy zaistniałego problemu, należy wykonać kroki opisane w sekcji „Przeszukiwanie bazy wiedzy Microsoft Knowledge Base” tego artykułu, aby uzyskać więcej informacji.

Właściwości

Numer ID artykułu: 150314 - Ostatnia weryfikacja: 28 sierpnia 2006 - Weryfikacja: 3.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Windows Millennium Edition
  • Microsoft Windows 98 Second Edition
  • Microsoft Windows 98 Standard Edition
  • Microsoft Windows 95
Słowa kluczowe: 
kbinfo kbprod2web kbwinme win95 win98 win98se KB150314

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com