mercredi 2 avril 2008

Le système d’exploitation

Le système d’exploitation (SE, en anglais Operating System ou OS)

Le système d’exploitation est un ensemble de programmes responsables de la liaison entre les ressources matérielles d’un ordinateur et les applications informatiques de l’utilisateur (traitement de texte, jeu vidéo…). Il fournit aux programmes applicatifs des points d’entrée génériques pour les périphériques.

L'évolution des sytèmes d'exploitation, la disparition de la plupart d'entre eux au profit des deux dominants Windows et Unix (essentiellement dans sa réalisation Linux) justifiaient une refonte. Linux présente l'énorme avantage d'être Open Source, ce qui signifie que toutes les informations sur ses concepts sont connues; il est donc devenu indispensable de l'intégrer au fil des chapitres pour illustrer les concepts théoriques qui y sont développés. D'autres notions devaient être mises à jour car les machines disponibles aujourd'hui, que ce soit sous Windows ou Linux, jusque sur le bureau des particuliers ont intégrées dans leur fonctionnement des principes qui n'étaient mis en pratique que sur les ordinateurs les plus puissants

Pourquoi apprendre comment fonctionne les ordinateurs ? Indépendemment d'un simple aspect de curiosité intellectuelle, la compréhension des concepts est indispensable pour le programmeur. Il faut comprendre les principes sous-jascents si l'on veut réaliser des programmes efficaces. Il existe des logiciels plus efficaces que d'autres, non seulement parce que leur auteur a trouvé une méthode algorithmique plus subtile mais aussi parce qu'il a su mieux respecter les principes cachés dans le système d'exploitation de la machine et tirer meilleur partie du fonctionnement du processeur et de la mémoire. Ceci est bien connu des scientifiques qui utilisent les superordinateurs. Ils savent que si un programme n'a pas été prévu pour ces machines ses performances seront décevantes, à peine supérieures à celles qu'on obtiendrait sur une station de travail cent fois moins coûteuse. Ceci est encore plus vrai avec les nouvelles générations de machines massivement parallèles. Ce qui est vrai pour un Cray l'est également pour un micro-ordinateur. Il est simple, lorsqu'on sait comment les machines travaillent de respecter quelques principes essentiels. Le gain est double: le programme réalisé est plus efficace et il existe de grandes chances pour qu'il soit plus simple de l'adapter à une nouvelle architecture car tous les ordinateurs ont beaucoup de points communs dans leur fonctionnement : les processeurs modernes ressemblent étonnamment à ceux que l'on rencontrait par le passé sur les plus grosses machines.Le but de ce cours est de présenter les principes essentiels à la compréhension du fonctionnement des ordinateurs. Il n'est pas écrit à l'intention de spécialistes mais pour toute personne qui désire programmer de façon efficace. Dans les exemples les plus concrets il s'appuiera sur les principes généraux d'Unix. La raison en est simple : tous les principes de ce système d'exploitation sont abondamment décrits dans la littérature et les sources de certaines réalisations sont même disponibles. Il n'en est pas de même pour Windows, quelque soit la version, sur lequel son propriétaire est avare d'informations.

Aucun commentaire: