In particolari situazioni puo' essere utile attivare il kernel debugger. Il kernel debugger permette di controllare/modificare i valori presenti nelle strutture dati, definire breakpoint, ..
L'utilizzo del kernel debugger deve essere limitato ai soli casi necessari. E' possibile infatti creare gravi inconsistenze sul sistema. Inoltre nella maggior parte dei casi e' possibile intervenire sulla configurazione del sistema modificando opportunamente il file /etc/system.
Per i piu' coraggiosi nel seguito e' riportato un semplice esempio di settaggio di un parametro effettuando un boot da console con un break-point.
ok > boot kadb -rds
ok > [ENTER]
xyz + zxy + yzx
kadb [0] > startup b:
kadb [0] > c:
break on startup (...)
kadb [14] > npty/D
npty:
npty: 16
kadb [14] > npty/W 0t64
kadb [14] > npty/D
npty:
npty: 64
kadb [14] > c:
.... il sistema effettua il normale boot
PS. Per i piu' curiosi:
nell'esempio sopra riportato e' stato cambiato il valore
della variabile npty del kernel da 16 a 64.
Tale variabile indica il numero di Network Pseudo Terminal...
insomma il numero di sessioni telnet aperte in contemporanea!
La sintassi dei comandi di kadb e' analoga
ad adb (cfr. Comandi
Unix poco noti). Per controllare i settaggi presenti con
adb e' possibile utilizzare il comando seguente (lo so che sono due, dipende
dalla versione di Solaris): adb /kernel/unix /dev/kmem adb -k /dev/ksyms /dev/mem
Possono essere utili le informazioni
contenute nel documento Boot su sistemi SUN Solaris 2.X. Testo: Utilizzo del kernel debugger su sistemi
Solaris
Data: 17 Giugno 1997
Versione: 1.2.1
Autore: mail@meo.bogliolo.name