Blog

Qu'est-ce qu'un système d'exploitation ?

Un système d'exploitation, c'est quoi ?

Un système d'exploitation (OS) est un logiciel système qui gère le matériel informatique, les ressources logicielles et fournit des services communs pour les programmes informatiques.

Les systèmes d'exploitation en temps partagé planifient les tâches pour une utilisation efficace du système et peuvent également inclure un logiciel de comptabilité pour la répartition des coûts du temps de processeur, du stockage de masse, de l'impression et d'autres ressources.

Pour les fonctions matérielles telles que les entrées et sorties et l'allocation de mémoire, le système d'exploitation agit comme un intermédiaire entre les programmes et le matériel informatique, bien que le code d'application soit généralement exécuté directement par le matériel et qu'il effectue fréquemment des appels système vers une fonction du système d'exploitation ou soit interrompu par celle-ci.

On trouve des systèmes d'exploitation sur de nombreux appareils contenant un ordinateur - des téléphones portables et des consoles de jeux vidéo aux serveurs web et aux superordinateurs.

Le principal système d'exploitation polyvalent pour ordinateurs de bureau est Microsoft Windows, avec une part de marché d'environ 76,45 %. MacOS d'Apple Inc. occupe la deuxième place (17,72 %), et les variétés de Linux occupent collectivement la troisième place (1,73 %). Dans le secteur des téléphones mobiles (y compris les smartphones et les tablettes), la part d'Android atteint 72 % en 2020.

Selon les données du troisième trimestre 2016, la part d'Android sur les smartphones est dominante avec 87,5 % avec également un taux de croissance de 10,3 % par an, suivi par iOS d'Apple avec 12,1 % avec une diminution de la part de marché de 5,2 % par an, tandis que les autres systèmes d'exploitation ne représentent que 0,3 %. Les distributions Linux sont dominantes dans les secteurs des serveurs et des supercalculateurs.

