[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico] [volume] [parte]


Capitolo 360.   ELKS

Il progetto ELKS (Embeddable linux kernel subset) vuole creare un sistema operativo per i microprocessori ix86 di fascia bassa, a partire da un sottoinsieme di funzionalità di GNU/Linux.

È possibile avviare un mini sistema composto da un dischetto di avvio (boot) e un dischetto contenente un sistema minimo; con un po' di pazienza è anche possibile installarlo in una partizione del disco fisso.

È disponibile un compilatore da utilizzare con GNU/Linux, per produrre binari ELKS, cioè tutto il necessario per sviluppare questo nuovo sistema; è possibile eseguire i binari ELKS su GNU/Linux, attraverso una libreria di emulazione; è possibile avviare ELKS anche all'interno di DOSEMU.

360.1   Sperimentare ELKS

ELKS non è un sistema completo, quindi necessita di un pacchetto di sviluppo, composto essenzialmente da un compilatore, da utilizzare in una piattaforma GNU/Linux normale. Questo pacchetto è Dev86, distribuito normalmente in forma sorgente.

Una volta scaricato il pacchetto di sviluppo, questo può essere espanso a partire dalla directory /usr/src/, nell'elaboratore GNU/Linux, come mostrato dall'esempio seguente:

cd /usr/src[Invio]

tar xzvf Dev86src-0.13.4.tar.gz[Invio]

Si otterrà la directory /usr/src/linux-86 che si articola ulteriormente. Terminata l'installazione occorre compilare questi sorgenti e installarli.

cd /usr/src/linux-86[Invio]

make install[Invio]

A questo punto si può pensare ai sorgenti del kernel di ELKS e dei vari programmi di sistema e di servizio. Anche questi vanno installati a partire da /usr/src/.

cd /usr/src[Invio]

tar xzvf elks-0.0.67.tar.gz[Invio]

tar xzvf elkscmd.tar.gz[Invio]

Si ottengono le directory /usr/src/elks/ e /usr/src/elkscmd/. La prima contiene il kernel, la seconda i programmi di contorno. Per compilare il kernel basta eseguire i passi seguenti.

cd /usr/src/elks[Invio]

make config[Invio]

make dep ; make clean[Invio]

make[Invio]

Si ottiene il file /usr/src/elks/Image che può essere trasferito nel modo solito in un dischetto, attraverso cp o dd.

Per compilare gli altri programmi occorre passare le varie directory in cui si articola /usr/src/elkscmd/ e usare il comando make.

360.2   Immagini di dischetti già pronti

La realizzazione di un sistema ELKS è un po' difficoltosa in questa fase iniziale del suo progetto di realizzazione. La cosa migliore è partire dalle immagini già pronte, contenute normalmente in un pacchetto unico. Per trasferirle nei dischetti ci si comporta nel modo solito, esattamente come si fa per le immagini di dischetti di GNU/Linux.

Volendo, l'immagine boot (quella di avvio) può essere sostituita semplicemente con un kernel compilato personalmente, mentre l'immagine root può essere rielaborata aggiungendo o sostituendo altri programmi. L'immagine root contiene un file system Minix.

Per mettere in funzione il sistema ELKS è sufficiente avviare l'elaboratore con il dischetto ottenuto dall'immagine boot, sostituendolo con quello dell'immagine root, quando il kernel lo richiede.

360.3   Avvio di ELKS all'interno di DOSEMU

ELKS può essere avviato all'interno di DOSEMU, sia in una console che in una finestra di X. Per farlo basta avviare l'emulatore in modo che esegua il caricamento dal dischetto. Questo si ottiene di solito utilizzando l'opzione -A.

dos -A[Invio]

La figura 360.1 mostra la fase finale dell'avvio di ELKS. Si nota in particolare l'invito della shell (il prompt), che è molto scarno: per ora non si possono usare i caratteri jolly e tutte le altre funzioni cui si è abituati con le shell normali.

Figura 360.1. L'avvio di ELKS.

figure/a2-elks-boot

360.4   Riferimenti

Appunti di informatica libera 2003.01.01 --- Copyright © 2000-2003 Daniele Giacomini -- daniele @ swlibero.org

Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome elks.html

[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico]