Le démarrage
Les lecteurs attentifs ont peut-être noté que , par défaut, Mac OS X évite complètement l'écran de login. Le système est configuré pour démarrer automatiquement sur le compte d'utilisateur créé pendant le processus de mise en route. Comme nous l'avons dit dans les articles précédents, c'est un compte "administrateur", mais ce n'est pas le compte "root" ou "super utilisateur" (dont l'identificateur est zéro). En fait, le compte root est invalidé par défaut. Clairement, Apple ne s'attend pas à ce que, ou ne veut pas, que les utilisateurs se loguent en tant que root. Tout ce qui peut être fait peut l'être par un compte d'utilisateur normal qui est doté de privilèges d'administrateur.
Mais, pour aller plus loin, c'est à dire "jouer un peu" avec le système, des utilisateurs habiles (ou pas vraiment), peuvent avoir envie de valider le compte root. Il y a plusieurs façons de le faire, depuis des appels à la ligne de commande jusqu'à une manipulation sous IUG. J'ai choisi la version IUG, en sélectionnant le menu correspondant dans l'application NetInfo manager. On vous demande de fournir un mot de passe root, après quoi l'acompte est validé.
Fig. 1 : Validation du compte root.
Plutôt que d'entrer et de s'empêtrer dans les arcanes d'Unix, testons autre chose, et comparons quelques temps de démarrage. Comme pour le temps d'installation, je n'ai jamais vraiment compris l'importance que certains attachent au temps de démarrage. Mon expérience avec les ordinateurs m'a montré une relation faible entre le temps de démarrage et toute autre statistique significative. J'ai vu des stations de travail puissantes qui mettaient un temps fou à démarrer, et des ordinateurs personnels primitifs qui démarraient presque instantanément.
Néanmoins, un temps de démarrage court est une caractéristique enviable, toutes choses égales par ailleurs. Le premier démarrage complet après la mise en route a duré environ une minute et 50 secondes. Par comparaison, le premier démarrage complet sur mon installation Mac OS 9 a pris environ 47 secondes. (Notez que ces deux durées excluent la séquence POST, qui varie beaucoup en fonction du matériel installé). Les démarrages suivants d'OS X, avec certains services non essentiels invalidés (principalement l'accès au serveur NetInfo) a amélioré de quelques secondes le temps initial d'une minute cinquante.
Malgré ces valeurs, Mac OS X ne devrait pas doubler le temps de démarrage pour la plupart des gens. Rappelez-vous que l'installation 9.1 n'était seulement que la sauce. Mon installation principale 9.1 ( sur le disque dur ATA/66 à 7200 tpmn) prend environ deux minutes pour démarrer à cause de toutes les extensions que j'ai installées. Le processus de démarrage de Mac OS X est d'autre part handicapé par son implémentation "sécurisée" : une séquence linéaire d'évènements. La parallèlisation du processus de démarrage a été envisagée il y a quelque temps sur les listes de discussion correspondantes de Darwin, et devrait pouvoir améliorer considérablement les temps de démarrage.
Voici quelques autres temps de démarrage peut-être plus significatifs. L'environnement classique met environ 47 secondes à démarrer. Notez que c'est exactement aussi long que le démarrage normal de Mac OS 9.1. Avec les extensions désactivées, classique démarre en 15 secondes environ. Quand classique tourne, le lancement des applications est aussi comparable à leur performance sur un Mac OS 9 natif. Le tableau ci-dessous montre les temps de lancement d'un échantillon d'applications classiques sous OS X (à l'exclusion du temps nécessaire à lancer l'environnement classique qui est fourni par ailleurs). Toutes les applications ont été lancées deux fois pour évaluer l'intérêt du cache. Rappelez-vous que c'est moi qui suis devant l'écran avec un chronomètre, si bien que la marge d'erreur est probablement de quelques secondes.
Ces temps correspondent à ceux des mêmes applications tournant sur un système Mac OS 9 séparé, et mettent en évidence le fait que l'environnement classique n'est pas une émulation, comme l'est Virtual PC. Il n'y a pas de traduction du jeu d'instructions. C'est du code PowerPC natif qui tourne sur un processeur PowerPC.
Mais on ne peut pas nier que classique est un tout autre monde de code PowerPC qui tourne en combinaison avec le reste de Mac OS X. L'environnement classique correspond à un système Mac OS 9.1 complet d'une autre façon : l'utilisation de la RAM. En fait, il est un peu meilleur que le système 9.1, du fait que le Finder classique manque, et grâce au partage habile d'autre code, mais cela mange quand même de la mémoire. Le simple lancement de cet environnement absorbe environ 30 Mo de RAM (plus ou moins, selon les extensions que vous avez installées sous 9.1). Au delà, l'utilisation de la RAM par les applications correspond à l'allocation de RAM définie pour chaque application classique.
Les temps de démarrage des applications Mac OS X natives ne sont pas particulièrement remarquables, et parfois plutôt mauvais. Même sans chronomètre, il est facile de mesurer le temps de lancement d'une application en comptant combien de fois son icône rebondit dans le Dock avant son démarrage. Les rebondissements peuvent être approximatifs, mais quand vous voyez Internet Explorer classique 5.0 rebondir une seule fois avant de démarrer, et que vous observez l'Internet Explorer 5.1 carbonisé rebondir 18 fois, le verdict est flagrant. Même une chose aussi simple que le lancement des préférences Système prend 6 rebondissements.
Reconnaissons que, comme les temps de démarrage, les temps de lancement ne sont pas aussi importants qu'on veut parfois le dire, notamment avec un OS qui a un système de mémoire virtuelle moderne. Mais quelle que soit la qualité de la mémoire virtuelle d'OS X, il est toujours avisé de quitter les applications qu'on n'utilise pas, avant qu'une activité de pagination intense ne se mette en place. Parlons en...