1. Jaka jest różnica w planowaniu przydziału procesora pomiędzy systemami
interaktywnymi, a systemami wsadowymi?
Interes użytkownika powinien być przedkładany w systemach interakcyjnych.
Istotnym parametrem w tych systemach jest czas odpowiedzi. Odpowiedź
przekazywana jest za pośrednictwem jakiegoś urządzenia wejścia-wyjścia, a więc
z punktu widzenia planowania przydziału procesora istotny jest czas
przetwarzania do momentu zażądania odpowiedniej operacji wejścia-wyjścia.
Obok minimalizacji tego czasu, ważna jest też jego przewidywalność. Do oceny
przewidywalności można użyć jakieś statystycznej miary rozrzutu (np.
wariancji), ale wykorzystanie takiej miary w optymalizacji uszeregowania jest
trudne.
W systemach wsadowych dąży się z kolei przede wszystkim do
optymalizacji wykorzystania zasobów. Próbę optymalizacji w tego typu
systemach można podjąć, gdyż znany jest najczęściej zbiór zadań do
zrealizowania. Nawet jeśli spontanicznie pojawia się nowe zadanie, nie ma
potrzeby podejmowani natychmiastowej obsługi.
Wiadomości potrzebne do wykonania poniższych zadań:
Czas oczekiwania - czas spędzony w kolejce procesów gotowych (czas spędzony w stanie gotowości)
Czas obsługi - czas, przez który proces był wykonywany (wykorzystywał procesor) od momentuprzyjęcia do systemu
Rzeczywisty czas przebywania w systemie - czas spędzony w systemie od momentu przyjęcia (czas obsługi + czas oczekiwania + czas realizacji żądań zasobowych)
Algorytmy planowania niewywłaszczającego
FCFS (First Come First Served) — pierwszy zgłoszony, pierwszy obsłużony
LCFS (Last Come First Served) — ostatni zgłoszony, pierwszy obsłużony
SJF (SJN, SPF, SPN, Shortest Job/Process First/Next) — najpierw najkrótsze zadanie
Algorytmy planowania wywłaszczającego
Planowanie rotacyjne (ang. Round Robin, RR) — po ustalonym kwancie czasu proces wykonywany jest przerywany i trafia do kolejki procesów gotowych.
SRT (Shortest Remaining Time) — najpierw zadanie, które ma najkrótszy czas do zakończenia.
Wirtualne planowanie rotacyjny VRR – planowanie dwukolejkowe z obsługą obu kolejek zgodnie z algorytmem rotacyjnym. Jedna z tych kolejek — pomocnicza — przeznaczona jest na procesy gotowe po zakończeniu operacji wejścia-wyjścia, a druga — główna — na procesy, które wykorzystały kwant czasu lub z innych powodów oddały procesor. Kolejkę pomocniczą obsługiwać należy oczywiście w pierwszej kolejności. Procesy z kolejki pomocniczej otrzymują jednak do dyspozycji tylko tę część kwantu czasu, której nie wykorzystały w wyniku zażądania operacji wejścia-wyjścia.
2.
P1 czas oczekiwania 4
czas cyklu przetwarzania 18
P2 czas oczekiwania 2
czas cyklu przetwarzania 12
P3 czas oczekiwania 6
czas cyklu przetwarzania 16
Wykorzystanie procesora 18/20=90%
3.
a) FCFS
P1 czas oczekiwania 0
czas cyklu przetwarzania 8
P2 czas oczekiwania 6
P3 czas oczekiwania 11
czas cyklu przetwarzania 14
P4 czas oczekiwania 8
b) SJF
P2 czas oczekiwania 13
czas cyklu przetwarzania 19
P3 czas oczekiwania 5
P4 czas oczekiwania 2
czas cyklu przetwarzania 6
4.
czas cyklu przetwarzania 11
P3 czas oczekiwania 10
czas cyklu przetwarzania 13
P4 czas oczekiwania 7
b) SRT
P1 czas oczekiwania 12
czas cyklu przetwarzania 20
P2 czas oczekiwania 3
P3 czas oczekiwania 0
czas cyklu przetwarzania 3
P4 czas oczekiwania 1
czas cyklu przetwarzania 5
5.
Rotacyjny:
P1 czas oczekiwania 20
czas cyklu przetwarzania 30
P2 czas oczekiwania 16
czas cyklu przetwarzania 22
P3 czas oczekiwania 4
P4 czas oczekiwania 12
P5 czas oczekiwania 20
czas cyklu przetwarzania 28
Priorytetowy:
P1 czas oczekiwania 14
czas cyklu przetwarzania 24
P2 czas oczekiwania 0
P3 czas oczekiwania 24
czas cyklu przetwarzania 26
P4 czas oczekiwania 26
P5 czas oczekiwania 6
FCFS
czas cyklu przetwarzania 10
P2 czas oczekiwania 10
P3 czas oczekiwania 16
P4 czas oczekiwania 18
P5 czas oczekiwania 22
SJF
czas cyklu przetwarzania 2
P5 czas oczekiwania 12
6 i 7 chodzi mniej więcej o to samo, nie mam czasu już tego rozpisywać…
8.
a) tu chyba będzie FCFS, ponieważ w stanie aktywnym priorytet rośnie szybciej niż procesom w kolejce, a zatem nigdy go nie wywłaszczą, a jeśli proces skończy przetwarzanie to jego miejsce zajmie ten, który najdłużej czeka, chociaż nie jest to do końca FCFS, ponieważ gdy proces przejdzie w stan oczekiwania to później trafi na koniec kolejki, czyli tak jakby dopiero został przyjęty do systemu, podczas gdy klasyczne FCFS przyjmuje funkcję priorytetu jako czas przebywania w systemie od momentu przyjęcia.
b) ????
9. ????
caban1908