Różnica między blokowaniem macOS a paniką jądra

2

Dlaczego MacOS Sierra, gdy coś idzie nie tak, czasami ma panikę jądra, ale innym razem po prostu całkowicie się zawiesza (nie można poruszać myszą, używać klawiatury itp.)?

Czy jedno jest gorsze od drugiego?

Biorąc pod uwagę, że w 10.6 komunikat o panice jądra pojawił się przed ponownym uruchomieniem, a w 10.9 po nim, system wydaje się wiedzieć, kiedy będzie miał panikę jądra. Podobnie w 10.8 istniała opcja ponownego uruchomienia komputera Mac, jeśli się zawiesił, więc prawdopodobnie system wie również, kiedy ma się zamknąć.

Dlaczego jedno dzieje się kontra drugie?

Brandon Bradley
źródło

Odpowiedzi:

2

Panika to gwarantowany, deterministyczny ślepy zaułek. Kod dosłownie nie może być kontynuowany, więc warunki, które do niego doprowadziły, są udokumentowane (jak również w systemie, który jest już zepsuty) i zostają przerwane.

Zawieszenia mogą być różne, więc uogólnienie jest mniej możliwe lub wygodne.

Jedna biblioteka błędnego programu może powodować jedno i drugie - jest to wskazówka, którą możesz wykorzystać w swoim dochodzeniu.

Ponieważ paniki mają więcej informacji diagnostycznych i są bardziej pewne, zacznę od ich debugowania i zakrętów. W przypadku zawieszeń należy uruchomić sysdiagnose i przejrzeć pliki dziennika oraz ręcznie zebrać dane i czas.

bmike
źródło