
Cours 2 : Le système d'exploitation ou OS
Windows, Linux, Mac OS, Android, IOS, vous entendez ces noms régulièrement, vous les utilisez tous les jours, mais au final c'est quoi ?
En fait ce sont des logiciels spécialisés qui sont appelés systèmes d'exploitation (ou OS).
Un système d'exploitation sert principalement à gérer le lien entre tous les mondes applicatifs, donc les logiciels, et le monde matériel comme les processeurs ou les périphériques.
Souvenons-nous, un ordinateur est composé de 3 éléments principaux.
Tout d'abord il y a la mémoire que l’on va représenter ici sous forme d'un petit cylindre. La mémoire sert à stocker de l'information et à y accéder quand on en a besoin.
Un autre élément important des ordinateurs, ce sont les processeurs. Les processeurs sont les cerveaux de l'ordinateur, qui permettent de faire des calculs, exécuter des tâches sur la base d'informations qu'ils récupèrent en mémoire.
Et enfin, pour que l'ordinateur puisse communiquer avec le monde extérieur, il dispose de périphériques d'entrée sortie, comme par exemple une imprimante. Cela permet de sortir de l'information, un écran permet d'afficher une information, un clavier permet de rentrer une information dans l'ordinateur, ou même une souris. Internet est aussi un périphérique d'entrée et sortie.
Gestion de la mémoire:
Une application n’écrit pas directement dans le mémoire de l’ordinateur. Cela va empêcher par exemple qu’une application supprime les données d’une autre application. Pour ce faire, l’OS va faire croire à l’application qu’elle dispose de toute la mémoire en créant, pour chaque application de la mémoire virtuelle. Ainsi l’application écrira sur la mémoire virtuelle et l’OS attribuera à chaque élément mémorisé une place dans la vraie mémoire. Cela évite que les applications écrasent les données qui ne leurs sont pas destinées. Remarque : Il existe différents types de mémoire dans un ordinateur :
- Le registre de processeur : qui se situe comme son nom l’indique dans le processeur. C’est une mémoire très rapide, mais très cher ;
- La mémoire cache : elle sert à stocker des informations un court instant. Elle fait le lien entre la mémoire registre et la mémoire vive ;
- La mémoire vive : c’est la mémoire la plus souvent utilisée. Elle est stockée dans les barrettes RAM. Elle a l’avantage d’être rapide et assez peu couteuse, mais elle est volatile, i.e. elle sera perdue dès que l’ordinateur ne sera plus sous tension ;
- La mémoire morte, ou mémoire de masse : Elle sert à stocker des informations sur le long terme. Elle est bon marché mais plus lente que les autres mémoires.
Gestion du processeur:
Un ordinateur possède plusieurs processeurs. Mais généralement moins que d’applications lancées. L’OS jouera alors le rôle d’arbitre entre les applications afin de partager l’utilisation du processeur.
Un processeur ne sait faire que des calculs, certes, très rapidement mais il ne peut les faire que les uns après les autres.
L’ordonnanceur de l’OS va jouer un peu le rôle d’un professeur lorsque plusieurs élèves lèvent la main. Il donnera l’accès au processeur en fonction des priorités.
Gestion des périphériques:
Les ordinateurs et leurs périphériques étant tous très différents, il est important que les applications puissent dialoguer avec les périphériques sans connaitre le langage de chaque périphérique. Pour pouvoir faire cela, l’OS fournit une couche d’abstraction par l’intermédiaire des appels système (sytem call ou syscall en anglais).
Ainsi, c’est l’OS qui dispose des pilotes des périphériques (logiciel qui permet de faire fonctionner un périphérique).
Si une application veut avoir accès à un micro par exemple. L’OS enregistre cette demande et si elle reçoit des informations du microphone (des sons), l’OS enverra le bon signal à la bonne application.