Nowe posty

Autor Wątek: Usypianie linuxa - co to znaczy?  (Przeczytany 2970 razy)

sweter

  • Gość
Usypianie linuxa - co to znaczy?
« dnia: 2012-02-17, 18:29:09 »
Witam,
nurtuje mnie takie pytanie: co się dzieje podczas usypiania Linuxa?
Stan systemu jest zapisywany na dysk, czy pozostaje w RAM'ie? Procesor zostaje wyłączony? Co się wtedy dzieje?
Pozdrawiam :)

ktr

  • Gość
Usypianie linuxa - co to znaczy?
« Odpowiedź #1 dnia: 2012-02-17, 18:59:23 »
robi się zrzut stanu systemu, następuje kompresja i zapisuje się na dysk lub do RAM'u ;) podczas hibernacji komputer nie jest wyłączony tylko .. mhm uśpiony ;)
wpisz w googlach hibernate, suspend, tuxonice ;p

  • Gość
Usypianie linuxa - co to znaczy?
« Odpowiedź #2 dnia: 2012-02-17, 19:09:27 »
Robi się "zrzutka" pamięci operacyjnej na dysk twardy i wówczas komputer można wyłączyć z sieci - to jest hibernacja, "zamrożenie". Podczas usypiania - "sleep" - zmniejszany jest pobór prądu do najmniejszego możliwego tak, by później było możliwe szybkie "obudzenie" systemu; wówczas komputer nie może z reguły zostać wyłączony z sieci, chyba że dążymy do jego uszkodzenia.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3062
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Usypianie linuxa - co to znaczy?
« Odpowiedź #3 dnia: 2012-02-17, 20:05:20 »
Uśpienie =/= hibernacja

Uśpienie - system zatrzymuje urządzenia, które da się zatrzymać (video, dyski, peryferia typu karty sieciowe, usb itp) po czym procesor się "zawiesza". Zasilanie zasadniczo doprowadzane jest tylko do pamięci RAM, chipsetu i procesora (aby zachować zawartość rejestrów). Przy budzeniu system ponownie aktywuje wszystkie urządzenia i wznawia pracę.
Zalety: uśpienie i wybudzenie jest relatywnie szybkie.
Wady: przy utracie zasilania system zachowuje się jak po "chamskim" wypięciu zasilania, w szczególności może ulec uszkodzeniu zawartość dysków. Trochę zredukować skutki tego działania można synchronizując dyski przed uśpieniem, bądź w ogóle przemontowując je w trybie RO jako ostatnią czynność przed uśpieniem i wracając do RW jako pierwszą po wybudzeniu. Dodatkowo komputer pobiera jednak prąd, więc w ciągu paru dni laptop spokojnie wyssa cały akumulator.

Hibernacja - podobna do uśpienia, jednak przed wyłączeniem dysku cała zawartość RAM (właściwie teoretycznie nie całą, tylko obszary zaalokowane) oraz stan procesora i niektórych peryferiów jest zapisywana na dysk - w Windows do osobnego pliku, w Linuksie na osobną partycję (często na partycję swap, ale niekoniecznie). Po zapisaniu komputer jest normalnie wyłączany. Po włączeniu zawartość RAM, procesora i urządzeń jest odtwarzana z zapisanego obrazu i wznawiana jest ich praca. W stanie hibernacji komputer nie pobiera energii (w każdym razie nie więcej niż wyłączony)
Zalety: Komputer jest wyłączony, hibernacja może trwać dowolnie długo i jest nieczuła na braki zasilania. Ma mniejsze wymagania kompatybilnościowe niż uśpienie.
Wady: Wolniejsza od uśpienia (odczyt/zapis całej pamięci z/na dysku). W przypadku dual-boota po zahibernowaniu jednego systemu i uruchomieniu drugiego, ten drugi widzi niespójne dyski (znowu, generalnie przed hibernacją ze względu na wydajność nie synchronizuje się dysków). Jeżeli coś dotknie na dyskach, to po odhibernowaniu pierwszego będzie kasza, bo pierwszy zapamiętał inną strukturę dysków niż jest obecnie (w szczególności posypią się dane z cache'u dyskowego).

Tak to w skrócie wygląda.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy