Le système d'exploitation est le premier programme exécuté lors de la mise en marche de l'ordinateur. Il offre une suite de services généraux qui facilitent la création de logiciels applicatifs et sert d'intermédiaire entre ces logiciels et le matériel informatique1. Un système d'exploitation apporte commodité, efficacité et capacité d'évolution, permettant d'introduire de nouvelles fonctions et du nouveau matériel sans remettre en causes les logiciels.
Les systèmes d’exploitation ou O.S (Operating System) gèrent les communications entre les logiciels et le matériel.
Par exemple, un logiciel de navigation routière demandera au système d’exploitation les coordonnées GPS. Le système d’exploitation, par l’intermédiaire des pilotes, interrogera le matériel pour avoir les données GPS qu’il retournera au logiciel de façon compréhensible.
Pour comprendre ce que sont les systèmes d’exploitation, nous devons d’abord comprendre comment ils se sont développés. Le fait de comprendre les raisons du développement des systèmes d’exploitation nous permet d’apprendre quelles tâches ils réalisent et comment ils les effectuent.
Le système d’exploitation est le logiciel le plus important d’un ordinateur.
Le regroupe un ensemble de programmes qui permettent l’utilisation de l’ordinateur et de ses périphériques (écran, imprimante, clavier…). Sans système d’exploitation, l’ordinateur n’est pas capable de gérer les périphériques.
Il permet tout d’abord le démarrage de l’ordinateur et est indispensable à la mise en œuvre des autres programmes présents sur l’ordinateur. Il assure donc son fonctionnement général.
Pour qu’un ordinateur soit capable de faire fonctionner un programme informatique (appelé également « application ou logiciel), la machine doit être en mesure d’effectuer un certain nombre d’opérations préparatoires afin d’assurer les échanges entre le processeur (composant essentiel d’un ordinateur qui interprète les instructions et traite les données d’un programme), la mémoire, et les ressources physiques (périphériques).

Le Système d’exploitation, est chargé d’assurer la liaison entre les ressources matérielles, l’utilisateur et les applications. Ainsi, lorsqu’un programme désire accéder à une ressource matérielle, il ne lui est pas nécessaire d’envoyer des informations spécifiques au périphérique, il lui suffit d’envoyer les informations au système d’exploitation, qui se charge de les transmettre au périphérique concerné via son pilote (programme informatique également nommé Driver, destiné à permettre à un autre programme d’interagir avec un périphérique).
Le système d’exploitation permet ainsi de dissocier les programmes et le matériel, afin notamment de simplifier la gestion des ressources et d’offrir à l’utilisateur une interface homme-machine (IHM) simplifiée afin de lui permettre de s’affranchir de la complexité de la machine physique.
Mais il faut également la garantie d’un bon niveau en matière de :
Un système d’exploitation doit se « faire oublier » : la fonction d’un ordinateur est d’exécuter les applications, pas le système d’exploitation.
La qualité de l’interface (en particulier pour les systèmes interactifs)
Les rôles de l’OS sont devers et concernent notamment :

