Nie istnieje na świecie chyba ani jeden użytkownik systemu Windows, który na pewnym etapie swojej przygody z oprogramowaniem Microsoftu nie zobaczył komunikatu informującego o scrashowaniu danej aplikacji. Gdy jakiś program przestaje działać wyświetlany jest komunikat o treści “Trwa wyszukiwanie rozwiązania problemu przez system Windows.” Otrzymaliście kiedyś chwilę później rozwiązanie swojego “problemu”?
Rodzi się pytanie: co właściwie robi system Windows, gdy wyświetla ten komunikat? Wieloletnie wątpliwości użytkowników postanowił rozwiać Mark Phaedrus, jeden z deweloperów oprogramowania pracujących dla Microsoftu. Za pośrednictwem serwisu Quora udzielił wyczerpującej odpowiedzi, przedstawiając przy okazji schemat.
1. Program crash’uje
2. Do gry wchodzi usługa Windows Error Reporting, która odczytuje wiadomość na temat tego co robił program, gdy przestał działać.
3. Na podstawie informacji powstaje tak zwana “bucket signature”, pozwalająca na skróconą identyfikację problemu. Deweloper patrząc na taką pojedynczą sygnaturę nie jest w stanie stwierdzić, co powoduje crash. Jeśli dwie lub więcej awarii otrzymują taką samą “bucket signature”, najpewniej są powodowane przez ten sam czynnik.
4. Jeśli ustawienia prywatności na to pozwalają, Windows Error Reporting wysyła “bucket signature” do Microsoftu.
5. Na tym etapie może nastąpić jedna z trzech rzeczy:
a) Nikt w Microsofcie nie zwrócił jeszcze uwagi na dany problem. Wtedy serwer Microsoftu odnotowuje po prostu wystąpienie crasha i przypisuje mu sygnaturę.
b) Jeśli zgłaszane są liczne crashe z tą samą “bucket signature”, bug jest przypisywany do danego dewelopera. Ten potrzebuje najczęściej większej liczby detali, by zdiagnozować problem. Dla przykładu, bug w Windows Update może wymagać przesłania dodatkowych logów z tej usługi oraz odpowiedzialnej za niego części rejestru – od kilku różnych użytkowników. Zazwyczaj dane od pięciu osób wystarczają. Jeśli błąd na danej maszynie z daną sygnaturą się powtarza, system zgłaszania błędów zgłasza żądanie o logi i informacje dot. rejestru. Jeśli ustawienia prywatności na to pozwalają, dane te wysyłane są do Microsoftu, gdzie ktoś się im przygląda. Użytkownik nie widzi oczywiście efektu działań zespołu programistów, ale pomaga im usunąć dany błąd w którejś z kolejnych aktualizacji systemu.
c) Jeśli dla danego problemu udostępniono już poprawkę, system podsuwa użytkownikowi rozwiązanie problemu w formie instrukcji lub automatycznie naprawia problem. Dzieje się to niezwykle rzadko, ale zdarza się.
Lektura wypowiedzi dewelopera Microsoftu prowadzi do prostego wniosku: warto być altruistą i wysyłać pewne dane diagnostyczne producentowi systemu – dla dobra ogółu jego użytkowników. Miłośnicy prywatności dążą do wyłączania tego typu usług telemetrycznych, ale być może nie zawsze warto to robić?
Źródło: Quora, Instalki.pl