AngoLinux - Parte 2
Requisiti Hardware

Torna alla HomePage di AmiWorld

Vediamo in questo secondo appuntamento quali configurazioni hardware sono necessarie per far funzionare Linux su Amiga.
Infatti, le configurazioni con le quali ci ha abituato a lavorare AmigaOS, uno dei sistemi operativi in assoluto meno esoso in termini di richieste hardware, in molti casi non sono neanche sufficienti per poter usare Linux. Questo non deve far storcere il naso, i motivi esistono e sono "plausibili", vediamo quali sono, in un veloce confronto:

Altre lezioni:

1. Introduzione

AmigaOSLinux
Exec, il "kernel" di AmigaOS richiede circa 300Kb Il kernel di Linux richiede da 500 Kb a 2 Mb di ram e deve sempre risiedere su ram fisica e non virtuale
AmigaOS è un sistema monoutente, senza nessuna protezione della memoria dello spazio utente e di exec Linux è un sistema multiutente, che permette ai diversi processi di non interferire l'un l'altro; tutto questo si paga in termini di memoria e di potenza richiesta
Intuition è parco di memoria ed estremamente veloce ed efficiente X, il corrispettivo in Linux, è un divoratore di memoria ed eccessivamente lento, ha però delle caratteristiche orientate al networking senza pari, anche questo in termini di memoria e di cpu è molto costoso
AmigaOS non fa uso di memoria protetta e il malfunzionamento di un programma può mettere in crisi l'intero sistema e far perdere dati Linux non potrebbe esistere senza memoria protetta, ciò determina un lavoro extra per la cpu, di contro il blocco di una applicazione mette molto raramente in crisi il sistema che riesce sempre a ristabilire l'ordine (Nota: in due anni di utilizzo ho assistito solamente a due crash irrimediabili di Linux sulla mia Linux box)
AmigaOS, non implementando la memoria virtuale (il famigerato swap su hard disk punto dolente di windows), è molto veloce, questo perché‚ tutti i programmi girano sempre e solo in memoria fisica, senza l'appesantimento di swap su hard disk. Linux fa uso della memoria virtuale che rallenta quindi il sistema. C'è da dire però che, fortunatamente, la gestione della memoria virtuale sotto Linux è ottimamente implementata e quindi molto efficiente.

Ci si rende conto, da queste brevissime note, del perché‚ Linux sembri così "affamato" di risorse, in effetti richiede il minimo indispensabile per un SO moderno, che implementa egregiamente le filosofie di multitasking e multiutenza. Solo per fare un paragone: se esistesse una versione di windows per Amiga pensate che un 68040 e 16 mb di ram potrebbero bastare? Secondo me no.

Le richieste hardware, per poter far funzionare Linux su Amiga, sono le seguenti:


Le schede grafiche, come detto sopra, sono discretamente supportate da Linux e in particolar modo dalla distribuzione Debian 2.1. Va detto che non esistono driver specifici per le schede video, ma solo delle patch da inserire nel kernel durante la compilazione. Tanto per fare un esempio, la CyberVision 64 3D è supportata tramite il virgefb, cioè il driver, o meglio il frame buffer, che la gestisce. Ebbene, il driver va configurato da AmigaOS quando si lancia Linux, tramite il parametro -virgefb=800x600-8, se si vuole una sessione Linux ad una risoluzione di 800 per 600 a 8 bitplanes (256 colori). Il problema principale è che AmigaOS, al momento del lancio, deve essere assolutamente nelle stesse condizioni, perché il driver (virgefb) usa le strutture usate da AmigaOS per configurarsi. Il che significa che se si lancia Linux per una risoluzione e AmigaOS non è nella stessa modalità, non si vedrà altro che sporcizia sullo schermo mentre Linux parte, l'unico modo è andare alla cieca per fermare la macchina se si conosce il sistema, oppure resettarla immediatamente!
Un problema derivante dal limite sopra elencato è che, al contrario di ciò che accade per i sistemi Intel, non è possibile cambiare risoluzione "al volo" durante una sessione Linux. Il chipset AGA è supportato in modo nettamente migliore, tanto che si può cambiare risoluzione in maniera semplice e indolore, il punto veramente debole di questo chipset è la lentezza esasperante specialmente in ambiente grafico.

Un discorso a parte merita la ram su bus Zorro II, come ad esempio quella presente in alcuni controller scsi. Purtoppo questa ram non può essere usata da Linux come memoria fisica, poiché l'indirizzamento a 32 bit non può gestire la ram a 16 bit presente su questo bus. Se non si disabilita la ram presente su bus Zorro II, Linux si pianta al boot con un segmentation fault. Come rimedio parziale, assolutamente da non disprezzare, la ram a 16 bit può essere usata come partizione di swap, cioè parte dello swap che dovrebbe essere effettuato sul disco rigido può essere "dirottato" sulla ram. Questa modalità, denominata z2ram, deve essere presente nel kernel (la Debian 2.1 la offre): vedremo in seguito come utilizzarla al meglio. In effetti la differenza di velocità della swap su ram a 16 bit, rispetto a quello su hard disk, è notevole. Basti pensare che la ram ha tempi di accesso praticamente inesistenti, nell'ordine delle decine di nanosecondi, rispetto a quelli di un comune hard disk, nell'ordine dei millisecondi. Di questo utilizzo della ram ne giova soprattutto il server grafico, l'X server infatti diventa molto più veloce ed usabile.
La memoria di tipo CHIP, non essendo utilizzata come memoria di sistema, potrebbe essere usata nello stesso modo di quella su bus Zorro II. C'è però un inconveniente: il kernel usa la chip ram come buffer per "appoggiarvi" dei dati, usandola come swap si potrebbe sovrascrivere qualcosa di vitale per il sistema e quindi far bloccare la linux box. Morale della favola: la chip ram non può essere usata come swap aggiuntivo!
Nessun problema sussiste per il mouse, che viene installato direttamente durante la fase di configurazione lanciata da dselect.

Raffaele Pantaleoni


Back to AMiWoRLD Home Page


Copyright AMiWoRLD
Contact:
For this article: r.pantaleoni@email.telpress.it
General info: info@amiworld.it
[Made On Amiga]