Changes between Version 40 and Version 41 of Howto-TP


Ignore:
Timestamp:
Oct 25, 2021, 8:31:11 AM (4 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Howto-TP

    v40 v41  
    77}}}
    88
    9 Vous devez disposer d'un ordinateur réel ou virtuel sur Linux pour faire les TPs.\\
     9En TP, vous allez compiler vos programmes pour le MIPS et les exécuter le prototype virtuel du SoC nommé **`almo1`** présenté en cours.
     10**`almo1`** est composé d'un MIPS (il peut en avoir plusieurs mais ici nous n'en utiliserons qu'un seul) et de plusieurs contrôleurs de périphériques (terminal TTY, fenêtre graphique, disques, etc. Le simulateur d'**`almo1`** se présente sous la forme d'un exécutable qui simule son comportement. Le (ou les) MIPS présents exécutent les programmes se trouvant dans les bancs de mémoire d'**`almo1`**.
     11La simulation est complète depuis le signal reset et précise au cycle et au bit (cela signifie que si c'était une vraie machine, vous auriez exactement le même comportement de vos programmes).\\
     12Pour exécuter le simulateur d'**`almo1`**, vous devez disposer d'un ordinateur réel ou virtuel sur Linux. Cette page décrit comment installer votre environnement de travail.
     13
    1014Il y a plusieurs cas de figure:
    11151. Si vous travaillez dans les salles de TP de la PPTI ⟶ faites les étapes **2.2** et **3**.
    12 1. Vous êtes sur votre ordinateur personnel sur Windows ou MacOS ⟶ faites les étapes **1**, **2.1** et **3**.
     161. Vous êtes sur votre ordinateur personnel sur Windows ou macOS ⟶ faites les étapes **1**, **2.1** et **3**.
    13172. Vous êtes sur une distribution Linux ou si vous avez déjà une VM Linux ⟶ faites les étapes **2.1** et **3**.\\
    14    Notez que si vous suivez l'UE **réseau**, vous devriez déjà avoir l'application !VirtualBox et une VM installée en état de marche, cette VM fonctionne pour l'UE d'Archi. Sinon, nous vous avons préparé une machine virtuelle utilisant !VirtualBox et une distribution !LinuxMint.
     18   Notez que si vous suivez l'UE **réseau**, vous devriez déjà avoir l'application [https://www.virtualbox.org/wiki/VirtualBox VirtualBox] et une VM installée en état de marche, cette VM fonctionne pour l'UE d'Archi. Sinon, nous vous avons préparé une machine virtuelle utilisant !VirtualBox et une distribution !LinuxMint.
    1519
    1620
     
    2125
    2226__Installation d'une machine virtuelle__
    23 * Il existe de très bons didacticiels pour l'installation de !VirtualBox et je préfère que vous les lisiez, je ne ferai sans doute pas mieux. Si vous rencontrez un problème, pensez à utiliser les forums sur Moodle ou Discord pour vous aidez.
    24   - [https://fr.wikihow.com/installer-VirtualBox wikihow : Comment installer VirtualBox]
     27* Il existe de très bons didacticiels pour l'installation de !VirtualBox et nous préfèrons que vous les lisiez, nous ne ferons sans doute pas mieux. Si vous rencontrez un problème, pensez à utiliser les forums sur Moodle, Discord et plus généralement le web pour vous aidez. Par exemple, voici deux références sur l'installation de !VirtualBox:
     28  - [https://fr.wikihow.com/installer-VirtualBox wikihow : Comment installer !VirtualBox]
    2529  - [https://www.papergeek.fr/comment-installer-une-machine-virtuelle-linux-dans-windows-10-81428 papergeek : Comment installer une machine virtuelle linux dans windows 10]
    26 * Récupérez le [https://frama.link/lu3ni029 disque de la machine virtuelle] (compressé avec 7z). Ce fichier fait 2Go.
    27 * Décompressez le fichier, il occupera alors 12Go
    28 * Ainsi, vous devez créer une nouvelle VM dans !VirtualBox, choisir comme type **`Linux Ubuntu 64 bits`** et comme disque le fichier .vdi que vous venez juste de télécharger. Ce [https://www.eugenetoons.fr/utiliser-un-fichier-vdi-dans-virtualbox/ didacticiel sur comment utiliser un fichier vdi] peut vous aider.
    29 * Vous n'aurez pas besoin du mot de passe au démarrage, mais si vous souhaitez ajouter une application, il vous sera demandé.\\Le mot de passe root est : **`osboxes.org`**.
     30* Récupérez le [https://frama.link/lu3ni029 disque de la machine virtuelle (!LinuxMint)] (compressé avec 7z). Ce fichier fait 2Go.
     31* Décompressez le fichier, il occupe alors 12Go
     32* Créez une nouvelle VM dans !VirtualBox, choisir comme type **`Linux Ubuntu 64 bits`** et, comme disque, le fichier **`.vdi`** que vous venez juste de télécharger et de décompresser. Ce [https://www.eugenetoons.fr/utiliser-un-fichier-vdi-dans-virtualbox/ didacticiel sur comment utiliser un fichier vdi] peut vous aider.
     33* Vous n'aurez pas besoin du mot de passe au démarrage, mais si vous souhaitez ajouter une application, il vous sera demandé.\\Le mot de passe root est : **`osboxes.org`** puisque la distribution utilisée comme base a été prise sur le site [https://www.osboxes.org/ osboxes.org] sur lequel vous pouvez trouver de nombreuses machines virtuelles pour [https://www.virtualbox.org/wiki/VirtualBox VirtualBox] et pour [https://www.vmware.com/fr.html VMware].
    3034
    3135__Configurations utiles__
     
    4145         * Utilisez les flèches à droite de cette liste pour mettre votre clavier en tête de liste.
    4246    * Cliquez sur **`Close`** pour fermer l'application **`Keyboard`** et tester que cela fonctionne, sinon recommencez.
    43   * **Configuration du presse papier partagé** :\\Vous pouvez autoriser le partage du presse papier (crtl-C/ctrl-V) entre la machine hôte et la VM
     47  * **Configuration du presse papier partagé** :\\Vous pouvez autoriser le partage du presse papier (crtl-C/ctrl-V) entre la machine hôte (Windows ou macOS) et la VM
    4448    * Allez sur la fenêtre du gestionnaire de VM (d'où vous avez lancé votre VM)
    4549      * Cliquez sur **`Général`** → la fenêtre de configuration de la VM apparaît
    4650      * Cliquez sur l'onglet **`Avancé`** → Une fenêtre apparaît avec deux menus déroulants
    47         * Sur le menu déroulant : **`Presse-papier partagé`** sélectionnez **`Bidirectionnel`**\\→ vous pourrez faire un ctrl-C sur la machine hôte et un ctrl-V sur la machine invitée (la VM) (et inversement).
    48         * Sur le menu déroulant : **`Glisser-Déposer`** sélectionnez **`Bidirectionnel`**\\→ vous pourrez faire un « ''Drag & Drop'' » entre la machine hôte et la VM (dans les deux sens)
     51        * Sur le menu déroulant : **`Presse-papier partagé`** sélectionnez **`Bidirectionnel`**\\→ vous pourrez faire un **`ctrl-C`** (ou `cmd-C`) sur la machine hôte et un **`ctrl-V`** (ou `cmd-V`) sur la machine invitée et inversement.
     52        * Sur le menu déroulant : **`Glisser-Déposer`** sélectionnez **`Bidirectionnel`**\\→ vous pourrez faire un « ''Drag & Drop'' » entre la machine hôte et la VM (dans les deux sens).
    4953
    5054
    5155
    52 = Étape 2. Installation du prototype virtuel et de la chaîne de compilation MIPS
     56= Étape 2. Installation du simulateur **almo1** et de la chaîne de compilation pour MIPS
    5357
    5458
     
    5862
    5963* Démarrez la machine virtuelle (ou réelle si vous êtes nativement sur Linux)
    60 * Dans le cas où vous êtes sur votre propre VM ou distribution (et non celle que nous vous proposons), vous devez commencez par vérifier que vous avez l'application **`xterm`** sur votre distribution Linux. **`xterm`** est le terminal de commande que va utiliser le simulateur pour les TTY et il n'est pas toujours installé par défaut.
    61   * Si vous ne l'avez pas vous devez l'installer avec **`sudo apt-get install xterm`**\\(si vous êtes sur une distribution debian ou ses dérivés : ubuntu, linux-mint, etc...)
    62 * Démarrez un navigateur web sur votre Linux et chargez la page de l'UE : **`https://frama.link/AS5`** (raccourci de l'URL **`https://www-soc.lip6.fr/trac/archi-l3s5/wiki/Howto-TP`**)
    63 * Récupérez l'archive contenant le **[htdocs:files/K6bin.tgz prototype virtuel et la chaîne de compilation MIPS]**
     64* Dans le cas où vous êtes sur votre propre VM ou distribution (et non celle que nous vous proposons), vous devez commencez par vérifier que vous avez l'application **`xterm`** sur votre distribution Linux. **`xterm`** est le terminal de commande que va utiliser **`almo1`** pour les TTY et **`xterm`** n'est pas toujours installé par défaut.
     65  * Si vous ne l'avez pas vous devez l'installer avec **`sudo apt-get install xterm`**\\(si vous êtes sur une distribution debian ou ses dérivés : ubuntu, linux-mint, etc.)
     66* Démarrez un navigateur web sur votre Linux et chargez la page de l'UE : **`https://frama.link/AS5`** (c'est un raccourci de l'[https://www.wikiwand.com/fr/Uniform_Resource_Locator URL] de la page que vous êtes en train de lire **`https://www-soc.lip6.fr/trac/archi-l3s5/wiki/Howto-TP`**)
     67* Récupérez l'archive contenant le **[htdocs:files/K6bin.tgz simulateur `almo1` et la chaîne de compilation pour MIPS]** (en cliquant sur ce lien)
    6468* Placez l'archive à la racine de votre compte et ouvrez un terminal
    65 * Décompressez l'archive avec la commande : **`tar xvf K6bin.tgz`** à la racine de votre compte.
    66 * Si vous avez bien placé l'archive à la racine de votre compte, déplacez-vous dans AS5 : **`cd $HOME/K6`**
    67 * Éditez le fichier **`$HOME/.bashrc`** et ajoutez au début **`source $HOME/K6/bin/Source-me.sh`**
    68 * Exécutez pour cette fois le **`.bashrc`** (parce que vous venez juste de le modifier) **`source $HOME/.bashrc`**
     69* Décompressez l'archive avec la commande : **`tar xvf K6bin.tgz`** à la racine de votre compte. **`K6`** est le nom que nous avons donné au petit ''système d'exploitation'' s'exécutant sur **`almo1`**
     70* Si vous avez bien placé l'archive à la racine de votre compte, déplacez-vous dans le répertoire **`K6`** : **`cd $HOME/K6`**
     71* Éditez le fichier **`$HOME/.bashrc`** et ajoutez au début **`source $HOME/K6/bin/Source-me.sh`**. Ce script modifie quelques variables d'environnement telle que **`PATH`** qui permet de définir les répertoires dans lesquels le shell **`bash`** trouve ses exécutables (ici la chaîne de compilation pour le MIPS et le simulateur **`almo1`**.
     72* Exécutez pour cette fois le **`.bashrc`** (parce que vous venez juste de le modifier) en tapant **`source $HOME/.bashrc`**. Vous pouvez aussi ouvrir un nouveau terminal, celui-ci exécutera le script **`.bashrc`** avant d'afficher le prompt (l'invite de commande en français).
    6973* Vous pouvez placer le répertoire **`K6`** ailleurs qu'à la racine, voire le renommer, mais pour que cela fonctionne vous devez éditer la première ligne du fichier **`K6/bin/Source-me.sh`**, toutefois dans les textes des TP, nous ferons l'hypothèse que le répertoire **`K6`** est la racine du compte.
    7074
     
    7377
    7478
    75 * Éditez le fichier **`$HOME/.bashrc`** et ajoutez au début:\\**`source /Infos/lmd/2021/licence/ue/LU3IN029-2021oct/K6/bin/Source-me.sh`**
    76 * Exécutez pour cette fois le **`.bashrc`** (parce que vous venez juste de le modifier)\\ **`source $HOME/.bashrc`**
     79* Éditez votre fichier **`$HOME/.bashrc`** et ajoutez au début:\\**`source /Infos/lmd/2021/licence/ue/LU3IN029-2021oct/K6/bin/Source-me.sh`**\\
     80 Ce script modifie quelques variables d'environnement telle que **`PATH`** qui permet de définir les répertoires dans lesquels le shell **`bash`** trouve ses exécutables (ici la chaîne de compilation pour le MIPS et le simulateur **`almo1`**.
     81* Exécutez pour cette fois le **`.bashrc`** (parce que vous venez juste de le modifier)\\ **`source $HOME/.bashrc`**\\
     82 Vous pouvez aussi ouvrir un nouveau terminal, celui-ci exécutera le script **`.bashrc`** avant d'afficher le prompt (l'invite de commande en français).
    7783
    7884
     
    8187
    8288
    83 
     89* Si vous
    8490* ''cette partie doit être changé pour le cas où on est sur une machine de l'ARI``\\Allez dans le répertoire **`test`** du répertoire **`bin`**:\\**`cd $HOME/AS5/bin/test; make exec`**
    8591