Informatique II
CHAPITRE 1 : Architecture des ordinateurs
Compétences visées : la fin de ce chapitre, l’étudiant devra être capable de :
• Identifier et décrire les composants matériels d'un ordinateur ;
• Expliquer le fonctionnement de l'architecture de Von Neumann ;
• Comparer et contraster les architectures RISC et CISC.
Introduction
L'architecture des ordinateurs est un domaine fondamental de l'informatique qui
étudie la structure et le fonctionnement des ordinateurs. L’ordinateur, est composé de
deux parties : le software et le hardware. Le hardware ou partie matérielle, est constitué
de l’unité de centrale et des périphériques qui communiquent à travers les ports de
communication.
1. Composants internes de l’unité centrale et Caractéristiques
1.1. Composants internes de l’unité centrale
Les principaux composants internes de l’unité centrale sont :
• La carte mère : C‘est le composant principal de l‘unité centrale. C’est une plaque
sur laquelle sont fixés tous autres éléments interne de l’unité centrale.
• Le processeur ou CPU (Central Processing Unit) : c’est un élément chargé
d’exécuter les instructions.
Proposé par Mbeh Ivan
Informatique II
• Le bloc d’alimentation : il transforme la tension électrique afin de l’adapter aux
autres composants internes ou connectés à l’unité centrale.
• Le disque dur : c’est un composant permettant de stocker les données de manière
permanente.
• La mémoire vive ou volatile ou RAM (Random Access Memory) : c’est la
mémoire dans laquelle le processeur stocke les données en cours d’exécution.
On distingue deux types de RAM : la SRAM (Static RAM) et la DRAM (Dynamic
RAM).
• La mémoire morte ou ROM : c’est une mémoire non volatile dont le contenu
est fixé au moment de la fabrication mais peut être modifié par certains moyens.
On distingue: la ROM (Read Only Memory), la PROM, la EPROM, la EEPROM,
UVPROM et Flash PROM.
Proposé par Mbeh Ivan
Informatique II
• Les cartes d’extension : ce sont des composants qui permettent d’étendre les
fonctionnalités d’un ordinateur. On peut citer : la carte graphique, carte son,
carte réseau, carte TV/FM, carte WIFI, etc.
• Les chipsets : appelé couramment broche de branchement ; elles coordonnent
les échanges de données entre les différents composants et la carte mère.
Proposé par Mbeh Ivan
Informatique II
1.2. Caractéristiques de quelques composants internes de l’unité
centrale
Composant Images Types Caractéristiques
Le processeur • Pentium (1, 2, 3, 4); • La fréquence ou vitesse
• Core (i2, i3, i5, i7); d’exécution : qui s’exprime en
• Dual Core; en hertz (Hz).
• Quad Core. • La marque qui représente son
fabricant : INTEL, AMD,
MOTOROLLA.
La RAM • la SRAM (Static RAM) • La capacité qui s’exprime en
• la DRAM (Dynamic octet (o), Mégaoctet (Mo) ou
RAM). Gigaoctet (Go).
• Son temps d’accès qui est le
temps de lecture d’une
information.
• Son débit qui est le volume
d’informations échangé par
unité de temps.
Le Disque dur • Disque dur mécanique • La capacité : qui s’exprime en
(HDD), octet(o), Mégaoctet (Mo),
• Disque dur à mémoire Gigaoctet (Go) ou Téraoctet
flash (SSD), (To).
• Disque dur hybride • Son temps d’accès : qui est le
(SSHD) temps de lecture d’une
information.
• Son débit
2. Fonctionnement de l'architecture de Von Neumann
L'architecture de Von Neumann, proposée par John von Neumann dans les années
1940, est un modèle fondamental pour la conception des ordinateurs modernes. Elle
repose sur plusieurs concepts clés qui expliquent comment les ordinateurs traitent les
données et exécutent des instructions. Voici les principaux éléments de cette architecture
:
• La mémoire unique : L'architecture de Von Neumann utilise une mémoire unique
(RAM) pour stocker à la fois les données et les instructions. Cela signifie que le
programme et les informations qu'il traite sont tous logés dans un même espace
mémoire. Cette conception permet un accès simple et direct aux données par le
processeur.
Proposé par Mbeh Ivan
Informatique II
• L’unité de traitement : Le cœur du système est l'unité centrale de traitement
(CPU), qui exécute les instructions du programme. Le CPU est composé de 02
sous-parties :
o L'unité arithmétique et logique (ALU) : Elle effectue les calculs et les
opérations logiques.
o L'unité de contrôle (CU) : Elle dirige le fonctionnement de l'ordinateur en
récupérant les instructions de la mémoire, en les décodant et en
contrôlant l'exécution.
• Les bus de communication : Les composants de l'architecture de Von Neumann
(CPU, mémoire, périphériques) communiquent via des bus, qui sont des systèmes
de transport de données. Il existe des bus pour les données, les adresses, et des
signaux de contrôle, permettant la circulation des informations entre les
différentes parties de l'ordinateur.
UNITE CENTRALE
Unité arithmétique et
logique
Unité contrôle
Mémoire
Périphériques d’entrée Périphériques de sortie
(Clavier, souris, (Écran, imprimante, clé
scanner, etc.) USB, etc.)
Figure : Architecture Von Neumann
3. Comparaison des architectures RISC CISC
Les architectures RISC (Reduced Instruction Set Computer) et CISC (Complex
Instruction Set Computer) sont deux approches différentes dans la conception des jeux
d'instructions pour les processeurs et microprocesseurs. Le tableau ci-dessous présente
une comparaison entre les deux architectures
Proposé par Mbeh Ivan
Informatique II
Critères RISC CISC
Complexité Utilise un ensemble d'instructions plus
des instructions Utilise un ensemble réduit d’instructions
complexe, avec des instructions capables
simples. Chaque instruction effectue une
d'effectuer plusieurs opérations en une seule
tâche unique.
commande.
Cela permet une grande efficacité dans
Cela réduit le nombre total d'instructions
l’exécution des opérations.
nécessaires pour exécuter un programme.
Taille des Les instructions ont une taille fixe Les instructions peuvent avoir des longueurs
instructions (généralement 32 bits), ce qui simplifie le variables, ce qui peut rendre le décodage
décodage et permet une exécution rapide plus complexe.
Usage des Utilise des instructions qui travaillent
registres Utilise un nombre élevé de registres et met directement avec la mémoire, ce qui peut
l'accent sur les opérations qui s’exécutent sur réduire le besoin de transfert de données
les registres. Cela permet de réduire l’accès à entre les registres et la mémoire. Cela peut
la mémoire, ce qui est plus lent. conduire à des performances moins
optimales.
Pipelining L’architecture est conçue pour le pipelining, Le pipelining peut être plus difficile à
permettant à plusieurs instructions de implémenter en raison de la complexité des
s’exécuter en même temps, ce qui améliore instructions, ce qui peut limiter l'efficacité du
la performance. traitement parallèle.
Exemples
ARM, MIPS, SPARC x86, Intel, AMD
Proposé par Mbeh Ivan
Informatique II
CHAPITRE 2 : Systèmes d'exploitation
Compétences visées : la fin de ce chapitre, l’étudiant devra être capable de :
• Expliquer le rôle et les fonctions d'un système d’exploitation ;
• Décrire la gestion des processus et de la mémoire ;
• Comparer différents systèmes d'exploitation.
Introduction
Les systèmes d'exploitation (SE) constituent la base fondamentale du
fonctionnement des ordinateurs et des dispositifs électroniques modernes. Ils gèrent de
manière efficace les ressources matérielles telles que le processeur, la mémoire, le
stockage et les périphériques, assurant un partage équitable et une utilisation optimale.
Ils assurent également la gestion des fichiers, la sécurité des données et la communication
entre les différentes applications et le matériel.
1. Définition, fonctions et types de Système d’exploitation
1.1. Définition
Un système d’exploitation (Operating System en anglais) est le logiciel de base qui
assure le bon fonctionnement d’un ordinateur. Il gère les ressources matérielles
(processeur, mémoire, périphériques) et logicielles d'un ordinateur et assure la
communication entre l'utilisateur et la machine, en exécutant les applications et en
contrôlant les périphériques.
1.2. Fonctions du SE
Les principales fonctions d’un SE sont les suivantes :
• La gestion des processus :
o Le SE gère la création, l'exécution et la fermeture des processus.
o Il détermine quel processus reçoit l'accès au processeur (CPU) à un
moment donné, optimisant l'utilisation du processeur et garantissant que
tous les processus puissent fonctionner de manière fluide.
o Il permet aux processus de communiquer et de se synchroniser pour
éviter les conflits.
• La gestion de la mémoire :
o Le SE alloue (attribue) des blocs de mémoire aux processus en cours
d'exécution et libère la mémoire lorsque ces derniers ne l’utilisent plus.
o Il contrôle l'utilisation de la mémoire pour s'assurer qu'aucun processus
ne dépasse les limites qui lui sont attribuées, évitant ainsi les fuites de
mémoire.
Proposé par Mbeh Ivan
Informatique II
• La gestion des fichiers :
o Le SE Permet aux utilisateurs et aux applications de créer, lire, écrire et
supprimer des fichiers.
o IL Gère les droits d'accès aux fichiers, garantissant que seuls les
utilisateurs autorisés peuvent les modifier ou les lire.
o Il fournit une structure pour organiser les fichiers dans des répertoires et
les gérer de manière efficace.
• La gestion des périphériques :
o Il assure la communication entre le matériel et les logiciels à l'aide des
programmes spécifiques aux dispositifs appelé « pilotes ».
o Il coordonne les opérations d'entrée/sortie entre les périphériques
(souris, claviers, imprimantes, disques, etc.) et le processeur, gérant les
files d'attente et les interruptions.
o Il fournissant une interface simplifiée pour la manipulation des
applications.
• La gestion des utilisateurs :
o Il gère les connexions des utilisateurs, en identifiant et en authentifiant
les utilisateurs pour assurer la sécurité du système.
o Il permet à plusieurs utilisateurs d'accéder au système simultanément
sans interférence grâce à la gestion des sessions utilisateur.
o Il met en œuvre des politiques de sécurité pour protéger les données des
utilisateurs contre les accès non autorisés et les cyber-menaces.
1.3. Types de systèmes d’exploitation
Il existe plusieurs approches pour classer les systèmes d'exploitation (SE). Les
différents types de SE, selon les approches de classification sont les suivantes :
• Selon le type d'appareil :
o Les SE pour ordinateurs personnels (PC) : Windows, macOS, Linux.
o Les SE pour serveurs : Windows Server, Linux Server, Unix.
o Les SE pour appareils mobiles : Android, iOS.
o Les SE pour appareils embarqués : RTOS, Linux embarqué.
o Les SE pour ordinateurs centraux (Mainframes) : z/OS.
• Selon le type d'utilisation :
o Les SE mono-utilisateur : Ils sont conçus pour un seul utilisateur à la fois
(ex : Windows, macOS).
o Les SE multi-utilisateurs : Ils permettent à plusieurs utilisateurs d'accéder
et d'utiliser le système simultanément (ex : Linux Server, Unix, Windows
Server).
o Les SE temps réel (RTOS) : Ils sont utilisés dans les systèmes critiques où
les délais de réponse sont essentiels (ex : systèmes embarqués, contrôle
industriel).
Proposé par Mbeh Ivan
Informatique II
o Les SE distribués : Ils gèrent un ensemble de machines interconnectées
comme un seul système (ex : systèmes de calcul distribué).
• Selon l’architecture :
o Les SE 32 bits : Ils utilisent une architecture de processeur 32 bits.
o Les SE 64 bits : Ils utilisent une architecture de processeur 64 bits,
permettant de gérer une plus grande quantité de mémoire.
• Selon le type de licence :
o Les SE propriétaires : Ici le code source n’est pas accessible au public et la
licence est payante (ex : Windows, macOS).
o Les SE open source : Le code source est accessible par tout le monde et
la licence est généralement gratuite (ex : Linux, Unix).
• Selon le type d'interface utilisateur :
o Les SE à interface en ligne de commande (CLI) : L'utilisateur interagit
avec le système en tapant des commandes (ex : Linux, Unix).
o Les SE à interface graphique (GUI) : L'utilisateur interagit avec le système
à l'aide d'une interface visuelle (ex : Windows, macOS).
2. Gestion des processus et de la mémoire
La gestion des processus et de la mémoire est une fonction cruciale des systèmes
d'exploitation (SE), garantissant l’exécution efficace et fluide des applications tout en
optimisant l’utilisation des ressources matérielles.
2.1. Gestion des processus
La gestion des processus est essentielle pour le bon fonctionnement d'un
système d'exploitation (SE), car elle permet de planifier et de contrôler l'exécution des
programmes. La planification détermine dans quel ordre les processus sont exécuté
par le processeur. Plusieurs algorithmes de planification peuvent être utilisés :
• Planification de type First-Come, First-Served (FCFS) : Dans cette planification,
les processus sont exécutés dans l'ordre de leur arrivée. Cette approche est Simple
à implémenter, mais peut entraîner des temps d'attente longs pour les processus.
• Planification à temps partagé (Round Robin) : Dans cette approche, chaque
processus reçoit un intervalle de temps (quantum) pour s'exécuter. S'il ne termine
pas durant son quantum, il est suspendu et mis à la fin de la file d'attente. Cette
approche résout le problème du temps d'attente des processus, mais ne prend
pas en compte la notion de priorité.
• Planification par priorité : Dans cette approche, Les processus sont exécutés selon
une priorité qui leur est attribuée. Les processus ayant une priorité plus élevée
sont exécutés avant ceux ayant une priorité plus basse. Cette approche peut
conduire à un problème d’attente infinie pour les processus ayant une faible
priorité.
Proposé par Mbeh Ivan
Informatique II
2.2. Gestion de la mémoire
La gestion de la mémoire est fondamentale dans les systèmes d'exploitation (SE)
pour assurer une utilisation efficace et optimale des ressources mémoire (RAM). Les
techniques de gestion de la mémoire les plus cruciales :
• Allocation unique contiguë : Dans cette approche d’allocation de la mémoire,
les domaines de mémoire sont alloués dans un espace de mémoire continue.
Chaque processus se voit attribuer un segment de mémoire contigu. Cette
approche facilite l'accès rapide aux données mais pose un problème de
fragmentation externe de la mémoire et des difficultés à gérer de grandes
applications.
• Allocation partitionnée : cette approche peut être statique ou dynamique.
o Allocation statique : La mémoire est divisée en de petites partitions de
taille fixe avant l’exécution des processus. Chaque partition ne peut
contenir qu’un et un seul processus. L’inconvénient majeur de cette
approche est utilisation inefficace de la mémoire, se traduisant avec la
présence de nombreux fragment interne.
o Allocation dynamique : Les partitions de mémoires sont créés sur mesure
pour répondre aux besoins spécifiques de chaque processus.
L’inconvénient de cette approche est la présence de fragmentation
externe, où des morceaux de mémoire inutilisés entre des partitions
occupées
• La mémoire paginée : Cette méthode divise la mémoire principale de
l'ordinateur en unités de taille fixe appelées cadres de page. Les processus sont
également divisés en pages, et chaque page peut être chargée indépendamment
dans les pages de mémoire. Cette approche Élimine la fragmentation externe,
simplifie la gestion de la mémoire, et permet des allocations de mémoire non
contiguës. Comme inconvénient, il peut introduire une fragmentation interne (si
une partie de la page n'est pas utilisée).
• La mémoire segmentée : c’est la seule méthode de gestion de la mémoire qui ne
fournit pas au programme de l'utilisateur un espace d'adressage linéaire et
contigu. La mémoire est divisée en segments de taille variable. Elle réduit le
gaspillage de mémoire et reflète la structure logique d'un programme. En outre,
elle peut entraîner de la fragmentation externe et nécessite une table de segments
pour la gestion.
• Le Swapping (Échange) : c’est une opération, qui consiste à déplacer des
processus de la mémoire principale (RAM), vers la mémoire virtuelle (le disque)
et vice versa pour libérer de l'espace mémoire. Il permet aux systèmes
d'exploitation de gérer efficacement des applications lourdes et d'exécuter
plusieurs processus simultanément. L’inconvénient majeur est que la vitesse
d’accès au disque dur est nettement plus lente que celle de la RAM, ce qui peut
introduire des temps de latences.
Proposé par Mbeh Ivan
Informatique II
3. Système de fichier
Un système de fichiers est un composant du système d'exploitation (SE) qui gère
la manière dont les données sont organisées, stockées et récupérées sur des supports de
stockage (disques durs, SSD, clés USB, etc.). Il existe différents types de système de
fichiers :
• FAT (File Allocation Table) : Ce système de fichiers est utilisé principalement sur
les disques de stockage amovibles comme les clés USB, mais peu performant pour
les disques de grande taille
• NTFS (New Technology File System) : Généralement utilisé par les systèmes
d'exploitation Windows, il prend en charge des fonctionnalités avancées comme
le chiffrement, la compression, et les journaux pour la récupération du système
en cas de panne.
• Ext (Extended File System) : Très Utilisé par les systèmes Linux, il prend charge
de grandes tailles de fichiers et des capacités de journalisation.
• APFS (Apple File System) : C’est le système de fichiers pour les SE macOS et iOS.
Il est optimisé pour le stockage flash et offre des performances élevées et des
fonctionnalités de sécurité améliorées comme le chiffrement.
4. Comparaison entre les systèmes d’exploitaion Windows,
Linux et MacOs
Proposé par Mbeh Ivan