Académique Documents
Professionnel Documents
Culture Documents
Les dessous
de Mac OS X A
SOMMAIRE
B L’histoire chaotique
de Mac OS X
Où l’on apprend d’où vient Mac OS X et de quels octets
il est constitué. B L’organisation du système
MOTS-CLÉS
B Histoire
B Darwin
B Core Image
B Quartz
B Aqua
B Cocoa
B Carbon
La genèse de Mac OS X
Comme tout système d’exploitation, Mac OS X ne vient pas de nulle
part : ses ancêtres sont multiples et son architecture actuelle reflète de
nombreux choix et erreurs stratégiques du passé. Voici donc la mer-
veilleuse histoire de Mac OS X, ou « comment Apple a évité le désastre
grâce à Steve Jobs ».
Mac OS 9
HISTOIRE Du Système à l’OS Pour comprendre les caractéristiques spécifiques de Mac OS X, il est
À l’origine, les systèmes qui équipaient les Mac nécessaire de revenir sur son vénérable ancêtre : Mac OS 9. Ce dernier,
s’appelaient tous « Système » suivi d’un numéro issu des laboratoires d’Apple en octobre 1999, était le dernier d’une
de version : 1.0, 2.0, 6.0.7, 7.6.1… À partir du longue lignée qui a commencé son histoire en 1984, avec le premier
système 7.6, le nom Système fut abandonné pour Macintosh. Avant cet ordinateur, l’informatique n’affichait que du texte
laisser place à Mac OS. La raison était qu’Apple
cherchait alors à distribuer Mac OS sur d’autres
orange ou vert sur fond noir. Avec le Mac et son Système 1.0 sont
ordinateurs compatibles avec le système d’exploi- apparus des outils aussi indispensables que sont les polices, la souris, les
tation des Mac (ces ordinateurs étaient appelés logiciels de dessin vectoriel et bitmap, les traitements de texte capables
clones). Le nom Mac OS rappelait alors clairement de produire un texte en italique ou en gras en un clic… L’impact du pre-
que l’on avait affaire au système d’exploitation
(OS, pour Operating System) du Mac.
mier Mac sur le monde de l’informatique personnelle fut colossal.
Cependant, si la première version du Système était conçue pour gérer un
écran en noir et blanc et un lecteur de disquettes contenant quelques
centaines de Ko de données, et pour faire fonctionner un logiciel à la fois
dans 128 Ko de RAM, il n’était pas censé supporter dix ans plus tard des
ordinateurs équipés de disques de 500 Mo, de 8 Mo de mémoire vive en
standard, d’un lecteur CD-Rom… Le comportement de Mac OS était
archaïque sur de nombreux points : le multi-tâche existait mais était
coopératif (ce n’était pas le système qui décidait de l’affectation de la
priorité des tâches, mais les logiciels eux-mêmes), la mémoire était gérée
de façon statique (l’utilisateur devait lui-même attribuer la mémoire sou-
HISTOIRE Gil Amelio, le docteur haitée aux logiciels) et la mémoire non utilisée par un logiciel n’était pas
qui ne put sauver Apple automatiquement affectée aux autres…
Membre du bureau directeur d’Apple à partir de Mais surtout, le manque de mémoire protégée se faisait cruellement
1994, Gil Amelio est un ancien de National Semi- sentir : si Mac OS était assez stable dans l’ensemble, le noyau du système
conductors, où il avait été surnommé Docteur n’était pas isolé du reste des applications, si bien qu’un simple dysfonc-
Amelio pour sa réussite à redresser l’entreprise.
Placé à la tête d’Apple en 1996, il se distingua par
tionnement d’un logiciel pouvait entraîner le blocage de l’ensemble du
des décisions radicales (abandon de nombreux système d’exploitation, avec un redémarrage obligatoire à la clé.
projets, remise en route d’une stratégie de déve-
loppement de Mac OS plus cohérente). Malgré sa
thérapie qui ressemblait à un électrochoc, il ne put Vers un système moderne : l’échec de Copland
empêcher Apple de subir encore de lourdes pertes,
et fut poussé vers la sortie par Steve Jobs en Apple s’est rendu compte des problèmes de Mac OS dès le début des
août 1997. années 1990 et a lancé le projet Copland, alias Mac OS 8 : un système
qui était sensé apporter une nouvelle interface au Mac, mais surtout
Figure A-1 Chaque nouvelle version de Mac OS X a apporté son flot de nouveautés et de performances améliorées.
Figure A-2
Les multiples couches du mille-feuilles
qu’est Mac OS X. Ces couches ne sont pas
exclusives les unes des autres, au contraire :
un programme Carbon peut appeler
des fonctions Cocoa, un programme
Cocoa peut puiser dans Java…
plus, cette technologie est très souvent impliquée dans tout ce qui con-
tient de l’image ou de la vidéo sur votre Mac. QuickTime est par ailleurs
extensible : en ajoutant des codecs (formats de compression/décompres-
sion de vidéo), vous permettez à toutes les applications s’appuyant sur
QuickTime de bénéficier de ces nouveaux formats de fichiers.
En matière de graphisme et vidéo, Apple a intégré tout un ensemble
d’API conçues pour faciliter la gestion de l’image et d’animations (via
Core Animation) au cœur des applications. Avec Core Image, les déve-
loppeurs peuvent créer et gérer des effets spéciaux en temps réel sur les
images, ou monter des jolies animations sans effort, pour des applica-
tions toujours plus impressionnantes et performantes visuellement.
Quant à Core Video, il est à la vidéo ce que Core Image est aux images :
la gestion d’effets spéciaux en temps réel sur la vidéo. C’est un compo-
sant que QuickTime emploie, par exemple, pour appliquer un effet de
flou sur une vidéo, et qui est utilisé de façon intensive par Photo Booth
ou iChat pour créer des effets de déformation spectaculaires (et parfois
très drôles).
Mais la partie vidéo de Mac OS X ne s’arrête pas là puisque le système
s’appuie sur un ténor de la 3D : OpenGL. Il s’agit d’un standard ouvert
dans le monde de la 3D, un ensemble de technologies reliées aux puis-
santes cartes vidéo des ordinateurs pour afficher des polygones de plus
en plus grands, colorés et de meilleure résolution.
Si vous installez Xcode (dans le dossier Optional Installs du DVD de Leopard), vous
trouverez dans le dossier /Developer/Applications/Performance Tools
l’application Quartz Debug. Lancez-la, puis cliquez sur le menu Window>FrameMeter. Un
compteur apparaît, affichant deux jauges : la rouge indique le nombre d’images par seconde
affichées, tandis que la jaune fournit le temps CPU consommé (c’est-à-dire, si votre processeur
est très sollicité ou non). Déplacez une fenêtre du Finder très vite : le compteur affiche un
nombre d’images par seconde élevé, et la jauge de CPU ne bouge quasiment pas.
Maintenant, cliquez sur Tools>Disable Quartz Extreme et répétez l’opération : non seule-
ment le nombre d’images par seconde est plus faible, et du coup le déplacement de la fenêtre
apparaît plus saccadé, mais le temps processeur consommé est beaucoup plus important,
entraînant un ralentissement global des performances.
Quartz Debug donne aussi accès à un autre mode d’accélération appelé QuartzGL, mais
désactivé par défaut, car trop bogué. Ne l’activez donc pas ! Si vous quittez Quartz Debug,
Quartz Extreme sera automatiquement réactivé.
Pour autant, même s’il s’agit de 3D, OpenGL est utilisé de façon très
intensive par Mac OS X. En effet, une grosse partie des fonctions d’affi-
chage 2D sont déléguées à la carte 3D (après tout, la 2D c’est de la 3D
mise à plat…) via la technologie Quartz Extreme. Grâce à elle, les fenê-
L’expérience utilisateur
Cette couche regroupe tout ce qui va être manipulé directement par
l’utilisateur et augmenter la richesse de son expérience avec Mac OS X.
En clair, c’est ce qui lui permet d’être productif ! Une bonne interface
utilisateur est agréable à utiliser, cohérente et intègre des outils pour
gérer ses documents et ses dossiers avec souplesse.
Comme les nombreux éléments graphiques liquides de l’interface l’indi-
quent (en particulier les barres de défilement où l’eau semble couler pour
afficher le temps qui passe), Aqua est le nom de l’interface utilisateur de
Mac OS X. La forme et la couleur des fenêtres et de leurs boutons, la
barre des menus, le Bureau, etc., tous ces éléments sont définis par
Aqua. L’esthétique de cette interface évolue régulièrement à chaque
nouvelle version de Mac OS X, Lion imposant son style grisé (qui n’a
quasiment plus rien d’aquatique, pour le coup).
Le Finder et le Dock sont deux applications centrales de cette interface.
Elles font partie intégrante de la culture de l’OS d’Apple, car fonctionnant
En résumé
Système moderne fondé sur Unix, Mac OS X dispose d’un environne-
ment de programmation particulièrement riche. L’architecture améliore
encore la stabilité du système et rend le développement bien plus simple
et beaucoup plus attractif que par le passé. Cet ensemble est devenu très
cohérent, et le travail effectué sur les fondations depuis Snow Leopard
devrait préparer le terrain pour un système et des applications réellement
surprenants pour les versions futures.