systemy Flashcards

1
Q

Zasoby systemu
co to?

A

to wszystkie jego elementy,
które mogą być wykorzystane przez
system lub aplikację użytkownika (np.
pamięć, procesory, urządzenia
peryferyjne, pliki, zmienne,…).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Tworzenie maszyny wirtualnej
na czym polega?

A

polega na
takiej zmianie właściwości maszyny
fizycznej, aby były one przydatniejsze dla
użytkownika.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

ELEMENTY MASZYNY WIRTUALNEJ VM
wymień

A

 Wejście-wyjście
 Pamięć operacyjna
 System plików
 Ochrona zasobów i system błędów
 Współdziałanie programów
 Sterowanie programami

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

WEJŚCIE-WYJŚCIE
lista zadań

A

 Stworzenie urządzeń wirtualnych
 Uproszczenie dostępu do urządzeń we-wy
 Uwolnienie użytkownika od bezpośredniego
programowania urządzeń we-wy
 Ograniczenie (uniemożliwienie)
bezpośredniego dostępu do urządzeń wewy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

PAMIĘĆ OPERACYJNA
lista zadań

A

 Stworzenie pamięci wirtualnej
 Zwiększenie pojemności pamięci
 Podział między użytkowników
 Ochrona pamięci
 Umożliwienie współdzielenia pamięci

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

SYSTEM PLIKÓW
lista zadań

A

 Tworzy strukturę gromadzenia plików
 Umożliwia dostęp do pamięci masowej poprzez
nazwy symboliczne bez dokładnej znajomości
miejsca położenia pliku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

OCHRONA ZASOBÓW I SYSTEM BŁĘDÓW
lista zadań

A

 Ochrona przed skutkami błędów
 Ochrona przed złośliwością lub złymi zamiarami
pozostałych użytkowników
 Obsługa błędów sprzętu
 Obsługa błędów użytkownika

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

WSPÓŁDZIAŁANIE PROGRAMÓW
lista

A

 Współpraca w celu wykonania jednego zadania
 Wyniki uzyskane z działania jednego programu
służą drugiemu
 Komunikacja między działającymi programami
 Synchronizacja działania programów

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

STEROWANIE PROGRAMAMI
w jaki sposób

A

Element odpowiedzialny za porozumiewanie się
operatora z maszyną tzw. interface użytkownika.
Występuje jako:
język poleceń
system graficzny
system głosowy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

RODZAJE SYSTEMÓW OPERACYJNYCH
lista

A

 Systemy dla indywidualnego użytkownika
 Sterowanie procesami
 Systemy przepytywania plików
 Przetwarzanie transakcji
 Systemy ogólnego przeznaczenia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

SYSTEMY DLA INDYWIDUALNEGO
UŻYTKOWNIKA
zalety, podział

A

 wygoda i prostota
 jednozadaniowe: CP/M, MS DOS
 wielozadaniowe: OS/2, Windows NT, 2000, XP,
Vista

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

SYSTEM STEROWANIA PROCESAMI
inna nazwa, cechy, zastosowania, podział

A

 systemy czasu rzeczywistego
 Cechy: sprzężenie zwrotne, niezawodność,
bezpieczne wyłączenie po awarii
 Zastosowania: produkcja, kontrola,
monitorowanie
 Podział: rygorystyczne, łagodne

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

SYSTEMY PRZEPYTYWANIA PLIKÓW
do czego/kiedy? zastosowania

A

 przeglądanie i modyfikacja dużych baz danych
 Zastosowania: systemy w urzędach, policyjne,
dla lekarzy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

SYSTEMY PRZETWARZANIA TRANSAKCJI
kiedy?

A

 bardzo częste zmiany w bazie danych
 Konieczność utrzymania integralności danych
 Zastosowania: system rezerwacji miejsc,
system rozliczeń bankowych

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

SYSTEMY OGÓLNEGO PRZEZNACZENIA
kiedy?

A

 duża różnorodność zadań
 duża liczba programów użytkowych
 konieczność obsługi wielu urządzeń
peryferyjnych
 W oparciu o nie buduje się systemy
przepytywania plików i przetwarzania transakcji

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

PODZIAŁ SYSTEMÓW OPERACYJNYCH
Że względu na liczbę stanowisk i na interakcję z użytkownikiem

A

 Systemy wsadowe
zdalne wprowadzanie prac
 Systemy wielodostępne
interaktywne

 jednostanowiskowe
 rozproszone (koordynacja zadań i przepływu
informacji)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

STRUKTURA SYSTEMU:
podział

A

 jednolita
 warstwowa
 klient-serwer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

JEDNOLITA STRUKTURA SYSTEMU
co to?

A

 zespół wzajemnie wywołujących się procedur -
trudności w konserwacji

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

WARSTWOWA STRUKTURA SYSTEMU
co to?

A

 podział systemu na moduły o określonych
zadaniach (odwołania tylko do niższej warstwy)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

STRUKTURA SYSTEMU TYPU KLIENT-SERWER
jak to działa?

A

 moduły komunikują się poprzez wysyłanie
komunikatów od klienta do serwera
 przekazywaniem komunikatów zajmuje się
mikrojądro (np. Windows NT)
 łatwa rozbudowa i konserwacja

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

SYSTEM VMS

A

 różne systemy
 wirtualne procesory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

WIRTUALNA MASZYNA JAVY

A

 tworzona dla każdego systemu oddzielnie
 pkod – pseudokod, kod binarny, kod bajtowy –
niezależny od systemu
 kompilator JIT (ang. Just-in-time compilation)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

WIRTUALIZACJA - RODZAJE

A

 Wirtualizacja serwerów
 Wirtualizacja aplikacji
 Wirtualizacja prezentacji
 Wirtualizacja stacji roboczych
 Wirtualizacja pamięci masowych
 Wirtualizacja stanu użytkownika
 Wirtualizacja sieci

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

WIRTUALIZACJA SERWERÓW
co umożliwia?

A

 umożliwia aplikacjom działanie na
wielu systemach operacyjnych
uruchomionych na tym samym
fizycznym serwerze
 możliwość pełnego wykorzystania
mocy obliczeniowej i zasobów
serwera, stawiając kolejne maszyny
wirtualne na jednym fizycznym
serwerze – zamiast kupować kolejne
serwery fizyczne
 szybsze dostarczenie usług
 uproszczenie i przyśpieszenie
konserwacji serwerów

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

WIRTUALIZACJA APLIKACJI
co umożliwia?

A

 zapewnia izolację aplikacji, rozwiązuje problem
zgodności różnych aplikacji, umożliwiając im działanie
razem, mimo że mogą wymagać tych samych zasobów w
różnych wersjach (np. różne wersje bibliotek DLL)
 usprawnia proces testowania aplikacji, nie trzeba
sprawdzać, jak aplikacje współpracują ze sobą, gdy
jedną z nich aktualizujemy
 aplikacje mogą być przechowywanie centralnie i
strumieniowane do komputera PC w oparciu o aktualnie
zalogowanego użytkownika
 całkowite usunięcie aplikacji ze stacji roboczej pozwala
na zmniejszenie ilości obrazów systemów operacyjnych

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

WIRTUALIZACJA PREZENTACJI
co umożliwia?

A

 dostarczanie aplikacji lub całego pulpitu poprzez
strumieniowanie obrazu do odbiorcy
 kod aplikacji oraz przetwarzanie danych odbywa się po
stronie serwera
 umożliwia elastyczną pracę niezależnie od lokalizacji
 daje dostęp do aplikacji i całych pulpitów ze stron WWW,
lokalnych komputów w domu lub przez Internet
 upraszcza proces wdrażania aplikacji - wdrożenie jest
realizowane na serwerach działających w farmie, a nie
na wszystkich stacjach roboczych

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

WIRTUALIZACJA STACJI ROBOCZYCH
podział

A

 Wirtualizacja stacji roboczych (utrzymywana na kliencie)
 umożliwia uruchomienie maszyn wirtualnych na jednym komputerze PC obok systemu
operacyjnego hosta
 może być centralnie zarządzana, a obrazy maszyn wirtualnych mogą być dostarczane również
centralnie
 zapewnia zgodność aplikacji z systemem operacyjnym - aplikacje są zainstalowane w maszynie
wirtualnej i tam wykonuje się ich kod
 dostarczenie aplikacji odbywa się najczęściej w trybie seamless, czyli bez dodatkowej otoczki
pulpitu – jedynie widok samej aplikacji
 Wirtualizacja stacji roboczych (utrzymywana na serwerze)
 przenosi środowisko pracy, oparte na stacjach roboczych, do centrum przetwarzania danych,
gdzie stacja robocza jest uruchomiona w postaci maszyny wirtualnej, a dostęp do niej
zapewniony jest drogą sieciową
 połączenie może być zrealizowane z dowolnego komputera PC, laptopa lub cienkiego klienta
 nie jest jedną technologią – to połączenie wirtualizacji serwerów z wirtualizacją prezentacji.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

WIRTUALIZACJA PAMIĘCI MASOWYCH
na czym polega?

A

 daje niezależność lokalizacyjną dla danych
przez abstrakcję fizycznej lokalizacji danych
 odwrotnie, niż w przypadku wirtualizacji
serwerów, wirtualizacja pamięci masowych
umożliwia, by wiele macierzy było widocznych
jako jedno wirtualne urządzenie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

WIRTUALIZACJA STANU UŻYTKOWNIKA
na czym polega?

A

 polega na oddzieleniu danych użytkownika od
komputera PC i przechowywaniu ich centralnie (np.
w centrum przetwarzania danych)
 umożliwia podjęcia ich na dowolnym komputerze
PC
 użytkownik ma dostarczone swoje pliki bez
długiego czasu ściągania lub ręcznego kopiowania,
niezależnie od miejsca logowania
 upraszcza to tworzenie kopii zapasowych danych
użytkownika

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

WIRTUALIZACJA SIECI
na czym polega?
podział

A

 Zewnętrzna wirtualizacja sieci
 technologia VLAN (802.1Q), czyli logiczny podział
segmentów sieci na fizycznym sprzęcie sieciowym
osiągany przez znakowanie ramek
 Wewnętrzna wirtualizacja sieci
 tworzenie wirtualnych przełączników i portów na
poziomie hiperwizora - wirtualne przełączniki
dostarczają komunikację sieciową dla maszyn
wirtualnych oraz łączą je z zewnętrzną fizyczną
siecią

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

KANAŁ

A

 transmisja odbywa się z urządzenia do/z pamięci z
