OS1/Modifikacije predrok 2020
< ОС1
Pređi na navigaciju
Pređi na pretragu
- Ovaj rok nije rešen. Pomozite SI Wiki tako što ćete ga rešiti.
Sledeće modifikacije su se pojavile na odbrani projekta u predroku 2020.
20 poena
- Proširiti klasu
Semaphore
nestatičkom funkcijomturnOnPriorities
koja na tom semaforu uvodi prioritetni signal nakon što se pozove ta funkcija (ponašanje kao fleg). - Prioritetni signal treba da uvek odblokira niti po
ID
niti u rastućem poretku, a ne po dosadašnjem redosledu koji je implementiran. - Dodati sledeće ispise u metodama
wait
isignal
:signal
treba da kaže koji jeID
koja ga je pozvala;wait
treba da kaže koji jeID
koja ga je pozvala i da li će se blokirati na tom semaforu. - Napisati test za ovu funkcionalnost:
- Napraviti 50 niti koje ciklično rade sledeće:
- Semafor
sem
kome su uključeni prioriteti i kome je vrednost 10 puta manja od broja niti (u ovom slučaju 5) čeka; - Ispisuje se "Ušao u kritičnu sekciju";
- Nekim drugim semaforom se simulira spavanje niti za nasumično vreme;
- Semafor
sem
signalira; - Ispisuje se "Izašao iz kritične sekcije".