OS1/Modifikacije jul 2021
< ОС1
Pređi na navigaciju
Pređi na pretragu
Sledeće modifikacije su se pojavile na odbrani projekta u julskom roku 2021.
Osnova
- Treba prošiti klasu
IVTEntrytako da može signaluje više događaja u redosledu po prioritetima. - Treba izmeniti konstruktor klase
Event::Event(IVTNo ivtNo, int priority)tako da prima prioritet po kom će se oslobađati (veći je prioritetniji).
20 poena
- Napraviti program koji kreira 50 niti koje ciklično čekaju na događaju tastature (9h), pa onda simuliraju rad lokalnim semaforom ili uposlenim čekanjem.
- Prioritet događaja postaviti na ID niti.
- Za biranje dužine čekanja koristiti funkciju
rand()izstdlib.h - U metodi
Event::wait()događaja dodati da se pre blokiranja ispisujeBLOCKED - THREAD ID = x, gde je x ID niti. - Nakon oslobađanja događaja treba da se ispiše
SIGNALED - THREAD ID = x, gde je x ID niti.
30 poena
- Napraviti program koji
fork()om kreira 50 niti koje ciklično čekaju na događaju tastature (9h), pa onda simuliraju rad lokalnim semaforom ili uposlenim čekanjem. - Prioritet događaja postaviti na ID niti.
- Za biranje dužine čekanja koristiti funkciju
rand()izstdlib.h - U metodi
Event::wait()događaja dodati da se pre blokiranja ispisujeBLOCKED - THREAD ID = x, gde je x ID niti. - Nakon oslobađanja događaja treba da se ispiše
SIGNALED - THREAD ID = x, gde je x ID niti.