9 | | Vous devez disposer d'un ordinateur réel ou virtuel sur Linux pour faire les TPs.\\ |
| 9 | En 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`**. |
| 11 | La 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).\\ |
| 12 | Pour 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 | |
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] |
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]. |
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) |
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). |
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). |