Les problèmes suivants concernent le débogueur du noyau.
Le débogueur dbx s'arrête sur une erreur d'accès mémoire lors du traitement de certains fichiers exécutables et bibliothèques 64 bits. Néanmoins, le problème n'affecte pas l'utilisation normale de ces objets 64 bits. Un message similaire s'affiche :
dbx: internal error: signal SIGBUS (invalid address alignment) |
Solution : Utilisez soit le débogueur mdb, soit la fonctionnalité Solaris Dynamic Tracing à la place. Ces deux solutions permettent de diagnostiquer les processus utilisant des objets 64 bits.
Un système qui exécute le débogueur de noyau Solaris pour déboguer un système en direct peut effectuer une boucle avec des messages d'erreur incomplets. Cette boucle se produit lorsque la CPU maîtresse d'OpenBoot PROM est changée. La réinitialisation du système restaure le fonctionnement de celui-ci. Cependant, toute trace de l'échec d'origine est perdue. Par conséquent, il n'est pas possible d'effectuer un diagnostic de la réinitialisation fatale.
Solution : lorsque le système est au niveau de la PROM, l'invite ok d'OpenBoot s'affiche. Dans un système avec plusieurs CPU, l'invite ok est précédée d'un chiffre entre accolades. Ce chiffre indique la CPU qui est active dans le système. Pour exécuter la session de débogage au niveau de la PROM, procédez comme suit.
Augmentez la valeur de pil à f en tapant la commande suivante :
{0} ok h# 0f pil! |
Utilisez la commande switch-cpu pour commuter entre la CPU active et d'autres CPU. Par exemple, pour commuter de la CPU n°0 à la CPU n°1, tapez la commande suivante :
(0) ok 1 switch-cpu |
L'invite ok est maintenant précédée du chiffre de la CPU vers laquelle vous avez permuté.
{1} ok |
Exécutez le débogueur.
À la fin de la session de débogage, exécutez une commande reset-all pour rétablir le système en utilisation normale.
Assurez-vous de mettre à niveau le système vers la dernière version d'OpenBoot PROM.