Leopard : Le coeur du félin
Après l'aspect visuel, dont on ne pourrait se passer comme un félin ne pourrait se passer de son pelage qui fait aussi son caractère, passons maintenant à ce qui se trouve dans le crâne et dans le coeur de l'animal.
Le 64 bits, tout d'abord, totalement intégré à Leopard, sans perdre la compatibilité avec les applications 32 bits. Contrairement à Microsoft ou aux éditeurs de distributions Linux, qui proposent deux déclinaisons de leur OS, Apple a donc réussi l'exploit de rendre cette technologie accessible à toute sa clientèle, sans que l'utilisateur n'ai à se poser la question de la version de son logiciel ou du driver de son périphérique.
Même si le gain pour les applications courantes ne sera pas phénoménale, le traitement de gros fichiers photos ou vidéos se fera de manière beaucoup plus rapide.
Core Animation, qu'Apple a déjà évoqué, permet aux développeurs de logiciels d'ajouter des effets visuels qui-en-mettent-plein-la-vue aussi simplement que des images fixes 2D. Il faudra attendre les premiers logiciels développés pour Leopard pour savoir si cette technologie relève uniquement du gadget ou est un plus indéniable.
Apple mise aussi beaucoup sur le Multicore. On a les processeurs, on aura maintenant l'OS. Même si Mac OS X gère déjà le multiprocesseur depuis la version 10.0 (et même depuis Mac OS 9 à l'aide d'une simple extension système), Apple a décidé de simplifier au maximum le développement d'applications tirant profit de plusieurs coeurs ou processeur. Les développeurs n'auront plus besoin de créer eux même plusieurs thread, puisque Cocoa s'en chargera pour eux. Mail.app, Adress Book, et Font Utility par exemple seront codés ainsi. Reste à savoir si le gain en performance sur des applications aussi banales sera réel.
Côté Unix, Apple a maintenant fait certifier Leopard "UNIX 03". Ceci signifie qu'il doit obéir à un certain nombre de standard pour permettre la compilation d'un programme fait pour tous les autres Unix certifiés aussi UNIX 03, soit la plupart d'entre eux dans leurs dernière version (Solaris 10, AIX 5.3, HP-UX...). Linux n'a par contre pas cette certification, mais tente autant que possible de s'approcher de l'ensemble des standard, dont l'UNIX 03.
Les autres nouveautés liés à la couche Unix sont :
- L'optimisation automatique de la couche TCP : l'OS adapte automatiquement la taille des buffer au autres largeurs de fenêtre en fonction du type de connexion. Si la différence ne se vera pas sur nos connexions ADSL, sur une connexion à très haut débit le gain de vitesse devrait être notable.
- L'optimisation multi-coeur de nombreux composant comme la couche réseau
- DTrace, venu tout droit de Solaris, permet de contrôle les ressources utilisés par un logiciel pour faciliter le débugage.
Point important, bien que Mac OS X ne connaisse pas les problèmes de sécurité que Microsoft peut connaître sur l'ensemble de ses OS, Apple a décidé tout de même de mettre le paquet.
- Il est possible par exemple de lancer une application en mode "sandbox", ou bac à sable. Ainsi, c'est vous qui déterminez quels seront les fichiers et les ressources qui auront le droit d'être touchées.
- Le partage de fichier a été revu pour permettre à l'utilisateur de définir plus précisément quels sont les droits accordés à quel dossier. Et pour simplifier, pas la peine de créer des comptes manuellement, il suffit de préciser un contact du carnet d'adresse par exemple.
- Leopard est capable travailler avec la signature d'une application pour prévenir l'utilisateur si celle-ci a été modifiée depuis son installation.
Enfin, les outils développeurs ont aussi beaucoup évolués puisque XCode passe en version 3 et Objective-C en version 2.0. L'arrivé de D-Trace est aussi un confort supplémentaire et a été l'occasion pour Apple de créer un nouvel outils graphique nommée Xray, pour rentrer dans le coeur de vos applications.
Pas de trace de zfs, mais quelques nouveautés suffisamment intéressante pour dire que Mac OS X 10.5 a suffisamment évolué du côté caché pour ne pas être accusé d'être une simple surcouche graphique ou une simple collection de gadget supplémentaire par rapport à 10.4.