pominięciem procesora
 procesor przechodzi w stan wysokiej impedancji i
zwalnia magistralę systemową
 transmisja przez kanał kończy się przerwaniem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

KOLEJKA ROZKAZÓW

A

Większość nowoczesnych procesorów posiada wbudowaną
kolejkę rozkazów i nie musi odwoływać się do pamięci by
pobrać następny rozkaz.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

MONITOR WSADOWY
podział

A

JEDNOSTRUMIENIOWY
 planowanie wykonywania prac z dysku

WIELOSTRUMIENIOWY
 wieloprogramowanie – wczytywanie i
uruchamianie wielu prac w tym samym
czasie
przełączanie

WIELOSTRUMIENIOWY
WYKORZYSTUJĄCY WIELE PROCESORÓW
 każda praca może być wykonywana na kilku procesorach
 należy pamiętać o zachowaniu i przywróceniu stanu zadania
przełączanie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

SZCZEGÓŁOWE ZADANIA SYSTEMU
OPERACYJNEGO
lista

A

 planowanie prac
 szeregowanie prac

 sterowanie pracami lub interpretowanie języka poleceń
 sterowanie zasobami

 ochrona zasobów
 ewidencjonowanie zasobów komputerowych (lista zasobów)

 obsługa błędów
 obsługa wejścia-wyjścia
 obsługa przerwań

 umożliwienie wielodostępności
 udostępnianie dobrego sposobu komunikacji z
operatorem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

WŁAŚCIWOŚCI SYSTEMU OPERACYJNEGO:

A

 współbieżność
 wspólne korzystanie z zasobów
 pamięć długookresowa
 niedeterminizm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

WSPÓŁBIEŻNOŚĆ
co to? Co wchodzi w skład?

A

wykonywanie kilku czynności jednocześnie
 przełączanie między czynnościami
 wzajemna ochrona
 synchronizacja

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

PAMIĘĆ DŁUGOOKRESOWA
co robi?

A

 z niej uruchamia się system operacyjny
 przechowuje programy i dane
 dzięki niej nie trzeba wprowadzać
oprogramowania i danych przy każdym
włączeniu systemu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

NIEDETERMINIZM

A

 w sensie reakcji na różne zdarzenia w różnej
kolejności
 różny ciąg przełączeń pomiędzy zadaniami

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

POŻĄDANE CECHY SYSTEMU OPERACYJNEGO

A

 wydajność
 niezawodność
 pielęgnowalność
 mały rozmiar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

WYDAJNOŚĆ SO
lista

A

 średni czas między pracami wsadowymi
 długość cyklu przetwarzania prac wsadowych

 niewykorzystany czas procesora centralnego
 wykorzystanie zasobów

 czas reagowania
 przepustowość informacyjna

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

PIELĘGNOWALNOŚĆ SO

A

 rozszerzanie systemu
 usuwanie błędów
 budowa modułowa z określoną komunikacją
międzymodułową
 dobra dokumentacja
- użytkownika
- instalatora/administratora
- programisty
- wewnętrzna

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

MAŁY ROZMIAR SO

A

 duży system operacyjny zajmuje pamięć
 jest trudniejszy w opanowaniu
 posiada potencjalnie większą liczbę błędów

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

PROCESOR
czym jest? jaki może być?

A

Procesor jest elementem (jednostką)
wykonującym rozkazy.
Procesor może być:
 sprzętowy - wykonuje ciąg operacji wybranych z
listy rozkazów procesora. Pobiera rozkazy z
pamięci operacyjnej i kolejno je wykonuje.
 sprzętowo-programowy - jest wynikiem połączenia
procesora sprzętowego z oprogramowaniem.
Rozkazy interpretowane są przez oprogramowanie.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

PROGRAM
co to? formy

A

Program jest to statyczny zestaw instrukcji
wykonywany przez jednostkę centralną
(procesor) realizujący określone zadanie.
Zestawy instrukcji mogą być w formie:
 źródłowej (tekstowej) – zrozumiałej dla programisty
 binarnej (wynikowej) zrozumiałej dla maszyny

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

PROCES
co to?
z czego sie sklada? co moze miec przydzielone?

A

Proces (zadanie) jest to dynamiczny ciąg
działań wykonywanych za pośrednictwem
programu lub sprzętu.
 Proces można nazwać „wykonywanym programem”.
 W danej chwili na jednym procesorze tylko jeden proces jest aktywny.
 W skład procesu wchodzą: kod programu, licznik rozkazów, sekcja danych oraz stos.
 Procesowi mogą być przydzielone: procesor, pamięć, dostęp do
urządzeń we/wy oraz pliki.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

STANY PROCESU

A

 Nowy
– proces został utworzony.
 Wykonywany (aktywny, bieżący)
– instrukcje procesu są aktualnie wykonywane
 Wykonywalny (gotowy)
– proces czeka na przydział procesora
 Oczekujący (niewykonywalny)
– proces czeka na wystąpienie jakiegoś zdarzenia.
 Zakończony
– proces zakończył działanie.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

WĄTEK
co to? co współdzieli?
różnice między wątkiem a procesem

A

Wątek to proces lekki – wątki jednego
zadania współdzielą kod i dane.
 Podstawowa cecha różniąca wątek od procesu:
każdy proces posiada własną przestrzeń adresową,
natomiast wątki posiadają wspólną sekcję danych oraz kod,
ale różne stosy i liczniki rozkazów.
 Wątek jest podstawową jednostką wykorzystania procesora.
 Proces tradycyjny (nazywany ciężkim) jest równoważny
zadaniu z jednym wątkiem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

WĄTKI I PROCESY W SYSTEMIE SOLARIS - BUDOWA
jakie wątki?

A

 Wątek jądrowy złożony jest z danych i stosu. Przełączanie
wątków jądrowych jest stosunkowo szybkie.
 Proces lekki (LWP) zawiera blok kontrolny procesu z danymi
rejestrowymi, informacjami rozliczeniowymi i informacjami
dotyczącymi pamięci. Przełączanie procesów jest dość
wolne.
 Wątek poziomu użytkownika wymaga tylko stosu i licznika
rozkazów nie są mu potrzebne zasoby jądra, więc ich
przełączanie jest szybkie. Bez względu na ilość wątków
poziomu użytkownika dla jądra widoczne będą tylko procesy
lekkie zadania.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

WĄTKI I PROCESY W SYSTEMIE SOLARIS -
PODSUMOWANIE

A

 Dowolne zadanie może mieć wiele wątków poziomu użytkownika.
 Wątki te mogą być planowane i przełączane bez interwencji jądra.
 Wszystkie wątki poziomu użytkownika są od jądra niezależne.
 Zablokowanie jednego z wątków użytkownika i podjęcie działania przez inny wątek nie wymaga przełączania kontekstu,

 Każdy proces LWP jest przyłączony do jednego wątku jądrowego,
 W zadaniu może być wiele procesów LWP, lecz są one używane tylko do komunikacji z jądrem.
 Gdy jeden proces lekki w zadaniu zostanie zablokowany, inne mogą kontynuować działanie w ramach zadania

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

RODZAJE WSPÓŁBIEŻNOŚCI

A

 Współbieżność pełna.
 Współbieżność pozorna.
 Współbieżność koleżeńska
 Współbieżność z wywłaszczeniem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

WSPÓŁBIEŻNOŚĆ PEŁNA

A

 Każdy proces jest wykonywany do końca
przez jeden procesor
 Liczba procesów jest mniejsza bądź równa
liczbie procesorów

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

WSPÓŁBIEŻNOŚĆ POZORNA

A

 Występuje wówczas, gdy liczba procesów
przewyższa liczbę procesorów, czyli liczba
czynności jest większa od liczby
wykonawców.
 System będzie dokonywał przełączeń
pomiędzy procesami
 Konieczne jest zapamiętanie stanu procesu
przy przełączaniu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

WSPÓŁBIEŻNOŚĆ KOLEŻEŃSKA

A

 Dany proces sam zwraca sterowanie do
systemu operacyjnego, aby mógł on
wykonać zadanie kolejne.
 Proces może zatem sam zarządzać czasem
procesora.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

WSPÓŁBIEŻNOŚĆ Z WYWŁASZCZENIEM

A

 Procesy same nie zwracają sterowania.
 System wywłaszcza proces z procesora.
 System operacyjny przekazuje sterowanie
kolejnemu procesowi bez względu na proces
poprzedni.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

PROCESY
o co współzawodniczą?
po co współdziałają?

A

Procesy:
 współdziałają w celu wykonania zadania
zleconego przez użytkownika
 współzawodniczą o zasoby systemu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

KATEGORIE RODZAJÓW KOMUNIKACJI:

A

 wzajemne wyłączanie
 synchronizacja
 zakleszczenie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

WZAJEMNE WYŁĄCZNIE

A

Polega na zapewnieniu, aby tylko jeden
proces naraz mógł korzystać z zasobów
niepodzielnych.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

ZASOBY DZIELI SIĘ NA:

A

ZASOBY PODZIELNE
 kilka procesów może korzystać z nich
współbieżnie
 zabranie zasobu przez jakiś proces inny
odbywa się bez żadnej szkody.
 Do zasobów podzielnych należą:
 jednostki centralne
 pliki przeznaczone wyłącznie do odczytu
 pamięć wyłącznie do odczytu (kod lub stałe)

ZASOBY NIEPODZIELNE
 mogą być wykorzystywane tylko przez jeden
proces
 Do zasobów niepodzielnych należą:
 większość urządzeń zewnętrznych
 pliki otwarte do zapisu
 pamięć przeznaczona do zapisu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

NIEPODZIELNOŚĆ ZASOBÓW WYNIKA Z

A

 natury fizycznej danego zasobu, która nie
pozwala na jego współdzielenie. Typowym
przykładem jest drukarka.
 tego, że czynności jednego procesu mogą
zakłócać wykonywanie innego procesu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

SYNCHRONIZACJA

A

Procesy z założenia działają asynchronicznie.
 Aby uzyskać zadowalającą współpracę,
wyznacza się pewne punkty, w których
procesy muszą synchronizować swoje
działanie. Poza te punkty jeden proces nie
może przejść do czasu, aż drugi proces mu
nie zezwoli

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

ZAKLESZCZENIE (BLOKADA)

A

Jeżeli kilka procesów współzawodniczy o
zasoby niepodzielne, to może się zdarzyć,
że każdy z nich będzie chciał skorzystać z
zasobów, których używają inne procesy. Co
prowadzi do tego, że żaden nie będzie mógł
dalej działać.
Taka sytuacja nazywa się zakleszczeniem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

