Valid XHTML 1.0 Strict

Améliorations autour de PolyORB Kernel

Le but de ce projet est de travailler sur le noyau PolyORB Kernel. Ce noyau minimal est conçu pour construire des systèmes critiques sûrs et sécurisés. Il fournit un ensemble de fonctionnalités qui sont activables/désactivables à la compilation. Quelques lignes de code et la configuration sont générées à partir de modèles AADL. Ainsi, nous pouvons vérifier le modèle puis générer le système à partir du modèle. Nous garantissons alors que l'implémentation du système suit les spécifications et nous réduisons le nombre d'erreurs de conception.

Nous avons repris le concept d'OS partitionnés : l'OS est constitué de partitions contenant des threads. Chaque partition est isolée spatialement (une partition ne peut pas accéder à l'espace d'adressage d'une autre partition) et temporellement (une partition ne peut pas déborder sur le temps d'exécution d'une autre partition). On retrouve ce concept de système partitionné dans les spécifications d'ARINC653.

Nous proposons ici que vous puissiez travailler sur le noyau PolyORB Kernel et d'ajouter un driver réseau au noyau. Ce driver réseau permettra d'envoyer des requêtes via le middleware placé au sein de la première partition (niveau 0 de partitionnement). Nous voulons d'abord que ce pilote soit fonctionnel pour la BSP x86-qemu. Nous insistons sur le fait que le code doit être fortement modulable (c'est à dire que le développeur peut modifier les fonctionnalités du driver très facilement).

Le code devra bien entendu être minimal. Vous pouvez utiliser du code existant (voir le projet QEMU, FreeBSD, voire d'autres projets existants - listés ci-dessous). Vous devez cependant veiller à une bonne intégration du code. De plus, nous préférons du code placé en licence BSD plutôt que GPL.

Le code du noyau est encore un peu jeune, c'est pour cela qu'il y aura probablement un travail de refactorisation du code et de debug. De plus, vous devrez travailler sur le même dépôt que les autres étudiants travaillant sur ce projet de noyau.

Quelques liens