Nous avons vu à travers ce projet d'Unix, le grand intérêt des L-systèmes dans la production d'arbres déterministes. Quelques règles suffisent pour générer un arbre d'une complexité certaine. Et en ajoutant une discrétisation des axes et deux coefficients de torsion et de courbure, la modélisation informatique de spécimens naturels s'améliore d'autant plus.
D'autre part, ce projet nous a aussi permis de manipuler les threads, et de mieux comprendre le noyau Unix. Pourtant, il nous semble que les threads, comme nous les avons employés, ne permettent pas de faire évoluer au mieux, plusieurs plantes. Il est essentiel dans notre cas, d'avoir un contrôle total et absolu de l'ordonnancement de nos méristèmes, de nos axes de pousse. Thread et processus délaissent le travail d'ordonnancement au scheduler d'Unix, et nous n'avons malheureusement pas assez de droit pour modifier de façon suffisante la politique de celui-ci.
Nous pensons dès lors que, finalement, la réalisation d'un scheduler devient donc obligatoire. Un scheduler en mode utilisateur serait tout indiqué, et un ordonnancement de listes d'axe, préconisé. Nous pensons que peut être, en alliant l'ordonnancement de ce scheduler, basé non seulement sur des priorités - autres que les priorités d'Unix ! -, mais aussi sur une liste finie de threads (de priorité identique), nous pourrions obtenir une pousse en temps réel de plusieurs arbres. Il faudra néanmoins s'occuper du rafaîchissement des résultats, et des calculs externes (contraines physiques, largeurs des branches...).
julien michot 2006-08-05