SEMAFORY

A

SEMAFOR – jest to nieujemna liczba
całkowita, na której – z wyjątkiem nadawania
wartości początkowych – mogą działać jedynie
niepodzielne operacje czekaj i sygnalizuj.

Zmiany wartości semafora muszą być
wykonywane za pomocą operacji czekaj i
sygnalizuj w sposób niepodzielny.
Oznacza to, że gdy jeden proces modyfikuje
wartość semafora, to inny proces nie może
jednocześnie wartości tej zmieniać.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

sekcja krytyczna

A

Fragment kodu, w którym proces odwołuje się
do zasobów niepodzielnych

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

KONSTRUKCJE SYNCHRONIZACYJNE

A

 Monitor składa się z:
- danych
- procedur dostępu
- programu inicjującego
 region krytyczny

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

PRZEKAZYWANIE KOMUNIKATÓW

A

W skład narzędzi komunikacji międzyprocesowej
wchodzą dwie podstawowe operacje:
 nadaj (komunikat)
 odbierz (komunikat).
 Długość komunikatu może być stała lub zmienna.
 Komunikaty mogą być kierowane do jednego procesu lub do
wielu (rozgłoszeniowe).
 Można żądać potwierdzenia otrzymania komunikatu.
 Obie powyższe operacje mogą mieć różne postacie.

operacja blokująca - czeka, aż proces
odbierający przyjmie komunikat.
operacja nieblokująca - po prostu umieszcza
komunikat w pewnego rodzaju kolejce i pozwala,
aby nadawca działał w dalszym ciągu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
66
Q

Komunikacja bezpośrednia

A

Komunikacja bezpośrednia - każdy proces, który chce się
komunikować, musi jawnie nazwać odbiorcę lub nadawcę
uczestniczącego w tej wymianie informacji.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
67
Q

Komunikacja pośrednia

A

Komunikacja pośrednia - komunikaty są nadawane i odbierane
za pośrednictwem skrzynek pocztowych, nazywanych także
portami. Możliwość komunikacji między dwoma procesami
istnieje tylko wtedy, gdy mają one jakąś wspólną skrzynkę
pocztową.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
68
Q

Buforowanie komunikatów
czym jest bufor? pojemności

A

Buforowanie komunikatów - bufor ma pewną pojemność
określającą liczbę komunikatów, które mogą w nim czasowo
przebywać.
 Pojemność zerowa: Maksymalna długość kolejki wynosi 0, czyli
łącze nie dopuszcza, by czekał w nim jakikolwiek komunikat. W
tym przypadku nadawca musi czekać, aż odbiorca odbierze
komunikat. Oba procesy muszą być zsynchronizowane.
 Pojemność ograniczona: Kolejka ma skończoną długość n, może
w niej zatem pozostawać co najwyżej n komunikatów.
 Pojemność nieograniczona: Kolejka ma potencjalnie
nieskończoną długość; może w niej oczekiwać dowolna liczba
komunikatów. Nadawca nigdy nie jest opóźniany.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
69
Q

JĄDRO SYSTEMU
co to?

A

Jądro systemu stanowi główny interfejs między
sprzętem (surową maszyną), a systemem
operacyjnym.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

PODSTAWOWE UDOGODNIENIA SPRZĘTOWE
do czego? skład, skład składu

A

Potrzebne w surowej maszynie do stworzenia
środowiska, na którym można uruchomić
bezpieczny i nowoczesny system operacyjny
 mechanizm przerwań
 obsługa zdarzeń zewnętrznych
 przełączanie procesów
 ochrona pamięci operacyjnej
 wbudowana do sprzętu adresującego pamięć
 procesy nie mogą zmienić przydzielonego
im obszaru pamięci
 procesy nie mogą odwoływać się do pamięci
przydzielonej innym procesom
 zegar czasu rzeczywistego
Zegar czasu rzeczywistego - zegar sprzętowy
generuje przerwania w ustalonych odstępach
czasu.
Jego przerwania są podstawą
 planowania
 rozliczania zasobów
 przełączania procesów

 zbiór rozkazów uprzywilejowanych
 działają tylko w trybie nadzorcy
Procesor musi posiadać co najmniej 2 tryby
pracy:
 nadzorcy – systemu operacyjnego,
uprzywilejowany
 użytkownika - nieuprzywilejowany

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

Części systemu, które mogą mieć kod w assemblerze

A

peryferia, jądro

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

Zadaniem jądra jest stworzenie środowiska, w
którym będą występować procesy; mieści ono
w sobie
na co pozwala?

A

 obsługę przerwań
 przełączanie procesorów od procesu do
procesu
 realizację mechanizmów służących do
komunikacji między procesami

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

DESKRYPTOR PROCESU
inne nazwy, co zawiera?

A

Każdy proces jest reprezentowany w systemie przez
strukturę nazywaną deskryptorem procesu lub:
 blokiem kontrolnym procesu
 wektorem stanu

Jest on strukturą zawierającą wszystkie istotne informacje
o procesie np.:
 identyfikator procesu (nazwę procesu)
 identyfikator stanu procesu
 pulę informacji o procesie, które powinny być
zapamiętane wtedy, gdy procesor wstrzymuje jego
wykonywanie.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

Jądro systemu składa się z trzech programów:

A

 programu wstępnej obsługi przerwań
 programu zwanego dyspozytorem
 operacji czekaj i sygnalizuj (dwóch procedur,
które realizują operacje służące do
komunikacji między procesami)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

Środowisko ulotne
inne nazwy, co zawiera (dokładnie) i po co?

A

Środowisko ulotne (kontekst, deskryptor sprzętowy)
procesu definiuje się jako zbiór danych, które muszą
być zapamiętane podczas wstrzymywania procesu, a
odtworzone podczas wznawiania, aby proces działał
poprawnie.

Do tych informacji należą:
 wartości wszystkich rejestrów procesora
 wartości rejestrów stosowanych do adresowania
pamięci operacyjnej

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

Jądro systemu zawiera również strukturę
danych nazwaną tablicą główną. Zawiera ona
szereg danych opisujących:

A

 system operacyjny
 jego bieżący stan
 informacje o sprzęcie
 informacje o procesach
 … itd.

71
Q

WSTĘPNA OBSŁUGA PRZERWAŃ
od czego zależna? zadania

A

Wstępna obsługa przerwań jest zależna od
sprzętu, zadaniem jej jest:
 określić źródło przerwania
 zainicjować obsługę przerwania.

72
Q

WSTĘPNA OBSŁUGA PRZERWAŃ
ze względu na ilość przerwań

A

jedno:
W systemie z tylko jednym
przerwaniem należy wykonać
ciąg testów, nazywany
łańcuchem przeskoków.
Oczywistą korzyść przyniesie takie
ułożenie łańcucha, by najczęstsze
źródła przerwań znalazły się na jego
początku.

wiele:
W systemach umożliwiających obsługę wielu
przerwań oddzielnie wstępna obsługa
przerwań jest zbędna.
 źródło przerwania jest określane sprzętowo
na podstawie sygnału przerwania
 obsługa przerwania jest inicjowana przez
procesor

wiele, za mało linii:
W systemach, w których ilość linii przerwań
jest mniejsza od ilości urządzeń zgłaszających
przerwanie, wstępna obsługa przerwań jest
grupowana tylko dla przerwań wspólnych dla
kilku urządzeń.

73
Q

WSTĘPNA OBSŁUGA PRZERWAŃ
jak może zmienić stan procesu?

A

W wyniku przerwania może nastąpić zmiana
stanu procesu:
 z wykonywanego na wykonywalny
 z wykonywalnego na wykonywany
 z niewykonywalnego na wykonywany albo
wykonywalny

74
Q

DYSPOZYTOR
co robi?, inna nazwa

A

 Zadaniem dyspozytora jest przydzielanie
procesora centralnego do procesów.
 Dyspozytor dokonuje przełączeń procesów.
 Dyspozytor jest nazywany planistą niskiego
poziomu.

75
Q

DYSPOZYTOR
przechodzenie gdy

A

Do dyspozytora przechodzi się w przypadku:
 przerwania zewnętrznego zmieniającego stan
jakiegoś procesu
 po odwołaniu do systemu wstrzymującym
wykonywanie bieżącego procesu
 po wykryciu błędu w bieżącym procesie.

76
Q

Działanie dyspozytora:
jak dziala

A

 Jeżeli bieżący proces można kontynuować i ma
najwyższy priorytet, to wznów go. Jeżeli nie,
to…
 Zapamiętaj środowisko ulotne bieżącego procesu.
 Odtwórz środowisko ulotne pierwszego procesu do
wykonania z kolejki procesora.
 Podejmij wykonywanie tego procesu (przekaż mu
sterowanie).

77
Q

KOLEJKA PROCESORA
co to? rodzaje

A

Jest to lista zawierająca wszystkie procesy wykonywane i
wykonywalne, które można w każdej chwili wznowić.

Są trzy podstawowe rodzaje kolejek:
 kolejka priorytetowa - procesy są uporządkowane
zgodnie z priorytetami.
 kolejka rotacyjna - pierwszy proces po wykonaniu
przechodzi na koniec kolejki.
 kolejka wielopoziomowa ze sprzężeniem zwrotnym:
 procesy o najwyższym priorytecie są często wybierane,
ale na krótki czas,
 procesy o najniższym priorytecie są rzadko wybierane,
ale na długi czas,
 priorytet procesu wzrasta, gdy proces nie wykorzystuje
przydzielonego mu czasu,
 priorytet procesu maleje, gdy procesowi brakuje czasu.

78
Q

Aby proces stał się wykonywalny należy:

A

 zmienić stan w deskryptorze procesu
 dołączyć deskryptor procesu do kolejki
procesora na pozycji wskazywanej przez
priorytet procesu.

79
Q

GŁODZENIE PROCESÓW
co to? rozwiązanie

A

 Jest to niemożność wykonania procesu
wykonywalnego z powodu długiego oczekiwania
na przydział procesora.
 Dotyczy procesów o niskim priorytecie w mocno
obciążonym systemie komputerowym z powodu
stałego napływu procesów o wyższych
priorytetach.
 Rozwiązaniem jest podwyższanie priorytetów
procesów, które długo oczekują na wykonanie.

80
Q

PODWYŻSZANIE PRIORYTETÓW PROCESÓW
INTERAKCYJNYCH
na czym polega?

A

 Przyznawany procesowi początkowy priorytet
(podstawowy) jest traktowany jako punkt startowy.
 Każdy proces, który podejmie jakieś działanie,
