Mi scusi lo SCSI (signorina!) di Andrea Vallinotto
Catena SCSI = Rete locale ?
È forse una nozione poco conosciuta dai principianti, ma su una singola catena
SCSI si possono connettere più host-adapter, cioè computer. Questo permette di
condividere le periferiche sulla stessa catena (come già menzionato, sono anche
previsti dei comandi per gestire meglio la ... convivenza).
Però sarebbe interessante poter gestire la connettività come una rete,
permettendo cioè che i due o più computer dialoghino direttamente tra di loro,
in modo da poter condividere anche le risorse non direttamente connesse con il
bus SCSI.
Una rete fatta in questo modo avrebbe il difetto di una scarsa lunghezza dei cavi,
ma la velocità di trasferimento sarebbe di tutto
rispetto.
Poter condividere le risorse non sul bus implica che gli host adapter in gioco
sappiano dialogare direttamente l'uno con l'altro. E` prevista questa modalità,
ed è chiamata target mode. Purtroppo, nella maggior parte dei
controller questa modalità non è supportata, o non è visibile dal programmatore.
Quindi una catena SCSI potrebbe teoricamente essere una rete locale, ma in
pratica questo non è realizzabile. Peccato...
Le Mode pages, quasi le tavole della legge.
Ogni periferica SCSI ha un certo numero di Mode Pages: sono memorie
sulle quali vengono scritte le opzioni di gestione del dispositivo ed altre
caratteristiche strettamente legate al quel specifico tipo di device. Ad esempio
per i CD-ROM ci sono pagine che segnalano quali tipi di dischi sono in grado di
leggere, il volume delle uscite audio e così via; gli hard-disk hanno pagine in
cui sono riportate le caratteristiche fisiche del supporto, il tempo di
spin-down, ecc...
Alcune di queste pagine sono alterabili da programmi utente ed in alcuni casi
si possono salvare su flash-memory, per poter rendere permanenti i cambiamenti.
Di norma però, un utente normale non dovrebbe toccarle; comunque per ogni pagina
è sempre presente una versione originale, predisposta in fabbrica: infatti
alterando questi valori in maniera errata, si posso provocare dei problemi
difficilmente risolvibili.
Lo standard prevede alcune pagine comuni a tutti i dispositivi ed altre
specifiche per la famiglia del dispositvo.
Anche per le mode pages si ripete un po' lo stesso schema evolutivo che già
caratterizza lo SCSI: alcuni produttori implementano delle nuove pagine
(come quelle relative alla lettura della temperatura, per gli hard-disk), che
poi possono diventare standard.
Altre rimangono legate ad un singolo produttore
(Vendor specific) e possono essere sfruttate solo tramite apposite
utility fornite dal costruttore: ad esempio la protezione dei dispositivi con
password di Iomega è implementata tramite mode-pages.
Piccola lezione di geometria, in particolare sui dischi.
Gli hard-disk sono forse la perferica SCSI più utilizzata nei sistemi
semi-professionali e professionali. Sono molto più veloci delle controparti
IDE-ATA e sopratutto caricano molto meno la CPU durante i trasferimenti (questo
accade in effetti con qualunque periferica SCSI).
Quando si pensa ad un hard-disk, si è abituati a pensare in termini di numero di
testine, tracce e settori. Gli stessi sistemi operativi ragionano spesso in
questa maniera; quando si installa una nuova unità, bisogna in qualche modo
leggere la 'geometria' del disco, per sapere i valori di questi tre parametri.
Con i dischi SCSI però, può capitare di avere dei valori palesemente errati: ad
esempio un disco da 2 giga potrebbe ritornare: cilindri 2844, superfici (ovvero
testine) 1, settori per traccia 1490. A questo punto verrebbe voglia di
chiedersi se il software non abbia bevuto, perché sicuramente un disco da 2 giga
ha più di una testina!! Invece il software non ha bevuto. Ma nel disco c'è
sicuramente più di una superficie. Che cosa è successo ?
Essenzialmente, la visione di un disco secondo lo standard SCSI è ben diversa da
quella canonica superficie/traccia/settore: il disco nel suo complesso viene
visto come un'unica memoria, suddivisa in tanti settori contigui. Il
software è "mascherato" dal vedere i dettagli fisici del disco e l'unica
informazione necessaria per accedere ad un settore (che è l'unità minima) è il
numero del settore stesso. Sarà poi compito della singola unità tradurre questo
numero nella terna abituale. Tutto questo non è fatto per complicare la vita ai
sistemi operativi, anzi: ci sono molti buoni motivi per non rivelare i dettagli
interni del disco. Uno dei tanti è che i dischi moderni hanno dei settori
di riserva (spare sectors), che vengono utilizzati nel caso in
cui uno dei settori utente si corrompa; per permettere una corretta e soprattutto
trasparente gestione di questi eventi, la geometria non deve essere nota, sennò
il sistema operativo potrebbe scriverci sopra.
Un altro buon motivo riguarda la
natura del disco stesso: se il numero di settori per traccia fosse costante, le
tracce più esterne avrebbero dei settori che occupano molto più posto di quelli
interni. Mascherare i valori di geometria permette al disco di dividere le superfici
in anelli concentrici (detti Zones) nei quali il numero di settori
varia a seconda dello spazio disponibile.
Continua...
|
|
|