Ugasi me nježno

U svijetu računara postoje dvije vrste gašenja: graciozno i siledžijsko.

Graciozno

Graciozno (umiljato, ljupko, šarmantno) gašenje računara je npr. kada u Windows Operativnom Sistemu (OS) korisnik klikne na Start (znam, znam, na start da bi ugasio), a zatim na dugme “Shut down”. Na tu akciju pojaviće se jedan mali prozorčić s zatamljenjem preko cijelog ekrana da pita korisnika da li je zaista siguran da želi ugasiti računar i da uz to ima još i dodatne opcije, poput poslati računar na spavanje, hibernaciju ili pak ugasiti i ponovo pokreniti — restart.

Tekst na spomenutim “dugmadima” može biti drugačiji u zavisnosti od lokalizacije, odnosno prevoda, ali je princip isti.

Ono što se u pozadini događa nama je interesantno u današnjem članku. Kod gracioznog gašenja procesi u pozadini OS-a (a kojih ima nemali broj), gase se postepeno po određenom redoslijedu. Što je OS kvalitetnije napravljen, to je gašenje programa, aplikacija i servisa na njemu pametnije i šarmantnije. Svaka aplikacija koja trenutno trči (running) na sistemu ako je ispravno napisana osluškivati na signal gašenja. U slučaju dobijanja signala za gašenje dok se nešto radi, obavijestit će korisnika kako “neko” pokušava da je ugasi, a ona ipak radi nešto pametno. Svi su imali ovu situaciju nebrojeno puta u životu. Žele da ugase ili restartaju svoju mašinu, ali odjednom iskoči neki prozor u kom obavještava korisnika kako ne može doći do nastavka restartovanja jer je MS Word još uvijek otvoren i dokument na kom se radilo nije sačuvan.

Što će reći, kod gracioznog gašenja računara, ali i svake pojedine aplikacije itekako se vodi računa da ni jedan proces ne bude prekinut naglo ili dok se izvršava neka korisna radnja. Sve to praćeno postepenim čišćenjem kako radne memorije (RAM), tako i privremenih datoteka.

Siledžijsko

Nasuprot gracioznom ima se i siledžijsko gašenje. Ono svakako može biti uzrokovano ljudskim faktorom, kao kada korisnik pritisne dugme za paljenje računara na njegovom kućištu duže od 6 sekundi. Tada, u tom slučaju, potpuno nezavisno od OS-a koji se vrti na tom hardveru, mašina će se ugasiti, odnosno biće joj prekinut dotok električne energije. U ovom slučaju, u najgorem slučaju, može doći do nebrojeno mnogo neželjenih efekata. Od toga da se izgubi neka datoteka na kojoj se radilo, prekine neka instalirana aplikacija i ne bude se mogla više pokreniti, do prekida cijelog OS-a koji ne želi da se podigne.

Drugi faktor je svakako nešto na šta čovjek nema uticaja, kao što je prekid napajanja električnom strujom ili kvar na hardveru, ali u svakom slučaju siledžijsko gašenje može izazvati probleme ove ili one vrste.

Programeri koji su pisali i još uvijek pišu moderne OS-e, ali i bilo koje druge aplikacije vode računa o tome da aplikacija ili servis zna prepoznati kada dobije signal o gašenju. SIGTERM je načešće označavani signal za hvatanje signala s kojim se pokušava aplikacija ugasiti. Npr, ako je pokrenut mali program kojeg programer piše, a neko drugi pokušava da ga “ubije” s druge strane preko naredbe iz terminala ili alata za nadgledanje zadataka (Task Manager, Active Monitor, …), ispravno napisan program zna to prepoznati. Pogasiće sve neophodne servise i konekcije u odgovarajućem redoslijedu, a zatim će se zatvoriti. Tako će siledžijsko, prisilno gašenje preko naredbe za “ubijanje” pretvoriti u graciozno, nježno, pametno gašenje.

0

Hits: 2