Est-ce que le code des mini programme est très lié (c'est ce que je crois comprendre de ce que tu dis) où les mini programme eux-même le sont.
Par exemple tu as un réveil qui tourne quelque part et ailleurs, un carnet de rendez-vous. Le carnet utilise une partie du code du réveil (d'un réveil devrais-je dire), mais il n'a pas besoin d'accéder au réveil qui est en train de tourner, non ? Dans ce cas là, les processus sont les plus adapté, dans le cas contraire, les processus sont probablement les plus adapté s'il faut échanger peux de donner entre les deux programme (du genre : sonne maitenant, mais pas : voici la liste de tout les événements que je connais).
Le seul cours sur les threads que je connais est celui-ci : http://cristal.inria.fr/~remy/poly/system/camlunix/index.html (paragraphe coprocessus, qui est un autre no pour les thread). Il utilise OCaml, mais, si tu transcrit ça dans les fonctions de la bibliothèque de threrad que tu utilise (que tu n'a précisé nulle part), alors les concepts présenté reste valable.