[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home] [volume] [parte]


Capitolo 831.   Derivazioni di UNIX per hardware ridotto

Dalle versioni dello UNIX di ricerca sono derivate, a suo tempo, delle varianti per sistemi molto poveri di risorse. In particolare, Mini-UNIX e LSX. Si tratta di sistemi in grado di lavorare con una memoria centrale da 64 Kibyte.

831.1   Mini-UNIX

Mini-UNIX è un sistema derivato da UNIX versione 6, del quale utilizza lo stesso file system. È importante osservare che, anche se nel file system sono presenti le informazioni sui gruppi di utenti, questi non sono considerati.

Si possono trovare i file-immagine di Mini-UNIX, per dischi RK05, presso <http://www.tuhs.org/Archive/PDP-11/Distributions/usdl/Mini-Unix/>. Servono precisamente i file tape1.bin.gz, tape2.bin.gz e tape3.bin.gz.

I file vanno estratti e quindi va preparato uno script per SIMH. Nell'estrarre i file gli si attribuisce un nome che sintetizzi il loro contenuto:

GNU/Linux gunzip < tape1.bin.gz > mx_root_rk05.dsk[Invio]

GNU/Linux gunzip < tape2.bin.gz > mx_src_rk05.dsk[Invio]

GNU/Linux gunzip < tape3.bin.gz > mx_man_rk05.dsk[Invio]

Lo script per SIMH può avere il contenuto seguente, nel quale si prevede l'uso di tre dischi:

;
; PDP-11/20 (1970)
;
SET     CPU  11/20
SET     CPU  64K
SHOW    CPU
;
; RK05 cartridge disks.
;
SET     RK   ENABLE
;
ATTACH  RK0  mx_root_rk05.dsk
SHOW    RK0
;
ATTACH  RK1  mx_src_rk05.dsk
SHOW    RK1
;
ATTACH  RK2  mx_man_rk05.dsk
SHOW    RK2
;
; Should boot manually.
;

Se lo script è contenuto nel file mx.ini, si avvia la simulazione così:

GNU/Linux pdp11 mx.ini[Invio]

PDP-11 simulator V3.6-1
Disabling CR
Disabling XQ
CPU, 11/20, autoconfiguration on, 64KB
RK0, 1247KW, attached to mx_root_rk05.dsk, write enabled
RK1, 1247KW, attached to mx_src_rk05.dsk, write enabled
RK2, 1247KW, attached to mx_man_rk05.dsk, write enabled

Quindi, dall'invito di SIMH si dà il comando di avvio:

SIMH sim> BOOT RK0[Invio]

Se funziona appare l'invito del settore di avvio (@), dal quale va scritto il nome del file del kernel da eseguire: in questo caso si tratta di rkmx.

disk boot @rkmx[Invio]

RESTRICTED RIGHTS

USE, DUPLICATION OR DISCLOSURE IS SUBJECT TO
RESTRICTIONS STATED IN YOUR CONTRACT WITH
WESTERN ELECTRIC COMPANY, INC.

MX login: root[Invio]

MX 

Si annotano i file di dispositivo presenti:

MX chdir /dev[Invio]

MX ls -l[Invio]

total 0
crw-rw-rw-  1 root    1,  1 Jan 26  1976 kmem
crw-rw-rw-  1 root    1,  0 Jan 26  1976 mem
crw-rw-rw-  1 root    1,  2 Jan 26  1976 null
brw-rw-rw-  1 root    0,  0 Sep 17 17:30 rk0
brw-rw-rw-  1 root    0,  1 Sep 18 01:53 rk1
crw--w--w-  1 root    0,  0 Sep 18 01:57 tty8

Come si può vedere, sono disponibili i file di dispositivo per due soli dischi, mentre nel simulatore ne sono stati previsti tre. Per aggiungere il file di dispositivo del terzo disco si può procedere così:

MX /etc/mknod rk2 b 0 2[Invio]

