Changes between Version 38 and Version 39 of Doc-MIPS-Archi-Asm-kernel


Ignore:
Timestamp:
Nov 12, 2020, 7:08:24 PM (5 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Doc-MIPS-Archi-Asm-kernel

    v38 v39  
    11[[PageOutline]]
    22{{{#!html
    3 <h1><font size=+2> Documentation MIPS Architecture et assembleur coté kernel
     3<h1><font size=+2> Documentation MIPS Architecture et assembleur (mode kernel)
    44}}}
    55
     
    88
    99
    10 Ce document présente une version simplifiée de l'architecture externe du processeur MIPS32. Pour des raisons de simplicité, tous les mécanismes matériels de gestion de la mémoire virtuelle ont été délibérément supprimés.
    11 
    12 L'architecture externe représente ce que doit connaître un utilisateur souhaitant programmer en assembleur, ou souhaitant écrire un compilateur. Elle définit:
    13 
    14  - Les registres visibles du logiciel ;
    15  - L'adressage de la mémoire ;
    16  - Le jeu d'instructions ;
    17  - Les mécanismes de traitement des interruptions, des exceptions et appels système.
    18 
    19 Le processeur MIPS32 est un processeur 32 bits conçu dans les années 1980. Son jeu d'instructions est de type RISC (Reduced Instruction Set Computer). Il existe de nombreuses réalisations industrielles de cette architecture (SIEMENS, NEC, LSI LOGIC, SILICON GRAPHICS, MICROCHIP, etc.).
    20 
    21 Cette architecture est suffisamment simple pour présenter les principes de base de l'architecture des processeurs, et suffisamment puissante pour supporter un système d'exploitation multitâches tel qu'UNIX, puisqu’il supporte deux modes de fonctionnement utilisateur (''user'') et système (''kernel'').
    22 
    23  - Dans le mode ''user'', certaines régions de la mémoire et certains registres du processeur sont protégés et donc inaccessibles.
    24  - Dans le mode ''kernel'', toutes les ressources sont accessibles, c'est-à-dire toute la mémoire et tous les registres.
    25 
    26 L'architecture interne n'est pas présentée dans ce module. Elle dépend des choix de réalisation matérielle. Plusieurs implémentations matérielles ont été réalisées à Sorbonne Université dans un but d'enseignement et de recherche : une version microprogrammée, simple mais peu performante (1 instruction s'exécute en 4 cycles d'horloge), une version pipeline plus performante (1 instruction par cycle) mais plus complexe et une version superscalaire, encore plus performante (2 instructions par cycle) mais beaucoup plus complexe.
    27 
    28 La spécification du langage d'assemblage,  les conventions d’utilisation des registres, ainsi que les conventions d’utilisation de la pile font l'objet d'un document séparé.
    29 
    30 
     10Ce document est la suite du document [htdocs:cours/doc_MIPS32.pdf Documentation MIPS32 architecture et assembleur (mode user)] (''Ce document est tiré du document initialement écrit par Alain Greiner''). Le MIPS supporte deux modes de fonctionnement utilisateur (''user'') et système (''kernel'').
     11
     12 - Dans le mode ''user'', certaines régions de la mémoire et certains registres du processeur sont protégés et donc inaccessibles. C'est dans ce mode que s'exécute les applications.
     13 - Dans le mode ''kernel'', toutes les ressources sont accessibles, c'est-à-dire toute la mémoire et tous les registres. C'est dans ce mode que s'exécute le noyau du système d'exploitation.
     14
     15Nous allons donc voir les éléments de l'architecture et du langage d'assemblage, sq
    3116
    3217