[Kos-dev] Préemption.

David MENTRE dmentre at linux-france.org
Sat Feb 19 18:16:52 CET 2005


Salut,

"Cyril Dupuit" <cyrildupuit at hotmail.com> writes:

> Lock() while(Variable > 0); \
> Variable++;
>
> UnLock() Variable--;

Ce genre de code n'est pas atomique : des instructions peuvent se
glisser entre la récupération et le stockage de Variable.

Pour avoir une idée de comment le faire, regarde dans le source de
Linux[1] ou KOS.

Amicalement,
d.

PS : l'origine de tes soucis n'est peut-être pas juste là, mais ce point
     ne me semble en tout cas pas clean. :)

[1] http://lxr.linux.no/source/include/asm-i386/semaphore.h
    http://lxr.linux.no/source/include/asm-i386/atomic.h
-- 
pub  1024D/A3AD7A2A 2004-10-03 David MENTRE <dmentre at linux-france.org>
 5996 CC46 4612 9CA4 3562  D7AC 6C67 9E96 A3AD 7A2A



More information about the Kos-dev mailing list