Vous êtes sur la page 1sur 14

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Système d'exploitation

En informatique, un système d'exploitation (souvent appelé OS pour Operating System, le terme anglophone) est un ensemble de programmes qui dirige l'utilisation des capacités d'un ordinateur par des logiciels applicatifs . Il reçoit de la part des logiciels applicatifs des demandes d'utilisation des capacités de l'ordinateur — capacité de stockage des mémoires et des disques durs, capacité de calcul du processeur. Le système d'exploitation accepte ou refuse de telles demandes, puis réserve les ressources en question pour éviter que leur utilisation n'interfère avec d'autres demandes provenant d'autres logiciels .

1

1

2

Le système d'exploitation est le premier programme exécuté lors de la mise en marche de l'ordinateur , après l’amorçage. 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 informatique . 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 cause les logiciels .

2

1

Il existe sur le marché des dizaines de systèmes d'exploitation différents . Ils sont souvent livrés avec l'appareil informatique

Windows, Mac OS, Irix, Symbian OS et Android. Les fonctionnalités offertes diffèrent d'un modèle à l'autre, et sont typiquement en rapport avec l'exécution des programmes, l'utilisation de la mémoire centrale, des périphériques, la manipulation des systèmes de fichiers, la communication, ou

2

3

— c'est le cas de

la détection d'erreurs .

2

La définition des systèmes d'exploitation est rendue floue par le fait que les vendeurs de tels produits considèrent comme étant le système d'exploitation la totalité du contenu de leur produit, y compris les vidéos, les images et les logiciels applicatifs qui l'accompagnent .

1

En 2012, les deux familles de systèmes d'exploitation les plus populaires sont la famille Unix (dont Mac OS X, Linux, iOS et Android) et la famille Windows, celle-ci détenant un quasi-monopole sur les ordinateurs personnels, avec près de 90 % de part de marché depuis 15 ans .

4

Sommaire

1 Fonctionnalités

2 Typologie

2.1 Première génération : Traitement par lots

2.2 Deuxième génération : la multiprogrammation

2.3 Troisième génération : le temps partagé

2.4 Quatrième génération : le temps réel

2.5 Cinquième génération : les systèmes distribués

3 Histoire

3.1 1960, la multiprogrammation

3.2 1972, les micro-ordinateurs

3.3 1990, les systèmes d'exploitation sous licence libre

4 Composition

4.1 Interface de programmation

4.2 L'ordonnanceur

4.3 La communication inter-processus

4.4 Gestion de la mémoire

4.4.1 La mémoire virtuelle

4.5 Pilotes

4.6 Système de fichiers

4.7 Réseau

4.8 Contrôle d'accès

4.9 Interface utilisateur

4.9.1 L'interface utilisateur graphique

4.10 Logiciels utilitaires

5 Organisation générale

5.1 Le noyau

5.1.1 Noyau monolithique

5.1.2 Micro-noyau

5.1.3 Noyau hybride

5.1.4 Exo-noyau

6 Quelques exemples

7 Le marché

7.1 Choix par l'acheteur

7.2 Concurrence, compatibilité et interopérabilité

7.2.1 La guerre des Unix et l'Open Group

7.2.2 Microsoft et la concurrence

7.2.3 Les réseaux informatiques

8 Notes et références

8.1 Notes

8.2 Références

8.3 A.Tanenbaum, Systèmes d'exploitation

9 Bibliographie

10 Annexes

10.1 Articles connexes

10.2 Liens externes

10.2.1 Systèmes d’exploitation à but éducatif

Le système d'exploitation est un intermédiaire entre les logiciels d'application et le matériel.

Le système d'exploitation est un intermédiaire entre les logiciels d'application et le matériel.

Relations dans un système d'exploitation moderne

Relations dans un système d'exploitation moderne

Fonctionnalités

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Le système d'exploitation offre une suite de services généraux qui facilitent la création de logiciels applicatifs. Les services offerts sont en rapport avec l'utilisation des ressources de l'ordinateur par les programmes . Ils permettent en particulier d'exécuter des programmes, de lire et écrire des informations, de manipuler les fichiers, de communiquer entre ordinateurs et de déceler des erreurs . Ces services permettent à plusieurs usagers et plusieurs programmes de se partager les ressources de l'ordinateur .

2

5

2

l'utilisation des périphériques. Chaque périphérique a ses propres instructions, avec lesquelles il peut être manipulé. Le système d'exploitation tient compte de cela. Il permet au programmeur de manipuler le périphérique par de simples demandes de lecture ou d'écriture, lui évitant la perte de temps de traduire les opérations en instructions propres au périphérique .de se partager les ressources de l'ordinateur . 2 5 2 Accès aux fichiers : en

Accès aux fichiers : en plus des instructions propres à chaque périphérique (lecteur de disquette, disque dur, lecteur de CD-ROM), le système d'exploitation tient compte du format propre à chaque support servant au stockage de fichiers. Il offre également des mécanismes de protection permettant de contrôler quel utilisateur peut manipuler quel fichier .les opérations en instructions propres au périphérique . L'accès aux ressources : Une des fonctions du

L'accès aux ressources : Une des fonctions du système d'exploitation est de protéger les ressources contre l'utilisation par des personnes non autorisées, et de résoudre les conflits lorsque deux utilisateurs demandent simultanément la même ressource .contrôler quel utilisateur peut manipuler quel fichier . Détection et récupération en cas d'erreur :

Détection et récupération en cas d'erreur : lorsqu'une erreur survient, que cela soit du matériel ou du logiciel, le système d'exploitation traite l'erreur en adoucissant son impact sur le système informatique. Il peut tenter de recommencer l'opération, arrêter l'exécution du programme fautif, ou signaler le problème à l'utilisateur .utilisateurs demandent simultanément la même ressource . Contrôle. Un système d'exploitation peut tenir des

Contrôle. Un système d'exploitation peut tenir des statistiques d'utilisation des ressources, surveiller la performance, et les temps de réponse .fautif, ou signaler le problème à l'utilisateur . 5 5 5 5 5 Le système d'exploitation

5

5

5

5

5

Le système d'exploitation assure la réservation des différentes ressources pour les besoins des programmes, qui sont exécutés simultanément. Les réservations peuvent être inscrites dans des journaux d'activités à des fins de statistiques ou de dépannage et le système d'exploitation peut refuser une réservation à un utilisateur qui n'a pas reçu préalablement d'autorisation .

2

Le matériel informatique peut exécuter des instructions, mais celles-ci sont rarement plus que des copies et des additions. La traduction d'opérations complexes en suite d'instructions est une tâche fastidieuse qui incombe au système d'exploitation . Le système d'exploitation prend en charge toute la manipulation du matériel et le logiciel applicatif ne peut pas voir la différence entre une machine simple, rudimentaire et une machine riche et complexe : les mêmes services sont offerts dans les deux cas .

1

5

Le système d'exploitation facilite le travail de programmation en fournissant une suite de services qui peuvent être utilisés par les logiciels applicatifs . Du point de vue du programmeur, son logiciel applicatif regarde vers le bas, en direction du système d'exploitation et du matériel et les programmes sont considérés comme fonctionnant sur le système d'exploitation. Un système d'exploitation peut ainsi être vu comme une machine virtuelle. L'ensemble composé du matériel et du système d'exploitation forme la « machine » qui exécute le logiciel applicatif, une machine en partie simulée par du logiciel .

1

1

Typologie

Il existe cinq générations de système d'exploitation : les systèmes d'exploitation batch, multiprogrammés, en temps partagé, temps réel et distribués. Chacun des principes mis en œuvre dans une génération se retrouve dans les générations suivantes .

5

2

Un système de traitement par lots (batch ) est prévu pour exécuter l'un après l'autre des grands calculs, avec peu d'intervention batch) est prévu pour exécuter l'un après l'autre des grands calculs, avec peu d'intervention utilisateur .

À partir de la génération des systèmes d'exploitation multiprogrammés, plusieurs programmes sont exécutés simultanément par planification (scheduling) : Dans ces systèmes d'exploitation multitâches, plusieurs programmes résident en mémoire centrale et le système d'exploitation suspend régulièrement l'exécution d'un programme pour continuer l'exécution d'un autre .

5

Dans la génération des systèmes multiprogrammés, l'exécution simultanée de plusieurs programmes vise l'utilisation efficace de la puissance de calcul du processeur.programme pour continuer l'exécution d'un autre . 5 Dans la génération des systèmes en temps partagé

Dans la génération des systèmes en temps partagé l'exécution simultanée de plusieurs programmes vise à répondre rapidement aux demandes de plusieurs utilisateurs en communication directe avec l'ordinateur .efficace de la puissance de calcul du processeur. 5 Un système d'exploitation temps réel doit garantir

5

Un système d'exploitation temps réel doit garantir que toute opération se termine dans un délai donné, en vue de garantir la réussite du dispositif dans lequel l'ordinateur est utilisé .en communication directe avec l'ordinateur . 5 2 Un système distribué dirige l'utilisation des

2

Un système distribué dirige l'utilisation des ressources de plusieurs ordinateurs à la fois. Il utilise les capacités d'un réseau informatique, contrôle un groupe de machines, et les fait apparaître comme une machine unique, imaginaire, de très grande capacité .du dispositif dans lequel l'ordinateur est utilisé . 2 2 Chaque système d'exploitation est conçu pour

2

Chaque système d'exploitation est conçu pour fonctionner avec une gamme particulière de machines (type de processeur, constructeur, architecture). Si un système d'exploitation est disponible pour plusieurs gammes de machines différentes, alors le même code source est compilé

et adapté à chaque gamme de machines. La palette de pilotes inclus dans le système d'exploitation est adaptée au matériel informatique disponible sur le marché pour cette gamme de machines.

N 1

Première génération : Traitement par lots

Les systèmes d'exploitation basés sur le traitements de « lot » (suite d'instructions et de données dans un ensemble de cartes perforées) sont apparus dans les années 1950. Un programme (avec ses données) n'est autre qu'une pile de cartes avec des indicateurs de début et de fin de lot. L'exécution d'un programme consiste à demander à un opérateur de placer la pile de cartes dans le lecteur, puis l'opérateur lance la lecture séquentielle des cartes. Le processeur central est au repos, durant les manipulations de l'opérateur .

5

