Introduction à l'informatique · L1 · Section 5/7
Glossaire
Progression
Points d’expérience : —XPSérie de jours consécutifs : —· —Progression du module : — / —compris
#Glossaire des termes utiles
Ce glossaire regroupe des définitions concises pour les termes fréquents du cours. Objectif : donner un rappel rapide (quoi et pourquoi) au moment où vous en avez besoin. Les entrées renvoient, quand c'est utile, vers la page qui développe la notion : histoire, représentation, matériel et logiciel, informatique et société, et les annales corrigées.
#Représentation et encodage
- Bit: unité d'information valant 0 ou 1; avec k bits on distingue valeurs.
- Octet (byte): groupe de 8 bits; 256 valeurs possibles.
- Hexadécimal: base 16 (chiffres 0-9 puis A-F); un chiffre encode 4 bits, un octet s'écrit sur deux chiffres.
- Complément à deux: encodage des entiers signés sur n bits; intervalle
[-2^{n-1}, 2^{n-1}-1]. - Débordement (overflow): résultat hors de l'intervalle représentable; l'arithmétique continue modulo .
- Nombre flottant (IEEE 754): approximation des réels avec signe, exposant et mantisse; 0,1 n'y est pas exact.
- Unicode: répertoire qui attribue un numéro (point de code) à chaque caractère écrit.
- UTF-8: encodage Unicode à longueur variable (1 à 4 octets par caractère); compatible ASCII.
- Endianness: ordre des octets d'un mot multi-octets (petit-boutiste ou gros-boutiste); critique en E/S binaire.
- Compression sans perte: réduction réversible (PNG, ZIP, gzip).
- Compression avec perte: réduction irréversible qui accepte une dégradation (JPEG, MP3).
#Architecture et systèmes
- CPU: processeur; exécute le cycle charger, décoder, exécuter.
- RAM: mémoire vive, volatile,accessible en environ 100 ns.
- Cache (L1/L2/L3): petite mémoire rapide entre CPU et RAM; exploite la localité spatiale et temporelle.
- Latence: temps d'attente pour une opération; à distinguer du débit (throughput).
- Débit (throughput): quantité traitée par unité de temps; souvent en tension avec la latence.
- Pilote (driver): logiciel qui traduit un périphérique en interface commune pour l'OS.
- Firmware: logiciel embarqué dans le matériel lui-même.
- Système d'exploitation: couche qui abstrait le matériel, arbitre les ressources et isole les processus.
- Appel système (syscall): point d'entrée contrôlé vers l'OS (open, read, send).
- Processus: programme en exécution avec espace mémoire isolé.
- Thread: flux d'exécution léger partageant la mémoire du processus.
- Ordonnancement: politique de répartition du CPU entre tâches.
- Mémoire virtuelle: espace d'adressage par processus, traduit via MMU/TLB.
- Page fault: défaut lors d'un accès à une page non présente ou non mappée.
- Copy-on-write: différer les copies jusqu'à la première écriture effective.
- Système de fichiers: organisation durable du stockage (inodes, répertoires, journaling).
- IPC: mécanismes d'échange et de synchronisation entre processus (pipes, shm, mutex).
- Deadlock: interblocage circulaire de verrous ou de ressources.
- Virtualisation: exécution d'OS invités (hyperviseur); conteneurs: isolation au niveau du noyau.
#Réseaux et web
- IP: adressage logique pour acheminer des paquets entre réseaux (IPv4/IPv6).
- TCP: transport fiable orienté connexion (ordre, retransmission, contrôle de congestion).
- UDP: datagrammes sans garantie; faible latence, pas d'ordre intrinsèque.
- DNS: annuaire distribué nom de domaine vers adresse IP; résolveurs, caches et TTL.
- HTTP: protocole applicatif du web (méthodes, statuts, en-têtes, corps).
- TLS: chiffrement et authenticité des communications réseau (HTTPS).
- CDN: réseau de diffusion qui rapproche le contenu des utilisateurs.
- NAT: traduction d'adresses et de ports pour partager une IP publique.
- CORS: politique navigateur pour les requêtes cross-origin côté JavaScript.
- QUIC: transport chiffré sur UDP (HTTP/3), faible latence, migration de connexion.
#Algorithmique et structures
- Algorithme: procédure finie pour résoudre un problème; précise le quoi et l'ordre des étapes.
- Complexité: coût asymptotique en temps et mémoire en fonction de la taille n de l'entrée.
- Big-O: borne supérieure asymptotique (O(n log n), O(n²)); on garde le terme dominant.
- Pile (stack): LIFO; appels de fonctions, récursion, backtracking.
- File (queue): FIFO; parcours en largeur, planification.
- Tableau: stockage contigu; accès index O(1), insertion au milieu O(n).
- Liste chaînée: insertion locale O(1); accès index O(n), faible localité cache.
- Tas (heap): file de priorité; insertion et extraction du minimum en O(log n).
- Arbre binaire de recherche: O(log n) par opération si équilibré.
- Table de hachage (dict): accès moyen O(1) amorti; dépend du hachage et du facteur de charge.
- Diviser pour régner: découper, résoudre les sous-problèmes, combiner (tri fusion, dichotomie).
- Coût amorti: coût moyen par opération lorsqu'une opération ponctuellement chère est rare (ajout en fin de liste dynamique : O(1) amorti).
- Croissance factorielle: , qui croît plus vite que toute exponentielle; énumérer les permutations d'un ensemble de éléments coûte opérations.
- Programmation dynamique: réutilisation de sous-solutions (mémoïsation, tabulation).
- Glouton (greedy): choix local avec preuve d'optimalité (échange, matroïdes).
- A*: recherche informée avec heuristique admissible et consistante.
#Outils formels (ensembles, dénombrement, mots)
- Ensemble: collection d'objets distincts, appelés éléments; on note l'appartenance.
- Univers: dans un contexte donné, l'ensemble de tous les éléments existants.
- Ensemble vide (): l'unique ensemble à 0 élément.
- Opérations ensemblistes: union , intersection , différence , complémentation , différence symétrique , produit cartésien .
- Cardinalité (): nombre d'éléments d'un ensemble; un entier s'il est fini, s'il est infini dénombrable.
- Dénombrable: ensemble en bijection avec ou avec une partie de . Les ensembles finis et infinis dénombrables sont aussi dits discrets.
- Non dénombrable: ensemble trop grand pour être mis en bijection avec ; et le sont.
- Bijection: application injective et surjective; deux ensembles en bijection ont même cardinal.
- Fonction caractéristique: application qui vaut 1 sur les éléments d'une partie et 0 ailleurs; elle identifie une partie à un mot binaire.
- Ensemble des parties (): l'ensemble des sous-ensembles de ; si est fini, et n'est pas dénombrable si est infini dénombrable.
- Principe additif: ; si les forment une partition, .
- Principe multiplicatif: .
- Principe d'égalité: s'il existe une bijection entre et alors .
- Principe des tiroirs (pigeonhole): si , aucune injection de dans n'existe; autrement dit, objets dans tiroirs laissent un tiroir à deux objets au moins.
- Formule du crible: .
- Diagonale de Cantor: construction d'un objet absent de toute liste dénombrable; elle prouve que et ne sont pas dénombrables.
- Mot: suite finie de lettres sur un alphabet fini ; l'ensemble des mots se note , le mot vide .
- Alphabet: ensemble dénombrable de symboles; en pratique fini (, Unicode).
- Langage (formel): ensemble de mots, c'est-à-dire une partie de .
- Longueur d'un mot (): son nombre de lettres; .
- Préfixe, suffixe, facteur, sous-mot: début d'un mot (), fin, partie contiguë (), et mot obtenu en effaçant des lettres.
- Miroir d'un mot (): mot obtenu en renversant l'ordre des lettres; un palindrome est égal à son miroir.
- Occurrence d'une lettre: nombre de fois où apparaît dans , noté .
- Codage: application injective de dans ; l'injectivité garantit un décodage unique de l'objet.
- Concatenation () et fermeture de Kleene (): opérations de base sur les langages.
- Permutation: bijection d'un ensemble sur lui-même; il y en a sur éléments.
- Arrangement: suite ordonnée sans répétition de éléments parmi , au nombre de .
- Arrangement avec répétition: application de dans , au nombre de .
- Combinaison: partie à éléments d'un ensemble à éléments, au nombre de .
- Combinaison avec répétition: nombre de solutions de , soit .
- Coefficient multinomial: nombre de partitions d'un ensemble à éléments en parties de cardinaux donnés, .
- Factorielle: ; l'ordre de grandeur est , précisé par la formule de Stirling.
- Relation de récurrence: ; d'ordre si elle ne remonte que de termes, complète si tous les termes précédents interviennent, de partition si seuls les apparaissent.
- Équation caractéristique: équation associée à une récurrence linéaire d'ordre 2 homogène; ses racines donnent le terme général.
- Série formelle: représentation d'une suite, où est un simple symbole de position; outil général de résolution des récurrences linéaires.
- Inductif (ensemble): ensemble muni d'un bon ordre, sur lequel le principe d'induction s'applique.
- Bien fondé (ordre): ordre sans suite infinie strictement décroissante; équivaut à « toute partie non vide admet un élément minimal ».
- Définition inductive: donnée d'une base finie et d'un ensemble fini d'opérations; est le plus petit ensemble contenant et clos par ces opérations.
- Définition non ambiguë: définition inductive où chaque élément admet une seule construction; condition nécessaire pour compter correctement.
- Induction généralisée: principe sur un ordre bien fondé; si pour tout , alors est vraie partout.
- Élément minimal, minimum: un minimal vérifie ; un minimum est plus petit que tous les éléments. Ils coïncident si l'ordre est total.
- Diagramme de Hasse: représentation d'un ordre sans réflexivité ni transitivité, orientée du bas vers le haut.
- Linéarisation (tri topologique): extension d'un ordre partiel en ordre total par choix répété d'un sommet de degré entrant nul.
- Algèbre de Boole: ensemble muni de deux éléments distingués et de trois opérations (produit, somme, complément) vérifiant idempotence, associativité, commutativité, distributivité et absorption.
- Fonction booléenne: fonction de dans , déterminée par sa table de vérité; il y en a .
- Littéral et clause: un littéral est une variable booléenne ou sa négation; une clause est une disjonction de littéraux.
- Forme normale conjonctive: conjonction de clauses; toute formule peut y être mise.
- Résolution (zéro-résolution): méthode syntaxique de démonstration automatique; le résolvant de et est , et l'apparition de la clause vide signale une contradiction.
- Domaine et image d'une fonction: est l'ensemble des entrées ayant une image, l'ensemble des sorties atteintes.
- Fonction totale, fonction partielle: totale si , partielle si ; une application est une fonction totale.
- Curryfication: transformation d'une fonction de vers en une fonction de vers les fonctions de vers .
#Sécurité
- Triade CIA: confidentialité, intégrité, disponibilité; les trois objectifs de la sécurité.
- Authentification: vérifier l'identité (mot de passe, 2FA, certificats).
- Autorisation: déterminer les droits d'accès (RBAC/ABAC, scopes).
- Chiffrement symétrique: même clé pour chiffrer et déchiffrer (AES-GCM).
- Chiffrement asymétrique: paire clé publique et clé privée (RSA, ECC).
- Hachage: empreinte irréversible (SHA-256); ne prouve pas l'authenticité à lui seul.
- HMAC: intégrité et authenticité avec clé partagée.
- Signature: intégrité et non-répudiation avec clé privée et publique.
- Sel (salt): valeur aléatoire qui durcit le hachage des mots de passe.
- PBKDF2/Argon2: dérivation de clé résistante au bruteforce sur GPU et ASIC.
- CSRF: requête forgée cross-site; défenses: SameSite, token, vérification Origin.
- XSS: injection de script; défenses: échappement systématique, CSP.
#Python (pratique)
- Liste: séquence mutable et ordonnée; append, pop, sort, slices.
- Tuple: séquence immuable; sert d'enregistrement et de clé de dictionnaire.
- Dict: table de hachage clé vers valeur; clés immuables et hachables.
- Set: collection non ordonnée d'éléments uniques; union, intersection, différence.
- Compréhension: syntaxe compacte pour construire une collection.
- Générateur: itérateur paresseux produit via yield; économe en mémoire.
- Context manager (with): acquisition et libération garanties de ressources.
- Exception: signal d'erreur contrôlée; try/except/else/finally.
- Annotation de type: indice pour l'outillage; vérifié par mypy ou pyright, pas au runtime.
- Environnement virtuel (venv): dépendances isolées par projet.
- PEP 8: conventions de style; facilite lecture et cohérence.
- Dataclass: classe de données avec génération automatique (init, eq, repr).
- pytest: framework de tests concis; fixtures et assertions expressives.
- logging: journalisation avec niveaux (DEBUG à CRITICAL) et handlers.
#Développement et gouvernance
- API: interface d'un service ou d'une bibliothèque; contrat d'échange stable.
- Abstraction: ignorer les détails non pertinents pour raisonner à un niveau utile.
- État: données persistantes à un instant; plus d'état veut dire plus de cas à gérer et tester.
- Idempotence: exécuter plusieurs fois produit le même résultat final (PUT, DELETE).
- Déterminisme: même entrée produit la même sortie; facilite test et reproductibilité.
- Observabilité: capacité à comprendre un système en production (logs, métriques, traces).
- SLA/SLO: accord et objectif de niveau de service; formalisent disponibilité et latence.
- Cache: stockage temporaire pour accélérer les accès répétés en sacrifiant de la fraîcheur.
- RGPD: règlement européen sur la protection des données; minimisation, finalité, droits.
- WCAG: règles d'accessibilité du web (percevable, utilisable, compréhensible, robuste).
- AIPD (DPIA): analyse d'impact exigée pour les traitements sensibles ou à grande échelle.
- Ecoconception: concevoir des services sobres en énergie, en données et en durée de cycle.