Și încă o întrebare pe care am uitat să o adresez: Cum să fac debug pentru că dacă folosesc printf pot apărea sincronizări nedorite?
În mie., 1 mai 2019 la 19:26, Paul Olaru <[email protected]> a scris: > E simplu: când un thread este blocat (wait pe orice primitivă de > sincronizare) ai garanția că schedulerul din kernel va pune la un moment > dat un thread al procesului tău care nu e blocat. Deci simplu blochezi > thread-ul care nu vrei să se execute. Orice funcție de wait merge. > > On Wed, May 1, 2019, 7:24 PM Ionuț Mihalache <[email protected]> wrote: > >> Pentru întrebarea 2: Nu modific nimic în kernel dar trebuie să mi se >> asigure cumva că dacă eu îi zic thread-ului 2 să face wait până când este >> primul în coada cu priorități, o să fie pus alt thread pe procesor. >> >> În mie., 1 mai 2019 la 19:20, Paul Olaru <[email protected]> >> a scris: >> >>> 2. Nu trebuie să umblăm la kernel altfel decât prin a lăsa un singur >>> thread activ la un moment dat în general. >>> 1. Decrementarea se poate face oricând, dar "context switch-ul" se va >>> face după, dacă e cazul. >>> 3. Am și eu întrebarea asta. Parcă am văzut un mail în care se spunea că >>> ambele abordări sunt ok. >>> >>> >>> On Wed, May 1, 2019, 7:17 PM Ionuț Mihalache via so < >>> [email protected]> wrote: >>> >>>> Salut, >>>> >>>> După ceva timp în care am tot încercat diferite variante de >>>> implementare pentru a rezolva prima partea a testelor, cele până la round >>>> robin inclusiv am niște întrebări punctuale: >>>> >>>> 1. În cazul so_fork() începem să scadem cuanta înainte sau după >>>> pthread_create? >>>> 2. Noi trebuie să modificăm ordinea thread-urilor noastre și în cadrul >>>> planificatorului din kernel sau trebuie să lucrăm doar cu thread-urile pe >>>> care le avem noi în coada cu priorități din cadrul planificatorului nostru >>>> la un moment dat? >>>> 3. Thread-ul care face primul so_fork(), cel din test, trebuie să apară >>>> în coada noastră? Și dacă nu trebuie să avem noi grijă cumva să nu mai fie >>>> pe procesor până când nu se execută thread-urile din cadrul >>>> planificatorului nostru? >>>> >>>> Mulțumesc, >>>> Ionuț Mihalache >>>> _______________________________________________ >>>> http://ocw.cs.pub.ro/courses/so/info/lista-discutii >>> >>>
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