Un batch est un lot de travaux à effectuer. L'opérateur compose un batch en posant les unes sur les autres les piles de cartes des différents programmes (avec leur données) demandés par les utilisateurs. Il forme une grande pile de cartes séparées par des marque-page, en général une carte de couleur particulière, qu'il place ensuite dans le lecteur. Le regroupement de plusieurs programmes en un batch diminue les interventions de l'opérateur .

5

Dans un système basé sur les batchs le cœur du système d'exploitation est un programme moniteur, qui réside continuellement en mémoire centrale, et qui permet à l'opérateur de demander de commencer ou d'arrêter l'exécution du lot. À la fin de l'exécution de chaque tâche du lot, le moniteur effectue des travaux de nettoyage, puis lance l'exécution de la tâche suivante. L'opérateur intervient ainsi uniquement au début et à la fin

du lot

5

.

Dans ces systèmes d'exploitation les commandes ajoutées au marque-page, formulées dans le langage JCL (Job Control Language) sont un des seuls moyens qu'a l'utilisateur d'interagir avec le système d'exploitation .

5

Les systèmes d'exploitation batch sont adaptés à des applications où il y a de très gros calculs avec très peu d'implication de l'utilisateur : météo,

statistiques, impôts

Les utilisateurs n'attendent pas les résultats, soumettent les demandes, puis reviennent un peu plus tard collecter les

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

5

résultats .

En raison de la grande différence de vitesse entre le processeur et les périphériques, dans un système d'exploitation batch le processeur est inutilisé 90 % du temps parce que les programmes attendent qu'un périphérique ou un autre termine les opérations. Avec de tels systèmes d'exploitation il n'y a pas de concurrence entre les différentes tâches, la mise en œuvre de l'utilisation du processeur, de la mémoire et des

périphériques est triviale

5

mais loin d’être optimale.

Deuxième génération : la multiprogrammation

Les systèmes d'exploitation multiprogrammés sont apparus dans les années 1960. Le but recherché de tels systèmes est d'augmenter l'efficacité de l'utilisation du processeur et des périphériques en utilisant la possibilité de les faire fonctionner en parallèle. Plusieurs programmes sont placés en mémoire centrale, et lorsque le programme en cours d'exécution attend un résultat de la part d'un périphérique, le système d'exploitation ordonne au processeur d'exécuter un autre programme .

5

Dans les systèmes d'exploitation multiprogrammés, l'utilisation du processeur est partagée par planification (scheduling) : À chaque utilisation d'un périphérique, le système d'exploitation choisit quel programme va être exécuté. Ce choix se fait sur la base de priorités. Le système d'exploitation comporte un mécanisme de protection qui évite que le programme en cours d'exécution ne lise ou n'écrive dans la mémoire attribuée à un autre programme. Les programmes sont exécutés dans un mode non-privilégié, dans lequel l'exécution de certaines instructions est interdite .

5

Les systèmes multiprogrammés nécessitent un ordinateur et des périphériques qui mettent en œuvre la technique du DMA (direct memory access) :

Par cette technique le processeur ordonne à un périphérique d'effectuer une opération; le résultat de l'opération est placé en mémoire centrale par le périphérique pendant que le processeur exécute d'autres instructions. Dans les systèmes multiprogrammés tout comme les systèmes batch l'utilisateur n'a que peu de contact avec les programmes et de maigres possibilités d'intervention .

5

Troisième génération : le temps partagé

Les systèmes d'exploitation en temps partagé sont apparus dans les années 1970. Ils sont utilisés dans des dispositifs interactifs où plusieurs utilisateurs sont simultanément en dialogue avec l'ordinateur. Un système d'exploitation en temps partagé est destiné à répondre rapidement aux demandes de l'utilisateur, et donner à chaque utilisateur l'impression qu'il est le seul à utiliser l'ordinateur .

5

Un système en temps partagé met en œuvre des techniques sophistiquées de multiprogrammation en vue de permettre l'utilisation interactive de l'ordinateur par plusieurs usagers et plusieurs programmes simultanément . L'arrivée de cette nouvelle génération de systèmes d'exploitation en 1970 résulte d'une forte demande des consommateurs et de la baisse du prix du matériel informatique qui a rendu possible sa réalisation .

2

5

Dans les systèmes d'exploitation en temps partagé la notion de batch n'a que peu d'importance. Ces systèmes mettent en œuvre de nouveaux mécanismes d'utilisation du processeur et de la mémoire, ce qui leur permet de répondre rapidement à des demandes provenant simultanément d'un grand nombre d'utilisateurs .

5

Dans ces systèmes, tout comme dans la génération précédente, l'utilisation du processeur est planifiée. Cependant contrairement aux systèmes de la génération précédente, dans les systèmes en temps partagé chaque programme est exécuté durant une tranche de temps déterminé, puis le système d'exploitation bascule sur l'exécution d'un autre programme, ce qui évite qu'un programme monopolise l'utilisation du processeur au service d'un utilisateur, entraînant des retards pour les autres usagers .

5

Les systèmes d'exploitation en temps partagé mettent en œuvre la technique du swap : lorsque le programme en cours d'exécution a besoin de plus de mémoire que ce qui est disponible, alors un autre programme inactif est retiré pour gagner de la place; le programme inactif est enregistré temporairement sur le disque dur. L'enregistrement sur disque provoque cependant une perte de temps non négligeable .

5

3

En 2011 de nombreux systèmes d'exploitation sont basés sur Unix, un système en temps partagé .

Quatrième génération : le temps réel

6

Les systèmes d'exploitation temps-réel sont apparus au milieu des années 1970, entre autres chez Hewlett-Packard . Ils sont destinés aux dispositifs qui doivent non seulement donner des résultats corrects, mais les donner à temps, c'est-à-dire dans un délai déterminé. Les systèmes d'exploitation temps réel sont souvent utilisés par des ordinateurs reliés à un appareil externe, où un retard de réponse de l'ordinateur entraînerait un échec de l'appareil : pilotes automatiques, les robots industriels, les applications vidéo et audio .

5

Dans les système d'exploitation temps réel l'accent est mis sur la durée nécessaire pour effectuer chaque opération : répondre aux demandes rapidement en vue de satisfaire aux contraintes de temps du système dans lequel il va être utilisé .

5

Certains services offerts par ces systèmes d'exploitation sont réalisés comme des logiciels applicatifs, et sont exécutés en concurrence avec ceux-ci. Un système d'exploitation temps réel autorise un contact direct entre les logiciels applicatifs et les périphériques. Dans certains systèmes temps réel les ressources sont réservées à l'avance, ce qui évite les ralentissements que provoqueraient les réservations à la volée, et garantit que les ressources seront continuellement disponibles .

5

5

Les systèmes d'exploitation temps-réel évitent d'utiliser la technique du swap en raison des risques de dépassement des délais . Windows CE, Embedded Linux, Symbian OS, Palm OS et VxWorks sont des systèmes d'exploitation temps réel .

7

Cinquième génération : les systèmes distribués

La baisse des prix du matériel informatique a permis, dans les années 1990, la création de systèmes informatiques composés de plusieurs ordinateurs, et donc plusieurs processeurs, plusieurs mémoires, et de nombreux périphériques. Un système distribué permet le partage des ressources entre les ordinateurs. Un utilisateur d'un ordinateur bon marché peut se servir de ressources coûteuses qui existent sur un autre ordinateur .

5

8

Mach, Amoeba, Andrew, Athena, et Locus sont des systèmes d'exploitation distribués. Ils ont tous été développés par des universités .

Histoire

Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Dans les années 1940 les ordinateurs étaient programmés par manipulation d'interrupteurs à bascule, puis plus tard par l'introduction d'une pile de cartes perforées dans un lecteur dont la mécanique était similaire à celles des pianos mécaniques — technique appelée mécanographie.

Les ordinateurs des années 1940 à 1960, très coûteux, étaient la propriété des entreprises et des institutions. Chaque utilisateur avait le droit d'utiliser l'ordinateur pendant un temps limité. Ce temps était souvent déterminé par une horloge murale ou une pointeuse, et l'utilisateur avait alors à disposition la totalité du matériel de l'ordinateur. Il apportait avec lui une pile de cartes perforées qui contenait les instructions du ou des programmes à exécuter.

Les ordinateurs de cette époque effectuaient une seule tâche à la fois, au service d'un seul utilisateur. Les programmes pour ces ordinateurs contenaient toutes les instructions nécessaires pour manipuler le matériel de l'ordinateur. Si la logithèque pour cet ordinateur comportait cinquante programmes, les instructions nécessaires pour manipuler le matériel se retrouvaient dans chacun de ces cinquante programmes.

Avec l'agrandissement de la logithèque, l'idée est venue d'isoler les instructions routinières dans un programme séparé, programme qui résiderait continuellement dans la mémoire, quel que soit le programme en cours d'exécution. Ce programme était un système d'exploitation, sous sa forme la plus rudimentaire.

1960, la multiprogrammation

Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.

Les ordinateurs des années 1960 avaient en général comme périphérique un lecteur de carte perforée, une imprimante et un disque dur. Les ingénieurs ont constaté que les ordinateurs passaient plus de temps à attendre qu'un périphérique termine son travail qu'à exécuter des

instructions [réf. nécessaire] .

Les systèmes d'exploitation ont alors été conçus de manière à permettre l'exécution de plusieurs programmes à la fois. D'abord, les programmes étaient chargés en mémoire pour y résider simultanément. Le premier programme était exécuté, puis, lorsqu'il avait besoin d'attendre qu'un périphérique se libère, le système d'exploitation enchaînait sur l'exécution du deuxième programme, puis le troisième et ainsi de suite [réf. nécessaire] . Cette technique, dite de multiprogrammation, est le précurseur du multitâche des systèmes d'exploitation d'aujourd'hui, proche du multitâche coopératif qui a été utilisé jusque dans les années 1990.

En 1965 le Massachusetts Institute of Technology se lance dans la création du premier système d'exploitation multitâche et multi-utilisateurs :

