Effectivement, il y a eu pas mal de débats sur le sujet, ici et ailleurs.
Voila un résumé de l'opinion que nous nous sommes fait sur le sujet :
Sur l'origine
-------------
- le bug est lié à l'USB et uniquement l'OS 9 français, c'est confirmé par Apple dans un article de la Knowledge Base. Apple conseille de débrancher les périphériques USB, et d'enlever les extensions et pilotes USB devenus donc inutile. Ils disent de rebrancher au cas par cas uniquement ce dont on a besoin et de remettre les extensions associées ... Tu parles d'une solution ... En tout cas cela marche, de nombreux témoignages font état de la disparition du bug en enlevant des périphériques, ou alors en les mettant sur un hub auto-alimenté (cf. ci-dessous l'origine de cette solution)
- Désactiver l'extension Serial Shim Lib en particulier est recommandé en particulier par Apple, et beaucoup de témoignages confirme une certaine efficacité de cette solution. A priori cette extension n'est utile que pour la gestion du port infrarouge et de certains modems USB
- d'après Telemac qui poste ici de temps en temps, le fait que cela ne touche que l'OS français serait lié aux caractéristiques de notre réseau électrique, une certaine combinaison de voltage / ampérage ; cela ne parait pas absurde et être effectivement une piste à creuser. C'est peut-être aussi pour cela qu'Apple a du mal à produire un patch logiciel : les caractéristiques du hardware doivent être en cause (alimentation, gestion de l'énergie ...). Enfin, cela expliquerait l'efficacité des solutions à base de hub USB auto-alimenté.
Une théorie
-------------
Parmi les solutions proposées ici et là, on voit souvent proposé de désactiver telle ou telle extension : stuffit, microsoft, etc ... qui n'ont rien à voir avec l'USB. Moi-même, j'ai réussi une fois à m'en tirer en défragmentant mon disque de démarrage. J'ai fait pas mal d'essais en ce sens, je me suis aussi amusé à rebaptiser certaines extensions par exemple en rajoutant un underscore _ devant le nom. Tout cela marche de temps en temps. On observe aussi souvent l'apparition du bug après une installation ou une mise à jour de logiciels. Enfin, comme indiqué plus haut, cela peut arriver après avoir fait une mise à jour d'OS X, et en lançant Classic, en effet la "Classification" d'un OS 9 ajoute des ressources et extensions dans le dossier système ; cela peut être assimilé à une mise à jour d'OS 9. On peut aussi "sauter" le bug en zappant la PRAM.
En analysant tout ces cas, et après de nombreux essais, je suis arrivé à la théorie suivante : il y aurait une interaction foireuse entre l'initialisation de l'USB (peut-être perturbée par un problème électrique comme le pense Telemac), et le processus de démarrage du Mac.
En effet, passez en revue toutes les "solutions" rappelées ci-dessus et proposées par les uns et les autres, et vous verrez qu'il y a un point commun : toutes ces solutions changent très légèrement le "timing" du processus de démarrage : ce léger décalage temporel suffirait soit à éviter l'interaction foireuse avec l'USB dont je parlais, soit au contraire à tomber en plein dedans. Rajouter ou enlever des extensions, changer leurs noms donc leur ordre de démarrage, zapper la PRAM, remplacer des extensions par une nouvelle version, et même défragmenter le disque ... tout cela modifie le timing du démarrage.
Comment s'en sortir
-----------------------
J'élimine la solution Apple "enlever les périphs USB", qui n'en est pas vraiment une. La mise en place d'un hub USB est par contre sans doute une méthode efficace, mais couteuse ...
Je propose, quand on rencontre ce bug :
- de redémarrer en zappant la PRAM, au moins 4 fois (maintenir les touches enfoncées jusqu'à entendre quatre fois le son)
- de passer par le gestionnaire d'extensions pour désactiver chaque fois que possible l'extension Serial Shim Lib
- si cela ne suffit pas, de "jouer" avec le gestionnaire d'extensions pour enlever des extensions inutiles, ou au contraire d'en rajouter certaines inutiles mais sans effet secondaire, au pire de changer le nom d'une extension ou d'une autre en rajoutant un underscore ou un caractère quelconque ; bref modifier le contenu du dossier extensions jusqu'à trouver une config peut-être pas optimisée, mais qui permet de démarrer sans problème. Après, ne plus toucher à rien ...
Malheureusement, dès que l'on touchera au dossier extensions (installation d'un logiciel, mise à jour, ...), voire qu'on ajoutera un nouveau périphérique, le bug risque de revenir, et il faudra recommencer pour trouver une nouvelle config d'extensions stable.