1.3. Les noyaux de Mac OS et de Linux
L'étude que nous venons de mener sur l'architecture du
noyau de Windows nous amène à jeter un coup d'oeil au sein des
noyaux des autres systèmes d'exploitation assez utilisé au
même titre que celui de Windows à savoir Mac OS et Linux. Pour
cela nous allons faire une brève étude des noyaux de ces deux
systèmes.
1.3.1. Le noyau de Mac OS
Mac OS est un système d'exploitation de la
société Apple doté de plusieurs versions parmi laquelle
celle sortie en 2009 (Mac OS 10.6 Snow Leopard) année
proche de la sortie de Windows 7 tourne sur un noyau 32 bits pouvant
gérer des applications 64 bits. Actuellement Mac OS X est le seul
système d'exploitation qui permet d'avoir un noyau 32 bits et des
applications 64 bits. Windows 64 bits a été excessivement
difficile à se déployer, car le noyau étant 64 bit, il a
fallu que tous les pilotes le soient pour que l'adoption soit massive : elle ne
l'est pas encore. La technologie pour faire tourner des applications 32 bits
dans Windows 64 bits est WOW (Windows On Windows) : une surcouche d'abstraction
difficile à mettre en oeuvre et à maintenir.
[4]
Cependant, Mac OS 10.6 Snow Leopard est
livré avec deux noyaux. Le premier est un noyau en mode architecture 32
bits le second en 64 bits. Sur la majorité des Macs, le noyau
15
utilisé par défaut est le noyau 32 bits. Ceci
étant les applications fonctionnant sur cette version de Mac contiennent
du code prévu pour être lancé sur les deux architectures
à la fois et qui pénalisent donc le poids du fichier (qui
contient en pratique deux fois plus de code) et sa vitesse d'exécution
car il est très difficile d'optimiser un programme lorsque le code doit
pouvoir s'exécuter sur plusieurs architectures, complètement
différentes de surcroît. [5]
Il en ressort de cette brève étude qu'il est
difficile de programmer des applications fonctionnant sur Mac OS 10.6
Snow Leopard car fonctionnant avec deux noyaux : un noyau 32 bits et
un autre 64 bits dont le démarrage des applications se fait avec le 32
bits par défaut. Faire une application fonctionnant à sur deux
noyaux n'étant pas aisé surtout que le noyau de Mac OS 10.6 Snow
Leopard n'est pas totalement ouvert aux développeurs. C'est la raison
pour laquelle nous avons choisi de travailler sur Windows 7 car il est ouvert
aux développeurs et une grande communauté s'offre le luxe de
concevoir des applications tournant en mode noyau ; ceci pouvant nous servir de
modèle et de guide dans la réalisation de notre application.
1.3.2. Le noyau de Linux
Linux est de natif un noyau qui a été
créé en 1991 par Linus Torvald. [6] Il s'agit
d'un noyau POSIX, respectant les normes POSIX13 1003.1 et 1003.2.
C'est le noyau (version 2.6) du système d'exploitation Linux version LTS
8.04 qui retiendra notre attention car son année de sortir est proche de
celle de Windows 7.
En fait le noyau Linux est la base de tout système
Linux. C'est la partie qui réalise toute l'abstraction du
matériel, assure la gestion des droits, gère les processus, etc.
Le noyau Linux constitue de ce fait la partie d'un système Linux qui
répond strictement à la définition de système
d'exploitation. [7]
Comme tout noyau, Linux 2.6 fournit en son coeur les quatre
services de base que sont : le support du processeur, le gestionnaire
mémoire, le gestionnaire d'interruption et l'ordonnanceur.
Le noyau linux 2.6 est un noyau
monolithique14/hybride qui offre une grande ouverture de
programmation et d'intégration aux développeurs mais ce qui a
poussé notre choix vers le système d'exploitation Windows 7 et
non pas sur Linux relève du fait que le noyau Windows NT.6.1 reste
stable jusqu'à la mise en place d'un autre système d'exploitation
contrairement à
13 POSIX: Portable Operating
System for Computer Environment. C'est une norme Unix de L'IEEE qui
spécifie le noyau du système.
14 Noyau en un seul fichier executable.
16
celui de Linux 2.6 qui est passé en 2009 à sa
version 2.6.21 et dont le fonctionnement des applications écrites sur la
base du fonctionnement du 2.6 nécessiteraient parfois des mises à
jour.
Tout au long de notre étude, il a été
question pour nous de présenter dans un premier temps l'architecture
d'un noyau d'un système d'exploitation et s'attarder sur l'étude
de celui de Windows NT 6.1. Dans un second temps il a été
question pour nous de présenter le noyau de Mac OS version 10.6
surnommé Snow Leopard et celui de Linux
à sa version 2.6 ce qui nous permis de dégager
les raisons pour lesquelles nous avons choisies de travailler sur le noyau
Windows NT 6.1 dont repose le système d'exploitation Windows 7 et qui
d'après notre étude reste le plus stable à la
programmation.
17
|