Chapitre 6
Operating Systems
Lecture : 24 minQuiz de 12 questions
# Operating Systems
## Objectifs et prérequis
Ce chapitre vise à fournir aux élèves de Lower Sixth une compréhension approfondie des systèmes d'exploitation (OS) en tant que composante essentielle du logiciel système. À l'issue de ce chapitre, les élèves seront capables de :
- Définir le logiciel système et citer des exemples pertinents.
- Expliquer la notion de système d'exploitation et son rôle dans un ordinateur.
- Décrire les fonctions principales d'un système d'exploitation (gestion de la mémoire, des processus, des fichiers, des périphériques, de la sécurité, etc.).
- Différencier les interfaces graphiques (GUI) et les interfaces en ligne de commande (CLI).
- Expliquer les étapes d'installation d'un système d'exploitation.
- Utiliser efficacement une GUI et une CLI pour réaliser des tâches courantes.
- Appliquer ces connaissances à des contextes camerounais et africains pertinents.
**Prérequis** : Connaissances de base en matériel informatique (CPU, RAM, stockage, périphériques), notions de logiciel vs matériel, familiarité avec l'utilisation d'un ordinateur (allumage, navigation de base).
## Introduction
Dans un système informatique, le matériel (hardware) ne peut fonctionner seul. Il nécessite un intermédiaire logiciel pour gérer ses ressources et permettre l'exécution d'applications utiles. Ce rôle est assuré par le **logiciel système**, dont le composant central est le **système d'exploitation (OS)**. Un OS est un programme qui gère les ressources matérielles et logicielles de l'ordinateur, fournit des services communs aux programmes informatiques et agit comme intermédiaire entre l'utilisateur et le matériel. Comprendre les OS est fondamental pour toute étude en TIC, car ils sous-tendent pratiquement toutes les interactions numériques, des téléphones mobiles aux serveurs des entreprises camerounaises comme la CAMTEL ou les banques telles que la Société Générale Cameroun.
## I. System software and examples
### Contexte
Le logiciel système constitue la couche fondamentale qui permet au matériel de fonctionner et aux logiciels applicatifs de s'exécuter. Il contraste avec le logiciel applicatif, conçu pour effectuer des tâches spécifiques utilisateur (traitement de texte, navigation web, etc.).
### Définitions et faits clés
> **Logiciel système** : Ensemble de programmes qui gèrent les ressources de l'ordinateur et fournissent une plateforme pour l'exécution des logiciels applicatifs. Il inclut le système d'exploitation, les pilotes de périphériques, les utilitaires système et les langages de programmation de bas niveau.
Le système d'exploitation est le composant le plus critique du logiciel système. Sans lui, l'ordinateur ne pourrait pas exécuter d'applications utiles.
### Exemples concrets
- **Systèmes d'exploitation courants** : Microsoft Windows (versions 10, 11), macOS (Ventura, Sonoma), Linux (distributions comme Ubuntu, Debian, Red Hat Enterprise Linux).
- **Autres logiciels système** :
- Pilotes de périphériques (ex. : pilote pour imprimante HP LaserJet utilisé dans les bureaux du MINEDUC à Yaoundé).
- Utilitaires système (ex. : antivirus comme Avast ou Kaspersky, outils de défragmentation de disque, gestionnaires de tâches).
- Environnements de virtualisation (ex. : VMware Workstation, utilisé dans certains laboratoires universitaires camerounais pour tester des serveurs).
- Firmware (ex. : BIOS/UEFI sur les cartes mères des ordinateurs assemblés localement à Douala).
### Vocabulaire à retenir
- Logiciel système
- Logiciel applicatif
- Pilote de périphérique
- Utilitaire système
- Firmware
### Exemple de sujet type examen avec plan
**Sujet** : Expliquez la différence entre logiciel système et logiciel applicatif, puis citez trois exemples de logiciel système utilisés dans un contexte camerounais, en justifiant leur utilité.
**Plan** :
I. Définition du logiciel système et du logiciel applicatif
II. Trois exemples de logiciel système au Cameroun :
A. Pilote d'imprimante pour les administrations publiques
B. Antivirus dans les cybercafés de Yaoundé
C. Système d'exploitation Linux dans les serveurs universitaires
III. Justification de l'utilité de chacun dans le contexte local
## II. Notions of the Operating System
### Contexte
Avant d'aborder les fonctions détaillées, il est essentiel de comprendre ce qu'est un système d'exploitation, son évolution historique et sa place dans l'architecture d'un ordinateur.
### Définitions et faits clés
> **Système d'exploitation (OS)** : Logiciel de base qui gère les ressources matérielles (processeur, mémoire, stockage, périphériques) et logicielles d'un ordinateur, fournit une interface utilisateur et permet l'exécution d'applications.
L'OS se situe entre le matériel et les applications. Il effectue l'**abstraction du matériel** : il présente aux applications une vue simplifiée et standardisée du matériel (ex. : lire un fichier sans connaître les détails physiques du disque dur).
### Histoire brève (pertinente pour le contexte africain)
- Années 1960 : Premiers OS (ex. : GM-NAA I/O pour IBM 704).
- Années 1970 : UNIX développé par Bell Labs (influence majeure sur Linux et macOS).
- Années 1980 : MS-DOS dominer les PC personnels ; lancement de Mac OS.
- Années 1990 : Windows 95 popularise l'OS grand public avec GUI ; Linux lancé par Linus Torvalds (1991).
- Années 2000-2020 : Croissance de Linux dans les serveurs et l'embarqué ; Android (basé sur Linux) domine les smartphones en Afrique.
Au Cameroun et en Afrique subsaharienne, l'accès limité aux licences coûteuses a favorisé l'adoption de Linux et d'Android dans les écoles, les PME et les projets de développement (ex. : utilisation d'Ubuntu dans les écoles numériques soutenues par l'UNESCO ou l'AUF).
### Composants d'un OS
Un système d'exploitation typique comprend :
- **Noyau (Kernel)** : Partie centrale, en mémoire en permanence, gère les tâches critiques (processus, mémoire, interruptions).
- **Shell** : Interface permettant à l'utilisateur d'interagir avec le noyau (peut être GUI ou CLI).
- **Système de fichiers** : Organise le stockage des données sur les disques.
- **Gestionnaires de périphériques** : Pilotes qui permettent au noyau de communiquer avec le matériel.
- **Interfaces de programmation (API)** : Permettent aux applications de demander des services au noyau.
### Vocabulaire à retenir
- Noyau (Kernel)
- Shell
- Système de fichiers
- Abstraction du matériel
- Interface de programmation (API)
### Exemple de sujet type examen avec plan
**Sujet** : Définissez le système d'exploitation et expliquez son rôle d'abstraction du matériel, en donnant un exemple concret lié à l'utilisation d'une clé USB dans un lycée camerounais.
**Plan** :
I. Définition du système d'exploitation
II. Concept d'abstraction du matériel
III. Exemple : Utilisation d'une clé USB pour transférer un devoir de TIC au Lycée Bilingue de Ngoa-Ekellé
A. Ce que l'utilisateur voit (copier-coller un fichier)
B. Ce que l'OS fait en arrière-plan (gestion du pilote USB, système de fichiers FAT32/exFAT, allocation de mémoire tampon)
IV. Conclusion sur l'importance de cette abstraction
## III. Functions of an operating system 1
### Contexte
Un système d'exploitation effectue de nombreuses fonctions vitales. Nous examinons ici les premières catégories : gestion des processus, de la mémoire et des fichiers.
### Définitions et faits clés
> **Gestion des processus** : Fonction de l'OS qui crée, planifie, synchronise et termine les processus (programmes en exécution), en allouant équitablement le temps CPU.
Un **processus** est une instance d'un programme en cours d'exécution. L'OS utilise un **ordonnanceur (scheduler)** pour décider quel processus obtient le CPU et quand. Les algorithmes d'ordonnancement incluent : First-Come-First-Served (FCFS), Shortest Job First (SJF), Round Robin (RR), Priority Scheduling.
> **Gestion de la mémoire** : Fonction de l'OS qui alloue et libère l'espace mémoire (RAM) aux processus, en assurant leur isolation et en utilisant des techniques comme la pagination et la segmentation pour dépasser la limite de la mémoire physique.
L'OS maintient une **table de correspondance** entre adresses logiques (utilisées par les processus) et adresses physiques (dans la RAM). Lorsque la RAM est insuffisante, il utilise l'**échange (swapping)** avec le disque dur (fichier d'échange ou partition swap).
> **Gestion des fichiers** : Fonction de l'OS qui crée, supprime, lit, écrit et organise les fichiers sur les périphériques de stockage, en fournissant une abstraction logique (dossiers, noms de fichiers) indépendante du support physique.
L'OS utilise un **système de fichiers** (ex. : NTFS pour Windows, ext4 pour Linux, APFS pour macOS, FAT32/exFAT pour les clés USB) pour gérer l'espace de stockage. Il contrôle les **permissions** (lecture, écriture, exécution) pour assurer la sécurité.
### Causes et conséquences
- Une mauvaise gestion des processus peut conduire à un **blocage (deadlock)** ou à une **famine** (certains processus n'obtiennent jamais le CPU).
- Une gestion inefficace de la mémoire provoque le **thrashing** (échange excessif avec le disque, ralentissant fortement le système).
- Une gestion des fichiers peu sécurisée permet l'accès non autorisé aux données sensibles (ex. : dossiers d'élèves dans un système scolaire camerounais).
### Exemples concrets (camerounais/africains)
- Dans un laboratoire TIC du Lycée Général Leclerc à Yaoundé, lorsque 30 élèves ouvrent simultanément des navigateurs et des traitements de texte, l'OS (Windows 10 ou Linux Ubuntu) utilise la gestion des processus pour partager le CPU et la gestion de la mémoire pour éviter les ralentissements.
- L'utilisation de clés USB formatées en FAT32 ou exFAT dans les écoles rurales permet aux élèves de transférer des travaux, grâce à la gestion des fichiers de l'OS qui reconnaît ce système de fichiers universel.
- Les serveurs du ministère de l'Éducation de base utilisant Linux servent des milliers de requêtes simultanément grâce à une gestion avancée des processus et de la mémoire.
### Vocabulaire à retenir
- Processus
- Ordonnanceur (scheduler)
- Pagination
- Swapping (échange)
- Système de fichiers
- Permissions de fichiers
### Exemple de sujet type examen avec plan
**Sujet** : Décrivez les trois fonctions principales d'un système d'exploitation liées à la gestion des processus, de la mémoire et des fichiers, puis expliquez comment elles contribuent à la performance d'un ordinateur utilisé dans un cybercafé à Douala.
**Plan** :
I. Gestion des processus : ordonnancement, allocation du CPU
II. Gestion de la mémoire : allocation RAM, pagination, swapping
III. Gestion des fichiers : organisation, lecture/écriture, permissions
IV. Impact sur la performance dans un cybercafé : multitâche fluide, prévention des ralentissements, sécurité des données des clients
V. Conclusion
## IV. Functions of the operating system 2
### Contexte
Nous poursuivons l'exploration des fonctions de l'OS avec la gestion des périphériques, la sécurité et les fonctions auxiliaires.
### Définitions et faits clés
> **Gestion des périphériques** : Fonction de l'OS qui contrôle la communication avec les périphériques d'entrée/sortie (clavier, souris, imprimante, écran, stockage) via des pilotes et en gérant les accès concurrents.
L'OS utilise un **pilote de périphérique (driver)** : logiciel spécifique qui traduit les commandes génériques de l'OS en instructions comprises par le matériel spécifique. Il gère également les **interruptions** : signaux matériels indiquant qu'un périphérique nécessite une attention immédiate (ex. : frappe de touche, fin d'impression).
> **Sécurité et protection** : Fonction de l'OS qui protège le système et les données contre les accès non autorisés, les logiciels malveillants et les erreurs utilisateur, grâce à l'authentification, l'autorisation, l'isolation des processus et les pare-feu.
Mécanismes clés :
- **Authentification** : Vérification de l'identité (ex. : mot de passe, empreinte digitale).
- **Autorisation** : Détermination des droits d'accès (ex. : un élève ne peut pas modifier les notes dans le système scolaire).
- **Isolation** : Les processus s'exécutent dans des espaces mémoire protégés (évite qu'un programme corrompu n'affecte les autres ou le noyau).
- **Pare-feu logiciel** : Filtre le trafic réseau entrant/sortant (ex. : Windows Defender Firewall).
> **Fonctions auxiliaires** : Services supplémentaires fournis par l'OS pour faciliter l'utilisation et la maintenance, tels que l'interface utilisateur (GUI/CLI), les utilitaires de configuration, l'aide en ligne, la mise à jour logicielle et la journalisation (logs).
### Causes et conséquences
- L'absence de gestion efficace des périphériques rend le matériel inutilisable ou provoque des conflits (ex. : deux imprimantes tentando d'utiliser le même port).
- Des failles de sécurité peuvent conduire au vol de données sensibles (ex. : fraude aux examens nationaux si le système de gestion des notes est compromis).
- Les fonctions auxiliaires améliorent l'accessibilité et réduisent le coût de formation (ex. : aide intégrée dans Windows pour les enseignants peu familiers avec les TIC).
### Exemples concrets (camerounais/africains)
- Dans les administrations publiques camerounaises (ex. : ministère des Finances), l'OS gère l'accès aux imprimantes sécurisées pour l'impression des bulletins de paie, en utilisant l'authentification par carte à puce et les permissions d'impression.
- Les smartphones Android utilisés largement au Cameroun intègrent des fonctionnalités de sécurité de l'OS : verrouillage par empreinte, chiffrement des données, contrôle des permissions applicatives (accès à la localisation, au microphone).
- Les mises à jour automatiques de l'OS (ex. : mises à jour de sécurité de Windows 10 ou d'Ubuntu LTS) sont cruciales pour protéger les ordinateurs des écoles contre les rançongiciels, particulièrement répandus en Afrique centrale.
### Vocabulaire à retenir
- Pilote de périphérique (driver)
- Interruption
- Authentification
- Autorisation
- Isolation des processus
- Pare-feu logiciel
- Journalisation (logs)
- Mise à jour logicielle
### Exemple de sujet type examen avec plan
**Sujet** : Expliquez comment le système d'exploitation assure la sécurité d'un ordinateur utilisé pour la gestion des résultats scolaires dans un lycée camerounais, en détaillant les mécanismes d'authentification, d'autorisation et d'isolation.
**Plan** :
I. Authentification : connexion avec identifiant/mot de passe ou carte d'enseignant
II. Autorisation : droits différenciés (professeur saisit les notes, proviseur valide, élève consulte seulement les siennes)
III. Isolation : chaque application (saisie de notes, consultation) s'exécute dans un espace mémoire protégé
IV. Conséquence : prévention de la modification frauduleuse des résultats
V. Rôle complémentaire du pare-feu et des mises à jour
VI. Conclusion
## V. Installing an operating system and user interfaces
### Contexte
L'installation d'un OS est une procédure critique qui prépare le matériel à fonctionner. Nous examinons le processus et les types d'interfaces utilisateur.
### Définitions et faits clés
> **Installation d'un système d'exploitation** : Processus consistant à copier les fichiers essentiels de l'OS sur le disque dur, à configurer le matériel de base et à préparer le système pour le premier démarrage.
Les étapes typiques sont :
1. **Préparation** : Sauvegarde des données, vérification de la compatibilité matérielle (CPU, RAM, espace disque), création d'un support d'installation (clé USB ou DVD bootable).
2. **Démarrage depuis le support** : Modification de l'ordre de démarrage dans le BIOS/UEFI pour booter sur la clé USB/DVD.
3. **Copie des fichiers** : L'installeur copie le noyau, les pilotes de base et les composants essentiels sur le disque dur.
4. **Configuration de base** : Définition du fuseau horaire (ex. : UTC+1 pour le Cameroun), de la langue, du clavier (ex. : AZERTY francophone ou QWERTY anglophone selon le contexte), création du compte utilisateur administrateur.
5. **Installation des pilotes** : Détection et installation des pilotes pour la carte graphique, la carte réseau, le son, etc.
6. **Premier démarrage** : Redémarrage sur le disque dur, l'OS est prêt à l'emploi.
> **Interface utilisateur (UI)** : Moyen par lequel l'utilisateur interagit avec le système d'exploitation. Deux types principaux : **Interface Graphique (GUI)** et **Interface en Ligne de Commande (CLI)**.
### Types d'installation
- **Installation propre (clean install)** : Sur un disque formaté, recommandée pour une performance optimale.
- **Mise à niveau (upgrade)** : Remplacement d'une ancienne version par une nouvelle tout en conservant les fichiers et paramètres (peut entraîner des incompatibilités).
- **Installation en dual-boot** : Coexistence de deux OS sur le même disque (ex. : Windows et Linux), permettant de choisir au démarrage.
### Vocabulaire à retenir
- Support d'installation bootable
- BIOS/UEFI
- Ordre de démarrage
- Installation propre
- Mise à niveau
- Dual-boot
- Compte administrateur
- Fuseau horaire
### Exemple de sujet type examen avec plan
**Sujet** : Décrivez les étapes principales de l'installation d'un système d'exploitation sur un ordinateur neuf destiné à un laboratoire TIC dans un collège rural de la région de l'Est, en mettant l'accent sur la préparation et la configuration initiale.
**Plan** :
I. Préparation : vérification du matériel, création d'une clé USB bootable avec Ubuntu LTS
II. Démarrage depuis la clé USB : accès au BIOS/UEFI, modification de l'ordre de démarrage
III. Copie des fichiers et configuration de base : langue (anglais), clavier (QWERTY), fuseau horaire (UTC+1), création du compte admin
IV. Installation des pilotes : détection automatique de la carte réseau et de la carte graphique
V. Premier démarrage et vérification : connexion Internet, mise à jour du système
VI. Conclusion sur l'importance d'une installation correcte pour la durabilité du matériel
## VI. Using the GUI of an operating system
### Contexte
L'Interface Graphique (GUI) est la forme d'interaction la plus courante pour les utilisateurs finaux. Nous examinons son utilisation pratique.
### Définitions et faits clés
> **Interface Graphique (GUI)** : Interface utilisateur qui utilise des éléments visuels (fenêtres, icônes, menus, pointeur) permettant une interaction intuitive avec l'ordinateur via une souris ou un écran tactile.
Caractéristiques d'une GUI :
- **WYSIWYG** (What You See Is What You Get) : ce qui est affiché correspond à ce qui sera imprimé ou sauvegardé.
- **Multitâche visuel** : plusieurs fenêtres peuvent être ouvertes simultanément.
- **Interaction directe** : glisser-déposer, clics, menus contextuels.
- **Accessibilité** : souvent plus facile à apprendre pour les débutants.
Éléments courants d'une GUI de bureau :
- **Bureau (Desktop)** : espace de travail principal.
- **Barre des tâches / Dock** : lancement rapide d'applications, affichage des programmes ouverts.
- **Menu Démarrer / Launchpad** : accès à toutes les applications et paramètres.
- **Explorateur de fichiers** : navigation dans le système de fichiers (ex. : Explorateur Windows, Finder macOS, Nautilus sous Linux).
- **Panneau de configuration / Paramètres** : ajustement du matériel, du réseau, de l'apparence, des comptes.
### Utilisation pratique
Tâches courantes réalisables via la GUI :
- Créer, renommer, supprimer des dossiers et fichiers.
- Copier-coller du contenu entre applications.
- Installer et désinstaller des logiciels.
- Configurer l'imprimante, le réseau Wi-Fi, l'affichage.
- Utiliser les fonctionnalités d'accessibilité (loupe, clavier à l'écran, contraste élevé).
- Rechercher des fichiers ou des paramètres.
### Causes et conséquences
- Une GUI bien conçue réduit la charge cognitive et augmente la productivité (ex. : enseignants préparant des leçons plus rapidement).
- Une GUI surchargée ou peu intuitive peut entraîner des erreurs (ex. : suppression accidentelle de fichiers importants).
- Dans les contextes à faible bande passante (zones rurales), certaines GUI modernes peuvent être lourdes ; des environnements légers (ex. : XFCE, LXQt) sont préférables sur du matériel ancien.
### Exemples concrets (camerounais/africains)
- Dans les écoles primaires équipées par le projet « École Numérique » du MINEDUC, les enfants utilisent la GUI de Windows 10 Education ou d'Ubuntu avec l'environnement GNOME pour apprendre à dessiner avec Paint ou à écrire avec LibreOffice Writer.
- Les commerçants du marché central de Yaoundé utilisant des ordinateurs pour la gestion de stock apprécient la GUI pour sa simplicité : glisser-déposer des articles dans un panier virtuel, imprimer des reçus avec un clic.
- Les agents de la CAMTEL utilisent la GUI pour surveiller l'état du réseau via des tableaux de bord graphiques, bien plus efficaces que l'analyse de logs bruts.
### Vocabulaire à retenir
- Fenêtre (window)
- Icône (icon)
- Menu déroulant (drop-down menu)
- Glisser-déposer (drag and drop)
- Bureau (desktop)
- Barre des tâches (taskbar)
- Explorateur de fichiers (file explorer)
- Panneau de configuration (control panel)
- Accessibilité
### Exemple de sujet type examen avec plan
**Sujet** : Décrivez comment un élève de Lower Sixth peut utiliser l'interface graphique (GUI) de son système d'exploitation pour préparer un rapport de stage sur l'utilisation des TIC dans une entreprise camerounaise, en détaillant les étapes de création du document, d'insertion d'images et d'impression.
**Plan** :
I. Ouverture du traitement de texte (ex. : LibreOffice Writer ou Microsoft Word) via le menu Démarrer ou la barre des tâches
II. Création d'un nouveau document et enregistrement sous un nom pertinent (ex. : Rapport_Stage_CAMWATER.docx)
III. Insertion d'images : utilisation du menu « Insérer » > « Image », sélection d'une photo prise lors du stage (ex. : usine de traitement d'eau)
IV. Mise en forme : application de styles de titre, ajustement de l'interligne, ajout d'un pied de page avec numéro de page
V. Impression : accès au menu « Fichier » > « Imprimer », sélection de l'imprimante réseau du lycée, aperçu avant impression, lancement de l'impression
VI. Enregistrement final et sauvegarde sur clé USB ou cloud scolaire
VII. Conclusion sur l'efficacité de la GUI pour les tâches académiques
## VII. Using the CLI of an operating system
### Contexte
L'Interface en Ligne de Commande (CLI) offre un contrôle puissant et efficace, particulièrement adapté aux administrateurs système et aux tâches automatisées. Nous examinons son utilisation.
### Définitions et faits clés
> **Interface en Ligne de Commande (CLI)** : Interface utilisateur où l'utilisateur tape des commandes textuelles interprétées par un shell pour effectuer des opérations sur le système.
Caractéristiques d'une CLI :
- **Efficacité** : permet d'exécuter des tâches complexes avec peu de frappes (ex. : une seule commande pour copier cent fichiers).
- **Scriptabilité** : les commandes peuvent être enregistrées dans des scripts pour automatiser des tâches répétitives.
- **Précision** : contrôle granulaire sur les opérations (ex. : suppression de fichiers correspondant exactement à un motif).
- **Faible consommation de ressources** : utilise nettement moins de RAM et de CPU qu'une GUI.
- **Accès distant** : essentielle pour l'administration via SSH (Secure Shell), particulièrement utile lorsque l'accès graphique est indisponible ou inutile.
Shells courants :
- **Windows** : Command Prompt (cmd.exe), PowerShell.
- **Linux/macOS** : Bash (Bourne Again SHell), Zsh, Fish.
- Les commandes de base sont souvent similaires entre les systèmes Unix-like (Linux, macOS) grâce à la norme POSIX.
### Commandes fondamentales
- **Navigation** : `cd` (changer de répertoire), `ls` (lister le contenu - Linux/macOS), `dir` (lister le contenu - Windows).
- **Gestion de fichiers** : `cp` (copier), `mv` (déplacer/renommer), `rm` (supprimer - Linux/macOS), `del` (supprimer - Windows), `mkdir` (créer un répertoire).
- **Affichage de contenu** : `cat` (afficher le contenu d'un fichier), `more` / `less` (afficher page par page).
- **Recherche** : `grep` (rechercher un motif dans des fichiers - Linux/macOS), `findstr` (Windows).
- **Permissions** : `chmod` (changer les permissions - Linux/macOS), `icacls` (Windows).
- **Information système** : `uname -a` (infos noyau - Linux/macOS), `systeminfo` (Windows), `top` / `htop` (processus en temps réel - Linux), `tasklist` (Windows).
- **Réseau** : `ipconfig` (Windows), `ifconfig` / `ip a` (Linux/macOS), `ping` (test de connectivité), `traceroute` / `tracert` (chemin réseau).
### Utilisation pratique
Tâches courantes réalisables via la CLI :
- Effectuer des sauvegardes rapides de dossiers importants.
- Rechercher des fichiers contenant un texte spécifique dans toute une arborescence.
- Modifier les permissions de centaines de fichiers d'un coup.
- Diagnostiquer des problèmes de réseau ou de performance.
- Exécuter des tâches d'administration nécessitant des privilèges élevés (via `sudo` sous Linux ou "Exécuter en tant qu'administrateur" sous Windows).
- Se connecter à un serveur distant via SSH pour gérer un serveur web ou une base de données.
### Causes et conséquences
- Une mauvaise utilisation de la CLI (ex. : `rm -rf /` sous Linux) peut entraîner une perte de données catastrophique.
- La CLI nécessite un apprentissage initial plus steep que la GUI, mais offre une productivité supérieure pour les utilisateurs expérimentés.
- Dans les environnements à ressources limitées (serveurs anciens, matériel donné aux écoles rurales), la CLI permet une administration efficace où une GUI serait trop lourde.
- La maîtrise de la CLI est une compétence clé pour les carrières en administration système, en développement logiciel et en cybersécurité, très demandées au Cameroun et en Afrique.
### Exemples concrets (camerounais/africains)
- Un administrateur TIC du Lycée Technique de Nkongsamba utilise un script Bash pour sauvegarder chaque soir les dossiers des élèves sur un disque dur externe : `rsync -avz /home/eleve/ /mnt/sauvegarde/jour$(date +%Y%m%d)/`.
- Dans un cybercafé de Bamenda, le gérant utilise la CLI Windows pour redémarrer rapidement tous les ordinateurs après une coupure de courant : un script exécutant `shutdown /r /t 0` sur chaque machine via un outil de gestion distante.
- Les étudiants en informatique de l'Université de Yaoundé I utilisent la CLI Linux pour compiler des programmes C, gérer des dépôts Git (`git add`, `git commit`, `git push`) et administrer des serveurs locaux Apache/MySQL pour leurs projets web.
- Les agents de la douane camerounaise utilisent la CLI pour analyser les logs des systèmes de suivi des marchandises à la frontière, en recherchant des motifs spécifiques avec `grep` dans d'énormes fichiers journaux.
### Vocabulaire à retenir
- Shell
- Commande
- Argument
- Option (flag)
- Script
- Automatisation
- Privilèges élevés (sudo / exécuter en tant qu'administrateur)
- Accès distant (SSH)
- Redirection (`>`, `>>`)
- Pipe (`|`)
### Exemple de sujet type examen avec plan
**Sujet** : Décrivez comment un administrateur système peut utiliser l'interface en ligne de commande (CLI) pour diagnostiquer et résoudre un problème de lenteur réseau affectant les ordinateurs d'un laboratoire TIC au Lycée Bilingue de Yaoundé, en détaillant les commandes utilisées et leur interprétation.
**Plan** :
I. Vérification de la configuration IP locale : `ipconfig` (Windows) ou `ifconfig` / `ip a` (Linux) pour s'assurer d'une adresse valide et du bon masque de sous-réseau
II. Test de connectivité vers la passerelle (routeur) : `ping 192.168.1.1` (exemple d'adresse de passerelle)
III. Test de connectivité vers un serveur externe (ex. : Google DNS) : `ping 8.8.8.8` pour vérifier l'accès à Internet
IV. Mesure de la qualité de la connexion : `ping -t 8.8.8.8` (Windows) ou `ping 8.8.8.8` (Linux) observé sur durée pour détecter les pertes de paquets ou la latence élevée
V. Analyse du chemin réseau : `tracert 8.8.8.8` (Windows) ou `traceroute 8.8.8.8` (Linux) pour identifier où se situe la latence anormale
VI. Vérification de l'utilisation de la bande passante locale : `netstat -ano` (Windows) ou `ss -tuln` (Linux) pour voir les connexions actives et les ports écoutés
VII. Conclusion : interprétation des résultats (ex. : haute latence vers 8.8.8.8 indique un problème FAI ; nombreuses connexions sortantes vers une IP inconnue suggère un malware)
VIII. Action corrective basée sur le diagnostic (ex. : contacter le FAI, isoler et nettoyer un poste infecté)
IX. Récapitulatif de l'avantage de la CLI pour ce type de diagnostic : rapidité, faible consommation de ressources, accès aux informations détaillées non toujours disponibles en GUI
## Synthèse du chapitre
- Le **logiciel système** gère les ressources matérielles et permet l'exécution des logiciels applicatifs ; le **système d'exploitation** en est le composant central.
- Un **système d'exploitation** abstrait le matériel, gère les processus, la mémoire, les fichiers, les périphériques, assure la sécurité et fournit des interfaces utilisateur.
- La **gestion des processus** implique l'ordonnancement équitable du CPU via des algorithmes comme Round Robin ou Priority Scheduling.
- La **gestion de la mémoire** utilise la pagination et l'échange (swapping) pour allouer de la RAM aux processus, même lorsque la demande dépasse la capacité physique.
- La **gestion des fichiers** organise le stockage via des systèmes de fichiers (NTFS, ext4, FAT32) et contrôle l'accès grâce aux permissions.
- La **gestion des périphériques** repose sur des pilotes et la gestion des interruptions pour assurer une communication fiable avec le matériel.
- La **sécurité** de l'OS s'appuie sur l'authentification, l'autorisation, l'isolation des processus, les pare-feu et les mises à jour régulières.
- L'**installation d'un OS** implique la préparation du matériel, le démarrage depuis un support bootable, la copie des fichiers, la configuration de base et l'installation des pilotes.
- L'**Interface Graphique (GUI)** utilise des éléments visuels (fenêtres, icônes, menus) pour une interaction intuitive, adaptée aux débutants et aux tâches courantes.
- L'**Interface en Ligne de Commande (CLI)** permet un contrôle efficace, précis et scriptable, essentielle pour l'administration, le dépannage et l'utilisation de ressources limitées.
- Au Cameroun et en Afrique, l'adoption de systèmes d'exploitation libres (Linux, Android) est encouragée par le coût, l'adaptabilité et la pertinence pour les contextes à ressources contraintes.
- La maîtrise tant de la GUI que de la CLI est indispensable pour une utilisation efficace et professionnelle des TIC dans l'éducation, l'entreprise et l'administration publiques.
## Glossaire
- **Abstraction du matériel** : Principe par lequel le système d'exploitation présente une vue simplifiée et standardisée du matériel aux applications, masquant les détails complexes de l'implémentation physique.
- **Authentification** : Processus de vérification de l'identité d'un utilisateur ou d'un processus avant d'autoriser l'accès au système ou à des ressources.
- **Autorisation** : Mécanisme qui détermine quelles actions un utilisateur ou un processus authentifié est permis d'effectuer sur des ressources spécifiques (fichiers, périphériques, etc.).
- **Interface en Ligne de Commande (CLI)** : Interface utilisateur où l'utilisateur interagit avec le système en tapant des commandes textuelles interprétées par un shell.
- **Interface Graphique (GUI)** : Interface utilisateur qui utilise des éléments visuels tels que des fenêtres, des icônes, des menus et un pointeur pour faciliter l'interaction avec l'ordinateur.
- **Noyau (Kernel)** : Partie centrale et fondamentale du système d'exploitation, résidant en mémoire en permanence, responsable de la gestion critique des ressources (processus, mémoire, matériels).
- **Ordonnanceur (scheduler)** : Composant du noyau qui décide quel processus obtient l'accès au processeur et pendant combien de temps, selon un algorithme prédéfini.
- **Pagination** : Technique de gestion de la mémoire qui divise l'espace mémoire en blocs de taille fixe (pages) pour permettre un allocation non contiguë et faciliter l'échange avec le disque.
- **Pilote de périphérique (driver)** : Logiciel spécialisé qui permet au système d'exploitation de communiquer avec un spécifique composant matériel en traduisant les commandes génériques en instructions matérielles.
- **Système de fichiers** : Méthode logique utilisée par le système d'exploitation pour organiser, stocker, nommer, récupérer et gérer les fichiers sur un périphérique de stockage.
- **Swapping (échange)** : Processus par lequel le système d'exploitation déplace temporairement des portions de la mémoire vive (RAM) vers un espace dédié sur le disque dur lorsque la RAM est insuffisante.
- **Shell** : Interface utilisateur (en ligne de commande ou graphique) qui permet d'interagir avec le noyau du système d'exploitation pour exécuter des commandes et lancer des applications.
Quiz du chapitre
12 questions — vérifie chaque réponse pour voir l'explication.