Looks like significant misunderstandings here. 1. Vezi 3; ID-ul este dintr-un vector de cozi I/O. 2. Fiecare thread este ori running, ori ready (în coadă), ori blocked (într-o coadă I/O). Fiecare funcție manipulează în general propriul thread, cu excepția lui fork (care crează un thread nou) și signal (care scoate alte threaduri dintr-o coadă de I/O și le pune în ready, în coada de priorități) 3. Primul parametru e dimensiunea unei cuante de timp iar al doilea este nr de cozi I/O. Numărul de thread-uri nu este limitat. 4. Funcția dată lui fork va apela ea so_exec, sau so_fork, sau so_wait, sau so_signal. Nu le apelezi tu. Te folosești de apelurile ăstea ca oportunitate pt a face schedulingul. 5. Funcția apelează so_exec; deci ai posibilitatea în acest moment.
P.S: cuanta de timp este de fapt nr de apeluri fork/exec/signal maxim permis până când forțezi o anume preempție. P.P.S: Va trebui tu să ai grijă intern ca numai un thread să se poată rula la un moment dat. On Thu, May 2, 2019, 7:38 PM Tuculina Gabriel via so <[email protected]> wrote: > Buna ziua, > > Am si eu o serie de nelamuriri legate de functiile pe care trebuie sa le > implementam: > > 1. Wait si Signal primesc amandoua cate un parametru IO. Acel eveniment ar > trebui sa fie un id ce trebuie comparat cu id-ul threadurilor din lista de > prioritati? > > 2. Cand se va scoate un element din lista de prioritati? Cand starea lui > ajunge in Terminated? > > 3. Ce se intampla daca se incearca crearea mai multor procese decat a fost > initial setat in init? Se ignora? > > 4. Din cate inteleg, se va executa functia pasata la fork, iar apoi > threadurile ar trebui sa intre in starea Terminated. Cum ar trebui sa fie > folosit so_exec? Care mai este rolul lui daca "work is done" si nu mai pot > face nimic in privinta asta? > > 5. Cum ar trebui sa decrementam time_quantum-ul daca nu avem control > asupra executiei work-ului? > > > > Multumesc anticipat! > > Gabriel > _______________________________________________ > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
