Nie ma sensu próbować niejasnych rozwiązań typu „złap wszystko”, takich jak czyszczenie pamięci NVRAM i kontrolerów systemowych. Problemem jest SIGSEGV lub błąd segmentacji w WindowServer. Jest to prawdopodobnie spowodowane uszkodzonymi identyfikatorami. Te identyfikatory są przechowywane w wielu miejscach, a jeśli wystarczająco dużo ulegnie uszkodzeniu, dostaniesz awarie. Podczas gdy niektóre identyfikatory są przechowywane w pamięci NVRAM (lub PRAM), wyczyszczenie tego zwykle opóźnia tylko kolejną awarię, ponieważ identyfikator ostatecznie się tam ponownie znajduje.
Jeśli WindowServer ulegnie awarii, wszystkie aplikacje GUI zatrzymają się i uruchomi się ponownie po uruchomieniu. Po uruchomieniu WindowServer najpierw wyświetla okno logowania. W rzeczywistości nie wylogowujesz się, ale cała sesja graficzna po prostu ulega awarii.
Po zerknięciu na raport o awarii wydaje się, że ten wątek ulega awarii:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
Ostatnie kilka wywołań dotyczyło funkcji (lub metod) przestrzeni kolorów, co doprowadziło mnie do wniosku, że po prostu masz do czynienia z uszkodzonym profilem ICC.
Środki pieniężne mieszczą się w com.apple.CoreGraphics, a najnowsze połączenia to:
color_space_get_md5_digest + 57
color_space_get_identifier + 9
CGXColorSpaceRegistryCopyRegisteredColorSpace + 42
_CGXCopyColorSpace + 27
_XCopyColorSpace + 57
Teraz, jeśli mam rację, próbuje obliczyć skrót MD5 przestrzeni kolorów. Robi to, ponieważ chce znaleźć identyfikator przestrzeni kolorów i potrzebuje tego identyfikatora, ponieważ CGXColorSpaceRegistryCopyRegisteredColorSpace potrzebuje danych przestrzeni kolorów dla wstępnie ustawionego profilu kolorów monitora. Teraz, aby być w 100% źródłem tych awarii, potrzebowałbym jak największej liczby raportów o awariach, ponieważ jeśli wszystkie ulegną awarii z różnych przyczyn, nie ma to nic wspólnego z oprogramowaniem w twoim systemie, ale to więcej może to być problem sprzętowy, w którym fałszywe dane są wprowadzane do oprogramowania, które następnie próbuje coś zrobić z tymi danymi, których nie może zrobić, a zatem zostaje zrealizowane.
Prostym testem może być uruchomienie wbudowanego narzędzia Apple ColorSync Utility i naciśnięcie przycisku Napraw. Może to wydrukować coś takiego:
Header message digest (MD5) is not correct. Fixed.
To miałoby sens, ponieważ uszkodzony MD5 może być przyczyną awarii. Więc spróbuj najpierw. W moim systemie to narzędzie ColorSync znajduje się w katalogu / Aplikacje / Narzędzia i myślę, że istnieje ono od każdej wersji systemu OS X. Daj mi znać, czy znalazło uszkodzone pliki ICC i czy można je naprawić. Jeśli nie (nic nie znaleziono lub nie można go naprawić), opublikuj wszelkie dzienniki awarii na WindowServer :)