Le système d’exploitation est composé d’un ensemble de logiciels permettant de gérer les interactions avec le matériel. Parmi cet ensemble de logiciels, on distingue généralement les éléments suivant :
Mono/Multitâches : capacité du système à pouvoir exécuter plusieurs processus simultanément. Par exemple, effectuer une compilation et consulter le fichier source du programme correspondant.
C’est le cas d’UNIX, d’OS/2 et de Windows 95
Mono/multiutilisateurs : capacité à pouvoir gérer un panel d’utilisateurs utilisant simultanément les même ressources matériels.
C’est le cas d’UNIX, de MVS, de Gecos…
Système centralisés : l’ensemble du système est entièrement présent sur la machine considérée. Les machines éventuellement reliées sont vues comme des entités étrangères disposant elle aussi d’un système centralisé. Le système ne gère que les ressources de la machine sur laquelle il est présent.
C’est le cas d’Unix, même sir les applications réseaux (X11, FTP, Mail…) se sont développées.
Système répartis (« destributed systems ») : les différentes abstractions du système sont réparties sur un ensemble (domaine) de machine (site). Le système d’exploitation réparti apparait aux yeux de ses utilisateurs comme une machine virtuelle monoprocesseur même lorsque cela n’est pas le cas. Avec un système réparti, l’utilisateur n’a pas à se soucier de la localisation des ressources. Quand il lance un programme, il n’a pas à connaitre le composant de la machine qui l’exécutera. Ils exploitent au mieux les capacités de parallélisme d’un domaine. Ils offrent des solutions aux problèmes de la résistance aux pannes.
Systèmes fermés (ou propriétaires) :
Extensibilité réduite : quand on veut ajouter des fonctionnalités à un système fermé, il faut remettre en cause sa conception et refaire une archive (système complet).
C’est le cas d’UNIX, MSDOS…
Il n’y a aucun ou peu d’échange possible avec d’autres système de type différent, voir avec des types identiques.
C’est le cas entre UNIX, BSD et SV.
Systèmes ouverts :
Extensibilité accrue : il est possible d’ajouter des fonctionnalités et des abstractions sans avoir à repenser le système et même sans avoir à l’arrêter sur une machine. Cela implique souvent une conception modulaire basée sur le modèle « client – serveur ».
Architecture monoprocesseur (temps partagé ou multiprogrammation) :
Architecture multiprocesseurs (parallélisme) :
On trouve une grande variété d’architectures multiprocesseurs :
On parle aussi d’architecture faiblement ou fortement couplée.
Architecture fortement couplée :
Ce sont principalement des architectures à mémoire commune.
Architecture faiblement couplée :
Ce sont des architectures où chaque processeur possède sa propre mémoire locale ; c’est le cas d’un réseau de stations.
Architecture mixte :
Ce sont des architectures à différents niveau de mémoire (commune et privée).
Remarque : Il n’y a pas de système universel pour cette multitude d’architectures. Les constructeurs ont toujours développé leurs propres systèmes. Aujourd’hui, compte tenu de la complexité croissante des systèmes d’exploitation et du coût inhérent, la tendant est à l’harmonisation notamment via le développement de système polyvalents tels que les systèmes repartis.
Système temps réel :
Un système d'exploitation temps réel (RTOS) (en règle générale prononcé comme : Are-toss) est un système d'exploitation multitâche destiné aux applications temps réel. Ces applications comprennent les systèmes embarqués (thermostats programmables, contrôleurs électroménagers, téléphones mobiles), des robots industriels, les vaisseaux spatiaux, les systèmes de contrôle commande industriel, et le matériel de recherche scientifique.
On distingue deux types de contraintes temporelles : les contraintes strictes et les contraintes relatives.
Pour garantir ces contraintes, le système possède des mécanismes spécifiques dont le but est de réduire l’in terminisme des durées d’exécution des programmes.
RTOS utilise des ordonnanceurs spécialisées afin de fournir aux développeurs des systèmes temps réel les outils et les primitives nécessaires pour produire un comportement temps réel souhaité dans le système final.
Deux types de conceptions existent :

Microsoft Windows ; le système d’exploitation de Microsoft (il est actuellement installé sur plus de 90% des ordinateurs personnels par des méthodes illégales car selon la loi Français, il est interdit de vendre 2 produits sans que l’in puisse les acheter séparément. Or, lorsque l’on achète un ordinateur il est très rare que l’on ait la possibilité de l’avoir sans système d’exploitation).
Article sur Wikipedia : Microsoft Windows

Linux ou GNU/Linux, est un système d'exploitation libre fonctionnant avec le noyau Linux. C'est une implémentation libre du système UNIX respectant les spécifications POSIX. Ce système est né dans le milieu hacker de la rencontre entre le mouvement émancipateur du logiciel libre et le modèle de développement collaboratif et décentralisé via Internet. Son nom vient du créateur du noyau Linux, Linus Torvalds.
Article sur wikipédia : Linux

Mac OS (pour Macintosh Operating System) est le nom du système d'exploitation d'Apple pour ses ordinateurs Macintosh. Il est surtout connu pour être un des premiers systèmes grand public ayant une interface graphique, inspiré de Xerox Alto, et basée sur les fenêtres, icônes, menus et souris (modèle WIMP).
Article complet sur wikipedia : Macintosh
Article sur le JDN : les 10 systèmes d'exploitation à connaître