D'autres classes spécialisées de systèmes d'exploitation (systèmes d'exploitation spécialisés), tels que les systèmes embarqués et en temps réel, existent pour de nombreuses applications. Il existe également des systèmes d'exploitation axés sur la sécurité. Certains systèmes d'exploitation ont des exigences système faibles (par exemple, une distribution Linux légère). D'autres peuvent avoir des exigences système plus élevées.

Monotâche et multitâche

Un système monotâche ne peut exécuter qu'un seul programme à la fois, tandis qu'un système d'exploitation multitâche permet à plusieurs programmes de fonctionner en même temps. Cela est possible grâce au partage du temps, où le temps processeur disponible est réparti entre plusieurs processus. Ces processus sont chacun interrompus à plusieurs reprises par tranches de temps par un sous-système de planification des tâches du système d'exploitation.

Le multitâche peut être caractérisé par des types préemptif et coopératif. Dans le cas du multitâche préventif, le système d'exploitation découpe le temps CPU et consacre un créneau à chacun des programmes. Les systèmes d'exploitation de type Unix, tels que Solaris et Linux, ainsi que les systèmes non Unix, tels que l'AmigaOS, prennent en charge le multitâche préventif.

Le multitâche coopératif est réalisé en s'appuyant sur chaque processus pour fournir du temps aux autres processus d'une manière définie. Les versions 16 bits de Microsoft Windows utilisent le multitâche coopératif ; les versions 32 bits de Windows NT et Win9x utilisent le multitâche préventif.

operating system 1995434 1280

Utilisateurs uniques et multiples

Les systèmes d'exploitation monoposte ne disposent pas de fonctions permettant de distinguer les utilisateurs, mais peuvent permettre à plusieurs programmes de fonctionner en tandem. Un système d'exploitation multiutilisateur étend le concept de base du multitâche avec des fonctions qui identifient les processus et les ressources, comme l'espace disque, appartenant à plusieurs utilisateurs, et le système permet à plusieurs utilisateurs d'interagir avec le système en même temps.

Les systèmes d'exploitation en temps partagé programment les tâches pour une utilisation efficace du système et peuvent également inclure un logiciel de comptabilité pour l'allocation des coûts du temps de processeur, du stockage de masse, de l'impression et d'autres ressources à des utilisateurs multiples. 

Distribué

Un système d'exploitation distribué gère un groupe d'ordinateurs distincts en réseau et les fait apparaître comme un seul ordinateur, car tous les calculs sont distribués (répartis entre les ordinateurs constitutifs).

Modèle

Dans le contexte de l'informatique distribuée et de l'informatique en nuage d'un système d'exploitation, la création d'un modèle consiste à créer une image de machine virtuelle unique en tant que système d'exploitation invité, puis à l'enregistrer en tant qu'outil pour plusieurs machines virtuelles en fonctionnement. Cette technique est utilisée à la fois dans la gestion de la virtualisation et du cloud computing, et elle est courante dans les grands entrepôts de serveurs.

Intégré

Les systèmes d'exploitation embarqués sont conçus pour être utilisés dans des systèmes informatiques embarqués. Ils sont conçus pour fonctionner sur de petites machines ayant une autonomie moindre (par exemple, les PDA). Ils sont très compacts et extrêmement efficaces de par leur conception, et peuvent fonctionner avec une quantité limitée de ressources. Windows CE et Minix 3 sont quelques exemples de systèmes d'exploitation embarqués.

En temps réel

Un système d'exploitation en temps réel est un système d'exploitation qui garantit le traitement d'événements ou de données à un moment précis dans le temps. Un système d'exploitation en temps réel peut être mono- ou multitâche, mais lorsqu'il est multitâche, il utilise des algorithmes de planification spécialisés afin d'obtenir un comportement de nature déterministe.

Un tel système piloté par les événements bascule entre les tâches en fonction de leurs priorités ou d'événements externes, tandis que les systèmes d'exploitation en temps partagé basculent entre les tâches en fonction des interruptions d'horloge.

Bibliothèque

Un système d'exploitation de bibliothèque est un système dans lequel les services qu'un système d'exploitation typique fournit, tels que la mise en réseau, sont fournis sous forme de bibliothèques et composés avec le code d'application et de configuration pour construire un unikernel : un espace d'adresse unique spécialisé, une image machine qui peut être déployée dans des environnements cloud ou embarqués.

Unix et les systèmes d'exploitation de type Unix

Article principal : Unix

Évolution des systèmes Unix

Unix était à l'origine écrit en langage assembleur. Ken Thompson a écrit B, principalement basé sur BCPL, en se basant sur son expérience dans le projet MULTICS. B a été remplacé par C, et Unix, réécrit en C, s'est développé en une grande famille complexe de systèmes d'exploitation interdépendants qui ont eu une influence sur tous les systèmes d'exploitation modernes (voir Histoire).

La famille de type Unix est un groupe diversifié de systèmes d'exploitation, avec plusieurs grandes sous-catégories, dont le système V, BSD et Linux. Le nom "UNIX" est une marque déposée de l'Open Group qui en concède la licence pour une utilisation avec tout système d'exploitation dont la conformité à leurs définitions a été démontrée. Le terme "UNIX-like" est couramment utilisé pour désigner le vaste ensemble de systèmes d'exploitation qui ressemblent à l'UNIX original.

Les systèmes de type Unix fonctionnent sur une grande variété d'architectures informatiques. Ils sont largement utilisés pour les serveurs dans les entreprises, ainsi que pour les postes de travail dans les environnements universitaires et d'ingénierie. Les variantes libres d'UNIX, telles que Linux et BSD, sont populaires dans ces domaines.

Quatre systèmes d'exploitation sont certifiés par The Open Group (détenteur de la marque Unix) comme étant Unix. HP-UX de HP et AIX d'IBM sont tous deux des descendants du System V Unix original et sont conçus pour fonctionner uniquement sur le matériel de leur fournisseur respectif. En revanche, Solaris de Sun Microsystems peut fonctionner sur plusieurs types de matériel, notamment des serveurs x86 et Sparc, et des PC. Le MacOS d'Apple, qui remplace l'ancien Mac OS (non-Unix) d'Apple, est une variante BSD à base de noyau hybride dérivé de NeXTSTEP, Mach et FreeBSD.

L'interopérabilité Unix a été recherchée en établissant la norme POSIX. La norme POSIX peut être appliquée à n'importe quel système d'exploitation, bien qu'elle ait été créée à l'origine pour diverses variantes d'Unix.

BSD et ses descendants

Article principal : Berkeley Software Distribution

Le premier serveur pour le World Wide Web fonctionnait sur NeXTSTEP, basé sur BSD.

Un sous-groupe de la famille Unix est la famille Berkeley Software Distribution, qui comprend FreeBSD, NetBSD et OpenBSD. Ces systèmes d'exploitation se trouvent le plus souvent sur des serveurs web, bien qu'ils puissent également fonctionner comme un système d'exploitation d'ordinateur personnel.

L'Internet doit une grande partie de son existence aux BSD, car de nombreux protocoles aujourd'hui couramment utilisés par les ordinateurs pour se connecter, envoyer et recevoir des données sur un réseau ont été largement mis en œuvre et affinés dans les BSD.

Le World Wide Web a également fait l'objet d'une première démonstration sur un certain nombre d'ordinateurs équipés d'un système d'exploitation basé sur la norme BSD, appelé NeXTSTEP.

En 1974, l'université de Californie à Berkeley a installé son premier système Unix. Au fil du temps, les étudiants et le personnel du département d'informatique de cette université ont commencé à ajouter de nouveaux programmes pour faciliter les choses, comme des éditeurs de texte. Lorsque Berkeley a reçu de nouveaux ordinateurs VAX en 1978 avec Unix installé, les étudiants de l'école ont modifié encore plus Unix afin de profiter des possibilités matérielles de l'ordinateur.

L'Agence des projets de recherche avancée du ministère américain de la défense s'est intéressée au projet et a décidé de le financer. De nombreuses écoles, entreprises et organisations gouvernementales ont pris note et ont commencé à utiliser la version d'Unix de Berkeley au lieu de la version officielle distribuée par AT&T.

Steve Jobs, en quittant Apple Inc. en 1985, a créé NeXT Inc. une société qui fabriquait des ordinateurs haut de gamme fonctionnant sur une variante de BSD appelée NeXTSTEP. L'un de ces ordinateurs a été utilisé par Tim Berners-Lee comme premier serveur web pour créer le World Wide Web.

Des développeurs comme Keith Bostic ont encouragé le projet à remplacer tout code non libre provenant des laboratoires Bell. Une fois cela fait, cependant, AT&T a intenté un procès. Après deux ans de conflits juridiques, le projet BSD a donné naissance à un certain nombre de dérivés libres, tels que NetBSD et FreeBSD (tous deux en 1993), et OpenBSD (de NetBSD en 1995). 

microsoft 80660 1280

macOS (anciennement "Mac OS X" et plus tard "OS X") est une gamme de systèmes d'exploitation graphiques à noyau ouvert développés, commercialisés et vendus par Apple Inc. dont le dernier en date est préchargé sur tous les ordinateurs Macintosh actuellement en vente. macOS est le successeur du Mac OS classique original, qui était le principal système d'exploitation d'Apple depuis 1984. Contrairement à son prédécesseur, macOS est un système d'exploitation UNIX basé sur une technologie qui avait été développée à NeXT pendant la seconde moitié des années 80 et jusqu'à ce qu'Apple rachète la société au début de 1997.

Le système d'exploitation a été publié pour la première fois en 1999 sous le nom de Mac OS X Server 1.0, suivi en mars 2001 d'une version client (Mac OS X v10.0 "Cheetah"). Depuis lors, six autres éditions "client" et "serveur" distinctes de MacOS ont été publiées, jusqu'à ce que les deux soient fusionnées dans OS X 10.7 "Lion".

Avant sa fusion avec macOS, l'édition "serveur" - macOS Server - était architecturalement identique à son homologue "bureau" et fonctionnait généralement sur la gamme de matériel serveur Macintosh d'Apple. macOS Server comprenait des outils logiciels de gestion et d'administration de groupes de travail qui fournissent un accès simplifié aux principaux services réseau, notamment un agent de transfert de courrier électronique, un serveur Samba, un serveur LDAP, un serveur de noms de domaine, et d'autres encore.

Avec Mac OS X v10.7 Lion, tous les aspects serveur de Mac OS X Server ont été intégrés dans la version client et le produit a été rebaptisé "OS X" (en supprimant "Mac" du nom). Les outils serveur sont désormais proposés sous forme d'application[17].

Linux

Principaux articles : Linux et le noyau Linux

Ubuntu, distribution Linux de bureau

linux, un système d'exploitation de type Unix, a été lancé le 17 septembre 1991 par Linus Torvalds Photo de Tux le pingouin, mascotte de Linux.

Le noyau Linux a vu le jour en 1991, sur un projet de Linus Torvalds, alors qu'il était étudiant en Finlande. Il a publié des informations sur son projet sur un groupe de discussion destiné aux étudiants en informatique et aux programmeurs, et a reçu le soutien et l'aide de volontaires qui ont réussi à créer un noyau complet et fonctionnel.

Linux est semblable à Unix, mais a été développé sans aucun code Unix, contrairement à BSD et ses variantes. En raison de son modèle de licence ouverte, le code du noyau Linux est disponible pour étude et modification, ce qui a entraîné son utilisation sur une large gamme de machines informatiques, des superordinateurs aux montres intelligentes. Bien que les estimations suggèrent que Linux n'est utilisé que sur 1,82% de tous les PC "de bureau" (ou portables), il a été largement adopté pour une utilisation dans les serveurs et les systèmes embarqués tels que les téléphones portables.

Linux a supplanté Unix sur de nombreuses plateformes et est utilisé sur la plupart des super-ordinateurs, y compris les 385 premiers. Beaucoup de ces mêmes ordinateurs sont également sur Green500 (mais dans un ordre différent), et Linux fonctionne sur les 10 premiers.

Linux est aussi couramment utilisé sur d'autres petits ordinateurs à faible consommation d'énergie, tels que les smartphones et les smartwatches. Le noyau Linux est utilisé dans certaines distributions populaires, telles que Red Hat, Debian, Ubuntu, Linux Mint et Android de Google, Chrome OS et Chromium OS.


Microsoft Windows

Article principal : Microsoft Windows

Microsoft Windows est une famille de systèmes d'exploitation propriétaires conçus par Microsoft Corporation et principalement destinés aux ordinateurs basés sur l'architecture Intel, avec une part d'utilisation totale estimée à 88,9 % sur les ordinateurs connectés au Web. La dernière version est Windows 10.

En 2011, Windows 7 a dépassé Windows XP en tant que version la plus utilisée.

Microsoft Windows a été lancé en 1985, en tant qu'environnement d'exploitation fonctionnant sur MS-DOS, qui était le système d'exploitation standard fourni à l'époque sur la plupart des ordinateurs personnels à architecture Intel. En 1995, Windows 95 a été lancé, qui n'utilisait que MS-DOS comme système d'amorçage. Pour la rétrocompatibilité, Win9x pouvait faire fonctionner les pilotes MS-DOS en mode réel et Windows 3.x  en 16 bits. Windows ME, sorti en 2000, était la dernière version de la famille Win9x. Les versions ultérieures ont toutes été basées sur le noyau Windows NT. Les versions client actuelles de Windows fonctionnent sur des microprocesseurs ARM IA-32, x86-64 et 32 bits[35]. En outre, Itanium est toujours pris en charge dans l'ancienne version serveur Windows Server 2008 R2. Dans le passé, Windows NT supportait des architectures supplémentaires.

Les éditions serveur de Windows sont largement utilisées. Ces dernières années, Microsoft a dépensé des capitaux importants pour promouvoir l'utilisation de Windows comme système d'exploitation serveur. Cependant, l'utilisation de Windows sur les serveurs n'est pas aussi répandue que sur les ordinateurs personnels, car Windows est en concurrence avec Linux et BSD pour la part de marché des serveurs.

ReactOS est un système d'exploitation alternatif à Windows, qui est développé sur les principes de Windows - sans utiliser aucun code de Microsoft.