otrzymuje tymczasowo wyższy priorytet.
 Za każdym razem, gdy dyspozytor będzie wybierać
dany proces, priorytet tego procesu będzie
zmniejszany aż do uzyskania priorytetu
podstawowego.
 Podwyższanie priorytetów jest wykorzystywane do
osiągnięcia dobrej pracy interakcyjnej kosztem tych
procesów, które wykonują mało pracy interakcyjnej
lub w ogóle nie są interakcyjne

81
Q

BUDOWA STRUKTURY SEMAFORA

A

 Semafory mogą być nazwane lub nie.
 Kolejka semafora to lista procesów niewykonywalnych, które wykonały
operację czekaj na semaforze = 0.
 Organizacja kolejki zawiera opis organizacji kolejki lub wskaźnik do
programu dołączającego procesy do kolejki i usuwające je z niej.
 Bit użycia mówi, czy w danej chwili są wykonywane operacje na
semaforze (jest w użyciu). Służy do zapewnienia niepodzielności
operacji czekaj i sygnalizuj.

82
Q

NIEPODZIELNOŚĆ OPERACJI
semafora

A

 W dowolnej chwili tylko jeden proces może
wykonywać operacje czekaj i sygnalizuj na
tym samym semaforze.
 Mechanizm ten jest realizowany przez
operacje zajmij i uwolnij.

83
Q

OPERACJE ZAJMIJ I UWOLNIJ
na czym polega

A

 Operacja zajmij:
 Pewne miejsce w pamięci jest przeznaczane na sygnalizator
(bit użycia).
 Sprawdza wartość sygnalizatora i ustawia ją na zero (rozkaz
„sprawdź i ustaw” (BTR)).
 Jeśli wartość sygnalizatora była różna od zera, proces może
być wykonywany; w przeciwnym wypadku rozkaz „sprawdź i
ustaw” jest wykonywany w pętli aż do zmiany wartości
sygnalizatora przez inny proces.
 W innej metodzie występuje zamiana wartości sygnalizatora z
komórką pamięci, w której wcześniej umieszczono zero
(rozkaz swap (XCHG)).
 Operacja uwolnij:
 Nadaje sygnalizatorowi wartość różną od zera.

84
Q

AKTYWNE CZEKANIE
kiedy? co to?

A

 Jest wykonywane wewnątrz operacji zajmij.
 Jest pętlą, w której podejmowane są próby
wykonania operacji aż do chwili zmiany
wartości sygnalizatora.

85
Q

Zbiór rozkazów uprzywilejowanych:
lista

A

 włączanie i wyłączanie przerwań
 przełączanie procesora między procesami
 obsługa rejestrów pamięci wirtualnej
 operacje wejścia-wyjścia
 sterowanie procesorem

86
Q

Przełączenie z trybu użytkownika do trybu
nadzorcy:
kiedy?

A

 odwołanie do nadzorcy(systemu) - w celu
wykonania rozkazu uprzywilejowanego lub
funkcji systemowej
 przerwanie
 błąd w procesie użytkownika
 próba wykonania rozkazu uprzywilejowanego

87
Q

TWORZENIE ADRESÓW

A

Kompilacja
 adres umieszczenia
kodu jest znany w
trakcie kompilacj
Ładowanie
 adres jest znany w
trakcie ładowania
Wykonanie
 adres może się
zmieniać w trakcie
wykonywania procesu

88
Q

PAMIĘĆ WIRTUALNA
co zapewnia?

A

zapewnia odwzorowanie
przestrzeni adresów na
przestrzeń pamięci
logiczne na fizyczne
logiczną strukture

89
Q

Pamięć wirtualna może być implementowana
w formie:

A

 Rejestru bazowego i granicznego
 Stronicowania
 Segmentacji
 Segmentacji ze stronicowaniem

90
Q

REJESTR BAZOWY I GRANICZNY
na czym polega?
co jest ładowane gdzie?

A

 A = f(a) = RB + a
 Gdy proces ładowany jest do pamięci, wtedy
najmniejszy adres zajęty przez proces jest
umieszczany w rejestrze bazowym i wszystkie adresy
w programie traktowane są jako adresy względne w
odniesieniu do adresu bazowego.
 Odwzorowanie polega zatem na dodawaniu adresu
użytego przez proces do adresu bazowego.
 Przemieszczanie można uzyskać przez przepisanie
bloku pamięci i wpisanie nowego adresu do rejestru
bazowego.

Ochronę pamięci zapewnia rejestr graniczny

91
Q

FRAGMENTACJA zewnętrzna
co to?
kiedy?
co się robi kiedy występuje?

A

 W miarę ładowania i usuwania procesów z
pamięci operacyjnej pamięć ulega
„rozdrobnieniu”. Zjawisko to nazywane jest to
fragmentacją zewnętrzną.
 W pamięci powstają „dziury”, po zwolnionych
blokach, które nie zostały w pełni zapełnione
przez bloki innych procesów.

 Upakowanie pamięci jest stosowane, gdy pojawia
znaczna fragmentacja zewnętrzna pamięci.
 Bloki pamięci przenoszone są tak, aby pozostało w
niej najmniej „dziur” lub nie było ich wcale

92
Q

STRONICOWANIE
na co dzielona przestrzeń adresów?
na co dzielona przestrzeń pamięci?
gdzie strony?
jaka tablica?
jaka fragmentacja?

A

Przestrzeń adresów
jest dzielona na
równe strony (2n najczęściej 4 KB)

Przestrzeń pamięci
dzielona jest na
ramki stron

Strony z przestrzeni
adresów
umieszczane są w
ramkach stron
przestrzeni pamięci.

Tablica deskryptorów stron

fragmentacja wewnętrzna, brak zewnętrznej

93
Q

STRONICOWANIE
Pamięć wirtualna widziana przez
system składa się z:
Korzystanie z pamięci
wirtualnej:

A

 pamięci operacyjnej
 pamięci pomocniczej (obszaru
wymiany) w postaci:
 pliku wymiany
 partycji wymiany

Korzystanie z pamięci
wirtualnej:
 odesłanie strony z
pamięci operacyjnej
do pomocniczej
 i pobranie jej z
powrotem z pamięci
pomocniczej do
operacyjnej w inne
miejsce
Korzystanie z pamięci
wirtualnej - wymiana:
 odesłanie strony z
pamięci operacyjnej
do pomocniczej
 pobranie innej z
pamięci pomocniczej
do operacyjnej w jej
miejsce

94
Q

STRONICOWANIE
Zadania:

A

 Wykonywanie operacji odwzorowywania
adresów, czyli określania, do której ramki
odnosi się adres generowany przez proces.
 Przesyłanie stron z pamięci pomocniczej do
pamięci głównej oraz odsyłanie
nieużywanych już stron z powrotem do
pamięci pomocniczej.

95
Q

Pamięć asocjacyjna
inna nazwa?
czym adresowana?
do czego?
w co wbudowana?

A

 bardzo szybka pamięć wbudowana w
procesor
 adresowana zawartością
 służąca do przechowywania ostatnio
używanych deskryptorów stron (lub
segmentów)

nazwy TLB, skojarzeniowa

96
Q

PAMIĘĆ PODRĘCZNA
składa się z poziomów
inne nazwy?
co przechowuje?
na co pozwala?
w co wbudowana?

A

 Nazywana również notatnikową lub cache
 Przechowuje ostatnio używane fragmenty
pamięci operacyjnej (kilkadziesiąt bajtów) i ich
adresy
 Procesor nie musi odwoływać się do pamięci
operacyjnej, jeśli właściwy fragment jest w
pamięci notatnikowej
 Bardzo szybka
 Najczęściej wbudowana do wnętrza procesora

Może składać się z kilku poziomów:
 poziom 1 – do kilkudziesięciu kilobajtów
 może występować w architekturze Harvard

97
Q

STRONICOWANIE
tablice

A

Haszowana tablica stron – najczęściej dla systemów 64-bitowych. Z powiązanej listy
występującej w tablicy wybiera się element dopasowany do strony p.

Odmianą haszowanej tablicy stron jest tablica
stron grupowanych - Każdy wpis odnosi się do np. kilkunastu stron

Odwrócona tablica stron - jedna tablica dla całego systemu - UltraSARC, PowerPC. Często jest haszowana.

98
Q

Strony dzielone
na czym to polega?

A

część stron może być dzielona
przez kilka procesów np. strony zawierające kod
(wznawialny - czysty) programu lub stałe.

99
Q

Stronicowanie na żądanie
na czym polega?
przebieg?

A

– do pamięci
sprowadzanie są tylko niektóre strony procesu
(leniwa wymiana), pozostałe są pobierane tylko
wówczas, gdy są potrzebne.
Przebieg:
 błąd braku strony
 sprowadzenie brakującej strony do wolnej
ramki
 uaktualnienie tablicy stron
 wznowienie procesu

100
Q

SEGMENTACJA
na czym polega?

A

Segmentacja polega na
podziale pamięci
przydzielonej procesowi
na niezależne
fragmenty zwane
segmentami.

Odzwierciedla ona
organizację logiczną
pamięci.

Segmenty mogą występować w kilku tablicach
deskryptorów segmentów, stają się wówczas
segmentami dzielonymi.

101
Q

SEGMENTACJA
Mogą występować dwie tablice deskryptorów
segmentów:
jakie?
dla kogo?

A

globalna
dla systemu operacyjnego
lokalna
dla każdego procesu
informacja o niej znajduje się w tablicy globalnej

102
Q

SEGMENTACJA A STRONICOWANIE
cele, rozmiar, w jaki się odbywa, co zapewnia

A

 Celem segmentacji jest logiczny podział pamięci,
natomiast stronicowania fizyczny.
 Strony mają ustalony rozmiar, segmenty mogą być
dowolne.
 Stronicowanie odbywa się w sposób sprzętowy i
przekroczenie zakresu strony powoduje przejście do
następnej, w segmentacji podział adresu jest logiczny
i nie powoduje przejścia do następnego segmentu.
 Segmentacja zapewnia poziomy ochrony kodu i
danych.

103
Q

SEGMENTACJA ZE STONICOWANIEM
na czym polega?
co eliminuje?

A

 Segmentacja ze stronicowaniem to połączenie cech
dwóch metod implementacji pamięci wirtualnej
(segmentacji i stronicowania).
 Polega ona na stronicowaniu segmentów. Pozwala to
wyeliminować fragmentację zewnętrzną przy
uproszczeniu przydziału:
 każda pusta ramka może być użyta na potrzebną stronę.
 W takiej organizacji pamięci każdy segment może
