Thèse soutenue

La puissance des prototypes à l'assaut des systèmes d'exploitation : ISAAC/LISAAC : introduction de concepts objets au coeur même des systèmes d'exploitation

FR
Auteur / Autrice : Benoît Sonntag
Direction : Dominique Colnet
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2003
Etablissement(s) : Nancy 1
Partenaire(s) de recherche : Autre partenaire : Université Henri Poincaré Nancy 1. Faculté des sciences et techniques

Résumé

FR  |  
EN

Ce travail, vu dans son ensemble, constitue les premières étapes, à la résolution du problème de l'intégration des concepts objets au coeur même des systèmes d'exploitation. Isaac est le premier système d'exploitation réellement opérationnel entièrement basé sur la technologie objet à base de prototype. Cette thèse est son histoire, de l'élaboration conceptuelle du projet jusqu'à sa réalisation. Dans un premier temps, nous apportons une vision différente de l'utilisation d'un ordinateur en tirant pleinement partie de l'expressivité et la flexibilité des prototypes. Sans pouvoir encore fixer précisément ses concepts, vous trouverez ici une maquette de notre architecture système. Pour réaliser notre projet, il nous a fallu concevoir un nouveau langage à base de prototype: Lisaac. Digne héritier de Self, il se démarque sur de nombreux points liés essentiellement aux contraintes de la programmation système. Plus proche de la machine que son grand frère, Lisaac permet une programmation de bas niveau tout en restant un langage de très haut niveau. Son compilateur puissant utilise des techniques originales de compilation pour la suppression de la liaison dynamique, et des optimisations de prédiction de type et de spécialisation de code. Un nouvel algorithme d'analyse de contexte, adapté à la technologie objet, rend le code cible d'une efficacité encore inégalée pour ce type de langage. La dernière partie de cette thèse aborde les problèmes concrets qu'a posés la réalisation du système d'exploitation. Plus particulièrement, nous apportons une utilisation originale des protections système du processeur et de sa mémoire pour fiabiliser l'accès aux objets et ainsi garantir la sécurité du système.