• [^] # Re: linuuuuuuuuuuuuux

    Posté par . En réponse à la dépêche Quel OS pour le multiprocesseur ?. Évalué à 1.

    C'est beau, mais ca marche pas....

    Si ton process 1 fait son boulot periodique et acquiert le mutex(le lock a la fin dans la fonction my_func) avant que le 2eme process ait ete schedule, le 2eme process ne pourra par faire son boulot car il sera encore bloque sur son g_mutex_lock(mutex).

    D'autre part, il y a le probleme suivant(on regarde en boucle):

    P1...................P2
    lock(mutex)
    attend
    unlock(mutex)
    bosse...............lock(mutex)
    ......................bosse
    ......................unlock(mutex)
    lock(mutex)

    lock(mutex)
    attend
    unlock(mutex)........--> P2 ne peut pas locker le mutex, car P1 a fait 2 locks de suite, il faut donc 2 unlock
    bosse
    lock(mutex)