Aide à la révision
À la demande générale, voici un document pour vous aider à réviser. Il liste en un seul endroit les concepts que nous avons vus pendant la session. Pour chacun d'entre eux, assurez-vous que vous les comprenez, êtes capables de les expliquer en vos mots, d'énumérer ce qui est demandé ou de faire les calculs demandés. Si ce n'est pas le cas, retournez lire la section des notes de cours correspondante. Vous pouvez aussi voir si vous arrivez à répondre sans hésitation aux questions préparatoires.
- Introduction aux systèmes d'exploitation
- Les composantes d'un SÉ
- Les rôles d'un SÉ
- Les catégories de SÉ
- L'historique de Windows (en gros)
- Le système binaire et hexadécimal
- Conversions (décimal -> binaire, bin -> déc, déc -> hexa, hexa -> déc, bin -> hexa, hexa -> bin)
- Les nombres négatifs en binaire (bit de signe, comment savoir qu'un nombre binaire est négatif selon le type de variable, signed/unsigned)
- Les types de variables et leur taille en octets
- Le débordement (overflow)
- Les char et le code ASCII, cin et cout avec char (problèmes à envisager)
- Les nombres décimaux en binaire (Les limites de la représentation à virgule flottante, pourquoi il y a des erreurs, pourquoi le == n'est plus fiable, que faire à la place?)
- Machines virtuelles et installation de Windows 10
- Avantages et inconvénients d'une machine virtuelle
- Désactiver HyperV : pourquoi et comment
- Système de fichiers NTFS et permissions
- Concept d'usagers et de groupes
- Les différentes permissions et ce qu'elles donnent comme accès
- Le concept de l'héritage des permissions et quand/comment le désactiver
- Démêler les cas de permissions multiples qui se contredisent
- La pile des appels
- Ce qu'est une pile en général et les opérations possibles à y faire
- Ce qu'on empile sur la pile des appels (qu'est-ce qu'un contexte d'exécution et que contient-il?)
- Ce qui se passe sur la pile quand on appelle une fonction avec des paramètres
- Ce qui se passe sur la pile quand la fonction termine avec une valeur de retour
- L'impact de la pile des appels sur la portée des variables et sur le passage de paramètres/valeur de retour entre les fonctions
- Comment dessiner l'état de la pile des appels à un certain point de l'exécution d'un programme
- Commandes console
- Connaître l'existence de cmd et ce qu'il est
- Invite de commande (prompt)
- Lecteurs (C:, D:), comment passer d'un à l'autre
- Répertoires et chemins (absolus, relatifs, la différence entre les deux, savoir utiliser l'un ou l'autre selon ce qui est demandé, . et ..)
- Les paramètres (ce que c'est, ce qu'est une switch)
- Les commandes de base et leur fonctionnement général (cd, dir, copy, move, rename, del, rd, md, echo, type, help -- pas besoin d'en connaître toutes les switches)
- Les caractères génériques (* et ?, leur usage, être capable de former des masques complexes avec eux comme en labo)
- Rediriger la sortie d'une commande dans un fichier avec >
- Les scripts Windows (batch files)
- Ce qu'est un script et leur utilité
- Différence entre compilé et interprété
- Les différentes commandes et structures propres à un batch
- rem
- if/else et sa syntaxe pointilleuse
- echo (echo., echo off, le @ avant une commande)
- Rediriger la sortie d'une commande vers NUL (à quoi ça sert)
- variables (set, variable entre %%, absence de déclaration/type, répondre aux questions en italique à leur sujet dans les notes de cours)
- vérifier l'existence d'un fichier/dossier
- la négation (not)
- Paramètres, valeurs de retour, tuyauterie
- Ce qu'est un paramètre dans le contexte des commandes console
- Comment faire en sorte qu'un programme C++ accepte des paramètres en mode console
- Ce qu'est argc, ce qu'il contient
- Ce qu'est argv, ce qu'il contient
- Comment vérifier avant d'utiliser argv pour éviter de faire planter notre programme s'il n'a pas reçu suffisamment de paramètres
- Convertir les paramètres numériques avec stoi: pourquoi? Comment?
- Comparer un paramètres avec une chaîne de texte, la particularité du char*, comment contourner le problème
- La valeur de retour (return 0 à la fin du main), ce qu'elle signifie, où elle va
- Comment faire un appel système dans un programme C++
Bonne étude et bonne fin de session! Et surtout, arrangez-vous pour scorer à l'examen final!