Principes d’exécution d'un programme informatique

L’informatique et ses fondements

Publié le 21/06/19Modifié le 06/11/19

Sur le même sujet

Comment l'ordinateur exécute un programme informatique ? 

Le processeur est le cœur de la machine. Il fait tous les traitements, c'est-à-dire qu'il exécute une liste d'instructions, très détaillée, qui lui a été donnée. 

Cheminement des données

Au démarrage de l'ordinateur, le processeur va chercher des instructions sur le disque dur, car c'est là qu'elles sont habituellement stockées. Il charge donc en mémoire le programme et les données dont il a besoin (par exemple une image). Le processeur regarde ensuite dans le programme la suite d'instructions qu'il doit exécuter. Il charge la première instruction et commence à travailler dessus. Une instruction renferme un paquet de données binaires qui décrivent ce qu'il doit faire pour cette étape. C'est du langage machine qui explique, dans la première partie, quel est le type d'opération à exécuter (comme une addition et une multiplication) et, dans la deuxième partie, sur quelle donnée l'opération doit être appliquée (à l'aide des bits 0 ou 1).

Pour exécuter l'instruction, le processeur cherche les données en entrée (elles peuvent se trouver en mémoire) il applique l'opération. Il génère ensuite un résultat, qu'il stocke, par exemple, en mémoire. Il peut aussi le stocker dans des petites cases spéciales du processeur qui s'appellent des « registres ». C'est une mémoire un peu particulière.

Le processeur recommence pour les instructions suivantes jusqu'à la fin. Il prend alors le résultat qu'il a stocké en mémoire et va le renvoyer sur le disque dur pour sauvegarder, par exemple, une image ou un document qu'on aurait modifié.

Quelques ordres de grandeur 

Un processeur actuel exécute de l'ordre d'un milliard d'opérations par seconde. Ce sont des opérations simples, mais sur des nombres très grands, jusqu'à 64 bits (16 milliards de milliards). Il sait également manipuler beaucoup de données pour faire toutes ces opérations, donc potentiellement lire et écrire en mémoire des milliards d'octets.

Linux, Windows ou Mac OS X sont des systèmes d'exploitation. C'est un programme qui va contenir environ une dizaine de millions d'instructions relativement classiques que le processeur va exécuter. Le système d'exploitation a beaucoup de choses à faire pour gérer l'ordinateur, notamment les pilotes de périphériques (les systèmes marchent sur des ordinateurs avec différentes cartes réseau, différentes cartes graphiques, différents claviers, différentes souris, etc.). 

Une suite bureautique comme Libre Office ou d'autres, représente plusieurs centaines de mégaoctets, avec des millions d'instructions. Beaucoup sont utilisées pour l'interface graphique, notamment pour afficher les images, comme les icônes des boutons, etc.

Concernant les jeux vidéo, c'est très variable mais on peut considérer que c'est de l'ordre de la dizaine de gigaoctets. C'est essentiellement des graphismes et des vidéos, un peu de code, mais beaucoup moins qu'une suite bureautique ou qu'un système d'exploitation.
 

À retenir

  • Le processeur exécute le programme comme une recette de cuisine. Il prend toutes les instructions à la suite, les traite et, ensuite, il range le résultat. Il faut lui détailler très finement ce qu'il doit faire, mais il peut le faire extrêmement rapidement, des milliards d'opérations par seconde, en manipulant énormément de données.

Nom de l'auteur : Liliane Kahmsay / Florent Masseglia

Producteur : Inria

Année de diffusion : 2016

Voir plus