1.s=3, jakie będzie s po wait() i czy zablokuje się?S=2nie blokuje się bo większe od 0Semafor S jest zmienną całkowitą która oprócz nadawania wartości początkowej jest dostępna tylko za pomocą dwu standardowych niepodzielnych operacji wait() i signal()wait() while S<=0 do "nic" S:=S-12.s=3, jakie będzie s po signal() i czy zablokuje się?S=4nie blokuje się, bo po prostu się nie blokuje i już :)signal(S) S:=S+1 j.w.3.Kolejkowanie – wyliczanie średniego czasu oczekiwania dla:-RR algorytm: Każdy proces otrzymuje małą jednostkę czasu procesora (kwant czasu). Po upływie tego czasu proces jest wywłaszczany i dodawany na koniec kolejki procesów gotowych. Jeżeli w kolejce gotowych jest n procesów, a kwant czasu wynosi q, wówczas każdy proces otrzymuje 1/n część czasu procesora podzieloną na odcinki o długości nie większej niż q. żaden proces nie czeka dłużej niż (n-1)q.-SJF algorytm: szukamy najkrótszych i dodajemy kolejno dzieląc sumę przez ilość procesów - kolejność uwarunkowana długością pojedynczego procesu-FCFS algorytm: ( P1 + P2 + PN )/N - dodajemy w kolejności od P1 do PN4.PCB wyjaśnićBlok kontrolny procesu (Process Control Block (PCB)Zawiera informacje związane z danym procesem• Stan procesu• Licznik rozkazów• Rejestry CPU• Informacje o planowaniu przydziału CPU• Informacja o zarządzaniu pamięcią• Informacje do rozliczeń• Informacje o stanie we/wy
5. Wywłaszczanie jest gdy:• Decyzje o przydziale procesora mogą zapadać, gdy proces: 1. Przechodzi ze stanu aktywności do stanu oczekiwania 2. Przechodzi ze stanu aktywności do stanu gotowości 3. Przechodzi ze stanu oczekiwania do stanu gotowości 4. Kończy działanie• Planowanie w sytuacjach 1 i 4 jest niewywłaszczające (nonpreemptive)• W pozostałych sytuacjach planowanie jest wywłaszczające (preemptive)6.Planowanie (planista) krótkoterminowe – wyjaśnić.planista dodaje nowy dla procesu procesor, tylko jeden procesPlaniści (programy szeregujące)• Planista długoterminowy (Long-term scheduler) (lub planista zadań (job scheduler)) – wybiera, które procesy powinny być umieszczone w kolejce procesów gotowych• Planista krótkoterminowy (Short-term scheduler) (lub planista procesora (CPU scheduler)) – wybiera, który proces powinien być wykonany jako następny i przydziela mu procesor• Planista krótkoterminowy jest uaktywniany b. często (milisekundy) ⇒ (musi być szybki)• Planista długoterminowy jest uaktywniany uaktywniany bardzo rzadko (sekundy, minuty) ⇒ (moŜe być wolny)• Planista długoterminowy nadzoruje stopień wieloprogramowości• Procesy mogą być opisane jako naleŜące do jednej z dwóch grup: – Proces ograniczony przez we/wy – spędza większość czasu na wykonywaniu operacji we/wy, mniej zajmując się obliczeniami – Proces ograniczony przez procesor – spędza większość czasu na obliczeniach (rzadziej zamawia operację we/wy)
7.Fragmentacja zewnętrzna/wewnętrzna.- Fragmentacja zewnętrzna (External Fragmentation) – całkowita wielkośćwolnej pamięci jest wystarczająca do realizacji żądania przydziału, ale niejest ona ciągła- Fragmentacja wewnętrzna (Internal Fragmentation) – przydzielonapamięć może być nieco większa od żądanej; różnica między tymiwielkościami jest bezużytecznym kawałkiem pamięci wewnątrzprzydzielonego obszaru8.Do czego mają dostęp różne wątki w procesie:mają tylko do kodu (? na pewno ?)Wątek w spół-użytkuje wraz z innymi równorzędnymi wątkami sekcję kodu, sekcję danych oraz takie zasoby systemu jak otwarte pliki i sygnały.9.Skrzynka pocztowa jaki to jest program:Pośredni10.W jakim algorytmie występuje konwojowaniew FCFS11.Sekcja krytyczna – co zawiera(?).Sekcja krytyczna to ciąg operacji na pewnym zasobie (zwykle pamięci), który musi być wykonany w trybie wyłącznym przez tylko jeden z potencjalnie wielu procesów. Po wejściu do sekcji proces wykonuje protokół wejścia w którym sprawdza, czy może wejść do sekcji krytycznej. Po wyjściu z sekcji wykonuje protokół wyjścia, aby poinformować inne procesy, ze opuścił już sekcje krytyczną i inny proces może ją zająć.Rozwiązanie problemu sekcji krytycznej:a. Wzajemne wykluczanie – Jeżeli proces Pi wykonuje swoją sekcję krytyczną, wówczas żadne inne procesy nie mogą wykonywać swoich sekcji krytycznychb. Postęp - Jeżeli żaden z procesów nie wykonuje swojej sekcji krytycznej i są procesy, które chcą wejść do swoich sekcji krytycznych, wtedy wybór procesów, które wejdą do sekcji krytycznej nie może być odkładany na czas nieokreślonyc. Ograniczone czekanie - Musi istnieć ograniczenie liczby wejść innych procesów do ich sekcji krytycznych, po tym jak proces zażądał wejścia do swojej sekcji krytycznej i zanim ten dostęp zostanie przyznany Zakładamy, że każdy proces wykonuje się z prędkością niezerową Brak założenia dotyczącego względnej prędkości N procesów12.Funkcja fork() jaki proces tworzy?fork() – wywołanie systemowe tworzące nowy proces a w zasadzie utworzenie dwóch bliźniaczych kopii procesu, działających równolegleFunkcja fork() i fork1() jest funkcją w systemie operacyjnym Unix (i nie tylko) powodującą, że pojedynczemu programowi, któremu do jego wykonania przypisany jest pojedynczy proces w systemie operacyjnym, przypisuje się dwa procesy poprzez rozwidlenie: rodzic i dziecko - czyli tworzy nowy proces. W chwili utworzenia, proces - dziecko jest kopią procesu - rodzica (kopiowane są obszary pamięci, wartości zmiennych i część środowiska). Aby umożliwić zróżnicowanie dalszego działania obu procesów, konieczne jest ustalenie, który z nich jest dzieckiem, a który rodzicem.13.Co zawiera licznik rozkazu?Licznik rozkazów (Program counter (PC)) wskazuje na adres następnego rozkazu do wykonania w procesie. – Zawiera adres rozkazu do pobraniaRejestr rozkazów (Instruction register (IR)) – Zawiera ostatnio pobrany rozkaz14.Gdzie przechowywany jest i-węzeł,I-węzeł (ang. i-node, index-node) jest rekordem (strukturą danych) w którym przechowuje większość informacji o konkretnym pliku na dysku. I-węzeł zawiera identyfikatory użytkownika oraz grupy szatkowników pliku, czas ostatniej modyfikacji oraz dost...
EIT_PWR