Il sito si è trasferito a qui the site has been moved here
|
Clicca qui per scaricare il codice sorgente.
Per effettuare il test del nostro codice è possibile usare bochs oppure due macchine (dove su una si fa girare il nostro kernel e sull'altra linux) collegate tramite cavo seriale null modem.
Test tramite bochs -----------------------------
si avvii un terminale xterm e si digiti:
tty
dovrebbe apparire una cosa del tipo pts/n dove n è un numero intero positivo qualsiasi. Nel file .bochsrc si scriva:
com1: enabled=1, dev=/dev/pts/n
A questo punto sul terminale xterm si digiti:
sleep 1000000
Si avvii il kernel in bochs e tutto quello che verrà scritto su xterm sarà visibile sul terminale.
Nello step 5 i caratteri provenienti dalla seriale sono solo visibili sulla console 5 (quella dedicata alla comunicazione seriale). Per switchare alla console 5 si digiti CTRL-ALT-F5.
Purtroppo, per fare ciò in bochs è necessario eseguire un semplice workaround. Si posizioni il cursore del mouse nella finestra di bochs e si prema CTRL-ALT. Si trascini il cursore fuori dalla finestra, si rilascino i tasti e si riposizioni il cursore del mouse nella finestra di bochs digitando poi F5.
Test tramite due macchine collegate via cavo -------------------------------------------------------------------------
Supponiamo di avere due macchine A e B collegate via cavo null modem. A conterrà un sistema operativo linux con minicom installato sopra, mentre su B verrà fatto girare il nostro kernel che utilizza come parametri di connessione: 38400 bps 8N1.
Si avvii il nostro kernel su B e si faccia partire minicom su A. Si configuri minicom in modo tale che abbia gli stessi parametri di connessione del nostro kernel. A questo punto tutto quello che verrà digitato in minicom sarà visibile nel nostro kernel.
Si tenga presente che nello step 5 per visualizzare i dati provenienti dalla seriale bisogna switchare sulla console 5 (cioè la console dedicata alla comunicazione seriale).
Volendo avviare una shell bash su B, si esegua la seguente procedura (questa procedura è valida solo per lo step 5):
1. premere CTRL-ALT-F5 su B per switchare alla console 5; 2. su A loggarsi come superuser; 3. Su A si apra una sessione bash e si digiti il comando:
setsid agetty 38400 ttyS0 ansi
4. Su B verrà visualizzato il prompt di login. Si inserisca user id e password. 5. A questo punto è possibile iniziare a lavorare da remoto sul nostro sistema linux.
|