Multics (pour MULTiplexed Information and Computing Service

multiprogrammation, le système d'exploitation autorisait le chargement de plusieurs programmes en mémoire et gérait le passage de l'un à l'autre,

mais cette fois-ci sans attendre le blocage d'un programme

le système passait au suivant. Ce temps, très court, donnait l'illusion que les programmes s'exécutaient simultanément — une illusion qui existe encore avec les systèmes d'exploitation contemporains.

T 1

ou service multiplexé d'information et de calcul). Sur le principe de la

N 2

. Chaque programme était exécuté pendant une durée de quelques millisecondes, puis

De plus, ces programmes pouvaient appartenir à des utilisateurs distincts, chacun ayant l'impression que la machine travaille uniquement pour lui. La possibilité pour un ordinateur de servir simultanément plusieurs personnes augmentait le retour sur investissement de l'achat de matériel très coûteux par les entreprises et les institutions. Mais, écrit en langage de programmation PL/I et trop complexe pour les ordinateurs de l'époque, Multics fut un échec commercial. Il a cependant inspiré en grande partie la gamme de systèmes GCOS développés conjointement par Honeywell et Bull .

9

En 1969, les ingénieurs Ken Thompson et Dennis Ritchie des laboratoires Bell rêvent d'utiliser le système d'exploitation Multics, mais le matériel pour le faire fonctionner est tout simplement hors de prix. Thompson se lance dans l'écriture d'une version allégée de Multics pour un PDP-7

inutilisé. Le système, fonctionnel, est surnommé Unics (pour UNiplexed Information and Computing Service

Rapidement reprogrammé dans un langage de programmation plus approprié (le C, développé par Ritchie pour l'occasion), UNIX se révèle

particulièrement simple à porter sur de nouvelles plateformes, ce qui assure son succès

T 2

), puis finalement baptisé UNIX.

T 3,10

.

1972, les micro-ordinateurs

Sorti en 1972, le Micral de la société R2E est le premier micro-ordinateur du monde. il est équipé d'un processeur Intel 8008 et du système d'exploitation SYSMIC — appelé alors moniteur d'exploitation. Le système d'exploitation SYSMIC sera plus tard renommé PROLOGUE lors du rachat de la société par Bull en 1978.

Sorti en 1975, l'Altair 8800 est un micro-ordinateur livré en kit au prix approximatif de 400 $, et comme le Micral il se programmait en inversant une série d'interrupteurs à bascule situés sur la face avant de l'appareil. Le prix de l'Altair 8800 le rendait accessible aux particuliers mais son utilisation compliquée (qui rappelle les ordinateurs centraux des années 1940) limitait son utilisation à des passionnés et des hobbyistes.

À cette époque, les micro-ordinateurs n'avaient pas une puissance de calcul suffisante pour être équipés d'un système d'exploitation comme Unix ou OS/360. Gary Kildall, ingénieur pour Intel crée CP/M, le premier système d'exploitation pour micro-ordinateur.

En 1980, IBM prend contact avec Bill Gates, cofondateur de la société Microsoft, pour l'adaptation du langage BASIC à son nouveau micro- ordinateur, le Personal Computer (abrégé PC). IBM est également à la recherche d'un système d'exploitation, et Gates conseille à la société de se tourner vers CP/M. Mais Gary Kildall refuse de signer le contrat avec IBM. Bill Gates saute sur l'occasion : il rachète QDOS – un système d'exploitation quick-and-dirty pour les processeurs Intel 8086 – pour proposer à IBM le package DOS/BASIC. Après quelques modifications

effectuées à la demande d'IBM, le système est baptisé MS-DOS

T 4,11

.

C'est à la même époque que Steve Jobs et Steve Wozniak fondent la startup Apple Computer, avec comme optique de faire du micro-ordinateur un produit grand public aussi facile d'usage que n'importe quel appareil électrique.

Xerox, une des sociétés majeures de l'époque, s'intéresse à l'optique de Steve Jobs. Elle réunit une poignée de scientifiques et d'ingénieurs dans son centre de recherche de Palo Alto et, sur la base de thèses et d'études en ergonomie effectuées les années auparavant, développe le premier micro- ordinateur équipé d'une interface utilisateur graphique. Le résultat de ces recherches, le Xerox Star, ne sera jamais commercialisé. Dix ans plus

tard c'est Apple, avec le Macintosh, qui popularise les recherches effectuées par Xerox

12

.

1990, les systèmes d'exploitation sous licence libre

Article connexe : licence libre.

En 1983, Richard Stallman du Massachusetts Institute of Technology lance l'idée d'un système d'exploitation sous licence libre : GNU

13 . Il

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

développe des outils de programmation, des logiciels utilitaires, et crée la GNU General Public License — un contrat de licence qui autorise une utilisation sans restrictions ainsi que la publication du code source, sa modification, et sa redistribution. Le succès est immédiat, mais le système ne

possède toujours pas, en 1990, de noyau libre, et les tentatives pour en développer un sont loin d'être abouties

14

.

En 1987, Andrew Tanenbaum, professeur à l'université libre d'Amsterdam a créé le système d'exploitation Minix, clone d'UNIX dont le code source

était destiné à illustrer son cours sur la construction des systèmes d'exploitation nombreuses limitations techniques, et ne permettait pas une utilisation poussée

à l'université d'Helsinki se lance alors dans le développement de son propre noyau : Linux, qui est au départ une réécriture de Minix. La toute

première version (0.01) sort en 1991, Linux passe sous licence GNU en 1992

naissance à la distribution d'un système d'exploitation entièrement libre, GNU/Linux.

N 3

N 4

. Mais Minix, à vocation pédagogique, comportait de trop . Inspiré par les travaux de Tanenbaum, Linus Torvalds, étudiant

T 5

qui donne

15

. et il faut attendre 1994 pour voir la version 1.0

Un autre système d'exploitation libre apparaît à la même époque : il s'agit de 4.4BSD. La Berkeley Software Distribution (traduction : la suite de logiciels de Berkeley) – abrégé BSD – est la version d'UNIX développée par les étudiants et les chercheurs de l'université de Berkeley depuis

1977

licence de BSD est à l'origine de plusieurs années de litige entre l'Université de Berkeley et AT&T

remplacer les programmes développés par AT&T par leurs propres programmes, sous licence libre, afin de résoudre le litige. Cette situation dure

jusqu'à la sortie de 4.4BSD en 1994, qui ne contient pratiquement plus de code AT&T

16

. Les logiciels utilitaires, créés sous licence libre, sont vendus avec le noyau Unix de AT&T, lui-même sous licence propriétaire. Cette double

17

. Les étudiants de l'université travaillent à

T 6

.

C'est à la suite des initiatives et travaux de Linus Torvalds et Richard Stallman, aidés par des milliers de bénévoles et à la suite des travaux des

étudiants de l'université de Berkeley que GNU/Linux et 4.4BSD sont devenus les premiers systèmes d'exploitation sous licence libre

18

.

Composition

Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.

Un système d'exploitation est composé d'une large palette de programmes. La composition exacte dépend de l'usage cible et du type d'appareil informatique auquel le système est destiné (ordinateur personnel, serveur, superordinateur ou encore système embarqué).

Si le système d'exploitation est destiné à être utilisé sur un ordinateur personnel ou une console de jeu vidéo, l'interface graphique sera raffinée et ergonomique. S'il est destiné à être utilisé sur un serveur, il comprendra une large palette de protocoles et de pilotes pour du matériel réseau, sera multi-tâches et muni de contrôles d'accès. Au contraire, le nombre de pilotes sera restreint au minimum et le système d'exploitation sera prévu pour être enregistré sur une mémoire morte s'il est destiné à un assistant personnel ou un téléphone mobile. Un système d'exploitation destiné à des superordinateurs sera massivement multiprocesseur, c'est-à-dire qu'il pourra être utilisé sur un ordinateur équipé de centaines voire de milliers de processeurs.

Interface de programmation

Article détaillé : Interface de programmation.

Le système d'exploitation effectue de nombreuses actions sur demande des logiciels applicatifs. Le point de contact entre un logiciel applicatif et le système d'exploitation est appelé interface de programmation (anglais Application Programming Interface abrégé API). Ce peut être des fonctions mises à disposition dans des bibliothèques logicielles, ou des logiciels serveur qui répondent aux requêtes envoyées par les logiciels applicatifs.

L'utilisation de la même interface de programmation quel que soit le matériel, le protocole ou le système de fichier concerné assure la portabilité des logiciels applicatifs : un logiciel applicatif donné pourra fonctionner sur différents ordinateurs, quelle que soit leur configuration, en particulier quel que soit le matériel, le système de fichier ou le protocole utilisé.

POSIX (acronyme de l'anglais Portable Operating System Interface) est une norme relative à l'interface de programmation du système d'exploitation. De nombreux systèmes d'exploitation sont conformes à cette norme, notamment les membres de la famille Unix.

L'ordonnanceur

Article détaillé : Ordonnanceur.

L'ordonnanceur (anglais scheduler) est le programme du système d'exploitation qui contrôle le déroulement des autres programmes. Dans un système d'exploitation multitâches l'ordonnanceur assure l'exécution simultanée de plusieurs programmes (concurrence).

L'exécution simultanée de plusieurs programmes est réalisée de la manière suivante : l'ordonnanceur commande l'exécution à tour de rôle de chaque programme par le ou les processeurs de l'ordinateur, chaque processeur exécute les instructions d'un programme pendant une fraction de seconde, puis l'ordonnanceur effectue une commutation de contexte (anglais context switch), suspend l'exécution du programme en cours et passe au programme suivant.

La communication inter-processus

Article détaillé : Communication inter-processus.

Les systèmes informatiques sont typiquement composés de nombreux programmes qui coopèrent en s'échangeant des informations. Les échanges d'informations entre les processus (programmes en cours d'exécution) peuvent se faire à l'aide de messages stockés en mémoire, le système d'exploitation s'occupant de collecter les messages et les mettre à disposition de chaque destinataire. Tout processus qui attend un message sera interrompu jusqu'à l'arrivée d'un message et l'ordonnanceur évitera toute commutation de contexte vers un processus en attente.

Le système d'exploitation s'assure également que les processus qui partagent un espace de stockage commun (en lecture ou écriture) ne se trouvent pas en situation de compétition, c'est-à-dire dans une situation où le résultat d'une opération dépend de l'ordre dans lequel les processus accèdent à l'espace partagé.

Gestion de la mémoire

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Les fonctions du système d'exploitation qui contrôlent l'utilisation de la mémoire vont en particulier suivre l'utilisation de la mémoire, quels emplacement sont libres, sont utilisés, et par qui . Ces fonctions vont également décider quel programme reçoit de la mémoire, quand et quelle quantité est mise à disposition et récupérer la mémoire qui était utilisée par un programme après son exécution, que le programme se soit arrêté volontairement ou accidentellement .

2

2

La quantité de mémoire utilisée par l'ensemble du système informatique dépend essentiellement de la manière dont le système d'exploitation effectue les réservations .

2

La mémoire virtuelle

Article détaillé : Mémoire virtuelle.

Le mécanisme dit de mémoire virtuelle est destiné à simuler la présence ou l'absence de mémoire centrale par manipulation de l'unité de gestion mémoire — un composant électronique (anglais Memory Management Unit abrégé MMU). C'est un mécanisme courant dans les systèmes d'exploitation contemporains.

La mémoire virtuelle permet d'exécuter simultanément plus de programmes que ce que la mémoire centrale peut contenir. Chaque programme

n'ayant pas besoin que la totalité des informations qu'il manipule soit présent dans la mémoire centrale

stockées dans la mémoire de masse (en général dans un fichier ou une partition de disque dur) habituellement plus importante mais plus lente et

sont transférées en mémoire centrale lorsque le programme en a besoin

N 5

, une partie des informations sont

T 7

.

Les programmes disposent d'un (ou plusieurs) espaces virtuels de mémoire continus pour travailler. Les adresses des données sont dites virtuelles dans la mesure où l'information adressée ne se trouve pas forcément en mémoire centrale, et pas forcément à l'adresse indiquée. Lorsque le programme essaie de lire ou écrire une donnée dans sa mémoire virtuelle, l'unité de gestion de mémoire cherche l'adresse physique correspondant à l'adresse virtuelle sollicitée grâce à une table de correspondance. Si l'emplacement n'est pas présent en mémoire centrale, il n'y aura évidemment aucune adresse physique correspondante. Le système d'exploitation devra alors chercher à libérer un espace en mémoire centrale en échangeant

(anglais swap) le contenu d'un emplacement donné de mémoire centrale avec le contenu sollicité, qui se trouve en mémoire de masse opération s'effectue automatiquement, à l'insu des programmes.

N 6,T 8

. Cette

Des mémoire associatives, incorporées dans l'unité de gestion de mémoire, accélèrent le calcul des adresses

généralement deux mémoires associatives : une pour le mode kernel et une pour le mode utilisateur. La mémoire du mode kernel est arrangée de manière à permettre au processeur d'utiliser la totalité de la mémoire centrale disponible — lors de l'exécution des programmes du noyau du système d'exploitation. Tandis que celle du mode utilisateur est arrangée de manière à protéger le noyau (qui est ainsi invisible pour le programme en question) — lors de l'exécution des programmes hors du noyau.

T 9

.Les systèmes d'exploitation utilisent

Chaque programme dispose de sa propre table de correspondance, ce qui permet de les isoler les uns des autres. Lors d'une commutation de

contexte, le système d'exploitation placera la table du programme courant dans la mémoire associative

également de nouvelles tables pour les programmes qui démarrent et décide quels emplacements de mémoire virtuelle seront ou ne seront pas

présents en mémoire centrale

T 10

. Le système d'exploitation crée

T 11

.

Pilotes

Article détaillé : Pilote informatique.

Un pilote (anglais driver) est un programme qui contient les instructions à exécuter pour utiliser un certain périphérique informatique. Les pilotes sont fournis par l'auteur du système d'exploitation ou le fabricant du périphérique. Un système d'exploitation contient typiquement de nombreux pilotes correspondant à de nombreux composants matériels susceptibles d'être montés dans l'ordinateur.

L’interface de programmation est similaire sur tous les pilotes, tandis que les instructions du programme diffèrent en fonction des caractéristiques de chaque composant matériel, ce qui assure l'utilisation banalisée du périphérique.

Le système d'exploitation dirige l'utilisation des pilotes par les logiciels applicatifs. Il intervient lorsque plusieurs logiciels applicatifs tentent d'utiliser le même matériel en même temps, et active ou désactive les pilotes en fonction du matériel présent dans l'ordinateur.

Lors de chaque événement survenu sur un périphérique (réception d'informations, fin d'un envoi, manipulation effectuée par l'utilisateur, etc.), ce dernier provoque une interruption matérielle, un mécanisme électronique qui provoque une commutation de contexte ; le système d'exploitation déclenche alors l'exécution des instructions du pilote concerné.

Les logiciels applicatifs ainsi que le système d'exploitation peuvent également, au besoin, déclencher l'exécution des instructions d'un pilote.

Système de fichiers

Article détaillé : Système de fichier.

Un système de fichier (anglais file system) est une structure en arbre dans laquelle sont stockés des fichiers ainsi que d'autres informations. Divers programmes du système d'exploitation s'occupent de répartir les fichiers sur les mémoires de masse tels que les disques durs et de les relier pour former la structure du système de fichiers.

Il existe diverses manières de disposer les fichiers dans une mémoire de masse. Une mémoire de masse qui a été remplie avec un système d'exploitation selon une disposition donnée sera reconnue par un autre système d'exploitation uniquement si celui-ci reconnaît la disposition en question. Les mémoires amovibles telles que les CD ou les DVD ont une disposition normalisée dont les spécifications sont publiques, ce qui assure leur reconnaissance par tous les systèmes d'exploitation (voir ISO 9660 et UDF).

Un système d'exploitation contient typiquement différents programmes qui servent à manipuler un système de fichier. Chaque programme manipule les fichiers conformément à une disposition donnée. Ces programmes effectuent des opérations telles que créer des fichiers, les copier, les supprimer, créer et supprimer des répertoires ainsi que formater la mémoire de masse c'est-à-dire créer une structure vide. voir FAT, HFS ou

ext2fs.

Lorsque le système de fichier est distribué, c'est-à-dire que les fichiers sont stockés sur différents ordinateurs d'un réseau informatique, le système d'exploitation envoie une requête à l'ordinateur qui stocke le fichier pour chaque opération à effectuer (voir NFS ou CIFS).

Dans un système d'exploitation multi-utilisateurs, les programmes qui manipulent le système de fichier effectuent des contrôles pour vérifier

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

qu'aucun fichier n'est manipulé par une personne non autorisée. Le système d'exploitation refusera toute manipulation non autorisée.

Réseau

Article détaillé : Réseau informatique.

Dans un réseau informatique, deux ordinateurs reliés arrivent à communiquer du moment que les communications se font de part et d'autre selon les mêmes protocoles réseau. Selon le modèle OSI, les différents protocoles existants sont répartis sur sept niveaux, où un protocole d'un niveau donné peut être combiné avec n'importe quel protocole des niveaux situés en dessus et en dessous (voir encapsulation).

Un système d'exploitation contient typiquement plusieurs programmes nécessaires pour des échanges d'informations dans différents protocoles des niveaux 1 à 4. Tandis que les niveaux 5 à 7 sont pris en charge par les logiciels applicatifs et les middleware.

Pour les échanges d'informations selon les protocoles de niveau 1 et 2, le système d'exploitation demande l'opération au matériel de l'ordinateur par l'intermédiaire d'un pilote informatique, pilote qui peut faire partie intégrante du système d'exploitation ou être fourni par le constructeur du matériel.

Lors de l'envoi d'informations sur le réseau, un logiciel applicatif crée une information, la met en forme conformément aux protocoles des niveaux 7 à 5, puis la transmet au système d'exploitation. Divers programmes du système d'exploitation vont découper cette information en trames, puis vont mettre en forme les trames et les envoyer conformément aux protocoles des niveaux 4 à 1.

Lors de la réception de trames depuis le réseau, divers programmes du système d'exploitation vont tenter de les décoder conformément à différents protocoles des niveaux 1 à 4, puis transformer la suite de trames en un flux continu, qui sera envoyé au logiciel applicatif destinataire. Le logiciel va alors décoder le flux conformément aux protocoles de niveaux 5 à 7. Le logiciel applicatif effectue préalablement une connexion, c'est-à-dire une liaison logique par laquelle il va s'associer avec un flux particulier.

Le choix exact des protocoles utilisés dépend de l'ordinateur concerné et des liaisons réseau qui vont être utilisées. Divers paramètres de configuration permettent d'influencer le choix des protocoles. Ils permettent par exemple d'empêcher l'utilisation de protocoles interdits sur le réseau concerné.

Contrôle d'accès

Article détaillé : Contrôle d'accès logique.

Dans un système d'exploitation multi-utilisateurs, un ensemble de programmes assure la sécurité des informations enregistrées dans les mémoires ainsi que la disponibilité de l'ordinateur, ceci afin de préserver la confidentialité et éviter que de manipulations effectuées par un utilisateur perturbent l'utilisation de l'ordinateur par les autres utilisateurs. Cette fonctionnalité est souvent absente des systèmes d'exploitation pour les appareils personnels.

Dans ces systèmes d'exploitation tout utilisateur doit préalablement décliner son identité avant d'utiliser l'ordinateur. Puis un programme du système d'exploitation vérifie cette identité par rapport à un annuaire ou un référentiel (voir authentification). Le système d'exploitation établit alors une liste des opérations autorisées ou interdites à l'utilisateur en fonction des règlements — en anglais : policies — qui ont été introduits par l'administrateur sécurité – la personne responsable de la sécurité des informations.

Lors de chaque opération demandée par un logiciel applicatif, le système d'exploitation vérifie préalablement si l'utilisateur qui manipule le logiciel applicatif est autorisé à effectuer cette opération. La vérification se fait sur la base des règlements ainsi que des listes de droits d'accès introduits par l'administrateur sécurité. Le système d'exploitation refusera toute opération non autorisée et inscrira le refus dans un journal d'activité.

En particulier, le système d'exploitation peut refuser à un utilisateur de lire, de modifier, ou de supprimer un fichier, selon la liste des droits d'accès introduits concernant ce fichier. Le nom des personnes autorisées à modifier les listes de droits d'accès est également indiqué dans la liste de droits d'accès.

Le système d'exploitation va également refuser la mise hors service de programmes centraux tels que les logiciels serveur ou des programmes du système d'exploitation par tout utilisateur qui n'a pas préalablement reçu le privilège d'effectuer cette opération – selon les règlements introduits par l'administrateur de sécurité.

Lorsqu'un logiciel autonome (bot informatique) demande des opérations au système d'exploitation, le logiciel doit préalablement décliner son identité en tant que produit puis, sur la base de cette identité, le système d'exploitation effectue les mêmes vérifications que pour une personne physique.

Les mécanismes de contrôle d'accès ont aussi pour effet de lutter contre les logiciels malveillants – ceux-ci effectuent souvent des opérations susceptibles de perturber l'utilisation de l'ordinateur.

Interface utilisateur

Un ensemble de programmes du système d'exploitation reçoit les informations envoyées par les logiciels applicatifs, et les place sur une image numérique qui sera envoyée au matériel par l'intermédiaire d'un pilote. En complément un autre ensemble de programmes reçoit les manipulations effectuées par l'usager par l'intermédiaire de pilotes puis les transmettent au logiciel concerné. Ces deux ensembles créent l'interface homme- machine qui permet à un usager de dialoguer avec la machine.

Le système d'exploitation peut dialoguer avec un usager par l'intermédiaire d'un autre ordinateur ou d'un terminal (interface distribuée). Les informations envoyées par les logiciels applicatifs seront alors envoyées à l'autre ordinateur selon un protocole prévu à cet effet, tandis que l'autre ordinateur enverra les manipulations effectuées par l'utilisateur. Voir SSH, RFB ou X Window System.

Lorsque l'interface est en mode texte, l'image numérique est une grille dans laquelle sont placés des caractères d'imprimerie, la grille comporte typiquement 80 colonnes et 35 lignes. L'interface se manipule avec un clavier. Ce type d'interface, qui existe depuis les débuts de l'informatique est aujourd'hui remplacé par les interfaces graphiques.

L'interface utilisateur graphique

N 7

Article détaillé : Interface graphique.

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Dans une interface utilisateur graphique (anglais Graphical User Interface abrégé GUI), l'image numérique est composée par un programme du système d'exploitation par superposition de points, de lignes, de pictogrammes et de caractères d'imprimerie. L'interface se manipule typiquement avec une souris selon le principe WIMP (anglais Windows, Icons, Menus and Pointer device). L'image numérique est créée à l'aide du processeur graphique de l'ordinateur.

Lors des manipulations de la souris, le système d'exploitation déplace l'élément d'image qu'est le pointeur et effectue les calculs nécessaires pour déterminer quel est l'élément de l'image qui se trouve juste en dessous. À chaque élément de l'image peut être associé un programme. Un widget est un programme qui dessine et anime un élément d'image dont l'aspect peut-être celui d'un bouton poussoir, d'une lampe témoin, d'un ascenseur, d'une zone texte, d'un menu, etc. Divers widgets sont fournis avec le système d'exploitation.

Les programmes pour interface graphique sont aujourd'hui (2011) inclus dans tous les systèmes d'exploitation contemporains. Le X Window System est l'ensemble des programmes pour interface utilisateur graphique inclus dans tous les systèmes d'exploitation de la famille Unix.

Logiciels utilitaires

Article détaillé : Logiciel utilitaire.

Un logiciel applicatif sert à assister l'utilisateur dans une activité. Les logiciels utilitaires sont des logiciels applicatifs qui permettent à l'utilisateur d'effectuer des manipulations basiques telles que démarrer des programmes, copier des fichiers ou modifier des paramètres de configuration. Divers logiciels utilitaires sont fournis avec les systèmes d'exploitation.

Un interpréteur de commandes est un programme qui permet d'exécuter d'autres programmes en écrivant leur nom éventuellement suivi de divers paramètres. Il est accompagné de plusieurs programmes qui permettent la manipulation des fichiers (copie, changement de nom…). Ce type de programme est utilisé pour effectuer des manipulations ou exécuter des scripts – suites de manipulations pré-enregistrées (voir commande informatique).

Un environnement de bureau est un programme dans lequel les différents éléments de l'ordinateur (programmes, fichiers, disques durs) sont présentés sous forme de pictogrammes sur lesquels il est possible d'effectuer différentes actions. Il permet d'exécuter des programmes, d'effectuer différentes opérations sur les fichiers (copie, changement du nom, déplacement ou suppression).

Certains programmes permettent à l'utilisateur de modifier les paramètres de configuration du système d'exploitation. Ceux-ci proposent des listes à choix multiples et effectuent des contrôles de validité avant le modifier les paramètres.

D'autres programmes servent à installer des logiciels, c'est-à-dire copier les fichiers dans les emplacements prévus à cet effet, et effectuer les modifications de configuration nécessaire pour rendre le logiciel opérationnel. Ces programmes peuvent aussi servir à consulter la liste des logiciels actuellement installés dans l'ordinateur.

Un système d'exploitation multi-utilisateurs est en général fourni avec des programmes permettant de surveiller l'utilisation — par autrui — de l'ordinateur – consultation de journaux d'activité – ou de modifier les listes de droits d'accès en vue d'autoriser ou d'interdire un fichier à certains utilisateurs.

Organisation générale

Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.

Les différents programmes du système d'exploitation sont typiquement répartis en

couches distinctes

T 12

.

La couche supérieure est l'interface de programmation avec les logiciels applicatifs (dont font partie les logiciels utilitaires fournis avec le système d'exploitation).

Au centre, on trouve une ou plusieurs couches qui contiennent les composants principaux du système d'exploitation tels que : les programmes pour les systèmes de fichiers et le réseau, la gestion de mémoire (voir supra), les pilotes, l'ordonnanceur, le gestionnaire

T 13

d'interruption .

La couche inférieure, appelée couche d'abstraction matérielle (anglais hardware abstraction layer abrégé HAL), est chargée de masquer les particularités matérielles et les différences qu'il existe entre les machines sur lesquelles le système d'exploitation sera

T 14

utilisé .

Le noyau

Comparaison entre noyau monolithique ou micronoyau

Comparaison entre noyau monolithique ou micronoyau

Article détaillé : Noyau de système d'exploitation.

Le noyau (anglais kernel) est un espace mémoire isolé, dans lequel est placé tout ou partie du système d'exploitation. Dans le langage courant le terme kernel désigne l'emplacement ainsi que l'ensemble des programmes qu'il contient et qui forment le cœur rigide du système d'exploitation. Le contenu du noyau ne peut pas être modifié par inadvertance par les logiciels applicatifs – une modification provoquerait un crash de l'ordinateur.

Noyau monolithique

L'architecture est dite à noyau monolithique lorsque la totalité des programmes du système d'exploitation (en particulier les pilotes, les programmes qui traitent le réseau et le système de fichier) résident dans l'espace du noyau. Dans cette architecture chaque utilisation d'une fonction de l'interface de programmation provoque une commutation de contexte et le passage en mode kernel (voir supra).

Linux, FreeBSD, OpenVMS ou Solaris sont des systèmes d'exploitation à noyau monolithique.

Micro-noyau

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

L'architecture est dite micro-noyau (anglais microkernel) lorsque le noyau contient le strict minimum, c'est-à-dire l'ordonnanceur et le programme qui simule la mémoire virtuelle, et que la grande majorité des programmes se trouvent en dehors : les pilotes, les programmes qui traitent les systèmes de fichiers ou l'interface graphique, ainsi que les logiciels applicatifs.

Dans cette architecture les nombreux programmes qui se trouvent en dehors du noyau sont isolés les uns des autres, sont exécutés comme des logiciels applicatifs — en concurrence — et utilisent les fonctionnalités du noyau pour s'échanger des messages. L'utilisation des fonctions de l'interface de programmation entraîne l'émission de nouveaux messages.

Minix, BeOS, Mac OS X ou QNX sont des systèmes d'exploitation à micro-noyau.

Noyau hybride

Divers systèmes d'exploitation ont une architecture qui a certaines caractéristiques des micro-noyaux et en même temps des noyaux monolithiques. Cette architecture est appelée noyau hybride macro-noyau ou micro-noyau modifié.

Dans cette architecture, la totalité des programmes du système d'exploitation résident dans le noyau, à la façon d'un noyau monolithique. Cependant de nombreux programmes du système d'exploitation sont exécutés en concurrence comme des logiciels applicatifs, à la manière de l'architecture micro-noyau (processus noyau).

Pour les processus du noyau, l'ordonnanceur effectue des commutations de contexte entre les processus de la même manière qu'entre les logiciels applicatifs, ces processus utilisent les fonctions de l'ordonnanceur pour s'échanger des messages et l'utilisation des fonctions de l'interface de programmation entraîne l'émission de messages.

Windows NT ou NetWare sont des systèmes d'exploitation à noyau hybride

Exo-noyau

19

.

Dans l'architecture exo-noyau (du grec exos = hors de), il n'y a pas d'emplacement isolé, et le système d'exploitation est composé de programmes et de bibliothèques logicielles de construction identique à celles des logiciels applicatifs.

L'utilisation de fonctions de l'interface de programmation provoque l'exécution des instructions contenues dans une bibliothèque logicielle du système d'exploitation sans nécessiter une commutation de contexte. Une des bibliothèques logicielle est utilisée pour la transmission et la réception de messages entre les processus, les instructions de l'ordonnanceur sont incluses dans cette bibliothèque.

Mac OS, AmigaOS et Oberon sont des systèmes d'exploitation en architecture exo-noyau.

Quelques exemples

Article détaillé : Liste des systèmes d'exploitation.

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Comparaison des principaux systèmes d'exploitation

Année Matériel Multi- Nom Famille Éditeur Utilisation Noyau Graphique Multitâche Multiprocess
Année
Matériel
Multi-
Nom
Famille
Éditeur
Utilisation
Noyau
Graphique
Multitâche
Multiprocess
d'apparition
supporté
utilisateur
ordinateurs
personnels,
1973
SYSMIC
R2E
Micral
stations de
travail
VAX, DEC
serveurs,
Alpha,
1977
VMS
DEC
ordinateurs
Hewlett-
centraux
Packard
Amstrad CPC,
ordinateurs
1978-1985
CP/M
Digital Research
Commodore
personnels
128, TRS-80
Compatible
ordinateurs
1981-1990
DOS
IBM & Microsoft
PC
personnels
compatibles
systèmes
Quantum
PC, MIPS,
embarqués,
1982
QNX
Software
PowerPC,
automates
Systems
ARM
industriels
Apple
ordinateurs
1984
Mac OS
Apple
Macintosh
personnels
Atari ST,
Eagle,
Medusa,
ordinateurs
1985
TOS
Atari
Hades, Milan,
personnels
Firebee,
ColdFire
Commodore
1985
AmigaOS
Commodore
Amiga,
PowerPC
ordinateurs
personnels et
consoles de jeu
ordinateurs
personnels,
PS/2,
serveurs,
21
1986
AIX
Unix
IBM
RS/6000,
stations de
PowerPC
travail,
superordinateurs
stations de
machines de
1986
Irix
Unix
SGI
travail et
SGI
serveurs
Compatible
PC, SPARC,
stations de
1986-1996
NeXTSTEP
Unix
NeXT
Hewlett-
travail
Packard
PS/2 et
ordinateurs
1987-2006
OS/2
IBM et Microsoft
Compatible
personnels
PC
Compatible
Andrew
N 8
22
1987
Minix
PC, m68k,
(pédagogique)
Tanenbaum
SPARC
téléphones
Nokia,
mobiles,
Symbian
N 10
Siemens,
23
1989
N 9
Symbian ltd
smartphone,
OS
Samsung,
assistants
Panasonic
personnel
serveurs,
stations de
1991
Solaris
Unix
Sun
machines de
Sun et x86/64
travail,
superordinateurs
N
11
1991
GNU/Linux
Unix
(communautaire)
nombreux
tous
serveurs,
stations de
N
13
Windows
Compatible
1991
Windows
Microsoft
travail,
NT
PC
ordinateurs
personnels
N
14
N
15
1994
NetBSD
Unix
(communautaire)
nombreux
tous
N
14
N
16
1994
FreeBSD
Unix
(communautaire)
nombreux
tous
N
14
N
17
1994
OpenBSD
Unix
(communautaire)
nombreux
tous
Windows
Compatible
ordinateurs
24
1995
Windows
Microsoft
95
PC
personnels

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

smartphone, assistants Windows x86, MIPS, 26 1996 Windows Microsoft 25 personnels, CE ARM automates
smartphone,
assistants
Windows
x86, MIPS,
26
1996
Windows
Microsoft
25
personnels,
CE
ARM
automates
industriels
ordinateurs
N 18
x86, PowerPC
personnels,
1999
Mac OS X
Unix
Apple
de Apple
serveurs, station
de travail
téléphones
BlackBerry
Research In
téléphones
1999
mobiles
??
OS
Motion
mobiles
BlackBerry
produits des
téléphones
fabricants du
mobiles,
consortium Open
2007
Android
Unix
Open
smartphone,
??
Handset Alliance
Handset
assistants
Alliance
personnels
smartphone,
appareils de
tablette
Apple
2007
iOS
Unix
Apple
électronique,
(iPhone, iPod,
baladeur
iPad,
)
numérique

Le marché

Née en 1985, la gamme des systèmes Windows de Microsoft équipe en 2008 près de 90 % des ordinateurs personnels, ce qui la place en situation de monopole notamment auprès du grand public. En 2008 ses parts de marché sont descendues en dessous de 90 % pour la première fois depuis 15

27

ans

appareils personnels sont passées de 95% en 2005 à 20% en 2013

. Puis suite à la croissance très rapide du marché des smartphones, et le retard pris par Microsoft sur ce marché, ses parts de marché sur les

28

.

Initiée en 1969, la famille de systèmes d'exploitation Unix compte plus de 25 membres systèmes d'exploitation les plus populaires de la famille Unix.

29 . GNU/Linux, BSD et Mac OS X sont aujourd'hui les

La famille Windows équipe aujourd'hui 38 % des serveurs tandis que la famille Unix équipe 31 %, dont à peu près la moitié avec GNU/Linux

famille Unix anime 60 % des sites web dans le monde famille Unix anime 90% des smartphones [réf. nécessaire] .

30 . La

31

et GNU/Linux équipe 95 % des près de 500 superordinateurs du monde

32

. En 2012, la

Né en 1990, Symbian OS est en 2007 le système d'exploitation le plus répandu sur les téléphones mobiles et assistants personnels, avec 67 % de

part de marché

occupent ensemble 95% du marché des smartphones. Android, le plus populaire (75%), est en progression, tandis que les autres sont en recul. Les

parts de marché de Symbian ne sont plus que de 2.3%

33

. En 2012, les quatre systèmes d'exploitation Android de Google, Symbian, iOS de Apple et Blackberry de Research In Motion

34

.

Du côté des tablettes tactiles, iOS de Apple était le premier système d'exploitation largement diffusé avec plus de 80 % de part de marché en

2010

35

. Trois ans plus tard sa part de marché est de 20% et celle de Android est de plus de 56%

.

36

Les serveurs et super-ordinateurs sont majoritairement équipés de systèmes d'exploitation de la famille UNIX

37

.

Choix par l'acheteur

De nombreux logiciels applicatifs sur le marché sont construits pour fonctionner avec un système d'exploitation en particulier, ou une famille en particulier et un système d'exploitation est construit pour fonctionner avec une gamme de machines donnée. Pour l'acheteur le choix de la famille de machine limite le choix du système d'exploitation, qui lui-même limite le choix des logiciels applicatifs.

Chaque système d'exploitation, selon la palette de programmes qu'il contient, est construit pour fonctionner avec certains réseaux informatiques. Pour l'acheteur qui possède un réseau informatique (typiquement les entreprises et les institutions) le choix du système d'exploitation dépend de son adéquation au réseau existant de l'acheteur.

L'utilité d'un système d'exploitation pour l'usager est proportionnel au nombre de logiciels applicatifs qui sont prévus pour lui. La popularité élevée d'un système d'exploitation attire les éditeurs de logiciels applicatifs, ce qui accroit encore sa popularité (effet réseau). Ce phénomène fait que le marché est sujet aux situations de monopole.

Apple, Sun Microsystems et Silicon Graphics sont des marques qui fabriquent du matériel informatique et développent des systèmes d'exploitation pour leur propre matériel. Certains systèmes d'exploitation, comme Microsoft Windows, sont vendus avec le matériel informatique, conformément à des accord entre les fabricants.

Concurrence, compatibilité et interopérabilité

Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.

La compatibilité d'un système d'exploitation est sa capacité à être utilisé à la place d'un autre, en particulier à exécuter les logiciels applicatifs de l'autre. Le système d'exploitation est dit « compatible » avec l'autre. La compatibilité au niveau source est la capacité pour un système d'exploitation A d'exécuter un logiciel applicatif créé pour B après avoir compilé le code source du logiciel pour la machine A. Et la compatibilité binaire est la capacité pour un système d'exploitation A d'exécuter un logiciel applicatif créé pour B tel quel, sans avoir à le recompiler.

L’interopérabilité est la capacité de plusieurs systèmes de pouvoir être utilisés ensemble. Par exemple dans un même appareil, ou dans un réseau informatique.

Système d'exploitation - Wikipédia

http://fr.wikipedia.org/wiki/Système_d'exploitation

Pour être compatibles, deux systèmes d'exploitation doivent avoir des points communs, notamment sur l'interface de programmation. La compatibilité binaire n'est possible qu'entre deux systèmes d'exploitation qui fonctionnent avec la même famille de processeur.

La compatibilité et l'interopérabilité entre les systèmes d'exploitation est assurée par les éditeurs par l'alignement de leur produit à des normes industrielles ainsi que des technologies rendues publiques.

Le système d'exploitation Unix, créé en 1969 a servi de source d'inspiration pour toute une famille de systèmes d'exploitation. Le jeu de la concurrence, très vive dans les années 1980, a amené les différents membres de la famille Unix à se distancier, et perdre la compatibilité l'un avec l'autre. Des organismes de normalisation tels que le Open Group se sont penchés sur le problème et ont édicté des normes qui garantissent la compatibilité à travers toute la famille Unix.

Entre 1995 et 2007, Microsoft, éditeur de la suite de systèmes d'exploitation Windows a été l'objet de plusieurs procès pour des pratiques anticoncurrentielles qui nuisent à la concurrence et à l'interopérabilité. La société a été condamnée par le département de la justice des États-Unis pour violation du Sherman Antitrust Act ainsi que par la Commission européenne pour violation des traités relatifs à la concurrence dans l'Union européenne.

La popularisation d'Internet dans les années 1990 a contribué à améliorer l'interopérabilité entre les systèmes d'exploitation.

La guerre des Unix et l'Open Group

Le système d'exploitation Unix a été développé par AT&T en 1969. Plus tard d'autres éditeurs s'en sont inspirés pour créer des systèmes d'exploitation semblables, notamment l'université de Berkeley, avec sa Berkeley Software Distribution (BSD). Puis ceux-ci ont servi de source d'inspiration pour d'autres systèmes d'exploitation, et ainsi de suite. En 2009, la famille Unix compte plus de 25 systèmes d'exploitation.

Le jeu de la concurrence a amené chaque éditeur à ajouter ses propres améliorations et ses propres fonctionnalités à son système d'exploitation optimisé pour un matériel en particulier. Ce qui a amené les différents membres de la famille Unix à se distancier, et perdre la compatibilité l'un avec l'autre.

En 1987, dans le but de réunifier la famille Unix, AT&T conclut un accord avec Sun Microsystems (un des principaux éditeurs de système d'exploitation basé sur BSD). Les autres éditeurs ne voient pas cet accord d'un bon œil, et créent la fondation Open Software Foundation (OSF). En

même temps l'Open Group, un consortium de normalisation, publie des normes relatives aux systèmes d'exploitation de la famille Unix institutions sont aujourd'hui fusionnées.

38

. Les deux

POSIX est le nom donné aux normes IEEE 1003. Cette famille de normes appartenant à l'Open Group a été lancée en 1988 et concerne l'interface de programmation. La conformité d'un système d'exploitation à cette norme assure la compatibilité au niveau source. En 2009, de nombreux

systèmes d'exploitations sont conformes à cette norme, y compris en dehors de la famille Unix

39

.

POSIX fait partie de la Single Unix Specification, une norme lancée en 1994 par l'Open Group, qui concerne les systèmes de fichiers, les logiciels

utilitaires, ainsi que 1 742 fonctions de l'interface de programmation

doit être conforme à la Single Unix Specification pour être reconnu comme faisant partie de la famille Unix

40

. Le nom « Unix » appartient à l'Open Group et tout système d'exploitation

41

.

Microsoft et la concurrence

En 1995, conformément au Sherman Antitrust Act — une loi des États-Unis pour la prévention de l'abus de position dominante, le département de la justice des États-Unis interdit à Microsoft certaines de ses pratiques considérées comme nuisibles à la concurrence. Deux ans plus tard, un procès est ouvert pour non-respect des interdictions de 1995 : Microsoft obtient l'annulation du procès sur l'argument que « la justice n'est pas équipée pour juger du bien fondé du design des produits de haute technologie (sic) ».

Entre 1999 et 2001 une enquête est ouverte concernant la position de Microsoft. L'enquête, menée par les juges Thomas Jackson et Richard Posner, amène à la conclusion que Microsoft abuse de sa position de monopole pour pratiquer du « favoritisme » sur le marché connexe des navigateurs

Web. Des pratiques qui nuisent à ses concurrents, gênent leur émergence et freinent l'innovation

est dans l'obligation de publier les spécifications de ses technologies, en particulier les interfaces de programmation et les protocoles réseau ceci

afin de préserver l'interopérabilité et la concurrence

42

. La société échappe de peu à la scission, mais

43

.

Plus tard, en 2007, Microsoft est condamné par la Commission européenne à une amende de près de 500 millions d'euros pour violation de l'article 82 du traité CE et l'article 54 de l'accord EEE (textes relatifs au droit de la concurrence et l'abus de position dominante) après avoir refusé de

publier une de ses spécifications techniques à son concurrent Sun Microsystems Microsoft nuisent à l'interopérabilité des systèmes d'exploitation et à la concurrence

N 19

. Selon la Commission européenne, les agissements de
44

.

Les réseaux informatiques

Chaque système d'exploitation comporte une palette de programmes relatifs à des protocoles réseau. La composition de la palette dépend du choix de l'éditeur et diffère d'un système d'exploitation à l'autre ; or deux ordinateurs peuvent communiquer ensemble uniquement à condition d'utiliser les mêmes protocoles.

La popularisation d'Internet dans les années 1990 a poussé de nombreux éditeurs à inclure dans leur système d'exploitation des programmes relatifs aux protocoles TCP/IP (les protocoles d'Internet), ce qui a amélioré l'interopérabilité entre les systèmes d'exploitation.

Notes et références

Notes

1. Le langage C est un langage de programmation souvent utilisé pour les systèmes d'exploitation en raison de sa puissance et du contrôle total qu'a le programmeur sur la mémoire (A. Tanenbaum, Systèmes d'exploitation, 1.8).

2. Ce mécanisme qui permet au système d'interrompre un programme en cours d'exécution est nommé préemption (A. Tanenbaum, ibid., 2.4.1, p.140).

3. La totalité du code source se trouve dans son livre Operating Systems: Design and Implementation.

4. L'élimination des limitations de Minix aurait rendu le code source trop difficile à lire et à comprendre par les étudiants en un semestre (A. Tanenbaum, ibid., 10.1.7, p.

766).

5. Plus précisément, ni le code, ni les données, ni la pile n'ont besoin d'être totalement en mémoire centrale.

6. Le fait de transférer un segment complet en mémoire de masse est nommé swap out, l'opération inverse swap in.

7. D'abord sous forme de téléscripteurs, puis de terminaux passifs.

8. Andrew Tanenbaum, enseignant, utilisait le code source de Minix pour illustrer ses cours sur les systèmes d'exploitation.

Système d'exploitation - Wikipédia

9. anciennement appelé EPOC.

http://fr.wikipedia.org/wiki/Système_d'exploitation

10. racheté à Psion.

11. Compatible PC, Macintosh, DEC Alpha, Sparc, Itanium, m68k, etc.

12. Via la branche du noyau Linux-rt.

13. Entre 1986 et 1991, les produits de la famille Windows étaient des environnement graphique pour le système d'exploitation DOS.

14. Scission du projet 386BSD.

15. Plus de 50 types de machines. Cf. (en) Liste des plateformes supportées par NetBSD (http://www.netbsd.org/ports/).

16. Compatible PC, ARM, MIPS, Macintosh, DEC Alpha, Sparc, Itanium, Sun Microsystems, Xbox.

17. Compatible PC, ARM, DEC Alpha, Sparc, etc.

18. Créé par fusion entre NeXTSTEP et Mac OS.

19. L'échange de spécifications est une pratique courante dans le marché informatique.

Références

1. (en) Brian L. Stuart, Principles of Operating Systems: Design & Applications, Cengage Learning EMEA, 2008 (ISBN 978-1418837693)

2. (en) I.A. Dhotre, Operating Systems, Technical Publications, 2009 (ISBN 978-8-1843-1644-5)

3. (en) Achyut S. Godbole et Atul Kahate, Operating Systems, 3 ed., Tata McGraw-Hill Education, 2011 (ISBN 978-0-0707-0203-5)

4. (en) Top 5 Operating Systems from July 2008 to April 2012 (http://gs.statcounter.com/#os-ww-monthly-200807-201204) - StatCounter Global Stats

5. (en)Pabitra Pal Choudhury, Operating Systems: Principles and Design, Prentice-Hall of India Pvt. Ltd, 2009 (ISBN 978-8-1203-38911-1)

6. [PDF] (en) George A. Anzinger et Adele M. Gadol, « A Real-Time Operating System with Multi-Terminals and Batch/Spool capablities », HP journal, 1975 (lire en ligne

e

(http://www.hpmuseum.net/document.php?catfile=349))

7. (en) Pramod Chandra P. Bhatt, An Introduction To Operating Systems: Concepts and Practice, 2

8. (en) Amjad Umar, Third Generation Distributed Computing Environments, NGE Solutions Inc, 2004, (ISBN 9780975918210)

9. MIT - General Electric, Honeywell-Bull - MULTICS (http://www.feb-patrimoine.com/PROJET/multics/multics.htm), sur feb-patrimoine.com (consulté le

nd

Ed., Prentice-Hall of India Pvt. Ltd, 2007, (ISBN 9788120332584)

30 septembre 2013)

10. (en) Ayan Moumina, « History of operating systems » (http://www.bhu.ac.in/ComputerScience/vivek/os/1f-Moumina.pdf) (consulté le 30 septembre 2013) [PDF]

11. (en) Mark Bellis, « Putting Microsoft on the Map - History of the MS-DOS Operating Systems, IBM & Microsoft » (http://inventors.about.com/library/weekly /aa033099.htm), sur about.com (consulté le 30 septembre 2013)

12. (en) History of the graphical user interface (http://www.sensomatic.com/chz/gui/history.html), sur sensomatic.com (consulté le 30 septembre 2013)

13. L'annonce originale du projet GNU (http://www.gnu.org/gnu/initial-announcement.fr.html), sur gnu.org, 27 septembre 1983 (consulté le 30 septembre 2013)

14. (en) Richard Stallman, « The Hurd and Linux » (http://www.gnu.org/software/hurd/hurd-and-linux.html) (consulté le 30 septembre 2013)

15. (en) Linus Torvalds, « RELEASE NOTES FOR LINUX v0.12 » (http://www.kernel.org/pub/linux/kernel/Historic/old-versions/RELNOTES-0.12), The Linux Kernel Archives,

5 janvier 1992 (consulté le 30 septembre 2013)

16. (en) Josh Schneider, « Finding aid to the Berkeley Software Distribution » (http://www.oac.cdlib.org/data/13030/b5/hb2b69n7b5/files/hb2b69n7b5.pdf) (consulté le

30 septembre 2013), p. 3 [PDF]

17. (en) Elizabeth U. Harding, « Unix pioneer ends BSD research », Software Magazine, octobre 1992 (lire en ligne (http://www.anonymous-insider.net/unix/research

/1992/10.html))

18. (en) Working group on Libre Software, Free Software / Open Source: Information Society Opportunities for Europe?, avril 2000 (lire en ligne (http://eu.conecta.it/paper /brief_history_open_source.html)), « A brief history of open open source software »

19. (en) Kernel: Basic Concepts Part 2 (http://www.brokenthorn.com/Resources/OSDev13.html), sur Broken Thorn Entertainment (consulté le 30 septembre 2013)

20. (en) Amiga Operating System Freqently Asked Questions (http://www.cinereal.com/computers/faqamigaos.shtml), sur CineReal, 2005 (consulté le 30 septembre 2013)

21. (en) IBM AIX Systems management - Desktop (http://www-03.ibm.com/systems/power/software/aix/sysmgmt/desktop/index.html), IBM (consulté le 30 septembre 2013)

22. (en) Andy Tanenbaum, « Introduction to Minix 3 » (http://www.osnews.com/story/15960/Introduction_to_MINIX_3), OSNews, 25 septembre 2006 (consulté le

30 septembre 2013)

23. (en) John Pagonis, « Symbian OS Presentation » (http://www.pagonis.org/Presentations/EE207.pdf), 2 mars 2004 (consulté le 30 septembre 2013) [PDF]

24. (en) Kernel.exe Describes the Kernel and VxD for Windows 95 (http://support.microsoft.com/kb/181300/en-us), sur support.microsoft.com (consulté le

30 septembre 2013)

25. (en) « Windows CE and Windows Mobile Timeline » (http://www.networkdictionary.com/Software/Windows-CE.php)

(Archive (http://web.archive.org/web/*/http:

//www.networkdictionary.com/Software/Windows-CE.php) • Wikiwix (http://archive.wikiwix.com/cache/?url=http://www.networkdictionary.com/Software/Windows-CE.php) • Que faire ?)

. Brisé le 30 septembre 2013

26. (en) Windows CE Kernel services (http://msdn.microsoft.com/en-us/library/ms906442.aspx), Microsoft Developper Network (consulté le 30 septembre 2013)

27. (en) Windows market share drop to 15 years low (http://www.tgdaily.com/content/view/40398/113/), TG Daily (consulté le 30 septembre 2013)

28. (en) Sebastian Anthony, « Microsoft's share of the consumer market has dropped from 95% to 20% in 8 years » (http://www.extremetech.com/computing/143277- microsofts-share-of-the-consumer-market-has-dropped-from-95-to-20-in-8-years), ExtremeTech (consulté le 30 septembre 2013)

29. (en) Unix Flavor List (http://linux.about.com/library/bl/bl_flavorlist.htm), sur about.com (consulté le 30 septembre 2013)

30. (en) Jeff Drew, « IDC report: IBM widens lead as server market shrinks again » (http://triangle.bizjournals.com/triangle/stories/2009/08/31/daily35.html), Triangle Business Journal, 2 septembre 2009 (consulté le 30 septembre 2013)

31. (en) Usage of operating systems for websites (http://w3techs.com/technologies/overview/operating_system/all), W3Techs - Web Technology Surveys, septembre 2013 (consulté le 30 septembre 2013)

32. (en) The triumph of Linux as supercomputer OS (http://royal.pingdom.com/2009/06/24/the-triumph-of-linux-as-a-supercomputer-os/), sur Royal Pingdom (consulté le

30 septembre 2013)

33. Canalys, 115 millions de smartphones en 2007 (http://www.generation-nt.com/canalys-perspectives-smartphones-2007-actualite-67815.html), GNT - portail des

nouvelles technologies et du jeu (consulté le 30 septembre 2013) : « Sur l'ensemble de l'année, le système d'exploitation Symbian occupe 67% de parts de marché, Windows Mobile 13% et RIM 10% »

34. (en) Emil Protalinski, « Android grabs 75% market share in Q3, followed by 14,9% for iOS and 4,3% for BlackBerry » (http://thenextweb.com/mobile/2012/11/01/android- grabs-75-0-market-share-in-q3-followed-by-14-9-for-ios-and-4-3-for-blackberry/), TheNextWeb (consulté le 30 septembre 2013)

35. Tablettes tactiles : 83,9 % de part de marché pour Apple iOS (http://www.journaldunet.com/solutions/systemes-reseaux/marche-os-tablettes-tactiles-2010-2015.shtml)], Journal du Net, 11 avril 2011 (consulté le 30 septembre 2013)

36. (en) Worldwide Tablet Market Surges Ahead on Strong First Quarter Sales, Says IDC (http://www.idc.com/getdoc.jsp?containerId=prUS24093213), International Data Corporation, 1 mai 2013 (consulté le 30 septembre 2013)

37. (en) Linux Rules Supercomputers (http://www.forbes.com/2005/03/15/cz_dl_0315linux.html), sur forbes.com, 15 mars 2005 (consulté le 30 septembre 2013) : « Linux now has become so technically powerful that it lays claim to a prestigious title–it runs more of the world’s top supercomputers »

38. (en) Unix history and timeline (http://www.unix.org/what_is_unix/history_timeline.html), sur unix.org (consulté le 30 septembre 2013)

39. (en) POSIX.1 FAQ (http://www.opengroup.org/austin/papers/posix_faq.html), sur opengroup.org, 5 octobre 2011 (consulté le 30 septembre 2013)

40. (en) Single Unix specification FAQ (http://www.opengroup.org/austin/papers/single_unix_faq.html), sur opengroup.org, 5 octobre 2011 (consulté le 30 septembre 2013)

41. (en) What is UNIX (http://www.unix.org/what_is_unix.html), sur opengroup.org (consulté le 30 septembre 2013)

42. (en) Jeffrey August Eisenach et Thomas M. Lenard, Competition, innovation, and the Microsoft monopoly, Springer, 1999, (ISBN 9780792384649)

43. (en) Nicholas Economides, « Microsoft Antitrust, a case study » (http://www.stern.nyu.edu/networks/homeworks/Microsoft_Case.pdf), avril 2003 (consulté le

30 septembre 2013) [PDF]

44. Procédure d'application de l'article 82 du traité CE et de l'article 54 de l'accord EEE engagée contre Microsoft Corporation (http://eur-lex.europa.eu/LexUriServ /LexUriServ.do?uri=CELEX:32007D0053:FR:HTML), sur EUR-Lex.com, 24 mai 2004 (consulté le 30 septembre 2013)

A.Tanenbaum, Systèmes d'exploitation

1. 1.2.3, p.15.

2. 10.2.1, p.760.

3. 10.2.1, p.761 et p.762.

4. 1.2.4, pp.17-18.

5. 10.1.7, p. 766.

6. 10.1.7, p. 768

7. 3.3, p.196.

Système d'exploitation - Wikipédia

8. 3.3.1, pp.196-200.

9. 3.3.3, pp.203-204.

10. 3.6.1, p.236.

11. Algorithmes de remplacement de pages, ch. 3.4, p. 209).

12. 12.3.1, p. 999.

13. 12.3.1, p. 1000.

14. 11.3.1, pp. 882-883 et 12.3.1, p. 999.

http://fr.wikipedia.org/wiki/Système_d'exploitation

Bibliographie

Andrew Tanenbaum, Systèmes d’exploitation , Pearson, 2008, 3 e éd. [détail de l’édition] Systèmes d’exploitation, Pearson, 2008, 3 e éd. [détail de l’édition]

Laurent Bloch, Les Systèmes d’exploitation des ordinateurs. Histoire, fonctionnement, enjeux , Vuibert, 2003 (ISBN 978-2-7117-5322-2) Les Systèmes d’exploitation des ordinateurs. Histoire, fonctionnement, enjeux, Vuibert, 2003 (ISBN 978-2-7117-5322-2) [lire en ligne

(http://www.laurent-bloch.org/spip.php?article13)]

Annexes

Articles connexes

Sur les autres projets Wikimedia :

Ordonnancement

Noyau de système d’exploitationOrdonnancement système d’exploitation ,

système d’exploitation,

Pilote informatiqueListe des noyaux de systèmes d’exploitation sur le Wiktionnaire

Liste des noyaux de systèmes d’exploitationPilote informatique sur le Wiktionnaire

sur le Wiktionnaire

InterruptionListe des systèmes d’exploitation

Liste des systèmes d’exploitationInterruption

 

Système de fichiersListe des systèmes d’exploitation   Environnement de bureau Liens externes Système

Environnement de bureausystèmes d’exploitation   Système de fichiers Liens externes Système d'exploitation temps réel

Liens externes

Système d'exploitation temps réelSystème de fichiers Environnement de bureau Liens externes Catégorie:Système d'exploitation Notion sur les

Catégorie:Système d'exploitationLiens externes Système d'exploitation temps réel Notion sur les systèmes d’exploitation

Notion sur les systèmes d’exploitation (http://www.commentcamarche.net/systemes/sysintro.php3) - Comment Ça Marchetemps réel Catégorie:Système d'exploitation L’ascension des systèmes d’exploitation Microsoft

L’ascension des systèmes d’exploitation Microsoft (http://www.generation-nt.com/dossiers/lire/99/Ascension-des-systemes-d-exploitation- Microsoft/) - Génération-NT, 29 novembre 2005- Comment Ça Marche Historique des systèmes d’exploitation, et des réseaux

Historique des systèmes d’exploitation, et des réseaux micro-informatique sur PC (http://bruno.duffet.free.fr/technique/chrono.html) AideWindows.net (http://www.aidewindows.net/index.php)Microsoft/) - Génération-NT, 29 novembre 2005 OS X Facile (http://www.osxfacile.com/) (fr+en) Plusieurs

OS X Facile (http://www.osxfacile.com/)AideWindows.net (http://www.aidewindows.net/index.php) (fr+en) Plusieurs cours sur les systèmes d’exploitation

(fr+en) Plusieurs cours sur les systèmes d’exploitation Plusieurs cours sur les systèmes d’exploitation (http://www.polymorphe.org/index.php?/Telechargement-de-cours/Systemes/) - Polymorphe.org, [PDF] et [doc]

(en) La Bible Internet des systèmes d’exploitation (http://www.osdata.com/) : principes, historique, familles, La Bible Internet des systèmes d’exploitation (http://www.osdata.com/) : principes, historique, familles, spécifications…

Systèmes d’exploitation à but éducatif

« BoOSt » (http://boost.freezee.org/) (Archive (http://web.archive.org/web/*/http://boost.freezee.org/) • Wikiwix (http://archive.wikiwix.com/cache/?url=http: « B o O S t » ( h t t p : / / b

//boost.freezee.org/) Que faire ?) : un autre système d’exploitation à but éducatif (32 bits)

KoalaOS (http://samypesse.fr/cours.html) : cours sur la création d'un système d'exploitation en C++autre système d’exploitation à but éducatif (32 bits) SOS (http://sos.enix.org/fr/PagePrincipale) : réalisation

SOS (http://sos.enix.org/fr/PagePrincipale) : réalisation d'un OS simple, étape par étape, à but éducatif également. Sources et articles téléchargeables.sur la création d'un système d'exploitation en C++ Zumba (http://www.hexanium.com/zumba/) : système

Zumba (http://www.hexanium.com/zumba/) : système d’exploitation expérimental (32 bits) destiné à l’électronique, l’automatisme et la robotique.éducatif également. Sources et articles téléchargeables. minix : système d’exploitation expérimental (32 bits).

minix : système d’exploitation expérimental (32 bits).à l’électronique, l’automatisme et la robotique. DoudouLinux : système d'exploitation destiné à

DoudouLinux : système d'exploitation destiné à l'apprentissage de l'ordinateur, pour les enfants de 2 à 10 ans ; voir le site Doudoulinux.org (http://www.doudoulinux.org)minix : système d’exploitation expérimental (32 bits). (en) Edubuntu (http://edubuntu.org/) : système

(en) Edubuntu (http://edubuntu.org/) : système d'exploitation destiné a l'éducation. Voir article le concernant Edubuntu (http://edubuntu.org/) : système d'exploitation destiné a l'éducation. Voir article le concernant

Ce document provient de « http://fr.wikipedia.org/w/index.php?title=Système_d%27exploitation&oldid=99293894 ».

Dernière modification de cette page le 16 décembre 2013 à 14:21. Droit d'auteur : les textes sont disponibles sous licence Creative Commons paternité partage à l’identique ; d’autres conditions peuvent s’appliquer. Voyez les conditions d’utilisation pour plus de détails, ainsi que les crédits graphiques. En cas de réutilisation des textes de cette page, voyez comment citer les auteurs et mentionner la licence. Wikipedia® est une marque déposée de la Wikimedia Foundation, Inc., organisation de bienfaisance régie par le paragraphe 501(c)(3) du code fiscal des États-Unis.