Composants d'un ordinateur, OS et écosystème GNU/Linux
Fiche de synthèse A4 : composants matériels d'un ordinateur, rôle du noyau et espace utilisateur, genèse GNU/Linux, distributions et atouts majeurs pour le développeur.
Cette fiche présente les composants matériels d’un ordinateur, le rôle d’un système d’exploitation, l’architecture d’un OS moderne et la structure de l’écosystème GNU/Linux.
1. Les composants matériels d’un ordinateur
Avant d’installer un OS, il faut savoir identifier le matériel (hardware) sur lequel il va s’exécuter. Tous ces composants sont reliés entre eux par la carte mère et pilotés par l’OS une fois celui-ci installé :
| Composant | Rôle précis | Analogie mémorable |
|---|---|---|
| Carte mère | Circuit central qui relie et fait communiquer tous les composants (bus, chipsets, connecteurs) | Les rues et artères de la ville |
| Processeur (CPU) | « Cerveau » qui exécute les instructions : fréquence (GHz) et nombre de cœurs | L’ouvrier qui travaille |
| Mémoire vive (RAM) | Espace de travail très rapide mais volatile (effacée à l’extinction) | Le plan de travail |
| Stockage (SSD / HDD) | Mémoire de masse persistante : OS, applications et fichiers | L’armoire de classement |
| Carte graphique (GPU) | Calcule et affiche les images à l’écran | L’afficheur |
| Alimentation (PSU) | Convertit le courant du secteur pour alimenter chaque composant | Le compteur électrique |
À cela s’ajoutent les périphériques (écran, clavier, souris) et les cartes d’extension (réseau Ethernet/Wi-Fi, son), connectés à la carte mère.
RAM vs Stockage : ne pas confondre
- La RAM est volatile : elle ne conserve les programmes en cours d’exécution que la machine allumée. Plus elle est ample, plus le multitâche est fluide.
- Le stockage est persistant : le SSD (puces flash, rapide, silencieux) ou le HDD (plateaux magnétiques, grande capacité) conservent les données, machine éteinte comprise.
2. Qu’est-ce qu’un Système d’Exploitation (OS) ?
Un système d’exploitation (Operating System ou OS) est le logiciel fondamental d’un ordinateur. Il assure le rôle d’intermédiaire entre les composants matériels physiques (hardware) et les logiciels applicatifs (software : navigateur web, éditeur de code, suite bureautique).
┌─────────────────────────────────────────────────────────┐
│ APPLICATIONS UTILISATEUR (VS Code, Firefox) │
├─────────────────────────────────────────────────────────┤
│ SYSTÈME D'EXPLOITATION (GNU/Linux) │
│ ┌───────────────────────────────────────────────────┐ │
│ │ Espace Utilisateur (Userland : bash, apt, kde) │ │
│ ├───────────────────────────────────────────────────┤ │
│ │ Noyau (Kernel : gestion mémoire, disques, CPU) │ │
│ └───────────────────────────────────────────────────┘ │
├─────────────────────────────────────────────────────────┤
│ MATÉRIEL (CPU, RAM, SSD, Carte Réseau) │
└─────────────────────────────────────────────────────────┘
Le Noyau (Kernel) vs l’Espace Utilisateur (Userland)
Un système moderne sépare strictement deux espaces d’exécution pour garantir la stabilité et la sécurité :
- L’Espace Noyau (Kernel Space) :
- Cœur du système chargé en mémoire dès le démarrage.
- Accède directement au matériel et dispose de tous les privilèges.
- 4 missions vitales :
- Gestion du processeur (CPU) : ordonnancement des tâches (scheduling).
- Gestion de la mémoire vive (RAM) : allocation et isolation de la mémoire pour chaque programme.
- Gestion des périphériques : communication avec le matériel via des pilotes (drivers).
- Gestion du stockage et des accès : contrôle des fichiers et respect des droits de sécurité.
- L’Espace Utilisateur (Userland) :
- Zone où s’exécutent les logiciels applicatifs et l’environnement graphique.
- Les programmes n’ont aucun accès direct au matériel : pour lire un fichier ou envoyer un paquet réseau, ils effectuent une demande contrôlée au noyau appelée appel système (system call).
3. Modèles de Systèmes : Propriétaire vs Logiciel Libre
| Critère | Systèmes Propriétaires (Windows, macOS) | Systèmes Libres (GNU/Linux, BSD) |
|---|---|---|
| Code Source | Fermé (boîte noire), détenu par l’éditeur commercial. | Ouvert et auditable publiquement par tous les développeurs. |
| Modèle Économique | Licence payante par poste, dépendance fournisseur (Vendor Lock-in), télémétrie. | Gratuité d’usage, modèle de services/support, indépendance technologique. |
| Personnalisation & Contrôle | Interface et services imposés, difficilement modifiables en profondeur. | Modularité totale : choix du noyau, de l’environnement de bureau, des composants. |
4. La Genèse : Pourquoi dit-on « GNU/Linux » ?
L’environnement Debian que nous utilisons repose sur la rencontre historique de deux projets :
- Le projet GNU (1983 - Richard Stallman) :
- Objectif : créer un système d’exploitation complet, performant et 100 % libre.
- Le projet a développé tous les outils indispensables : le compilateur (
gcc), le shell (bash), les utilitaires de base (ls,cp,grep). Il ne manquait que le noyau.
- Le noyau Linux (1991 - Linus Torvalds) :
- Linus Torvalds conçoit et publie sur Internet un noyau libre et léger adapté aux processeurs PC.
- L’assemblage GNU/Linux :
- Les outils système du projet GNU ont été greffés sur le noyau Linux pour former un système complet et autonome.
Les 4 libertés du Logiciel Libre
Une licence libre (comme la GNU GPL) garantit 4 libertés fondamentales :
- Liberté 0 : Utiliser le logiciel pour tous les usages.
- Liberté 1 : Étudier le fonctionnement du programme et adapter son code source.
- Liberté 2 : Redistribuer des copies pour aider autrui.
- Liberté 3 : Améliorer le programme et publier ses modifications pour la communauté.
5. Les Distributions Linux & les Environnements de Bureau
Le noyau Linux et les utilitaires GNU étant libres, des organisations assemblent ces briques avec un gestionnaire de paquets et un environnement graphique pour créer une distribution (distro) :
| Famille | Distributions clés | Gestionnaire de paquets | Format | Cible principale |
|---|---|---|---|---|
| Debian | Debian, Ubuntu, Linux Mint | APT (apt) |
.deb |
Stabilité, serveurs, développement SIO |
| Red Hat | RHEL, Fedora, Rocky Linux | DNF / RPM | .rpm |
Grandes entreprises, cloud d’entreprise |
| Arch | Arch Linux, Manjaro | Pacman | .pkg.tar.zst |
Utilisateurs avancés, rolling-release |
Gestionnaire de paquets vs Installateur Web
Sous Linux, l’installation ne se fait pas via un fichier .exe téléchargé au hasard :
- Le gestionnaire de paquets (
apt) télécharge les applications depuis des dépôts officiels vérifiés et signés. - Il gère automatiquement les dépendances (bibliothèques requises) et met à jour l’ensemble de la machine en une seule commande.
Découplage de l’Environnement de Bureau
L’interface visuelle n’est pas soudée au système :
- KDE Plasma : Notre environnement de travail sur ThinkPad (ergonomique, fluide et hautement personnalisable).
- GNOME : Interface sobre et épurée (standard d’Ubuntu et Fedora).
- XFCE : Environnement ultra-léger et rapide.
6. Pourquoi Linux est indispensable pour un Développeur ?
- Standard mondial des Serveurs et du Cloud : Plus de 90 % des serveurs web, du cloud (AWS, Azure, GCP) et des conteneurs (Docker, Kubernetes) tournent sous Linux.
- Écosystème de développement natif : Les langages et outils (Git, Python, PHP, C, bases de données) sont des composants de premier rang intégrés au système.
- Transparence et contrôle : L’administration par le terminal et les fichiers de configuration texte permet de maîtriser exactement le fonctionnement du système sans boîte noire.
Valorisation E4 — Compétences travaillées
En quoi les gestes techniques de cette ressource valident chaque compétence du référentiel (base du portfolio d'épreuve E4).
- C-1.1.1Recenser et identifier les ressources numériques
Identification des composants matériels (CPU, RAM volatile, SSD persistant) et de leur rôle.
- C-1.1.2Exploiter des référentiels, normes et standards adoptés par le prestataire informatique
Exploitation des standards, modèle GNU/Linux, familles de distributions et gestionnaires de paquets.
- C-1.2.2Traiter des demandes concernant les services réseau et système, applicatifs
Compréhension des services système (noyau, appels système, environnements de bureau).