posiadać własną tablicę stron. Przy czym nie musi
ona być pełna, a zawiera tyle stron ile jest potrzebne
segmentowi.

104
Q

Strategie przydziału pamięci dzieli się na:

A

 Przydział ciągły – podzielenie pamięci na obszary.
Jeden obszar może zajmować dokładnie jeden
proces.
 Stopień wieloprogramowości ograniczony przez
liczbę obszarów.
 Przydział ciągły nie jest dobrym rozwiązaniem ze
względu na fragmentację wynikającą z pozostałych
po procesach dziur.

=======================================

 strategie rozmieszczenia
służą do określania miejsca w pamięci
głównej, do którego mają być załadowane
dane lub kod, to znaczy do wybierania
podzbioru niezajętych obszarów

 strategie wymiany
 służą do określenia bloków, które można
usunąć z pamięci operacyjnej, aby powstały
w niej wolne obszary

 strategie pobierania
 służą do określania momentu, w którym bloki
mają być załadowane do pamięci
operacyjnej z obszaru wymiany

105
Q

STRATEGIE PRZYDZIAŁU PAMIĘCI
 Przydział ciągły

na czym polega?
jaki stopień wileoprogramowości?
jaka fragmentacja?

A

 Przydział ciągły – podzielenie pamięci na obszary.
Jeden obszar może zajmować dokładnie jeden
proces.
 Stopień wieloprogramowości ograniczony przez
liczbę obszarów.
 Przydział ciągły nie jest dobrym rozwiązaniem ze
względu na fragmentację wynikającą z pozostałych
po procesach dziur.

106
Q

ROZMIESZCZENIE BEZ STRONICOWANIA
co robi system?
strategie rozmieszczania

A

 System prowadzi ewidencję dziur,
wiadomo ile jest dziur i jakie są duże
 Wyróżniamy następujące strategie
rozmieszczenia:
 najlepsze dopasowanie
 dziury są uporządkowane rosnąco pod
względem rozmiaru
 system szuka bloku najmniejszego
spełniającego warunek rozmiaru

 najgorsze dopasowanie
 dziury są uporządkowane malejąco pod
względem rozmiaru
 system umieszcza proces w pierwszej
dziurze na liście

 pierwsze dopasowanie
 dziury są uporządkowane rosnąco pod
względem ich adresów bazowych
 system przydziela pierwszą z możliwych
dziur

 algorytm bliźniaków
 Rozmiar dziur jest zawsze = 2n
 Gdy potrzebna ilość pamięci jest mniejsza niż połowa
dziury, system dzieli wybraną dziurę na dwie równe
części do momentu aż dziura będzie odpowiednia.
Blok umieszczany w powstałej dziurze.
 Jeśli nie ma wystarczająco dużej dziury system łączy
dwie takie same sąsiadujące dziury w jedną dwa razy
większą.

107
Q

ROZMIESZCZENIE ZE STRONICOWANIEM
co występuje?
jaka fragmentacja?

A

 Nie ma potrzeby przechowywania listy dziur
 Występuje lista wolnych stron
 Nie powoduje fragmentacji zewnętrznej
 Występuje fragmentacja wewnętrzna

108
Q

WYMIANA ZE STRONICOWANIEM
czego żąda proces?
jaka strona jest odsyłana i w jakim przypadku?

A

Proces żąda dostępu do strony w obszarze
wymiany. W przypadku braku wolnych ramek
na dysk jest odsyłana strona:
 najdawniej używana
 w deskryptorze strony musi być zapisany czas
odwołania do strony
 stosowanie tego algorytmu jest obciążone kosztami
zapisywania czasu odwołań do wszystkich stron

 najmniej używana
 w tym algorytmie należy odnotowywać częstość
użycia strony
 wadą tej metody jest fakt, że ostatnio załadowana
strona może być nierozważnie wymieniona
 można zabronić wymiany stron załadowanych
podczas określonego przedziału czasu

 najdawniej załadowana
 algorytm ten wymaga zapisu ciągu stron
ładowanych do pamięci, co pozwala wskazać
najdawniej załadowane strony
 pomija się w nim fakt, że najwięcej odniesień może
być do strony, która najdłużej znajduje się w
pamięci

109
Q

WYMIANA BEZ STRONICOWANIA

A

Wymieniane segmenty posiadają różny rozmiar, zależy
od tego sposób wymiany
 jeżeli do pamięci ma być załadowany mały segment
wystarczy odesłać tylko mały segment
 jeśli segment jest duży, to trzeba odesłać duży
segment lub kilka mniejszych
 może wystąpić konieczność upakowania pamięci

110
Q

WYMIANA BEZ STRONICOWANIA
jak działa?
jaki algorytm można zastosowac?

A

 Najprostszy algorytm polega na zastąpieniu
jednego segmentu oraz sąsiedniej dziury, których
łączny obszar wystarczy do pomieszczenia nowego
segmentu
 Gdy takich segmentów jest kilka można
zastosować algorytm najdawniej załadowanych,
bądź najmniej używanych segmentów

111
Q

Pobieranie na żądanie:
jaki błąd i co później?

A

 wystąpienie błędu braku bloku (segmentu lub
strony) generuje żądanie pobrania bloku, a
strategie rozmieszczania służą do przydziału
pamięci dla nowego bloku
 w systemach bez stronicowania przesyła się bloki
najczęściej na żądanie

112
Q

Pobieranie przewidujące:

A

 system może pobierać nowe bloki w oparciu o:
 znajomość konstrukcji programu
 wnioskowanie z dotychczasowego działania procesu

113
Q

ZASADA LOKALNOŚCI

A

 Wiele programów wykazuje cechę
zwaną działaniem w kontekście.
 Oznacza to, że w dowolnie małych
przedziałach czasu program działa
wewnątrz konkretnego modułu
logicznego.
 Wykonuje on rozkazy należące do
jednej procedury lub pobiera dane
z jednego obszaru.
 Odniesienia do pamięci wydają się
grupować wewnątrz małych obszarów
przestrzeni adresów
 lokalność odniesień jest jeszcze większa w
przypadku częstego występowania pętli
 Do zmiany tych obszarów dochodzi tylko
okresowo.
 Procesy chwilowo wykonują się lokalnie

114
Q

SZAMOTANIE
co to?
jak ograniczyc?

A

Szamotanie to duża aktywność stronicowania,
system spędza więcej czasu na stronicowaniu
(wymianie) niż na wykonaniu procesów

 Gdy proces nie ma wystarczającej ilości ramek, szybko
może nastąpić brak strony.
 Stronę brakującą system sprowadza do pamięci
operacyjnej, wymieniając z inną stroną.
 Może dojść do sytuacji, w której wymieniona strona (już
nieobecna w pamięci) jest potrzebna dla aktywnego
procesu, następuje ponowne jej sprowadzenie do
pamięci.
 W rezultacie w systemie będą następowały po sobie
kolejne braki stron i ich wymiany.
 Procesy będą wskazywać braki stron, system dokona
wymiany stron, po czym sprowadzi je z powrotem.

 Efekt szamotania można ograniczyć za
pomocą lokalnego algorytmu
zastępowania
 Przy zastępowaniu lokalnym, gdy jakiś proces zaczyna się
szamotać wówczas nie wolno mu zabierać ramek innego
procesu i doprowadzać go także do szamotania
 Aby zapobiec szamotaniu należy dać
procesowi tyle ramek, ile potrzebuje.

115
Q

Metodą mierzenia szamotania jest mierzenie częstości
braków stron:

A

 ustala się górną i dolną granicę pożądanego poziomu
braków stron
 jeśli proces przekracza górną granicę, to dostaje
dodatkową ramkę
 jeśli częstość występowania braków stron spada poniżej
dolnej granicy to usuwa się ramkę procesu

116
Q

SZAMOTANIE – MODEL STREFOWY

A

W trakcie wykonywania proces przechodzi z jednej
strefy do innej.
 Strefa to zbiór stron pozostających we wspólnym
użyciu.
 Program składa się z wielu stref, które mogą na
siebie zachodzić.
 Procesowi przydziela tyle ramek, aby mógł w nich
zmieścić swoją bieżącą strefę.
 Gdy przydzielone jest mniej ramek, niż wynosi
rozmiar bieżącej strefy, wówczas proces zaczyna się
szamotać.

117
Q

SZAMOTANIE – MODEL ZBIORU ROBOCZEGO

A

 Opiera się na założeniu, że program ma
charakterystykę strefową.
 Parametr delta definiuje okno zbioru roboczego.
 Za zbiór roboczy przyjmuje się zbiór stron, do
których nastąpiło delta ostatnich odwołań.

 Jeśli zbiór roboczy procesu znajduje się w
pamięci, wówczas proces wykonuje się bez
szamotania.
 Strona aktywnie używana znajduje się w zbiorze
roboczym.
 Gdy strona przestanie być używana, wypada ze
zbioru roboczego po delta jednostkach czasu
liczonych od ostatniego odwołania do niej.

118
Q

Dokładność zbioru roboczego zależy od wyboru parametru delta:

A

 Jeśli jest za mały – nie obejmie całego zbioru
 Jeśli za duży, to może zachodzić na kilka stref programu
 W skrajnym przypadku, gdy delta jest nieskończenie duże,
zbiorem roboczym staje się zbiór stron, z którymi proces
kontaktował się w trakcie działania.

119
Q

URZĄDZENIA WEJŚCIA-WYJŚCIA
najczęściej posiadają rejestry

A

 stanu
 sterowania
 danych wejściowych
 danych wyjściowych

120
Q

REALIZACJE OPERACJI WEJŚCIA-WYJŚCIA

A

 Programowe wejście-wyjście - odpytywanie
 procesor zleca obsługę i odpytuje urządzenie do jej
zakończenia
 Operacje wejścia-wyjścia sterowanie
przerwaniami
 kolejne dane są transmitowane w kolejnych
przerwaniach
 Bezpośredni dostęp do pamięci (DMA)
 procesor zleca wykonanie transmisji kończącej się
przerwaniem

121
Q

Urządzenia wirtualne
jak nazywane?
po co?
jak się odwołać?

A

 nazywane strumieniami, plikami, zbiorami
danych
 poprzez nie następuje komunikacja z
urządzeniami fizycznymi
 odwołując się do urządzenia najpierw należy
uzyskać dostęp do niego od systemu, a po
zakończeniu użytkowania należy je zwolnić.
 Programy działają na wirtualnych urządzeniach (strumieniach)