È possibile innestare un solo disco alla volta. Per esempio, volendo aggiungere quello dei sorgenti corrispondente al secondo, si può procedere così:

MX /etc/mount /dev/rk1 /mnt[Invio]

Poi, per il distacco del disco si procede come di consueto, specificando il file di dispositivo:

MX /etc/umount /dev/rk1[Invio]

Non è prevista la procedura di arresto del sistema ed è disponibile solo sync, dopo il quale è possibile interrompere il funzionamento del simulatore con la combinazione [Ctrl e].

MX sync[Invio]

MX [Ctrl e]

Simulation stopped, PC: 016662 (BNE 16674)

SIMH sim> quit[Invio]

831.2   LSI UNIX o LSX

LSX è un sistema derivato da UNIX versione 6; per microprocessore LSI-11, ridotto al punto di poter funzionare con soli 48 Kibyte di memoria centrale.

Si possono trovare i file-immagine di LSX, per dischetti RX01, presso <http://www.tuhs.org/Archive/PDP-11/Distributions/usdl/LSX/>; precisamente serve il file <http://www.tuhs.org/Archive/PDP-11/Distributions/usdl/LSX/lsximgs.tar.bz2> che contiene tutto il necessario per questi esempi.

I file-immagine vanno estratti e quindi va preparato uno script per SIMH.

GNU/Linux tar xjvf lsximgs.tar.bz2[Invio]

Si ottengono diversi file, tra cui, in particolare, root.dsk e usr.dsk. Lo script per SIMH può avere il contenuto seguente, nel quale si prevede l'uso di due dischi:

;
; LSI-11 with only 48 Kibyte RAM memory.
;
SET     CPU  48K
SHOW    CPU
;
; RX01 floppy disk.
;
SET     RX   ENABLE
;
ATTACH  RX0  root.dsk
SHOW    RX0
;
ATTACH  RX1  usr.dsk
SHOW    RX1
;
; Should boot manually.
;

Se lo script è contenuto nel file lsx.ini, si avvia la simulazione così:

GNU/Linux pdp11 lsx.ini[Invio]

PDP-11 simulator V3.6-1
Disabling CR
CPU, 11/73, NOCIS, autoconfiguration on, 48KB
RX: buffering file in memory
RX0, 256KB, attached to root.dsk, write enabled
RX: buffering file in memory
RX1, 256KB, attached to usr.dsk, write enabled

Quindi, dall'invito di SIMH si dà il comando di avvio:

SIMH sim> BOOT RX0[Invio]

Se funziona appare l'invito del settore di avvio (rx boot:), dal quale va scritto il nome del file del kernel da eseguire: in questo caso si tratta di lsx.

disk boot rx boot:lsx[Invio]

Si ottiene subito l'invito della shell. Dal momento che il terminale si presenta configurato per le lettere maiuscole, conviene regolare subito questa cosa:

LSX STTY -LCASE[Invio]

Si annotano i file di dispositivo presenti:

LSX chdir /dev[Invio]

LSX ls -l[Invio]

total 0
brw-rw-rw- 1 0       0,  0 Jun  8 15:00 fd0
brw-rw-rw- 1 0       0,  1 Oct 29 03:10 fd1
crw-rw-rw- 1 0       0,  0 Jul  1  1977 tty8

Nel sistema che si ottiene mancano programmi importanti e anche l'innesto del secondo dischetto può essere impossibile.

LSX sync[Invio]

LSX [Ctrl e]

Simulation stopped, PC: 015650 (MOV R3,(SP))

SIMH sim> quit[Invio]

831.3   Riferimenti


Appunti di informatica libera 2008 --- Copyright © 2000-2008 Daniele Giacomini -- <appunti2 (ad) gmail·com>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome derivazioni_di_unix_per_hardware_ridotto.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home]

Valid ISO-HTML!

CSS validator!

Gjlg Metamotore e Web Directory