Gestion de mémoire à objets pour systèmes embarqués

par Kevin Marquet

Thèse de doctorat en Informatique

Sous la direction de David Simplot-Ryl et de Gilles Grimaud.

Soutenue en 2007

à Lille 1 .

  • Titre traduit

    Object-oriented memory management for embedded systems


  • Pas de résumé disponible.


  • Résumé

    La mise au point de systèmes embarqués pose plusieurs problèmes liés au matériel sous-jacent. On citera en particulier l'existence de plusieurs types de mémoires sur le même appareiL ou les faibles ressources des petits appareils tels que les capteurs de terrain. Dans ce contexte, les études concernant les algorithmes de ramasse-miettes ne sont plus valides. Un premier résultat de cette thèse est d'avoir comblé ce manque en réalisant une étude poussée de la complexité des algorithmes de ramasse-miettes existants. À partir de cette étude, les paramètres fins qui influent sur l'efficacité de ces algorithmes ont pu etre identifiés. Il a également été possible de montrer qu'il est nécessaire d'adapter, en terme de choix de ramasse-miettes, la gestion mémoire à la fois aux applications et au matériel. Il a été défini et implémenté, au sein d'un vrai système Java, une nouvelle architecture de gestion de la mémoire adaptée aux systèmes visés. Le modèle proposé fait le pont entre les différentes contraintes exprimées. D'une part les contraintes matérielles dûes aux propriétés très différentes des mémoires que l'on peut trouver sur les classes d'appareil considérées. D'autre part, les spécificités des différents mécanismes de ramasse-miettes existants. Le principe de base de cette architecture est de permettre la gestion de chaque espace mémoire (physique ou logique) par un gestionnaire adapté aux propriétés de la mémoire sous-jacente, plutôt que d'implémenter un gestionnaire spécifique à une seule architecture mémoire. Afin d'isoler la gestion du placement des données tout en améliorant la flexibilité, la portabilité et les performances de la gestion mémoire dans le contexte présenté, un langage dédié à la gestion de mémoires à objets a été proposé. Ce langage dédié permet d'écrire des politiques de placement complètes, qui sont ensuite validées et optimisées par le compilateur de ce langage. Ce compilateur produit un code intégré à la machine virtuelle. Une politique de placement comporte à la fois la définition des espaces mémoire et un certain nombre de règles de placement permettant de spécifier le placement des données au niveau système et applicatif. Le problème du besoin de mémoire non-réinscriptible a été adressé par plusieurs optimisations. Premièrement, des moyens de maximiser son utilisation on été proposés. Deuxièmement, le marquage des objets survivants à une collection de données a pu être amélioré.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 1 vol. (130 p.)
  • Annexes : Bibliogr. p. 125-130. 70 réf.

Où se trouve cette thèse ?

  • Bibliothèque : Université des sciences et technologies de Lille (Villeneuve d'Ascq, Nord). Service commun de la documentation.
  • Disponible pour le PEB
  • Cote : 50376-2007-401
  • Bibliothèque : Université des sciences et technologies de Lille (Villeneuve d'Ascq, Nord). Service commun de la documentation.
  • Disponible pour le PEB
  • Cote : 50376-2007-402
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.