zamiast na rzeczywistych.

122
Q

PODPROGRAMY OBSŁUGI URZĄDZEŃ
cecha, zadania

A

 Programy te muszą być wielowejściowe, tzn.
wiele procesów może się do nich odwoływać.
 Ich podstawowe zadania to:
 tworzenie bloków zamówień wejścia – wyjścia,
 informowanie procesu obsługi, że został dla niego
przygotowany blok zamówień.

123
Q

Proces użytkownika zgłasza zamówienia do systemu korzystając z
funkcji:
jak przebiega?
jaki problem ją opisuje?

A

 Procedura OPWEWY jest wielowejściowa (może być wywołana
przez kilka procesów naraz).
Przebiega ona w następujących krokach:
 odszukanie urządzenia w deskryptorze procesu
 sprawdzenie parametrów wywołania procedury z opisem
urządzenia
 zainicjowanie obsługi urządzenia
 utworzenie bloku zamówień wejścia-wyjścia (BZWEWY) i dodanie
go do kolejki zamówień urządzenia
 wysłanie sygnału do procesu obsługi urządzenia informującego o
nowym zamówieniu
 sygnalizuj (zamówienie niezałatwione)

PRODUCENT-KONSUMENT

124
Q

PROCESY OBSŁUGI URZĄDZEŃ
czym się zajmuje?

A

 Obsługą zamówień umieszczonych w kolejce
urządzenia oraz powiadamianiem procesów nadawców o wykonaniu operacji we/wy zajmuje
się proces obsługi urządzeń.
 Każde urządzenie posiada osobny proces,
jednak podobieństwa pozwalają użyć wspólnych
programów.
 Różnice spowodowane są odmiennymi cechami
konkretnych urządzeń.

125
Q

PODPROGRAM OBSŁUGI PRZERWANIA
dla urządzeń

A

Transmisja przez kanał kończy się
przerwaniem:
POP:
lokalizacja deskryptora urządzenia
sygnalizuj(operacja wykonana)

126
Q

OBSŁUGA WEJŚCIA-WYJŚCIA
może odbywać się na dwa sposoby:

A

może odbywać się na dwa sposoby:
 proces zamawiający może wykonywać się równolegle z
operacją we/wy
 sam musi zadbać o własne wstrzymanie przed odwołaniem
się do informacji pochodzącej z wywołanej operacji; musi on
wykryć zakończenie operacji we/wy
 procedura we/wy, będąca częścią systemu operacyjnego,
wstrzymuje proces do zakończenia operacji we/wy
 semafor zamówienie załatwione, będący semaforem lokalnym
powoduje niezbędne opóźnienie; programista aplikacji nie
ponosi odpowiedzialności za wykrycie zakończenia operacji
we/wy, ale traci możliwość szybszego wykonywania procesu.

127
Q

BUFOROWANIE WEJŚCIA-WYJŚCIA można podzielić na:

A

Buforowanie można podzielić na:
 buforowanie wejścia
 buforowanie wyjścia
 buforowanie podwójne
+ dwa bufory pracują na zmianę
 buforowanie wielokrotne
+ usuwa zatory w dostępie do urządzeń we/wy

128
Q

URZĄDZENIA PLIKOWE
dostęp

A

URZĄDZENIA PLIKOWE
 Założenie, iż do zapisu ze strumienia wystarczy jedynie
identyfikator urządzenia docelowego, nie jest spełnione w
przypadku urządzeń o dostępie swobodnym
 dysk twardy, płyta optyczna.
 W takiej sytuacji, niezbędne jest również podanie
obszaru, gdzie dany strumień się znajduje lub skąd ma
zostać pobrany.
 W tego rodzaju nośnikach każdy obszar nazywany jest
plikiem
 posiada on dowolny rozmiar oraz opisującą go jednoznaczną
nazwę.

129
Q

SPOOLER
zadania
Działanie spoolera:

A

równomierne rozłożenie zamówień i przeciwdziałanie
powstawaniu wąskich gardeł.

Działanie spoolera:
 sprawdzenie czy jest coś w kolejce
 wybranie pliku i otwarcie go
 wykonywanie transmisji do urządzenia do
czasu napotkania końca pliku
 zasygnalizowanie zakończenia
przetwarzania pliku

Czyni zasób niepodzielny podzielnym.

 Nie można go stosować w systemach czasu
rzeczywistego (operacje we/wy muszą w tym
przypadku być wykonywane natychmiast).

130
Q

MACIERZE DYSKOWE – RAID0

A

 Przestrzeń dyskowa podzielona jest na paski.
 Paski są umieszczane cyklicznie na kolejnych dyskach.
 Zwiększenie szybkości dostępu do dysku
 Brak zabezpieczenia danych na wypadek awarii dysku

131
Q

MACIERZE DYSKOWE – RAID1

A

 Przestrzeń dyskowa podzielona jest na paski.
 Paski są kopiowane na kolejnych dyskach (kopia lustrzana). mirroring lub duplexing
 Zwiększenie szybkości odczytu dostępu do dysku.
 Zabezpieczenie danych na wypadek awarii dowolnego dysku.
 Połowa pojemności dostępna dla systemu.

132
Q

MACIERZE DYSKOWE – RAID2

A

 Paski są bardzo małe.
 Stosuje się kod nadmiarowy (korygujący) (f)
pozwalający skorygować jeden błąd i wykryć
drugi.

133
Q

MACIERZE DYSKOWE – RAID3

A

 Parzystość z przeplotem bitów.
 Paski są bardzo małe.
 Błędy wykrywają same dyski na podstawie sum CRC.
 Stosuje się parzystość pozwalającą skorygować błąd na jednym
dysku.

134
Q

MACIERZE DYSKOWE – RAID4

A

 Parzystość z przeplotem bloków.
 Paski są wielkości bloków.
 Błędy wykrywają same dyski na podstawie sum CRC.
 Stosuje się parzystość pozwalającą skorygować błąd na jednym
dysku.

135
Q

MACIERZE DYSKOWE – RAID5

A

 Parzystość rozproszona z przeplotem bloków.
 Paski są wielkości bloków.
 Błędy wykrywają same dyski na podstawie sum CRC.
 Stosuje się parzystość pozwalającą skorygować błąd na jednym
dysku.

136
Q

MACIERZE DYSKOWE – RAID6

A

 Parzystość rozproszona z przeplotem bloków i podwójną
nadmiarowością.
 Paski są wielkości bloków.
 Błędy wykrywają same dyski na podstawie sum CRC.
 Stosuje się dwie funkcje pozwalające skorygować błąd na dwu dyskach.

137
Q

RAID 0+1
RAID 1+0
RAID 5+0
RAID 5+1

A

pierwsze pracuje w drugim

RAID 0+1
Lustrzanie pracują dwa zestawy dysków w RAID0 (dwa RAID0 w RAID1)
RAID 1+0
Dwa zestawy dysków lustrzanych pracują w RAID0 (dwa RAID1 w RAID0)

 RAID 5+0 - Dwa zestawy RAID5 pracują w
RAID0
 RAID 5+1 - Dwa zestawy RAID5 pracują w
RAID1

138
Q

ADRESACJA SEKTORÓW
podział

A

 Adresacja trójwymiarowa: CHS
 Adresacja liniowa: LBA

139
Q

Plik jest zbiorem danych traktowanych jak
pewna całość;
czym jest?
gdzie zapisywany?
jaki format?
metody dostępu

A

 jest jednostką logiczną dostępu do danych,
 system wykonuje na nim pewne operacje,
 zapisywany jest w blokach nośnika (512-
4096).

 Format pliku może być:
 dokładnie określony
 pliki baz danych
 swobodny
 pliki tekstowe

METODY DOSTĘPU
 dostęp sekwencyjny
 dostęp bezpośredni (swobodny)
 dostęp indeksowy
 wymaga dodatkowego pliku indeksu

140
Q

KATALOGI PLIKÓW
co to i co zawiera?
podział

A

to tabele zawierające wpisy z informacjami o
plikach:
 nazwa pliku
 adres pliku w pamięci pomocniczej
 typ pliku (tekstowy, binarny)
 atrybuty - kontrola dostępu
 inf. administracyjne - np. data i czas

 jednopoziomowy
 główny, użytkownika
 wielopoziomowy

141
Q

Pliki w systemie wielodostępnym mogą być
współużytkowane. Trzeba wprowadzić metody
ochrony danych przed niepowołanym
dostępem:

A

 lista kontroli dostępu
 dowiązania
 maska ochrony pliku
Maska ochrony pliku może określać prawa dostępu dla
różnych klas użytkowników:
 O- właściciel (owner)
 G- członkowie grupy lub partnerzy (group)
 W- inni (world)
Typowe prawa dostępu:
 R- prawo czytania (read)
 W- prawo pisania (write)
 E/X- prawo wykonywania (execute)
 D- prawo kasowania (delete)

142
Q

MASKA OCHRONY PLIKU

A

Właściciel może określić maskę ochrony

System rozpoznaje użytkownika po kodzie
identyfikacji użytkownika, sprawdza, czy jest on
właścicielem oraz czy należy do określonej
grupy następnie nadaje mu prawa do pliku.

143
Q

LISTA KONTROLI DOSTĘPU
do czego dołączona?
co zawiera?
porównanie względem maski
gdzie występuje?

A

 jest dołączona do pliku lub katalogu i zawiera
pełną informację o tym, którzy użytkownicy mają
dostęp (i jaki) do określonego pliku.

 jest bardziej elastyczna niż maska ochrony
pliku,
 występuje w systemach VMS oraz Windows
NT+,
 powoduje wolniejsze otwieranie pliku, gdyż
trzeba sprawdzić wszystkie pozycje na liście.

144
Q

DOWIĄZANIA
na czym polegają?
podział

A

DOWIĄZANIA
polegają na umożliwieniu odwoływania się do
współdzielonego pliku z różnych katalogów

DOWIĄZANIA TRWAŁE
zostaje dodana struktura i-węzła

DOWIĄZANIA SYMBOLICZNE
wskazana zostaje nazwa pliku

145
Q

MBR
co to?
gdzie?
co robi?

A

MBR – MASTER BOOT RECORD
 BIOS ładuje MBR pod adres 0000:7c00h
 uruchamia kod rozruchowy
 kod ten ładuje BS aktywnej partycji – zawierający program ładujący (booloader)
 bootloader wczytuje system operacyjny

146
Q

GPT

A

