Comment fonctionne un ordinateur ?
Présentation générale.
Le plus simple pour comprendre, c’est toujours un petit dessin :
Voici les composants essentiels d’un ordinateur (et encore écran, clavier et souris pourraient être enlevés).
Avant de regarder le fonctionnement, regardons maintenant le rôle de chacun :
- Le disque dur est un matériel qui va permettre d’enregistrer les données. Nous pouvons le comparer à un bloc-notes ou cahier d’écolier où l’on viendrait écrire et lire les informations que nous voudrions conserver. Nous y reviendrons. (Le disque dur est parfois appelé mémoire de masse.) Les données écrites sur le disque dur restent même lorsque l’on éteint l’ordinateur.
- La RAM est la mémoire (non permanente) de l’ordinateur, on pourrait la comparer à notre mémoire (eh oui, nous n’enregistrons pas tout à vie !). Cette mémoire s’efface lorsque nous éteignons l’ordinateur.
- le processeur appelé également CPU, c’est le cerveau. C’est lui qui contrôle l’ensemble et c’est lui qui va calculer, et traiter les différentes informations entrantes ou sortantes.
Ces composants sont tous à l’intérieur de l’ordinateur et rarement accessibles. Ils sont tous branchés sur une grande carte électronique qui fait la taille de l’ordinateur : cette carte est appelée « carte mère ».
Voici un exemple de carte mère :
sur la carte mère ci-dessus, il n’y a pas de processeur, ni de ram. Mais il suffit de les enficher sur les supports prévus à cet effet.
- Clavier et souris, je ne vais pas m’attarder mais sachez que l’on appelle cela des périphériques d’entrées. (je donne l’explication sur la notion de périphérique juste un peu plus bas). Les informations vont toujours dans le sens périphérique vers processeur.
- L’écran est un périphérique de sortie. Les informations vont toujours dans le sens processeur vers périphérique. (par exemple, l’imprimante est aussi un périphérique de sortie). (Attention, les nouveaux écrans tactiles sont également des périphériques d’entrée car on donne des informations à l’ordinateur en tapotant sur l’écran).
Rôle d’un ordinateur.
Avant de parler du fonctionnement, parlons un peu du rôle et de ce que nous en attendons. Si vous avez acheté un ordinateur, c’est que vous en attendez quelque chose :
- Surfer sur Internet,
- Jouer,
- Regarder des vidéos,
- Travailler (saisir du texte, faire des calculs, …)
- Enregistrer et trier vos photos etc...
En fait, à chaque fois que vous vous faire quelque chose : vous devez utiliser un logiciel.
Un logiciel c’est quoi ?
Un logiciel (ou programme) c’est un fichier qui contient une suite d’opérations (ou instructions) que votre ordinateur doit effectuer.
Prenons un exemple dans la vie courante et comparons notre logiciel à un travail dans une usine. Vous êtes ouvrier dans une usine qui produit des pièces, et votre chef vous décrit votre poste qui consiste à :
- Prendre la pièce A dans la boite,
- percer un trou dans la pièce A,
- prendre la pièce B dans une autre boite,
- visser la pièce A sur la pièce B,
- si les 2 pièces s’ajuste correctement alors
- poser l’assemblage des 2 pièces A et B sur le tapis roulant.
- sinon
- jeter les 2 pièces à la poubelle
- fin du travail.
Tout votre travail est décrit sur le manuel des instructions. Ce manuel est écrit dans une langue que vous comprenez (c’est mieux !)
Vous pouvez comparer le logiciel à ce manuel des instructions, tout y est décrit. Comme vous le voyez, il s’agit d’une suite d’opérations et le travail peut prendre des directions différentes en répondant aux différentes questions (dans l’exemple : « si les 2 pièces s’ajustent correctement alors … »).
Comme pour vous, les logiciels sont écrits dans un langage compréhensible par celui qui va réaliser les opérations. Et donc dans ce cas, les logiciels sont écrits dans un langage compréhensible par l’ordinateur. (Il s’agit de code binaire, une suite de 0 et 1).
Et pour votre culture, pour apprendre un nouveau langage, les développeurs commencent souvent par un petit programme appelé « hello world »
Voici la liste des instructions ce petit programme :
- Afficher « hello world » à l’écran,
- Fermer le programme.
Ça peut vous paraître ridicule, mais en fonction des langages et surtout quand on débute, ce n’est pas toujours facile à faire.
Hardware et software.
Et voila, sans nous en rendre compte, nous venons d’évoquer 2 notions très utilisées :
- Hardware
On désigne par hardware tout ce qui concerne la partie matériel de l’ordinateur. (Exemple : la carte mère, le processeur, la mémoire (RAM), le disque dur, etc … )
Hard veut dire dur, ware veut dire marchandise, et enfin hardware pourrait être traduit par matériel.
- Software
Et donc par opposition, tout ce qui n’est pas matériel est donc du software (logiciel).
Soft peut être traduit par doux (en opposition au dur de hardware).
Fonctionnement de l’ordinateur
Lorsque vous appuyez sur le bouton d’alimentation, tout le système se lance (mais comme j’ai dit que j’allais faire simple, je n’en parlerai pas ici, mais dans un article complémentaire).
Lorsque l’ordinateur démarre, il commence par lancer un logiciel spécial que l’on appelle l’OS (par exemple Windows, Linux ou MacOS. Je ne rentre pas dans les détails, mais si vous voulez savoir ce qu’est un OS, je vous conseille : C’est quoi un OS ?). Sans cet OS, vous ne pouvez pas utiliser l’ordinateur et l’ordinateur ne serait qu’une machine qui ne servirait pas à grand chose. C’est l’OS qui va interpréter vos commandes et vous afficher les résultats. (C’est une surcouche entre le matériel et vous).
Les OS modernes affichent généralement un écran d’accueil (appelé bureau) contenant toutes vos icônes. Ces icônes vont permettent de lancer les logiciels en cliquant dessus.
Voici comment ca marche quand vous lancez un logiciel : regardons cela étape par étape. (attention, toujours pour une meilleure compréhension, les étapes ont volontairement été simplifiées)
- Vous cliquez (ou double cliquez) sur l’icone.
- L’ordinateur va alors chercher dans le disque dur vers quel logiciel pointe cette icone.
- Il va lire le logiciel à partir du disque dur car celui-ci est enregistré dessus.
- Tout ce qui sera lu sera chargé dans la mémoire vive (RAM).
- A partir de la RAM, le processeur va exécuter le logiciel instruction après instruction.
- Une fois que vous fermerez le programme, celui-ci sera effacé de la RAM.
- Mais bien évidemment, il reste présent sur le disque dur pour une prochaine utilisation.
Présentation détaillée de chacun des éléments
RAM (Random Access Memory)
La RAM est une mémoire (volatile). Il s’agit d’une carte composée de puces électroniques. Ces cartes s’appellent des barrettes. L’avantage de la mémoire est que la lecture et l’écriture des informations se fait très rapidement.
L’inconvénient est que cette mémoire s’efface dès que l’ordinateur est éteint. De plus, cette RAM ayant un certain coût, si l’on voulait y stocker l’ensemble des informations, cela coûterait très cher.
Voici une barrette de RAM :
Puisque l’on ne peut pas tout stocker dans la RAM (coût, et perte de données à l’extinction de l’ordinateur), il a fallu inviter des systèmes de stockage de données de masse et permanents. Au début de l’informatique, cela se faisait sur des cartes perforées, puis sur des bandes magnétiques et enfin sont apparus les disques durs.
La mémoire RAM ou mémoire vive est composée d'un ensemble de composants électroniques, principalement des condensateurs et des transistors. Elle constitue la mémoire principale du PC où les données sont stockées temporairement lors de l'exécution d'un programme.
La mémoire RAM, une mémoire temporaire
Contrairement à la ROM (Read Only Memory) ou mémoire morte où les données enregistrées sont conservées même en l'absence de courant électrique, la mémoire RAM, (Ramdom Access Memory) est une mémoire volatile. En effet, une fois l'ordinateur éteint, toutes les données qui y sont emmagasinées sont effacées. On désigne également la RAM sous le nom de RWM (Read Write Memory) signifiant « mémoire en lecture écriture » qui indique mieux le fonctionnement de la mémoire volatile. En effet, on peut aussi bien lire qu'écrire sur la RAM et les données des programmes en cours qui y sont stockées peuvent être consultées au hasard mais non de façon séquentielle. En d'autres termes, on les retrouve à n'importe quel endroit, à la même vitesse.
La structure de la mémoire
Les mémoires informatiques étaient à l'origine des composants magnétiques fabriqués le plus souvent avec des tores de ferrite. À partir des années 70, elles sont constituées de composants électroniques, comme c'est le cas pour la mémoire RAM. Cette dernière est composée d'un ensemble de circuits intégrés à base de silicium. Ces circuits, de très petites tailles, comportent une structure en forme de matrice, un tableau avec des colonnes et des lignes. Chaque cellule de cette matrice sert à stocker des charges électriques représentant des 1 ou des 0. Chaque cellule, appelée aussi point mémoire, comprend un condensateur et un transistor. Elle est caractérisée par une adresse qui correspond à un numéro de ligne et un numéro de colonne. Dans une mémoire RAM, il y a des centaines de milliers de condensateurs et de transistors.
Le stockage des données
Le transistor réagit comme une vanne qui laisse ou non passer l'électricité. Quant au condensateur, il joue le rôle d'un réservoir à électrons. Lorsque le transistor laisse passer le courant, le condensateur emmagasine une charge d'électrons mais pour cela, il doit être alimenté continuellement en électricité ou rafraîchi. Le rafraichissement se fait par intervalle de temps variant selon le type de RAM. Les condensateurs des mémoires DRAM, par exemple, doivent être rafraichis à peu près tous les 15 nanosecondes (ns). Lorsqu'un condensateur est chargé, cela représente en langage binaire un 1. Dans le cas contraire, son état logique est 0. Chaque point mémoire est une adresse identifiée par un numéro de ligne et un numéro de colonne. Les données sont généralement organisées en mots de 8, 16 et 32 bits, chaque point mémoire correspondant à un bit. Notons que chaque fois qu'on lit un point mémoire, la mémoire RAM vide le condensateur et efface ainsi les informations qui s'y trouvent. De la sorte, il faut le remplir à nouveau après chaque lecture.
L'utilité de la mémoire RAM
La mémoire RAM est indispensable au processeur car c'est elle qui stocke les données dont ce dernier a besoin dans l'immédiat et sans elle, aucun programme ne peut être exécuté sur un ordinateur. En effet, quand on ouvre un programme, celui-ci envoie des données sous forme chiffrée au système d'exploitation que ce dernier range dans les points mémoires encore vides de la RAM. Quand le programme a besoin de ces valeurs stockées, il envoie une requête au système d'exploitation qui lui indique alors l'endroit où elles se trouvent. Souvent, des erreurs peuvent se produire lors de la récupération de données, notamment quand le programme se trompe d'adresse. Dans ce cas, une anomalie de fonctionnement survient automatiquement.
Notons que pour accéder aux données stockées sur un point mémoire, il faut un certain temps égal au temps de cycle ajouté au temps de latence. Ce temps dit temps d'accès peut être de quelques dizaines à centaines de nanosecondes alors que pour un disque dur, il est de plusieurs millisecondes, soit 10 000 à 100 000 fois plus. La mémoire RAM permet donc un accès très rapide aux données, ce qui permet au processeur de fonctionner correctement. De la sorte, pour améliorer les performances de son ordinateur, on peut augmenter la quantité de mémoire vive disponible. A l'heure actuelle, certains programmes nécessitent en effet une grande quantité de mémoire vive pour fonctionner correctement et pour éviter les mauvaises surprises, il est conseillé d'équiper son PC d'une mémoire RAM d'au moins 1 Go.
Disque dur
Comme nous venons de le voir au-dessus, le disque dur stocke les informations. L’avantage du disque dur c’est que l’on peut stocker beaucoup d’informations et que ces informations restent enregistrées même si l’on éteint l’ordinateur. Vous pouvez y enregistrer vos logiciels, vos photos, vos musiques, …
Le coût du stockage est nettement moins cher qu’avec de la RAM. Par contre, la lecture et l’écriture sont beaucoup plus lents qu’avec la RAM.
Important
Attention toutefois, un disque dur est composé d’une partie électronique et d’une partie mécanique (disque, moteur, tête de lecture, …) : tout ceci peut tomber en panne, et alors tout ou partie de ce qui est enregistré est perdu ! Croyez-moi cela arrive assez souvent.
Je ne saurais que trop vous conseiller de faire une copie des fichiers importants que vous souhaitez conserver sur un autre support (2ème disque dur, DVD, disque dur externe, cloud, …).
Les nouveaux disques dur SSD sont exclusivement composés de puces électroniques (un peu comme de la RAM, sauf que les informations ne s’effacent pas lorsque l’on éteint l’ordinateur). Ils également l’avantage d’être très rapides.
Processeur
Et enfin pour finir, le processeur. C’est lui qui exécute les instructions.
Un processeur est composé de transistors. Ce sont des petites puces de qui vont laisser passer le courant ou pas en fonction de la valeur à l’entrée et de l’opération demandée : un peu comme un interrupteur, cet état peut être 1 ou 0 (allumé ou éteint, On ou Off).
Toutes ces opérations doivent être lancé à un rythme bien précis : ce rythme est cadencé par une horloge. Plus l’horloge tourne vite, plus le processeur pourra en traiter à la seconde. A chaque impulsion d’horloge, les transistors vont prendre un état 0 ou 1, ce qui va permettre de faire des calculs.
Rappelez-vous de l’exemple de la fiche de procédure ci-dessus, et bien imaginez que le processeur exécute une action à chaque impulsion de l’horloge.
On exprime ce cadencement en GHz. (Giga Hertz, Hertz étant une unité de fréquence). On peut parler d’un processeur à 4GHz. Soit 4.000.000.000 cycles d’opérations à la seconde !!
Tous les processeurs ne se valent pas, et on pourrait croire faire une bonne affaire en prenant un processeur qui va plus vite qu’un autre. Mais la vitesse ne suffit pas. Pour aller plus vite certains processeurs ont plusieurs cœurs et de la mémoire cache intégrée, mais là je m’égare : j’avais dit que je ferais simple. Ce que je voulais juste dire, c’est que 2 processeurs à 4GHz n’auront pas forcément la même performance !
Voici un exemple de processeur :
Comment pouvons-nous l'améliorer?