Pr-1st-1.1-m11-Slajd05

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Klasy awarii procesów

Klasy awarii procesów


Wyróżnia się cztery podstawowe klasy awarii procesów: załamania, zaniechania, awarie powtarzalne i awarie dowolne.

  • Załamanie (ang. crashes ) oznacza, że proces działa poprawnie do pewnej chwili t, po której zaprzestaje wysyłać i odbierać wiadomości, pomimo, że wynika to z algorytmu procesu. Specjalnym przypadkiem jest sytuacja, w której proces ulega awarii przed wykonaniem jakiegokolwiek kroku algorytmu (ang. initially-dead ).
  • Zaniechanie (ang. ommissions ) oznacza, że proces nie wysyła (lub nie dostarcza) wiadomości, pomimo, że powinien to zrobić zgodnie z wykonywanym algorytmem. Awarie zaniechania mogą być konsekwencją przepełnienia bufora lub przeciążenia sieci komunikacyjnej.
  • Awaria powtarzalna (ang. crashes and recoveries ) oznacza, że proces może być odtworzony (wznowiony) po awarii. Wystąpienie awarii tego typu wstrzymuje proces na pewien czas, po upływie którego proces rozpoczyna ponownie wykonywanie algorytmu. Proces jest uznawany za poprawny, jeżeli istnieje pewna chwila t, po której proces wykonuje algorytm i nigdy nie podlega awariom. Innymi słowy, proces poprawny to taki, który ulega skończonej liczbie awarii, przy czym po każdej z nich możliwe jest odtworzenie jego stanu. Proces błędny w tym modelu to taki, który nie jest wznowiony po kolejnej (w szczególności, pierwszej) awarii, lub taki, który nieskończenie wiele razy ulega awarii.
  • Awaria dowolna (ang. arbitrary ) oznacza, że zachowanie procesu odbiega w sposób dowolny od algorytmu, który powinien wykonywać. Na przykład, proces może wysyłać w dowolnej chwili różne wiadomości. Szczególnym przypadkiem awarii dowolnych są awarie bizantyńskie.

Jak łatwo zauważyć, najbardziej ogólną klasą awarii jest klasa z awariami dowolnymi. Zaniechania są specjalnym przypadkiem awarii powtarzalnych, natomiast załamania szczególnym przypadkiem zaniechań.

W synchronicznych systemach rozproszonych pojawia się dodatkowa klasa awarii związana z wykonywaniem kroków we właściwej kolejności, ale w niewłaściwym czasie. Są to awarie dotyczące czasu (ang. timing errors ).


<< Poprzedni slajd | Spis treści | Następny slajd >>