GUID PARTITION TABLE - GPT
 Nagłówek GPT zawiera
 liczbę pozycji w tablicy partycji (zwyczajowo 128)
 rozmiar pozycji w tablicy partycji
 położenie zapasowej kopii opisu tablicy partycji
 położenie tablicy partycji
 unikatowy identyfikator dysku
 sumy kontrolne.
 Opis partycji zawiera
 typ partycji
 unikatowy identyfikator
 początkowy i końcowy numer LBA
 atrybuty
 nazwę
 Obsługuje dyski > 2 TB

147
Q

Pamięć pomocnicza podzielona jest na bloki.
Występują następujące techniki dynamicznego
przydzielania bloków pamięci pomocniczej dla
plików:

A

 system plików zwartych (przydział ciągły)
 łańcuch powiązanych bloków (przydział listowy)
 mapa plików (tablica przydziału plików)
 bloki indeksów (przydział indeksowy)

148
Q

ŁAŃCUCH POWIĄZANYCH BLOKÓW
(PRZYDZIAŁ LISTOWY)

A

 Kilka bajtów każdego bloku w pliku służy jako
wskaźnik do następnego bloku. Ostatni blok
zawiera wskaźnik pusty (na ogół 0).
 Pozycja w katalogu zawiera informacje o
pierwszym (ostatnim) bloku pliku.
 Dostęp do pliku jest z sekwencyjny, ponieważ
do każdego bloku można jedynie dotrzeć
posuwając się w dół wzdłuż łańcucha.

149
Q

MAPA PLIKÓW (TABLICA PRZYDZIAŁU PLIKÓW)

A

 Stan dysku jest zapisywany w mapie plików,
nazywanej tablicą przydziału plików, w której
każdy blok na dysku jest reprezentowany przez
jeden wpis w mapie.
 Pozycja pliku w katalogu użytkownika wskazuje
na numer pierwszego bloku pliku; element mapy
o tym samym numerze wskazuje na kolejny
element mapy/blok pliku itd. Ostatni blok w pliku
jest reprezentowany przez wskaźnik pusty.

 Zajętość obszaru pamięci pomocniczej zależy od
rozmiarów elementów mapy (12-32bity) oraz wielkości
pamięci pomocniczej.
 W elementach mapy plików mogą się znajdować
dodatkowe informacje nadmiarowe takie jak:
 numer identyfikacyjny pliku, który może się przydać do odtwarzania
pliku po uszkodzeniu systemu.
 Dostęp do elementów mapy plików jest sekwencyjny, co
zwalnia dostęp do pliku.
 W celu ułatwienia rozszerzania i kasowania pliku, w
pozycjach katalogu użytkownika można umieścić
wskaźnik do ostatniego elementu mapy.

150
Q

BLOKI INDEKSÓW (PRZYDZIAŁ INDEKSOWY)

A

 Wskaźniki dowiązań do każdego pliku są
pamiętane w odrębnych blokach indeksów na
dysku.
 Dla dużego pliku trzeba przeznaczyć kilka
bloków indeksów powiązanych w łańcuch,
każdy blok indeksów musi mieć wskaźnik do
następnego bloku.
 Pozycja w katalogu wskazuje na pierwszy blok
w łańcuchu bloków indeksów

 Największą zaletą bloków indeksów jest to, że
dostęp do pliku nie musi być sekwencyjny, ale
swobodny (określenie nazwy pliku i odległości w
bloku indeksów)
 Uszkodzenie bloków indeksów powoduje poważną
utratę danych, aby do tego nie dopuścić można
przechowywać się kilka kopii bloków indeksów w
różnych obszarach dysku;
 duża strata miejsca lecz opłacalne ze względu na
bezpieczeństwo danych.

151
Q

System musi wiedzieć, które bloki są wolne. W tym celu stosuje
jedną z metod:

A

 wektor bitowy/mapa bitowa  każdy bit mapy informuje o zajętości danego bloku
 lista powiązana – jak w przydziale listowym  system wskazuje tylko na pierwszy wolny blok, a ten na następny
 grupowanie  pierwszy wolny blok zawiera adresy innych wolnych, z których ostatni
zawiera wskazania na kolejne
 zliczanie  system pamięta numer pierwszego wolnego bloku i liczbę wolnych
następujących po nim

152
Q

SYSTEMY PLIKÓW ZE STRUKTURĄ DZIENNIKA
inne nazwy
jak działa?
co w przypadku awarii?
przykłady

A

 nazywane również:
transakcyjnymi systemami plików ze strukturą dziennika
lub systemami plików z księgowaniem (kronikowaniem);
 wszystkie zmiany zapisuje się najpierw w dzienniku, po
ich zatwierdzeniu system aktualizuje struktury systemu
plików i usuwa wykonaną transakcję z dziennika;
 w przypadku awarii transakcje można dokończyć na
podstawie dziennika, tracone są wyłącznie dane nie
zatwierdzone;
 systemy z księgowaniem:  NTFS, ext3, JFS, XFS, ReiserFS, Reiser4, BeFS

153
Q

OGÓLNA BUDOWA PARTYCJI FAT

A

 Opis systemu znajduje się w BS
 Elementy mapy plików mogą być 12, 16 lub 32 bitowe
 Podkatalogi mają postać plików (niewidocznych jako pliki) i mogą
znajdować się w dowolnym miejscu i mieć dowolny rozmiar.

154
Q

OGÓLNA BUDOWA PARTYCJI NTFS

A

 MFT – Master File Table zajmuje 12.5, 25, 37.5 lub 50% partycji
 W MFT znajdują się 1 KB wpisy opisujące pliki i katalogi

małe pliki jak atrybut

155
Q

zawartosc i struktura mft

A

zawartosc mft
Pierwsze 24 wpisy są
zarezerwowane dla systemu na np.:
kopię MFT, mapę bitową wolnych
bloków, katalog główny, definicję
atrybutów i zabezpieczeń

STRUKTURA WPISU DO MFT
 Ilość atrybutów może być różna.
 Rozmiar atrybutów może być różny.

156
Q

SPOSÓB ADRESOWANIA KLASTRÓW W NTFS

A

 LCN (Logical Cluster Numbers) – numer logiczny
klastra na dysku
 VCN (Virtual Cluster Numbers) – numer wirtualny
klastra w pliku.
 Mapowanie klastrów VCN na LCN (1720, 1721,
1722,1723,1724, 1975,1976 i 1977) odbywa się
zgodnie z tabelą zawartą we wpisie MFT

157
Q

OGÓLNA BUDOWA PARTYCJI EXT2/EXT3

A

 Cała partycja podzielona jest na grupy bloków o jednakowym rozmiarze
(z wyjątkiem ostatniej)
 Wszystkie grupy zawierają identyczny superblok i tablice deskryptorów grup.
 Każda grupa posiada własne bitmapy bloków dyskowych (danej grupy) i i- węzłów (tej grupy) oraz tablicę i-węzłów

158
Q

KATALOGI PARTYCJI EXT2/EXT3

A

 Wpisy zajmują różne ilości miejsca.
 Wskazują na następny wpis.
 Ostatni w katalogu wskazuje na
koniec bloku.

159
Q

SYSTEM NFS (NETWORK FILE SYSTEM)

A

 Sieciowy system plików umożliwia korzystanie z zasobów plikowych innych
komputerów jak z zasobów lokalnych.
 Realizowany jako system klient serwer.
 Zdalny zasób musi być udostępniony.
 Montuje się go w lokalnym katalogu.
 Niektóre systemy zezwalają na montowanie kaskadowe.
 Protokół montowania służy do nawiązania połączenia między klientem a serwerem. Zwraca uchwyt
plikowy.
 Protokół NFS dostarcza zbioru wywołań procedur zdalnych do operacji
plikowych:
 szukanie pliku, czytanie katalogu, manipulowanie dowiązaniami i katalogami, dostęp do atrybutów
pliku, czytanie i pisanie, otwieranie i zamykanie pliku.
 System przeszukuje ścieżkę dostępu do pliku i odnajduje go we właściwych
zasobach (lokalnych lub zdalnych).

160
Q

PROCEDURA OTWIERANIA PLIKU

A

 wyszukiwanie nazwy pliku
 sprawdzenie, czy proces chcący otworzyć plik ma do
niego prawo w określonym trybie
 sprawdzenie, czy plik jest już otwarty
 ustalenie urządzenia, na którym znajduje się plik oraz
jego lokalizacji
 utworzenie deskryptora pliku
 deskryptor centralny
 deskryptor lokalny

161
Q

OPERACJA ZAMKNIĘCIA PLIKU

A

 Usunięcie deskryptora lokalnego.
 Zmniejszenie licznika użycia pliku o jeden.
 Jeżeli licznik użycia jest równy zero, to
następuje usunięcie deskryptora
centralnego

162
Q

PLANOWANIE DOSTĘPU DO DYSKU
 FCFS
 SSTF
 SCAN
 C-SCAN
 LOOK
 C-LOOK

A

FCFS (FIRST-COME, FIRST-SERVED)
 Pierwszy przyszedł pierwszy zostanie
obsłużony (obsługa w kolejności pojawiania
się żądań).
 prosta implementacja
 akceptowalna przy małym obciążeniu, przy dużym
długi czas dostępu

SSTF (SHORTEST SEEK TIME FIRST)
 Do obsługi wybiera żądanie z najmniejszym czasem
przeszukiwania względem bieżącej pozycji głowicy.
 przepustowość lepsza niż przy FCFS, średni czas obsługi krótszy
dla średniego obciążenia
 nie jest optymalny
 możliwe zagłodzenie, skrajne ścieżki są dyskryminowane
 akceptowalny w systemach wsadowych, ale nie akceptowalny w
systemach interakcyjnych

SCAN (ALGORYTM WINDY)
 Głowica przemieszcza się od brzegu do brzegu
dysku obsługując napotkane po drodze żądania.
 z chwilą gdy głowica zmienia kierunek ruchu będzie
stosunkowo mało żądań do obsłużenia
 najczęściej spotykana w praktyce strategia
 dobra z punktu widzenia przepustowości i średniego czasu
obsługi, choć skrajne ścieżki nadal nieco dyskryminowane

C-SCAN
 Głowica porusza się w jedną stronę, realizując
zlecenia, przenosi się na początek i dopiero wtedy
ponownie rozpoczyna realizację zleceń.
 większe jest prawdopodobieństwo powstania zleceń na początku
dysku niż w miejscu, gdzie głowica właśnie była.
 żadne ścieżki nie są dyskryminowane
 badania symulacyjne wykazały, że najlepiej połączyć SCAN (przy
małym obciążeniu) z C-SCAN (przy dużym obciążeniu)

