Systemy Operacyjne-zaganienia wykładu, Politechnika Wrocławska, Systemy Operacyjne (Lewandowski)

[ Pobierz całość w formacie PDF ]
Systemy operacyjne
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
B
ezpieczeń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
[ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • kfc.htw.pl