Kernel panic
Z Wikipedii, wolnej encyclopedia
Kernel panic – nazwa komunikatu wyświetlanego przez system operacyjny po wykryciu wewnętrznego błędu jądra systemu, którego sam nie jest w stanie obsłużyć. Często komunikat ten dostarcza również niezbędnych do odkrycia przyczyny błędu informacji lub danych potrzebnych do debugowania przez programistów pracujących nad systemem.
Większość błędów jest efektem nieobsługiwanych w kodzie jądra wyjątków procesora, takich jak np. odwołania do nieprawidłowych adresów w pamięci. Istnieje jednak możliwość wywołania tego błędu na żądanie za pomocą funkcji panic zdefiniowanej w pliku nagłówkowym sys/system.h.
Komunikat kernel panic powstał we wczesnych wersjach systemu Unix i stanowił dużą filozoficzną różnicę w stosunku do jego poprzednika, czyli Multicsa. Programista Multiksa, Tom van Vleck, wspomina dyskusję na ten temat z programistą Uniksa Dennisem Ritchie:
Napomknąłem Dennisowi, że przynajmniej połowa kodu, który pisałem w Multiksie, była kodem naprawiającym błędy. Powiedział wtedy: „Daliśmy sobie z tym spokój. Jeśli wystąpi błąd, to mamy procedurę nazwaną panic i jeżeli jest wywoływana, komputer się zawiesza, a ty wrzeszczysz na cały pokój «Hej, zresetuj go»”[1].
Wystąpienie błędu kernel panic powoduje zawieszenie albo przeładowanie komputera. Jest to konieczne, aby chronić sprzęt przed uszkodzeniem. Wystąpienie poważnego błędu powoduje kompletną destabilizację systemu – jego dalsze działanie mogłoby spowodować np. wyczyszczenie twardych dysków, przegrzanie podzespołów (ponieważ zarządzanie energią nie działa) itp.