Changes between Version 8 and Version 9 of stageM2


Ignore:
Timestamp:
Dec 21, 2009, 3:23:27 AM (14 years ago)
Author:
refauvel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • stageM2

    v8 v9  
    119119
    120120'''Objectif (Driver de MMU pour ARM9 et boot sur GP32)[Dimitri]'''
     121Une MMU(Memory Management Unit) est un composant passerelle entre le processeur et la mémoire centrale. L'espace d'adressage de cette dernière n'est pas forcément identique à celui utilisé par le processeur. L'accès au données nécessite alors une traduction d'adresse, effectué par la MMU. Celle-ci convertie l'adresse demandé par le processeur (adresse dite virtuelle) en une adresse réellement disponible en mémoire (adresse physique).
    121122
    122 Qu'est ce qu'une MMU. Les MMUs sont différente pour chaque CPU. La MMU de l'ARM9 est comme ca.
     123Suivant les processeurs et les architectures, les MMU diffèrent. Les fonctionnalités proposées ne sont pas les mêmes. Par exemple, alors que sur x86 les pages mémoire ont une taille de 4 kilo octets ou 4 Mega octets, elles ont une taille de 1 kilo, 4 kilo, 64kilo ou 1 Mega sur ARM.
    123124
    124 Comment on gere la MMU dans Hexo: il y a un driver.
     125La gestion de la mémoire virtuelle est décomposable en deux parties dans Hexo/MutekH:
     126- un driver, spécifique à chaque MMU, qui effectue des opération bas niveau pour lire/modifier les tables de pages dans Hexo. L'ensemble des drivers de MMU partage une API générique.
     127- des gestionnaires de page physiques et virtuelles dans MutekH, qui font directement appel au driver.
    125128
    126 Qu'est ce que la gp32 (url). L'ARM9 est utilisé dans la GP32. En quoi consiste le travail d'implem.
    127 Comment valider le travail.
     129L'objectif de ce stage est d'ajouter à l'exo-noyau Hexo le support de la mémoire virtuelle sur un processeur ARM doté d'une MMU de référence.
     130Pour cela, l'étudiant devra implémenter le driver pour la MMU du processeur ARM. Ce driver devra évidement respecter l'API cité précédement.
     131Hexo s'exécute déjà nativement sur une architecture composée d'un processeur ARM et d'une MMU générique du projet SoCLib. Il sera possible de s'inspiré de ce driver pour effectuer le travail demandé.
     132
     133La validation se fera soit sur une carte de développement SAM9-L9260 d'Olimex [1], soit sur la console de jeux portable GamePark32 [2].
     134Elles utilisent toutes les deux un processeur du type ARM 9 avec MMU. Elle consistera à exécuter une application sur MutekH/Hexo utilisant la mémoire virtuelle.