Różne zagadnienia
by Kozak
System operacyjny -System operacyjny można traktować jako jednolitą abstrakcyjną reprezentację zasobów, do których mogą odwoływać się aplikacje. Do takich zasobów zalicza się pamięć operacyjną, interfejsy sieciowe, systemy plików itp. SO jest zarządcą zasobów Przydziela wszystkie zasoby
Rozstrzyga konflikty żądań – kryterium to efektywne i sprawiedliwe wykorzystanie zasobów.
SO jest programem kontrolującym
Nadzoruje wykonanie programów zapobiegając błędom i poprawiając wykorzystanie komputera.
Klaster komputerowy (ang. cluster) - grupa połączonych jednostek komputerowych, które współpracują ze sobą w celu udostępnienia zintegrowanego środowiska pracy.Komputery wchodzące w skład klastra (będące członkami klastra) nazywamy węzłami (ang. node).
Klaster (ang. cluster) klaster jest grupą sektorów na partycji FAT
DMA- Bezpośredni dostęp do pamięci – moduł steruje wymianą danych pomiędzy pamięcią operacyjną a modułem we/wy. Kontroler urządzenia transferuje bloki danych z bufora bezpośrednio do pamięci bez interwencji procesora.
Trap (pułapka) jest przerwaniem programowym – generowanym przez software w przypadku wystąpienia błędu lub żądania użytkownika.
Caching- Używana informacja czasowo jest kopiowana z wolniejszej do szybszej pamięci Algorytmy szeregowania dysków
FIFO- Pierwszy na wejściu, pierwszy na wyjściu
SSTF- Najpierw najkrótsza usługa, polega na wyborze żądanej operacji dyskowej we/wy, która wiąże się z najkrótszym przesunięciem ramienia dysku z jego bieżącej lokalizacji.
SCAN- Wybór naprzemienny, ramię musi się przesunąć tylko w jednym kierunku, po drodze realizując wszystkie żądania. A później, kierunek realizacji usługi zostaje odwrócony i kolejno wybierane są wszystkie żądania.
C-SCAN- ogranicza skanowanie do jednego kierunku. PO dojściu do staniej ścieżki, ramię powraca do drugiego końca dysku i rozpoczyna od nowa.
PRI Według priorytetu procesu
LIFO- Ostatni na wejściu, pierwszy na wyjściu
N-step-SCAN
–Tworzenie kilku kolejek
–Kolejki obsługiwane są kolejno przy użyciu SCAN
–Nowe żądania dodawane są do nieobsługiwanej kolejki
FSCAN
–Dwie kolejki
–Jedna zawsze wolna dla nowych żądań
RAID- to zestaw napędów dysków fizycznych, które system operacyjny traktuje jako jeden napęd logiczny. Dane są przesyłane do poszczególnych napędów fizycznych macierzy. Nadmiarowa
pojemność dysku jest używana do przechowywania informacji o parzystości, co gwarantuje możliwość odzyskania danych a wypadek awarii dysku.
Nadmiarowość - W obliczu awarii dysku system odwołuje się do dysku z kodami parzystości i odtwarza dane z pozostałych dysków
RAID 0 nie obsługują nadmiarowości, dane na dyskach łączone są w jedno pasmo (stripe) RAID 1 kopia lustrzana, powielanie wszystkich danych
RAID 2 wykorzystuje się metodę równoczesnego dostępu do danych, kod Hamminga RAID 3 wymagany jest tylko jeden dysk nadmiarowy
RAID 4-6 wykorzystuje mechanizmy niezależnego dostępu do danych
FAT
MBR (ang. Master Boot Record) – główny rekord startowy, czyli umowna struktura zapisana w pierwszym sektorze dysku twardego. Często nazywany też Master Boot Block (ang. główny blok startowy). Zawiera on program rozruchowy oraz główną tablicę partycji (w przypadku dysku twardego – dyskietki zwykle nie posiadają tablicy partycji).
NTFS
Każdy plik w NTFS jest opisany przez jeden lub więcej rekordów w tablicy przechowywanej w specjalnym pliku -Master File Table (MFT)Przestrzeń nazw NTFS jest zorganizowana w hierarchii katalogów.
Pliki systemowe znajdują się na początku partycji NTFS. Jednym z plików systemowych jest Master File Table (MFT).
MFT zawiera rekord, opisujący każdy plik i katalog na partycji, a jeśli plik jest dość mały, to znajduje się też tam jego zawartość
folder $Bitmap - zawiera informacje które klastry są zajęte a, a które wolne Windows Future Storage (WinFS) to nowy model organizacji plików na dysku twardym, Disc cache- A portion of RAM used to speed up access to data on a disk. The RAM can be part of the disk drive itself (sometimes called a hard disk cache or buffer) or it can be general-purpose RAM in the computer that is reserved for use by the disk drive (sometimes called a soft disk cache).
Hard disk caches are more effective, but they are also much more expensive, and therefore smaller.
Nearly all modern disk drives include a small amount of internal cache.
A soft disk cache works by storing the most recently accessed data in the RAM cache. When a program needs to access new data, the operating system first checks to see if the data is in the cache before reading it from the disk. Because computers can access data from RAM much faster than from a disk, disk caching can significantly increase performance.
LRU-Least Recently Used
LFU-Least Frequently Used
JCL-Job Control Language
Najczęściej spotykane są dwa sposoby przechowywania danych zrzuconych z pamięci fizycznej na dysk. Pierwszy, stosowany w systemach rodziny Windows polega na zapisie pamięci w pliku (znajdującym się na ustalonej partycji komputera). Drugi, stosowany w systemach z rodziny UNIX
to utworzenie osobnej partycji wymiany (partycji swap) przeznaczonej wyłącznie na pamięć wirtualną. Zapewnia to szybszy dostęp do danych niż pierwsze rozwiązanie (głównie ze względu na ominięcie obsługi systemu plików).
Pamięć wirtualna jest najczęściej zaimplementowana przy użyciu stronicowania. Procesor gospodaruje wówczas pamięcią w blokach będących wielokrotnością strony o jednakowej wielkości (w procesorach Pentium 4 kB lub 4 MB). Procesy (poza procesem zarządzania pamięcią) "widzą"
pamięć poprzez adresy logiczne. Gdy proces rezerwuje pamięć proces rządzący pamięcią przydziela blok opisujący parametry tej pamięci w tablicy stron (adres logiczny, wielkość, adres fizyczny, warunki użycia i inne informacje umożliwiające gospodarowaniem pamięcią).
Adresy logiczne są tłumaczone na ich fizyczne odpowiedniki przy pomocy tablicy stron. Ta znajdująca się w RAM struktura zawiera informacje o tym, gdzie w danej chwili znajduje się dana strona. Tablica stron pamięci jest najczęściej buforowana poprzez bufor TLB, zawierający kilkadziesiąt (zwykle ok. 32) wpisów, do których w ostatnim czasie nastąpiło odwołanie.
Pamięć wirtualna może także działać w innych trybach - najpopularniejsze z nich to segmentacja i stronicowanie z segmentacją.
Cechy procesu- własność zasobów i szeregowanie. Przedmiot szeregowania to wątek. Obiekt opisany przez własność zasobów nazywany jest procesem lub zadaniem
Wielowątkowość -Określenie to oznacza zdolność systemu operacyjnego do przetwarzania wielu wątków w ramach jednego procesu
•MS-DOS przetwarza zawsze tylko jeden proces – jeden wątek
•UNIX (klasyczny)przetwarza wiele procesów lecz tylko jeden wątek w każdym procesie
•Windows 2000, Solaris, Linux, Mach, and OS/2 przetwarzają wiele procesów z których każdy ma wiele wątków
Tworzenie I przetwarzanie wątków oszczędza czas.
Stany wątków: Tworzenie, blokowanie, odblokowanie, zakończenie
Wątki użytkownika -zarządzanie wątkami jest realizowane za pomocą aplikacji Wątki jądra - realizowane za pomocą jądra
System Solaris miesza oba wątki
Windows 2000 stany wątków- gotowy, rezerwowy, działający, oczekujący, faza przejściowa, zakończony
Solaris stany wątków- synchronizacja, zawieszenie, wywłaszczenie, ustąpienie Mikrojądro - architektura w której w mikrojądrze znajdują się się absolutnie niezbędne funkcje systemu operacyjnego. Mniej ważne usługi i aplikacje są budowane na mikro jądrze Zalety: jednolite interfejsy, rozszerzalność, elastyczność, przenośność, stabilność, obsłługa systemów rozproszonych, obsługa systemów obiektowych.
Rodzaje szeregowania- długoterminowe(Określa które programy będą pobierane do wykonania (z obszaru spool) )
, średnioterminowe(•Jest elementem funkcji wymiatania (swapping)
, krótkoterminowe (ma miejsce gdy występuje:
–Przerwanie zegarowe
–Przerwanie I/O
–Wywołanie funkcji systemowej
Sygnał ), we/wy
FCFS- pierwszy na wejściu pierwszy obsłużony
cykliczne- Round Robin- wykorzystuje wywłaszczenie oparte na zegarze, określany jest maksymalny kwant czasu dla procesu
Shortest Process Next-bez wywłaszczenia
Shortest Remining Time- najpier najkrótszy pozostały czas przetwarzania
Highst Response Ratio Next- według wzoru
Feedback-sprzężenie zwrotne- dyskriminowanie dłuższych precesów
W unixie Wielopoziomowe szeregowanie cykliczne ze sprzężeniem zwrotnym (różne priorytety kolejek)
•Priorytety przeliczane co 1 sek
•Priorytet bazowy dzieli procesy na pasma (grupy) o różnych poziomach
Procesy w Unixie
User running, uruchomiany uzytkownia -proces wykonywany w trybie użytkownika Kernel running, uruchomiony jadra- Proces wykonywany w trybie jądra Ready to run in memeory- gotowy do uruchomienia w pamięci- gotowy do urochomienia jak tylko jądro go zaszereguje
Asleep in memory- uśpiony w pamięci- Niezdolny do wykonywania, do chwili zajścia ajkiego zdarzenia, proces znajduje się w pamięci operacyjnej i jest zablokowany
Ready to run, swapped- Gotowy do uruchomienia, wymieniony - Proces gotowy do uruchomienia, ale musi zostac przeniesiony do pamięci operacyjnej, zanim jądro zaszereguje go do wykonania.
Sleeping, Swapped- Uśpiony, Wymieniony- Proces oczekuje na zdarzenie, ale został przeniesiony do pamięci pomocniczej, jets zablokowany
Preempted- Wywłaszczony- Proces powraca z jądra do trybu użytkownika, ale jądro wywłaszcza go i przełącza by uruchomiany proces
Created- Proces został dopiero co utworzony i nie jest jeszcze gotowy do uruchomiania Zombie- nieusuwalny- Proces nie istnieje, ale pozostawił ślad dla procesu macierzystego Elementy procesu- identyfikator, stan, priorytet, licznik programowy, wskaźnik do pamięci, dane kontekstowe, informacja o stanie we/wy, informacje rozliczeniowe
śledzenie- sekwencja instrukcji wykonywanych w ramach procesu
Zawieszenie procesu- W kolejce precesów zablokowanych/zawieszonych znajduje się proces o priorytecie wyższym niż jakikolwiek proces w kolejce procesów gotowych,/zawieszonych i system operacyjny może zakładać że wkrótce proces o niższym priorytecie zostanie zablokowany.
Przyczyny zawieszenia procesów- Wymiana, inna przyczyna podana przez system operacyjny,interaktywne żądanie użytkownika, harmonogram, żądanie wystosowane przez proces macierzysty
Tablice pamięci- służą alokacji głównej pamięci dla procesów
Tablice I/O –informują czy I/O jest dostępne czy przypisane do procesu
Tablice plików-
Istnienie plików
Lokalizacja w pamięci pomocniczej
Aktualny stan
Atrybuty
Tablice procesów- o lokalizacji procesu
Rola bloku kontrolnego procesu Blok kontrolny procesu jest najważniejszą strukturą danych w systemie operacyjnym. Każdy blok kontrolny procesu zawiera wszystkie dane dotyczące procesu wymagane przez system operacyjny. W bloku kontrolnym procesu są Identyfikacja procesu, Informacja o stanie procesora, Informacje związane ze sterowaniem procesora.
Tworzenie procesu- Nowy wpis uzyskuje unikatowy identyfikator, następuje alokacja przestrzeni dla procesu, Inicjalizacja bloku kontrolnego procesu, Utworzenie odpowiednich powiązań, utworzenie lub rozszerzenie pozostałych struktur danych.
Kiedy przełączyć proces- Przerwanie zegara Przerwanie we/wy, Błędy pamięci Bezpieczeństwo
Rodzaje zagrożeń- Przerwy w działaniu, Przejęcie, Modyfikacja, Sfałszowanie informacji Ataki pasywne (analiza ruchu sieciowego, Ujawnienie zawartości komunikatu)
Ataki aktywne- maskaradowy, metoda opóźnianiem modyfikacja komunikatów, odmowa usługi Fazy wirusa- faza spoczynku(bezczynność), faza propagacji( wirus rozprzestrzenia swoje kopie) faza wzbudzenia( aktywacja wirusa), faza wykonywania
Rodzaje wirusów- Wirus pasożytniczy( dołącza się do do plików wykonywalnych), wirus rezydentalny w pamięci(pozostaje w pamięci, infekuje każdy wykonywany program), wirus w sektorze startowy(zaraża główny rekord rozruchowy MBR), wirus utajniony(ukrywa swoją obecność przed antywirusem), wirus polimorficzny(mutuje przy każdej infekcji) Makrowirus- Makrowirusy zarażają dokumenty MS Wrold, wykorzystują makra, program wykonywalny osadzony np. w dokumencie tekstowym.
Systemy zaufane, Wielopoziomowe systemy bezpieczeństwa- brak możliwości odczytu danych z wyższych poziomów i brak możliwości zapisu na niższych poziomach
Monitor odwołań- pomiędzy podmiotem a obiektem, korzysta z bazy danych jądra zabezpieczeń i audytu
Sieci rozproszone:
API- Interfejs programowy aplikacji- zestaw funkcji i wywołań programów, które umożliwiają wzajemną komunikację klientów i serwerów
Klasy aplikacji klient/serwer- przetwarzanie realizowane na głównym komputerze, przetwarzanie po stronie serwera, przetwarzania po stronie klienta, przetwarzanie zespołowe Trójwarstwowa architektura klient serwer- podział pomiędzy użytkownika, serwer warstwy pośredniej(serwer aplikacji), serwery wewnętrzne(serwer danych)
Middleware - ( oprogramowanie pośredniczące) Zestaw narzędzi pozwalający na standardowy dostęp do zasobów i aplikacji na różnych platformach sprzętowych i systemach operacyjnych Rozproszone przekazywanie komunikatów- zastosowanie komunikatów krążących w jednym systemie(Ident. Procesu i komunikat), zdalne wywoływanie procedur(wywołania/powroty procedur )
Zdalne wywołania mogą być synchroniczne(przewidywalne działanie, nie potrafi korzystać z paralelizmu zachodzącego w aplikacjach rozproszonych) asynchroniczne
Konfiguracje klastrów- odziemny serwer bez wspólnego dysku lub dysk współdzielony Rozwiązania klastrowe np. Pasywny serwer zapasowy, Aktywny serwer zapasowy
Beowulf- projekt stworzony w celu realizacji zadań, z którymi bieżące stacje robocze nie były w stanie sobie poradzić.
Zarządzanie pamięcią
Wiązanie rozkazów i danych z adresami pamięci- faza kompilacji, faza lądowania, faza wykonania
MMU- jednostka zarządzania pamięcią, odwzorowuje adresy logiczne na fizyczne Nakładka- przechowywanie w pamięci tych rozkazów i danych, które są stale potrzebne, daje możliwość uruchamiania procesów większych niż przydzielana im pamięć.
Wymiana(swapping)-Proces może być tymczasowo odesłany z pamięci operacyjnej do pamięci pomocniczej, a po jakimś czasie sprowadzony z
powrotem w celu kontynuacji wykonywania.
Wytaczanie i wtaczanie (roll-out, roll-in) – wariant wymiany
używany w algorytmach planowania priorytetowego, w którym
proces o niższym priorytecie jest odsyłany z pamięci po to by
proces o wyższym priorytecie mógł zostać załadowany i wykonany.
Wymogi zarządzania pamięcią (5)
Relokacja- możliwa zmiana położenia programu w pamięci operacyjnej, w chili przerzucania i zrzucania go na dysk, oprogramowanie musi być w stanie konwertować odwołania do pamięci znalezione w kodzie programu na rzeczywiste adresy pamięci fizycznej, odzwierciedlające bieżącą lokalizację programu w pamięci operacyjnej
Ochrona pamięci- Proces nie może odwoływać się do obszaru adresowego innego procesu bez zezwolenia
Współdzielenie pamięci, Struktura logiczna (program dzielony na moduly), Struktura fizyczna(nakładki)
Partycjonowanie pamięci- wystawianie procesów do pamięci operacyjnej
-statyczne(pamięć dzielona na kilka statycznych partycji)
-dynamiczne- identyczne rozmiary partycji i procesu
Algorytm rozmieszczenia
(best fit algorytm)- przypisanie procesu do najmniejszej partycji w jakiej się zmieści (fisrt fit)- wybiera pierwszy z wolnych bloków pamięci operacyjnej do której może zmieścić proces.
(next fit)- wybiera kolejną dostępną lokalizacje po poprzednim zapisaniu procesu System bliźniczy(Buddy system)
Adresy
Logiczne
–Odwołanie do miejsca w pamięci niezależnie od aktualnego położenia w niej danych Względne
–Adres określony względem jakiegoś punktu w pamięci – zazwyczaj początek programu Fizyczne
–Absolutny adres wskazujący określone miejsce w pamięci fizycznej
Stronicowanie- fragmentacja wewnętrzna
Segmentacja- fragmentacja zewnętrzną
i-węzeł (ang. i-node, index-node) – element struktury systemu plików między innymi takich jak ext2 i UFS. I-węzły są strukturami opisującymi pliki w systemie – wpis katalogowy danego pliku zawiera tylko jego nazwę i właśnie numer i-węzła tego pliku. Wszystkie i-węzły na danym systemie plików mają tę samą długość.
W systemie Linux najlepiej utożsamiać plik ze strukturą
zwaną i-węzłem (ang. i-node). i-węzeł zawiera informacje o
pliku takie jak:
● typ pliku
● rozmiar w bajtach, ilość blokow dyskowych zajmowanych
przez plik
● liczba twardych dowiązań
● czasy: utworzenia, odczytu modyfikacji
● prawa dostępu do pliku
● właściciel - grupa i użytkownik
● informacje, gdzie na dysku leżą bloki reprezentujące plik
(zawartość pliku).
● i-węzeł nie zawiera nazwy pliku
Talica i-węzłów zawiera i-węzły, które wskazują bloki w
blokach danych. Wskazywane bloki są blokami danych pliku
i-węzła.
Każdy i-węzeł zajmuje 128 B.
Metadane -Metadanymi są również informacje na temat danych (plików, katalogów) zapisanych w systemie plików na dysku. W systemach plików z księgowaniem do metadanych zalicza się czasem plik dziennika (kronikę).
Przykładowe możliwości NTFS
journaling - dziennik zmian (od NTFS 3.0 w Windows 2000); wewnętrzny dziennik NTFS
znacząco poprawia ochronę danych przed błędami zapisu; wspomaga przy tym działanie narzędzi dyskowych w rodzaju CHKDSK;
szyfrowanie plików i katalogów - (od NTFS 3.0 w Windows 2000) przy pomocy nakładek tworzących EFS - Encrypting File System - nie jest jednak możliwe zaszyfrowanie plików systemowych; od Windows XP, podsystem EFS dostępny jest tylko w wersjach Professional lub wyższych (i ich odpowiednikach, np. Vista Business); nie jest dostępny w wersjach Home i ich derywatach; EFS nie jest przeznaczony do szyfrowania prywatnych danych na komputerach domowych, a raczej do ochrony danych w systemach o wielu użytkownikach w środowiskach korporacyjnych, szczególnie w domenach Windows 2000 i Windows Server 2003; wersja EFS używana przez Windows 2000 różni się od wersji używanej w późniejszych wersjach Windows i jest z nimi niezgodna.
kompresja danych "w locie"; pliki kompresowane przy pomocy wbudowanych funkcji NTFS nie mogą być szyfrowane przy pomocy EFS i odwrotnie;
prawa dostępu dla grup i użytkowników - dostęp do tej funkcji jest ograniczony w Windows XP Home Edition i późniejszych; pełne wykorzystanie praw dostępu, wraz z możliwością wykonania inspekcji praw dostępu z zapisem do dziennika, możliwe jest w Windows 2000
(wszystkie wersje dla komputerów PC), Windows XP Professional, Windows Server 2003 i nie-domowych wersjach Windows Vista
transakcyjność - (od Windows Vista) pozwala na wykonywanie transakcyjnych operacji na systemie plików. Transakcje są optymalizowane tak, aby czas ich zamknięcia był jak
najkrótszy, dzięki czemu w normalnych warunkach nie stanowią dodatkowego obciążenia.
Transakcje mogą obejmować wiele plików i pozostawać dowolnie długo otwarte.
•
Ścieżka dostępu określa położenie pliku lub katalogu
w drzewie katalogów.
Ścieżka może być bezwzględna – gdy określamy położenie
względem katalogu głównego lub względna, gdy określamy
położenie względem innego katalogu.
Super blok zawiera informacje o systemie plików. Rozmiar
super bloku to 1024 B. Super blok w aktualnych wydaniach
pojawia się jedynie w grupie o numerze 0, 3 i numerach
będących potęgą nieparzystych liczb (5, 7, 9 – 25, 49, 81).
Mapy bitowe zawierają informację, które elementy tablicy iwęzłów
i bloku danych są wolne. Mają postać wektora bitów.
Każda z nich zajmuje zawsze obszar jednego bloku.
Tekstowe powłoki systemowe, np.
● bash - Bourne Again Shell (gra słów - nowo narodzona powłoka
Bourne'a)
● sh
● csh – c shell
● command.com - procesor poleceń systemu WINDOWS (16bit)
Graficzne powłoki systemowe, np.
● GNOME, a dokładniej Nautilus lub GMC
● KDE, a dokładniej Konqueror
● finder - powłoka systemu Mac OS
● explorer - powłoka systemu Microsoft Windows
Bit lepki (ang. sticky bit) Ustawione dla pliku wykonywalnego, te prawo dostępu, powoduje przechowywanie w pamięci operacyjnej pliku wykonywalnego po zakończeniu działania programu, opcja obecnie rzadko stosowana, zaprojektowana by zmniejszyć koszty uruchamiania popularnych programów. Ustawione dla katalogu, umożliwia kasowanie elementów w nim się znajdujących tylko poprzez właściciela katalogu, właściciela pliku który się w nim znajduje lub roota.
Setuid-bit użytkownika
Setuid dla plików wykonywalnych powoduje uruchomienie danego programu, na prawach właściciela pliku a nie użytkownika, który go uruchamia. Niektóre polecenia administracyjne jak np. sudo mogą wymagać ustawienia tego trybu dla poprawnego działania.
Setgid-bit grupy
Tryb setgid działa identycznie jak setuid z tą różnicą program uruchamiany jest na prawach grupy posiadacza pliku, w przypadku katalogów grupą posiadającą nowo utworzony plik będzie nie grupa użytkownika tworzącego a grupa posiadająca dany katalog.
Funkcja fork powoduje utworzenie nowego procesu w systemie operacyjnym, którego kod wykonywalny jest identyczny z tym, w którym została wywołana. Innymi słowy w pamięci operacyjnej tworzona jest dokładna kopia procesu wywołującego fork. Punkt wykonania programu w obu kopiach ustawiany jest następnie na instrukcję następującą po fork.
Najciekawszą cechą fork jest zwracana wartość. Otóż funkcja ta zwraca dwie różne wartości. W
procesie macierzystym (który wywołał fork), funkcja ta jako wynik zwraca PID (numer procesu) procesu potomnego, który został utworzony. W procesie potomnym funkcja fork zwraca 0.
Uruchomienie kodu w procesie - funkcje exec*, waitpid
Zwykle (ale oczywiście nie zawsze) wywołanie funkcji fork połączone jest z wywołaniem funkcji exec (dokładniej, którejś z jej odmian). Funkcja exec powoduje załadowanie nowego programu do wykonania i zastąpienie nim aktualnie wykonywanego kodu w danym procesie (w procesie, który wywołał exec). Jeśli zatem program x ma uruchomić program y (i nie chcemy utracić kodu programu x w tym sensie, że ma się on dalej wykonywać), to zwykle w procesie x wywołujemy fork, a następnie w procesie potomnym exec(y) (w procesie x przechodzimy natomiast do kolejnej czynności). Gdyby proces x wywołał exec(y) bez fork, to jego kod zostałby zastąpiony programem y (przez co program y wykonałby się poprawnie, jednak nie nastąpiłoby wznowienie wykonania programu x).
Prace są to procesy z punktu widzenia powłoki. Procesy,
które mają do wykonania długie zadanie mogą być
uruchomione w tle. Na końcu polecenia umieszcza się znak
&.
Uruchomiony program w pierwszym planie można wysłać do
działania w tle stopując go (Ctrlz)
i uruchamiając w tle
poleceniem bg:
dziennikowanie (ksi¦gowanie), z ang. journaling.
System plików z dziennikowaniem przechowuje przebieg zmian, które maj¡ zosta¢ wykonane na plikach na dysku, w specjalnym dzienniku. Zapisywane zmiany s¡ powi¡zane w transakcje. Je»eli uda si¦ zapisa¢ do dziennika list¦ operacji do wykonania na dysku, system plików zapisuje zmiany na dysku. Je»eli uda si¦ wykona¢ wszystkie zmiany, to lista operacji do wykonania jest usuwana z dziennika.
Je±li zdarzy si¦ awaria komputera i nie wszystkie
Ka»demu otwartemu plikowi odpowiada w wirtualnym systemie plików v-w¦zeª, który zawiera wska¹nik na i-w¦zeª tego pliku. V-w¦zeª jest zapisywany przez kod zale»ny od rodzaju systemu plików.