Zawieszenie się komputera

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Zawieszenie się komputera, zawieszenie się systemu[1] – stan pracy komputera, w którym nie reaguje on na działania użytkownika[2][3] i nie odpowiada przez połączenia sieciowe.

Przyczyny zawieszenia się komputera[edytuj | edytuj kod]

Przyczyną zawieszenia mogą być błędy w oprogramowaniu[2] (np. program może wykonywać nieskończoną pętlę, przepełnienie bufora bądź inne błędy powodujące stopniowy zanik dostępnej pamięci) lub przeciążenie systemu nadmiernym wykorzystaniem jego zasobów[4] (np. brak miejsca na twardym dysku[5]), ale również awarie podzespołów komputera (np. w wyniku przegrzania spowodowanego niedostatecznym chłodzeniem). Mogą być też wynikiem działania szkodliwego oprogramowania[2][1] – np. atak typu DoS[6]. W zależności od przyczyny zawieszenia, architektury komputera i budowy systemu operacyjnego zawieszenie może być tymczasowe (po jakimś czasie komputer powraca do normalnej pracy, czyli zaczyna reagować na działania użytkownika i odpowiadać przez połączenia sieciowe) lub trwałe (w „rozsądnym czasie” nie powraca do normalnej pracy)[2].

Zawieszenie się systemu operacyjnego Windows[edytuj | edytuj kod]

Czasami w systemach operacyjnych pojawiają się błędy krytyczne, powodujące wyświetlenie komunikatu o problemie, który się pojawił i którego system nie jest w stanie rozwiązać, a następnie kończące jego pracę. Błędy krytyczne nie są zaliczane do zawieszeń systemu, ale od czasu, gdy w Microsoft Windows pojawiły się komunikaty BSOD, coraz większa liczba użytkowników komputerów nazywa je „zawieszeniem systemu”.

Tego rodzaju błędy, jak zawieszenie się systemu, mogą być spowodowane przez nieprawidłowo działające sterowniki sprzętowe, źle działające podzespoły komputera lub problemy z zasilaniem poszczególnych komponentów wewnątrz komputera[7], a także wprowadzenie błędnych zapisów do rejestrów systemowych[8]. W nowszych wydaniach systemów Windows są one rejestrowane przez usługę raportowania błędów systemu Windows[9].

W starszych systemach Windows główną przyczyną zawieszania się systemu było korzystanie z oprogramowania tworzonego dla 16-bitowego trybu chronionego, który został wprowadzony wraz z procesorem Intel 80286. Ten tryb pracy procesora charakteryzuje się brakiem mechanizmu stronicowania oraz wywłaszczania procesów, co uniemożliwia posiadanie pełnej kontroli systemu operacyjnego nad uruchomionymi programami. W takim trybie system operacyjny działa praktycznie jak jeden z uruchomionych programów (na równi z nimi) i musi czekać tak jak one aż uzyska dostęp do zasobów. Wystarczy wtedy, że tylko jeden program ulegnie zawieszeniu, a cały system zostaje zawieszony. Aby wyeliminować ten najpowszechniejszy problem zawieszania się systemu operacyjnego, od wersji Windows XP uniemożliwiono uruchamianie programów z 16-bitowych systemów Windows. System Windows XP korzysta już tylko z 32-bitowego trybu chronionego, nazywanego też trybem chronionym z wywłaszczeniem, oraz z mechanizmu stronicowania pozwalającego na udostępnienie każdemu uruchomionemu programowi prywatnej wirtualnej przestrzeni adresowej i odizolowaniu go od pozostałych programów działających w systemie. Umożliwiła to wymuszenie zamknięcia programu, który ma objawy zawieszenia lub powoduje inne problemy, bez jakiegokolwiek wpływu na system operacyjny czy inne działające programy.

Od tego momentu zawieszenie się systemu Windows z powodu nieprawidłowo działającego programu zostało praktycznie wyeliminowane, jednak zła sława odcisnęła piętno na systemie Windows i problem ten przytaczany jest do dnia dzisiejszego jako wada tego systemu.

Zawieszenie się systemu z rodziny Linux[edytuj | edytuj kod]

W systemach GNU/Linux problem zawieszenia się jest generalnie dość rzadkim zjawiskiem. Głównie ze względu na to, że systemy te są znacznie młodsze i nie musiały zapewniać wstecznej kompatybilności z programami pracującymi w przestarzałych trybach procesorów. Pozwoliło to na start tych systemów z innego pułapu niezawodności, a zarazem ugruntowanie się opinii o ich stabilności.

Znacznie częstszym zjawiskiem w systemach GNU/Linux jest tzw. kernel panic, gdzie 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 operacyjnej. Jednak należy zaznaczyć, że kernel panic zalicza się do błędów krytycznych, a nie do zawieszeń systemu.

Zobacz też[edytuj | edytuj kod]


Przypisy[edytuj | edytuj kod]

  1. a b Halina Zgółkowa: Praktyczny słownik współczesnej polszczyzny, Tom 10, str. 88, Wydawnictwo Kurpisz, 2005
  2. a b c d System Windows 8.1, Windows 8 lub Windows 7 zawiesza się lub ulega awarii. support.microsoft.com. [dostęp 2015-09-14].
  3. HP PC - Blokowanie się lub zawieszanie komputera (Windows 7). Pomoc techniczna HP® dla klientów. [dostęp 2015-09-14].
  4. John Walkenbach: Excel 2013 PL. Programowanie w VBA. Vademecum Walkenbacha. Gliwice: Helion S.A., 2013, s. 368. ISBN 978-83-246-7895-2.
  5. Michael R. Groh: Access 2010 PL. Biblia. Gliwice: Helion S.A., 2013, s. 952. ISBN 978-83-246-7104-5.
  6. Agnieszka Bógdał-Brzezińska, Marcin Florian Gawrycki: Cyberterroryzm i problemy bezpieczeństwa informacyjnego we współczesnym świecie. Fundacja Studiów Międzynarodowych, 2003, s. 153. ISBN 978-83-89050-09-0.
  7. Krzysztof Daszkiewicz, Michael Schmelzle, Thomas Rau. System w zawieszeniu. „PC World”, 01.10.2005. [dostęp 2015-09-14]. 
  8. Krzysztof Pytel, Sylwia Osetek: Systemy operacyjne i sieci komputerowe. Część 1, Wydawnictwa Szkolne i Pedagogiczne: Warszawa 2009, str. 106, ​ISBN 978-83-02-10769-6
  9. Preston Gralla: Windows 8. Praktyczne rozwiązania, str. 20