Newsgroup: it.comp.aiuto
Titolo: La storia infinita, ovvero IL MULTIBOOT

 stavi parlando.
Penso che a questo punto sia il caso di buttare giu` due note per i
posteri...
Il problema di fare il multiboot si ripropone periodicamente, da un po'
di tempo a questa parte e le soluzioni non sono poi molte.
I termini del problema sono:
Ho la necessita` di "andare su" con un sistema operativo piuttosto che
con un altro, come posso fare con una sola macchina a disposizione?
Chi, come me, ha cominciato a giocare con questi attrezzi quando il
termine "Informatica" non era ancora stato coniato, (1967) e ricorda il
passato, ha in mente una o due cosette:
il buon vecchio CPM all'accensione permetteva di sceglier l'unita` da
cui fare il boot, di solito uno dei due floppy, ma anche gli Hard Disk
(ben 5 Megabytes!)
Il PDP11 poi, con il S.O. RT11 (rt significave Real Time), dopo il
fatidico 
173000G 
da dare al prompt all'accensione rispondeva sulla console (che poteva
essere un VT100 ma anche una TTY): 
Boot?:
E li si indicava l'unita` di boot, che poteva essere uno dei due floppy
da 8") DX0 o DX1, o uno dei dischi DL (14", 5 Mbytes!)
Questo significa che gia` allora, e stiamo parlando di oltre 20 anni
orsono, il concetto di multiboot era ben chiaro nella mente dei
progettisti di "piccoli" sistemi.
N.B.: Per i Mainframes era usuale
Poi venne IBM ed il suo stramaledettissimo 8088 ed il BIOS e il
Victor-Dos (gia`, non penserete che sia stato Bill Gates ad inventare il
DOS? nossignori, la prima versione del DOS e` stata implementata dalla
Victor ed era una (pessima) rifrittura del CPM!).
Il pasticcio sta tutto li, nell'arroganza e nella presunzione del BIOS e
di chi ne ha progettato le prime versioni.
Nel progettarlo, cosi` come, con molta miopia, si scelse l'8088 invece
di altri processori di ben altro calibro, ne` piu` costosi ne` meno
presenti (tanto per dire, in casa Intel stessa, c'erano gia`l'8086 e
l'80186, non parliamo del 68.000 di casa Motorola), si face atto di
presunzione che l'utente disponesse di capacita` mentale insufficiente
ad imparare a fare il boot dall'unita` voluta e quindi si decise che la
sequenza di boot sarebbe stata: 
- Il primo floppy (solo quello anche se ce ne fossero stati due)
ed in sequenza
- Il primo Hard disk (solo quello anche se ce ne fossero stati due)
FINE
la presenza di altri floppy o dischi non era influente. 
Chiamare l'assistenza.
Gli errori di gioventu` si pagano nell'eta` adulta.
Oggi al tapino che chiede di poter andare su con un sistema invece che
con un'altro, cosa passa il convento?
Il BIOS ha solo due scelte, quelle descritte:
cerca solo il floppy (A:, e per fortuna e` possibile invertire la
sequenza di boot, per evitare i boot virus)
Oppure il Master Boot Record sulla traccia 0 (zero) del disco master
della prima catena IDE (EIDE), il famoso MBR, oggetto degli attacchi dei
boot virus.
Alle pressanti richieste, il Softwarista risponde:
"Ti faccio un programmino che permette di fare il boot da dove vuoi"
In realta` il "programmino" in questione altro non e` che un
mini-sistema operativo, capace di lanciare i S.O. "veri" dal (dai)
volume(i) di cui e` a conoscenza, e levarsi dai piedi.
E, con implacabile logica, non puo' che piazzarlo a partire dal MBR!.
(fanno tutti cosi` -LILO <di Linux>-  il multiboot di W'95, quello di
WNT repair disk, quello di OS2) 
I dolori cominciano quando, per la legge di Murphy, il "programmino" in
questione perde la trebisonda, ossia i puntatori ai volumi a lui noti. 
Essendo fuori standard, tutto il volume dell'hard disk e` praticamente
irrecuperabile con mezzi ordinari, e anche con quelli straordinari si
arriva a recuperare qualcosa, ma si tratta di farlo a costi elevati
(tempo e pazienza) al punto da dover fare un bilancio costi-benefici
prima di imbarcarcisi.
La proposta del nostro softwarista a questo punto si evolve:
il "programmino" lo si fa risiedere su floppy (ammesso di farcela per
volume di programma, quello del repair disk di WNT ce la fa).
Il risultato e` che almeno un sistema operativo, quello che puo`
risiedere con il proprio boot nel Master Boot Record, comunque va su, e
poi da li, qualcosa si fara`.
Questo metodo assicura quindi non solo la sopravvivenza ma, avendo le
prime tracce ed il MBR sani o comunque ricostruibili, (standard secondo
uno piuttosto che un'altro S.O.) esistono degli strumenti per tentare le
riparazioni ed i recuperi.
Se c'e` il floppy a fare il boot, la solfa e` quella prevista:
"Dimmi da dove faccio il boot" 
Gli si dice quale S.O. si vuol mandare su, e lui punta al volume
prescelto ed esegue il programmino che trova, che e` poi il vero boot
del S.O. in questione.
Fine del film.
Quest'ultima soluzione rappresenta il massimo possibile ottenibile con
questo metodo, e` svincolata dal numero di dischi (o CD-R) collegati al
sistema, permette di avere un numero teoricamente illimitato di S.O.
sulla stessa macchina, anche con File Systems non congruenti tra loro
(nella media, ogni S.O. ha il *proprio* File system e per la
compatibilita` verso gli altri al massimo offre qualche utility per
metterci il naso dentro.
Va osservato anche che cosi` e` possibile eseguire il boot da unita`
diverse dal disco zero (anche un disco diverso dal primo puo` cosi`
eseguire il boot.
 
Tutto quanto descritto fino qui e` quanto si puo` fare con un P.C. di
classe commerciale e fascia medio-bassa, senza intervenire se non con
mezzi SW.
Ma, per chi ha la capacita` di scucire qualche soldino in piu` (sistemi
di fascia piu` alta) o sa ancora tenere in mano un saldatore,
l'orizzonte e` molto piu` vasto.
Da quando sono state implementate le interfacce SCSI per i P.C., e` cosa
nota che il boot avviene (avveniva) dall'unita` ad indirizzo zero (o
comunque l'HDD con indirizzo piu` basso).
Come noto, l'indirizzo di una periferica SCSI (fino alla specifica
SCSI2) e` costituito da 3 bit, quindi 8 indirizzi che possono variare da
0 a 7.
7 e` l'indirizzo che per definizione viene assegnato all'interfaccia o
al controller (non sono esattamente sinonimi, un controller ha un
processore I/O e un pezzetto di BIOS a bordo), questi indirizzi sono di
solito ottenuti con tre ponticelli collocati sull'elettronica
dell'unita` e sono indicati come "SCSI ID".
Se al posto dei ponticelli si monta un connettore opportuno e si
"portano fuori" le terminazioni, per poi attestarle su un commutatore
rotante ad 8 posizioni (sono noti anche come "contraves" perche` fu la
prima azienda a produrli, oggi sono molte le case che li producono), e
si ripete l'operazione per ciascuna unita` collegata sulla catena SCSI,
si ottiene un sistema flessibile che permette, riassegnando gli
indirizzi a macchina rigorosamente spenta, di eseguire il boot dal MBR
dell'unita` a disco voluta. Se si dispone di spazio sufficente sul
frontale, le mostrine dei commutatori possono trovar posto su un
pannello frontale.
Ma c'e` di piu`. Adaptec, leader mondiale nel settore, per la propria
serie di controller basati sul processore 78XXX (esemplare tipico la
famiglia di controller 2940XX) a partire dalla release di firmware 1.21
offre la possibilita` di definire quale sia l'indirizzo dell'unita` di
boot.
In sostanza hanno invertito via Firmware i termini di quanto io ho
descritto (e l'ho anche realizzato per me) per via Hardware.
...*@#!!!!
Ho capito! non protestate, lo so che i dischi SCSI per il momento
costano di piu` e il controller e` una spesa!, ma io non lascio a piedi
neppure chi ha dischi IDE (EIDE). pero` occorre un po' piu` di ingegno e
di pazienza.
I sistemi correnti hanno ormai tutti due canali IDE(EIDE). ciascun
canale puo` connettere fino a due unita`, un master ed uno slave. Nella
norma, la velocita` di ciascun canale e` limitata dalla velocita` di
throughput della piu` lenta delle unita`. Per questo si preferisce usare
il canale 1 per l'HDD di boot ed il canale 2 per il CD-R.
Se avete avuto la pazienza (e ce n'e` voluta) di arrivare fin qui, non
farete fatica a capire che studiando bene i manualetti delle unita` a
disco che equipaggiano il vostro P.C., riuscirete a capire quali sono i
ponticelli che definiscono master e slave ciascun disco.
Utilizzando opportunamente dei commutatori (qui le indicazioni sono
vaghe perche` ciascun costruttore di dischi segue degli standard diversi
per i settaggi master-slave delle proprie unita`), potete "tirar fuori"
sul solito pannellino frontale tutti i comandi necessari a far diventare
disco di boot il disco che contiene uno piuttosto che un'altro S.O.
E non e` finita. 
Il mercato si sa e` fatto (anche, ed in minima parte) dai consumatori.
Mi comunicano dalla regia che la Phoenix, una delle piu` famose case
produttrici di BIOS, ha messo in commersio un BIOS che analogamente a
quanto fa l'interfaccia Adaptec permette di definire in fase di setup
all'accensione, l'unita` (in realta` il canale IDE) dalla quale fare il
boot. 
Attualmente non e` ancora molto diffusa e la notizia e` troppo fresca
perche` io sappia su quali motherboard e` gia` presente.
Ma la notizia e` segno che la necessita` del multiboot sta diventando
abbastanza vasta da suscitare l'attenzione dei costruttori (tipicamente
Taiwanesi).
Il seguito alla prossima puntata.
Ciao a tutti
 _______     _______
(-_-<_  \   /  _>-_-)
   -_-<_ \ / _>-_-
       GioVanni-  Caluri
Giovann...@CSELT.SFILAMI.IT
http://www.pegacity.it/abita/280/index.htm
SFILARE .SFILAMI che e` li per gli spammers
(Lupo Volante)
========================================================
WARNING: Payment is required for use of the above Email
address for unsolicited commercial Email or as part of a
mailing list for any purpose. 
As for US Federal and/or Italian Laws, by sending commercial
E-mail you agree to pay US$500.00 for storage fees.
========================================================
"By US Code Title 47, Sec.227(a)(2)(B), a computer/modem/printer meets
the definition of a telephone fax machine.  By Sec.227(b)(1)(C), it is
unlawful to send any unsolicited advertisement to such equipment.  By
Sec.227(b)(3)(C), a violation of the aforementioned Section is
punishable by action to recover actual monetary loss, or $500, whichever
is greater, for each violation."

Giovanni Caluri wrote:
Sono d'accordo con quello che dici, ma penso che si possano installare
più sistemi operativi sullo stesso Hard-Disk senza dover ricorrere al
saldatore.
Personalmente sono riuscito ad installare sullo stesso hdd, ovviamente
partizionato i seguenti sistemi:
1) Linux
2) Dos
3) Windows 95 osr2 (fat 32 bit)
4) Windows NT (NTFS)
Il tutto perfettamente funzionante.
-------------------------
Andrea S.
s.an...@usa.net
-------------------------

 Il tutto perfettamente funzionante.
Direi che sei nella condizione 1 dell'esempio 1:
Hai un disco partizionato e un S.O. mulibooter in MBR.
NON HO affermato che "Non funziona" 
ma che, finche` tutto va bene, va tutto bene.
Ma che i guai cominciano quando qualcosa si incricca. E ben per te che
non ti si sia incriccato alcunche`.
Le spiegazioni che ho dato sono per coloro che vogliono indossare
"mutande di latta"
ciao


perche` io sappia su quali motherboard e` gia` presente.
La mia è della California Graphics.
       -=Ludovico Cristofari=-
[
http://www.metro.it/mcnews/ludo.htm
]