Système d'exploitation - Partie 2
Systèmes distribués
Un système distribué est un groupe d'ordinateurs distincts en réseau, chacun pouvant disposer de son propre système d'exploitation et de son propre système de fichiers. Contrairement aux multi-ordinateurs, ils peuvent être dispersés n'importe où dans le monde. Un intergiciel (middleware), couche logicielle supplémentaire entre le système d'exploitation et les applications, est souvent utilisé pour améliorer la cohérence. Bien que son fonctionnement soit similaire à celui d'un système d'exploitation, il ne s'agit pas d'un véritable système d'exploitation.
Embarqué
Les systèmes d'exploitation embarqués sont conçus pour être utilisés dans des systèmes informatiques embarqués, qu'il s'agisse d'objets connectés à un réseau ou non connectés à un réseau. Les systèmes embarqués incluent de nombreux appareils électroménagers. Leur particularité est qu'ils ne chargent pas de logiciels installés par l'utilisateur. Par conséquent, ils ne nécessitent pas de protection entre les différentes applications, ce qui simplifie les conceptions. Les très petits systèmes d'exploitation peuvent fonctionner en moins de 10 kilo-octets, les plus petits étant destinés aux cartes à puce. On peut citer par exemple Embedded Linux, QNX, VxWorks et les systèmes ultra-compacts RIOT et TinyOS.
Temps réel
Un système d'exploitation temps réel garantit le traitement des événements ou des données à un instant précis. Les systèmes temps réel strict nécessitent une synchronisation précise et sont courants dans les secteurs de la fabrication, de l'avionique, de l'armée et autres applications similaires. Avec les systèmes temps réel souples, un événement manqué occasionnel est acceptable ; cette catégorie inclut souvent les systèmes audio ou multimédia, ainsi que les smartphones. Pour que les systèmes temps réel stricts soient suffisamment précis dans leur synchronisation, ils se limitent souvent à une bibliothèque sans protection entre les applications, comme eCos.
Hyperviseur
Un hyperviseur est un système d'exploitation qui exécute une machine virtuelle. Cette machine virtuelle ignore qu'il s'agit d'une application et fonctionne comme si elle disposait de son propre matériel. Les machines virtuelles peuvent être mises en pause, sauvegardées et reprises, ce qui les rend utiles pour la recherche, le développement et le débogage des systèmes d'exploitation. Elles améliorent également la portabilité en permettant l'exécution d'applications sur un ordinateur même si elles ne sont pas compatibles avec le système d'exploitation de base.
Bibliothèque
Un système d'exploitation à bibliothèque (libOS) est un système dans lequel les services fournis par un système d'exploitation classique, tels que la gestion réseau, sont fournis sous forme de bibliothèques et composés d'une application et d'un code de configuration uniques pour construire un unikernel : une image machine spécialisée, à espace d'adressage unique, déployable dans des environnements cloud ou embarqués.
Le code du système d'exploitation et celui de l'application ne sont pas exécutés dans des domaines de protection distincts, et les services du système d'exploitation sont accessibles via de simples appels de bibliothèque, sans la surcharge habituelle des changements de contexte, à l'instar des systèmes d'exploitation embarqués et temps réel. Cette surcharge n'est pas négligeable : au coût direct du changement de mode s'ajoute la pollution indirecte des structures processeurs importantes, qui affecte les performances en mode utilisateur et en mode noyau.
Histoire
Les premiers ordinateurs, à la fin des années 1940 et dans les années 1950, étaient programmés directement, soit avec des cartes enfichables, soit avec du code machine saisi sur des supports tels que des cartes perforées, sans langage de programmation ni système d'exploitation. Après l'introduction du transistor au milieu des années 1950, la construction des mainframes a commencé. Ces systèmes nécessitaient encore des opérateurs professionnels effectuant manuellement les tâches d'un système d'exploitation moderne, comme la planification de l'exécution des programmes, mais les mainframes disposaient encore de systèmes d'exploitation rudimentaires tels que Fortran Monitor System (FMS) et IBSYS. Dans les années 1960, IBM a lancé la première série d'ordinateurs intercompatibles (System/360). Tous utilisaient le même système d'exploitation, OS/360, composé de millions de lignes de langage assembleur et de milliers de bogues. OS/360 a également été le premier système d'exploitation populaire à prendre en charge la multiprogrammation, permettant au processeur d'être utilisé sur une tâche pendant qu'une autre attendait les entrées/sorties (E/S). Le stockage de plusieurs tâches en mémoire nécessitait un partitionnement de la mémoire et des protections contre l'accès d'une tâche à la mémoire allouée à une autre.
À la même époque, les téléimprimeurs ont commencé à être utilisés comme terminaux, permettant à plusieurs utilisateurs d'accéder simultanément à l'ordinateur. Le système d'exploitation MULTICS était destiné à permettre à des centaines d'utilisateurs d'accéder à un ordinateur de grande taille. Malgré son adoption limitée, il peut être considéré comme le précurseur du cloud computing. Le système d'exploitation UNIX est né d'un développement de MULTICS pour un utilisateur unique. Grâce à la disponibilité du code source d'UNIX, il est devenu la base d'autres systèmes d'exploitation incompatibles, dont les plus performants furent System V d'AT&T et Berkeley Software Distribution (BSD) de l'Université de Californie. Afin d'accroître la compatibilité, l'IEEE a publié la norme POSIX pour les interfaces de programmation d'applications (API) des systèmes d'exploitation, prise en charge par la plupart des systèmes UNIX. MINIX était une version allégée d'UNIX, développée en 1987 à des fins éducatives, qui a inspiré le logiciel libre Linux, disponible commercialement.
Link 1
Link 2
Link 3
Link 4
Link 5
Link 6
Link 7
Link 8
Link 9
Link 10
Link 11
Link 12
Link 13
Link 14
Link 15
Link 16
Link 17
Link 18
Link 19
Link 20
Link 21
Link 22
Link 23
Link 24
Link 25
Link 26
Link 27
Ajouter un commentaire