Console hurd: funzionamento
L'avvio della console hurd si articola in due fasi che impegnano, rispettivamente, i due elementi di cui si compone: il server ed il client. Nei paragrafi successivi è illustrato l'avvio di tali componenti con un breve riferimento alla loro configurazione eseguita generalmente durante l'installazione dei sistema.
Avvio del server
Come precedentemente accennato, il server della console hurd (programma /hurd/console) è un translator di tipo "passivo": è, quindi, avviato automaticamente quando ha luogo un tentativo di accesso al nodo a cui è collegato.
Nel dettaglio, all'avvio del sistema, il processo /hurd/init attiva il translator /hurd/ext2fs.static (che gestisce il file system di tipo ext2) il quale attiva, a sua volta, tutti i translators collegati a file o directory contenuti al proprio interno qualora un programma tenti di accedervi: i server della console mach e della console hurd sono tra questi.
Tale comportamento è verificabile consultando l'elenco dei processi attivi e le loro dipendenze reciproche impartendo il comando:
$ ps Axjf
il cui risultato è esemplificato nell'elenco sotto riportato (tavola dei processi):
USER PID PPID TTY TIME COMMAND root 0 1 ? 0:04.80 /hurd/proc root 1 1 - 0:00.04 /hurd/init /boot/gnumach.gz root=device:hd0s1 - 2 1 ? 0:00.54 /boot/gnumach.gz root=device:hd0s1 root 3 1 - 1:48.24 /hurd/ext2fs.static \ --multiboot-command-line=/boot/gn [...snip...] root 6 1 - 0:00.18 /bin/bash /libexec/runsystem \ /boot/gnumach.gz root=de root 7 3 - 0:00.31 /hurd/term /dev/console device console [...snip...] root 551 3 - 0:00.09 /hurd/term /dev/tty1 hurdio /dev/vcs/1/console root 552 3 - 0:00.20 /hurd/console --encoding=ISO8859-1 root 553 6 - 0:00.18 /libexec/runttys root 561 3 - 0:00.10 /hurd/term /dev/tty2 hurdio /dev/vcs/2/console root 562 3 - 0:00.09 /hurd/term /dev/tty3 hurdio /dev/vcs/3/console root 563 3 - 0:00.12 /hurd/term /dev/tty4 hurdio /dev/vcs/4/console root 564 3 - 0:00.04 /hurd/term /dev/tty5 hurdio /dev/vcs/5/console root 565 3 - 0:00.10 /hurd/term /dev/tty6 hurdio /dev/vcs/6/console
nel quale:
- la colonna PID rappresenta il numero identificativo del processo (che rispetta, nella sequenza crescente, l'ordine di avvio dei singoli processi);
- la colonna PPID corrisponde al PID del processo padre (parent process id);
- la colonna COMMAND rappresenta il programma corrispondente a quel determinato processo.