LOOK
 Wariant (praktyczny) algorytmu SCAN –
głowica przesuwa się do ostatniego żądania
w danym kierunku poczym zmienia kierunek
ruchu.

C-LOOK
 Wariant (praktyczny) algorytmu C-SCAN –
głowica przesuwa się do ostatniego żądania
w kierunku realizacji dostępu, poczym wraca
do bieżąco pierwszego żądania.

162
Q

KLASTRY
co to?
problem rozmiaru

A

 Klaster (ang. cluster - grono) jest to
jednostka alokacji plików wprowadzona, aby
umożliwić obsługę dysków o większych
pojemnościach.
 Problem rozmiaru klastrów
W miarę wzrostu rozmiaru klastra wzrasta ilość
marnowanego miejsca na dysku. Gdy jest zapisywany
plik, nie zajmuje całego klastra, w pozostałym miejscu
nie można nic zapisać. Powstaje zjawisko
fragmentacji wewnętrznej.

163
Q

PODŁĄCZENIA DYSKÓW

A

 podłączony do komputera macierzystego -
DAS
 podłączony do sieci - NAS
 Sieć pamięciowa – SAN (storage-area
network) jest siecią prywatną stosującą
protokoły pamięci, a nie sieciowe.

164
Q

TECHNIKI DZIELENIA OGRANICZONEGO ZBIORU
ZASOBÓW
jakie?

A

 wzajemne wyłączanie procesów od zasobów
niepodzielnych
 zapobieganie zakleszczeniom
 zapewnienie dużego wykorzystania zasobów
 dostarczenie zasobów w „rozsądnym” czasie

165
Q

MECHANIZMY PRZYDZIAŁU ZASOBÓW
metody i dane służące do przydziału zasobów

A

metody i dane służące do przydziału zasobów
 procesory centralne - deskryptor procesora(ID, stan,
proces bieżący)
 pamięć operacyjna - tablice stron i segmentów, listy
bloków, kolejki zamówień na pamięć
 urządzenia zewnętrzne - strumienie WE/WY, deskryptor
urządzenia, kolejki zamówień
 pamięć pomocnicza - pamięć wirtualna, pamięć plików
 pliki - otwarte do zapisu stają się zasobami
niepodzielnymi

166
Q

WARUNKI KONIECZNE I WYSTARCZAJĄCE
POWSTANIA ZAKLESZCZENIA

Do zakleszczeń może dochodzić wtedy, kiedy w
systemie zachodzą jednocześnie cztery warunki:

A

 wzajemne wykluczanie (zasoby są niepodzielne)
 przetrzymywanie i czekanie (procesy przetrzymują
zasoby w czasie oczekiwania na inne)
 brak wywłaszczeń (zasobów nie można zawłaszczać,
dopóki są użytkowane)
 czekanie cykliczne (istnieje łańcuch cykliczny
procesów takich, że następny zamawia zasoby zajęte
przez poprzednika)

167
Q

GRAF PRZYDZIAŁU ZASOBÓW
Jeśli graf przydziału zasobów :
co jesli jest kilka grafów?

A

 nie zawiera cykli, to w systemie nie ma
zakleszczonych procesów
 zawiera cykl, to doszło do zakleszczenia
Jeśli istnieje po kilka egzemplarzy zasobu
każdego typu, to cykl w grafie jest warunkiem
koniecznym, lecz nie wystarczającym do istnienia
zakleszczenia.

168
Q

ZAPOBIEGANIE ZAKLESZCZENIOM
przez niespełnienie jednego z warunków:

A

 zmiana zasobu niepodzielnego w podzielny
np. przez zastosowanie spooler’a
 procesy zamawiają wszystkie zasoby na
początku i wtedy rozpoczynają działanie
 jeśli proces nie otrzyma zasobów zwraca już
przydzielone i zamawia ponownie
 ustalony porządek zamówień uniemożliwia
powstanie łańcucha cyklicznego

169
Q

WYKRYWANIE I USUWANIE ZAKLESZCZEŃ W
OPARCIU O GRAF STANU
co robi?

A

 usunięcie wszystkich procesów
uczestniczących w zakleszczeniu
 wznowienie procesów od punktu
kontrolnego, jeśli istnieje
 usuwanie kolejnych procesów, aż do zaniku
zakleszczenia
 kolejne zawłaszczanie zasobów

170
Q

UNIKANIE ZAKLESZCZEŃ PRZEZ WYKONYWANIE
CZYNNOŚCI WYPRZEDZAJĄCYCH
jakich?

A
  • sprawdzanie, czy
    po przydziale
    zasobów nastąpi
    blokada

-Algorytm bankiera
 roszczenie to maksymalna wielkość
zamawianych zasobów w czasie trwania
procesu
 zamówienie nie może przekroczyć roszczenia
 zamówienie jest przyjęte tylko wówczas, gdy po
jego realizacji istnieje taki ciąg procesów, że
wszystkie procesy dobiegną do końca

171
Q

Planowaniem nazywa się ustalanie, kiedy
można wprowadzać nowe procesy do systemu
i w jakiej kolejności je wykonywać

kto się tym zajmuje?

A

Planowaniem zajmuje się proces planisty
(scheduler) nazywany również planistą
wysokiego poziomu, aby odróżnić go od
planisty niskiego poziomu – dyspozytora.

172
Q

DYSPOZYTOR
Decyzje o przydziale procesora mogą zapadać w
następujących czterech sytuacjach:

A

 proces przeszedł od stanu aktywności do stanu
czekania
 proces przeszedł od stanu aktywności do stanu
gotowości
 proces przeszedł od stanu czekania do stanu
gotowości
 proces kończy działanie.

173
Q

PLANISTA
jest wywoływany, gdy:

A

 pojawiło się zamówienie na zasoby
 zasoby zostały zwolnione
 proces zakończył działanie
 do puli dodano nową pracę/użytkownik
uruchomił nowy proces

174
Q

ALGORYTMY PLANOWANIA
jakie?

A

 Algorytm FCFS (First Come, First Served)
 pierwszy zgłoszony- pierwszy obsłużony
 Algorytm SJF (Shortest Job First)
 najpierw najkrótsza praca (zadanie)
 Algorytm SRTF (Shortest Remaining Time First)
 najpierw najkrótszy pozostały czas / najpierw najkrótsza praca z
zawłaszczaniem
 Algorytm priorytetowy
 Algorytm rotacyjny RR (Round-robin)
 Planowanie wielopoziomowe

175
Q

ALGORYTM FCFS
planowanie
jak działa?

A

 W tym algorytmie, proces, który pierwszy
zamówi procesor, pierwszy otrzyma go.
Implementację tego algorytmu łatwo się
uzyskuje za pomocą kolejki FIFO.
 Niestety algorytm posiada wadę, średni czas
oczekiwania może być wysoki.

176
Q

ALGORYTM SJF
planowanie

A

 Algorytm najpierw najkrótszy pozostały czas, działa na podobnej
zasadzie jak SJF. Algorytm ten jest w odróżnieniu od poprzednika
wywłaszczający.
 Bieżący proces jest wywłaszczany przez nowy proces którego następna
faza procesora jest krótsza od pozostałej części fazy procesu
aktualnego.
 Algorytm ten daje minimalny średni czas oczekiwania.
 Długość faz procesora jest przewidywana na podstawie jego
wcześniejszych faz, nie można jednoznacznie określić jaką długość
będzie miała kolejna faza.

177
Q

ALGORYTM PRIORYTETOWY
algorytm planowania

A

 W algorytmie tym każdemu procesowi przydziela się jakiś
priorytet, liczbę całkowitą.
 Procesor zostaje przydzielony procesowi o najwyższym
priorytecie.
 Algorytm może być niewywłaszczający albo
wywłaszczający.
 Może wystąpić głodzenie procesów, polegające na tym,
że procesy o niskim priorytecie mogą nigdy nie zostać
wykonane. Aby temu zapobiec wprowadza się
postarzanie, czyli stopniowe podwyższanie priorytetów
procesów długo oczekujących.

178
Q

ALGORYTM ROTACYJNY
algorytm planowania

A

 W algorytm ten wyposażono w wywłaszczanie i kolejkę
cykliczną.
 Każdemu procesowi przydziela się mały odcinek czasu
procesora. Proces wykonywany jest po upływie tego
czasu wywłaszczany i przenoszony na koniec kolejki
procesów gotowych.
 Dla n procesów w kolejce i kwantu czasu q, każdy proces
dostaje 1/n czasu procesora, których wartość nie
przekracza q. Czas oczekiwania procesu na dostęp do
procesora nigdy nie przekracza (n-1)*q jednostek czasu.

179
Q

PLANOWANIE WIELOPOZIOMOWE
algorytm planowania

A

Algorytm ten rozdziela kolejkę procesów gotowych
na osobne kolejki. Stosuje się go gdy możliwe jest
łatwe zaliczenie procesów do kilku różnych grup:
 pierwszoplanowe, drugoplanowe/wsadowe
 systemowe, interakcyjne, redagowania
interakcyjnego, wsadowe, studenckie.
 Poszczególne kolejki mogą używać różnych
algorytmów planowania.

180
Q

PLANOWANIE WIELOPOZIOMOWE ZE
SPRZĘŻENIEM ZWROTNYM
algorytm planowania

A

 W tym algorytmie możliwe jest przenoszenie
procesów między kolejkami.
 Proces, który wykorzystuje cały przydzielony
czas zostaje przeniesiony do kolejki o
niższym priorytecie.
 Proces szybko oddający procesor jest
przenoszony do kolejki o wyższym
priorytecie.

181
Q

KRYTERIA PODEJMOWANIA DECYZJI PRZEZ
PLANISTĘ

A

 procesom mającym wiele zasobów można nadać wysoki priorytet
 procesom mającym wiele zasobów przydziela się kolejne
 przy przydziale pamięci należy uwzględnić zasady zbioru
roboczego
 procesom systemowym nadaje się priorytet zależny od pilności
zadań jakie wykonują
 procesom obsługi urządzeń nadaje się wysoki priorytet
 jeśli nie zapobiega się zakleszczeniom powinno się ich unikać
 koszt planowania nie powinien przekraczać osiąganych zysków

182
Q

HIERARCHIA PROCESÓW

A

 najczęściej:
planista - system op. - procesy – podprocesy
 planista jest przodkiem wszystkich procesów
 procesy mogą:
 tworzyć podprocesy
 przydzielać podprocesom część własnych zasobów
 nadawać priorytet własnym podprocesom