Changes between Initial Version and Version 1 of Howto-TP-2021


Ignore:
Timestamp:
Mar 1, 2021, 4:55:34 PM (4 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Howto-TP-2021

    v1 v1  
     1{{{#!protected
     2**[https://www-soc.lip6.fr/trac/archi-l3s6/wiki/Howto-TP?action=edit EDIT]**
     3}}}
     4[[PageOutline]]
     5{{{#!html
     6<h1><font size=+2> Configuration de l'environnement des TP
     7}}}
     8
     9
     10Les travaux pratiques se font sur Linux.
     11Si vous avez Linux, vous pouvez sauter l'**Étape 1** et passer à l'**Étape 2**.
     12
     13La première étape est donc de disposer d'un ordinateur réel ou virtuel sur Linux ou alors de vous connecter sur une machine des salles de TP par VNC.
     14Pour VNC, vous devez suivre la procédure expliquée sur la page [wiki:VNC Connexion VNC].
     15Si vous travaillez sur un ordinateur Windows, vous allez devoir utiliser une machine virtuelle Linux ou un client VNC.
     16Si vous avez suivi l'UE de réseau, vous devriez déjà avoir !VirtualBox et une VM installée et en état de marche qui fonctionne pour l'UE d'archi.
     17Sinon, nous vous avons préparé une machine virtuelle utilisant !VirtualBox et une distribution !LinuxMint.
     18
     19
     20
     21= Étape 1. Environnement de travail Linux pour les TPs
     22
     23
     24
     25__Installation d'une machine virtuelle__
     26* 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.
     27  - [https://fr.wikihow.com/installer-VirtualBox wikihow : Comment installer VirtualBox]
     28  - [https://www.papergeek.fr/comment-installer-une-machine-virtuelle-linux-dans-windows-10-81428 papergeek : Comment installer une machine virtuelle linux dans windows 10]
     29* Récupérez le [https://frama.link/lu3ni029 disque de la machine virtuelle] (compressé avec 7z). Ce fichier fait 2Go.
     30* Décompressez le fichier, il occupera alors 12Go
     31* 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.
     32* 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`**.
     33
     34__Configurations utiles__
     35* Loguez-vous sur votre Linux (soit en natif, soit sur votre VM habituelle, soit sur celle que vous venez juste d'installer)
     36* Si c'est la VM que vous venez d'installer, vous devez sans doute changer le configuration par défaut :
     37  * **Configuration du Clavier** :\\La VM a été paramétrée pour un clavier PC-AZERTY. Si ce n'est pas votre clavier, vous devez changer.
     38    * Cliquez sur l'icône **`Keyboard`** présente sur le Bureau de la VM → Une fenêtre apparaît
     39    * Cliquez l'onglet **`Layout`** → par défaut **`Keyboard Model`** = **`Generic 105-key (PC)`** et **`Keyboard Layout`** = **`French AZERTY`** 
     40      * **`Keyboard Model`** devrait convenir au plus grand nombre, sinon sélectionner le vôtre.
     41      * **`Keyboard Layout`** est une liste de claviers et c'est le premier de cette liste qui est utilisé.\\Si votre clavier n'est pas dans cette liste :
     42         * Cliquez sur **`Add`**, sélectionner votre clavier et cliquez sur **`ok`**
     43         * Le nouveau clavier apparaît en fin de liste.
     44         * Utilisez les flèches à droite de cette liste pour mettre votre clavier en tête de liste.
     45    * Cliquez sur **`Close`** pour fermer l'application **`Keyboard`** et tester que cela fonctionne, sinon recommencez.
     46  * **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    * Allez sur la fenêtre du gestionnaire de VM (d'où vous avez lancé votre VM)
     48      * Cliquez sur **`Général`** → la fenêtre de configuration de la VM apparaît
     49      * Cliquez sur l'onglet **`Avancé`** → Une fenêtre apparaît avec deux menus déroulants
     50        * 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).
     51        * 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)
     52
     53
     54
     55= Étape 2. Prototype virtuel et chaîne de compilation MIPS
     56
     57
     58
     59* Démarrez la machine virtuelle.
     60* Dans le cas où vous êtes sur votre propre VM (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://www-soc.lip6.fr/trac/archi-l3s6/wiki/Howto-TP` ***\\''** * ** Conseil : vous pouvez utiliser le presse papier partagé si vous l'avez configuré à l'étape 1.''
     63* Récupérez l'archive contenant le **[htdocs:files/AS6.tgz prototype virtuel et la chaîne de compilation MIPS]**
     64* Placez l'archive à la racine de votre compte et ouvrez un terminal
     65* Décompressez l'archive avec la commande : **`tar xvf AS6.tgz`** à la racine de votre compte.
     66* Si vous avez bien placé l'archive à la racine de votre compte, déplacez-vous dans AS6 : **`cd $HOME/AS6`**
     67* Éditez le fichier **`$HOME/.bashrc`** et ajoutez au début **`source $HOME/AS6/bin/Source-me.sh`**
     68* Exécutez pour cette fois le **`.bashrc`** (parce que vous venez juste de le modifier) **`source $HOME/.bashrc`**
     69* Vous pouvez placer le répertoire **`AS6`** ailleurs qu'à la racine, voire le renommer, mais pour que cela fonctionne vous devez éditer la première ligne du fichier **`AS6/bin/Source-me.sh`**, toutefois dans les textes des TP, nous ferons l'hypothèse que le répertoire **`AS6`** est la racine du compte.
     70
     71
     72
     73= Étape 3. Test : compilation et exécution d'un test
     74
     75
     76
     77* Vous devez avoir sourcé le fichier **`bin/Source-me.sh`** (sinon relisez Étape 2)
     78* Allez dans le répertoire **`test`** de **`bin`**: **`cd $HOME/AS6/bin/test; make exec`**
     79
     80* __Si cela fonctionne, vous devez voir :
     81  * dans le terminal où vous avez lancé la commande précédente la bannière  du simulateur du prototype **`SystemCASS`** puis des informations sans importance. Vous devez aussi voir un compteur d'horloge qui s'incrémente tous les millions de cycles.
     82  * vous devez voir une fenêtre en haut à gauche avec marqué "Hello World!"\\
     83    Ce message est écrit par le programme qui s'exécute sur le MIPS.
     84  * Pour arrêter la simulation, tapez **`ctrl-C`** sur le terminal de lancement du simulateur.
     85
     86* __Si cela ne fonctionne pas :
     87  * peut-être n'avez-vous  pas placé le répertoire **`AS6`** à la racine de votre compte.\\
     88    Vous avez le droit, mais vous devez modifier la première ligne du fichier **`AS6/bin/Source-me.sh`** et indiquer le bon répertoire.
     89  * peut-être n'avez-vous pas sourcer le fichier **`AS6/bin/Source-me.sh`**.\\
     90    Vous pouvez le vérifier en tapant la commande **`cd;almo1.x`**\\
     91    Si le shell vous répond **`command not found`** ou **`commande inconnue`**, c'est que vous n'avez pas sourcé le fichier **`bin/Source-me.sh`**.
     92
     93
     94
     95= Remarques générales
     96
     97
     98
     99* Utilisez un **vrai** éditeur de code **moderne**, tel que **`code`** (Visual Studio Code) (ou  **`[g]vim`**, **`[x]emacs`** ou **`sublime-text`**) afin de profiter d'une aide à la programmation avec, par exemple, des fenêtres popup pour les prototypes. **`code`** est installé sur la VM !LinuxMint. Si vous utilisez votre propre VM, je vous conseille de l'installer.
     100* Vous allez devoir utiliser l'interpréteur de commande **`shell`** de Linux et quelques commandes. Si vous avez l'habitude d'utiliser la souris, il va falloir vous faire un peu violence, mais dîtes-vous que c'est pour votre bien ! Vous devrez parfois utiliser des commandes que vous ne connaissez pas, soyez curieux et tentez un **`man`** sur la commande (ou une recherche sur le web, c'est bien aussi).