4
di Andrea de Prisco Le memorie di massa Dopo aver visto in generale la struttura di un sistema di calcolo e un embrione di sistema operativo capace di far avanzare in perfetto sincronismo processo re, stampante e lettore di schede di un calcolatore, questo mese daremo una rapida scorsa ai principali dispositivi di memorizzazione non volatile. Parleremo delle varie memorie di massa, chiamate così proprio in virtù della gran mole di dati che possono mantenere permanentemente a un costo per bit assai contenuto. Le memorie secondarie Assunto che la normale memoria di un calcolatore atta a mantenere i pro- grammi in corso di esecuzione sia la memoria principale, d'ora innanzi in- dicheremo con memoria secondaria tutti i dispositivi di memorizzazione non volatile. Questi sono detti cosÌ proprio in virtù del fatto che una in- formazione, una volta registrata resta lì finché non si decide di cancellarla. Tutti i dispositivi di memoria secon- daria fanno uso, per «ricordare» quanto inserito, di una ben nota pro- prietà fisica della materia detta ma- gnetizzazione. Grazie a una testina di lettura/scrittura e ad un opportuno supporto ricoperto di materiale ma- gnetico, il dispositivo, magnetizzando o meno le areole del supporto, scrive (per poi rileggere quando gli sarà chie- sto) le informazioni che deve conser- vare. Concettualmente i vari dispositivi Figura 1 84 funzionano tutti nel modo appena de- scritto: le differenze corrono solo tra tipo di testina e tipo di supporto usa- to. Un altro aspetto comune a tutte le memorie secondarie è il costo per bit memorizzabile, molto contenuto se pa- ragonato a quello di una memoria principale. Infatti, a causa dei mecca- nismi necessari al funzionamento del- la memoria secondaria (meccanismi per spostare la testina e/o il supporto magnetico), la velocità di accesso alle varie informazioni memorizzate è as- sai bassa, e se non fosse per il loro co- sto contenuto nessuno si sognerebbe mai di realizzarle. Abbiamo visto in- fatti che esistono anche memorie prin- cipali non volatili (a nucleo e a bolle magnetiche) ma evidentemente non conviene troppo fare (né s'è mai visto) un calcolatore senza nastri, dischi o tamburi. Proprio di questi tre tipi di unità ci accingiamo ora a commentare il funzionamento. Unità a nastro magnetico Abbiamo appena detto che le me- morie secondarie, a fronte di un costo per bit molto più abbordabile, con- trappongono una velocità di accesso più bassa. Anche nell'ambito dei vari dispositivi è possibile stabilire una classificazione in base alla lentezza de- gli stessi o alloro costo. In altre parole anche per le varie memorie secondarie p.iù un dispositivo è veloce più costa e vIceversa. A seconda dell'uso che se ne dovrà fare si deciderà di comprare un tipo di dispositivo o un altro. Le unità a nastro magnetico sono le più economiche tra le memorie, ma anche le più lente, proprio in virtù del tipo di supporto usato. Strutturalmente assomigliano molto ai normali registratori a bobina per musica, in voga alcuni anni fa. Trovia- mo due belle pizze di nastro, con al centro la testina di lettura e scrittura, accompagnata ovviamente da un po' di rotelle, pulegge e rimandi per un corretto funzionamento. La lentezza di tali dispositivi, non sta tanto nella vera e propria velocità di scrittura sul na- stro, quanto nel fatto che quest'ultimo può anche essere lungo chilometri e l'informazione che cerchiamo è posta quanche centinaio di metri più in là. Come per cercare una data canzone, non ci resta che far avanzare o riavvol- gere il pezzo di nastro che in quel mo- mento non ci interessa per posizionar- ci nel punto voluto. È ovvio che con tale sistema ricercare un'informazione diventa un'operazione costosissima in quanto a perdita di tempo. Proprio in virtù di questo, le unità a nastro ven- gono usate solo per accessi sequenziali ai dati: le varie informazioni sono re- gistrate in un certo ordine e lette nello stesso ordine. Diamo ora uno sguardo alla figura MCmicrocomputer n. 48 - gennaio 1986

Le memorie di massa - di Andrea de Prisco Le memorie di massa Dopo aver visto in generale la struttura di un sistema di calcolo e un embrione di sistema operativo capace difar avanzare

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

di Andrea de Prisco

Le memorie di massaDopo aver visto in generale la struttura di un sistema di calcolo e un embrione di sistema operativo

capace di far avanzare in perfetto sincronismo processo re, stampante e lettore di schede di un calcolatore,questo mese daremo una rapida scorsa ai principali dispositivi di memorizzazione non volatile.Parleremo delle varie memorie di massa, chiamate così proprio in virtù della gran mole di dati

che possono mantenere permanentemente a un costo per bit assai contenuto.

Le memorie secondarie

Assunto che la normale memoria diun calcolatore atta a mantenere i pro-grammi in corso di esecuzione sia lamemoria principale, d'ora innanzi in-dicheremo con memoria secondariatutti i dispositivi di memorizzazionenon volatile. Questi sono detti cosÌproprio in virtù del fatto che una in-formazione, una volta registrata restalì finché non si decide di cancellarla.

Tutti i dispositivi di memoria secon-daria fanno uso, per «ricordare»quanto inserito, di una ben nota pro-prietà fisica della materia detta ma-gnetizzazione. Grazie a una testina dilettura/scrittura e ad un opportunosupporto ricoperto di materiale ma-gnetico, il dispositivo, magnetizzandoo meno le areole del supporto, scrive(per poi rileggere quando gli sarà chie-sto) le informazioni che deve conser-vare.

Concettualmente i vari dispositivi

Figura 1

84

funzionano tutti nel modo appena de-scritto: le differenze corrono solo tratipo di testina e tipo di supporto usa-to.

Un altro aspetto comune a tutte lememorie secondarie è il costo per bitmemorizzabile, molto contenuto se pa-ragonato a quello di una memoriaprincipale. Infatti, a causa dei mecca-nismi necessari al funzionamento del-la memoria secondaria (meccanismiper spostare la testina e/o il supportomagnetico), la velocità di accesso allevarie informazioni memorizzate è as-sai bassa, e se non fosse per il loro co-sto contenuto nessuno si sognerebbemai di realizzarle. Abbiamo visto in-fatti che esistono anche memorie prin-cipali non volatili (a nucleo e a bollemagnetiche) ma evidentemente nonconviene troppo fare (né s'è mai visto)un calcolatore senza nastri, dischi otamburi. Proprio di questi tre tipi diunità ci accingiamo ora a commentareil funzionamento.

Unità a nastro magneticoAbbiamo appena detto che le me-

morie secondarie, a fronte di un costoper bit molto più abbordabile, con-trappongono una velocità di accessopiù bassa. Anche nell'ambito dei varidispositivi è possibile stabilire unaclassificazione in base alla lentezza de-gli stessi o alloro costo. In altre paroleanche per le varie memorie secondariep.iù un dispositivo è veloce più costa evIceversa.

A seconda dell'uso che se ne dovràfare si deciderà di comprare un tipo didispositivo o un altro.

Le unità a nastro magnetico sono lepiù economiche tra le memorie, maanche le più lente, proprio in virtù deltipo di supporto usato.

Strutturalmente assomigliano moltoai normali registratori a bobina permusica, in voga alcuni anni fa. Trovia-mo due belle pizze di nastro, con alcentro la testina di lettura e scrittura,accompagnata ovviamente da un po'di rotelle, pulegge e rimandi per uncorretto funzionamento. La lentezza ditali dispositivi, non sta tanto nella verae propria velocità di scrittura sul na-stro, quanto nel fatto che quest'ultimopuò anche essere lungo chilometri el'informazione che cerchiamo è postaquanche centinaio di metri più in là.Come per cercare una data canzone,non ci resta che far avanzare o riavvol-gere il pezzo di nastro che in quel mo-mento non ci interessa per posizionar-ci nel punto voluto. È ovvio che contale sistema ricercare un'informazionediventa un'operazione costosissima inquanto a perdita di tempo. Proprio invirtù di questo, le unità a nastro ven-gono usate solo per accessi sequenzialiai dati: le varie informazioni sono re-gistrate in un certo ordine e lette nellostesso ordine.

Diamo ora uno sguardo alla figura

MCmicrocomputer n. 48 - gennaio 1986

Appunri di informariea

1fo61L1.• •.

Velocizziamo i dischiAbbiamo già detto che le unità a di-

schi, sono molto più veloci, a causadella forma del supporto magnetico,delle unità a nastro. Ciò vuoI dire chese noi prendiamo il più veloce disposi-tivo a nastri, esisterà certamente un di-spositivo a dischi che lo batte in quan-to a tempi di accesso. Ripetiamo: è in-sito nel tipo di supporto.

b

importante operazione da compiereuna sola volta, prima di iniziqre adusare un disco nuovo, cioè mai usato(e naturalmente con niente scritto so-pra): la formattazione del disco. Infat-ti, un disco appena acquistato è sem-plicemente un supporto circolare consopra il materiale magnetico. Se noidessimo direttamente un comando deltipo scrivi sul blocco terza tracciaquinto settore, l'unità non trovando négap né l'intestazione dei blocchi, nonsaprebbe dove cercare la posizione vo-luta.

L'operazione di cui sopra, serve ap-punto per creare tutti i blocchi sul di-sco (ovviamente vuoti) scrivendo i variindirizzi nelle relative posizioni. Aquesto punto si potrebbe obiettare:perché non vendono i dischi già for-mattati?

La risposta è semplice: sebbene i di-schi siano uguali per più dispositivi dimemorizzazione (a disco) reperibili sulmercato, non sempre il tipo di format-tazione è la stessa. Può benissimo ca-pitare che un'unità di una certa marcasuddivida un disco in 100 tracce e SOsettori, un'altra ditta preferisca un tipodi formattazione a 80 tracce e 40 setto-ri un po' più grandi.

In questo modo una fabbrica di solidischi magnetici può produrre un par-ticolare tipo di disco, non preoccupan-dosi su quale dispositivo girerà, masemplicemente basterà che rispetti lecaratteristiche puramente dimensiona-li.

c

"o"

Figura 3

più veloci dei nastri, risiede nel fattoche per passare da un blocco a un al-tro non bisogna svolgere o riavvolgerecentinaia di metri di supporto, masemplicemente spostare la testina daun punto a un altro. Tale operazionepuò anche essere abbastanza rapida,roba di decimi di secondo. Dimentica-vamo un particolare: il disco gira con-tinuamente, sia che si legga, che siscriva o che si stia in attesa di ordini.

In figura 3A è visibile un primo tipodi testina, detta mobile proprio in vir-tù del fatto che può spostarsi radial-mente sulla superficie del disco men-tre questo gira, per raggiungere un de-terminato blocco. Tutti i blocchi sonocontrassegnati dal loro indirizzo: inparole povere, in testa ad ogni bloccoc'è scritta la sua posizione, ad esempiotraccia 4 settore 2. In questo modo perla ricerca di un determinato blocco,l'unità dapprima sposta la testina sullatraccia opportuna (ricordatevi che ildisco gira sempre) per poi aspettareche il blocco cercato gli passi sotto.

Prima di passare alle varie strategieadoperate per rendere i dischi magne-tici ancora più veloci, descriviamo una

a

e che i settori si contino in senso ora-rio a partire dal gappone, il blocco infigura contrassegnato dall'asterisco (lìa dire il vero sembra più un ragnetto)è posizionato sulla quarta tracccia, se-condo settore.

Il perché i dischi siano dispositivi

Figura 2

Unità a dischi magneticiUna possibile soluzione all'inconve-

niente della bassa velocità di accessodei nastri magnetici consiste nel di-sporre il materiale magnetico su unsupporto di diversa forma, usando diconseguenza un diverso tipo di testina.Nascono così i dischi magnetici per lamemorizzazione veloce di programmie/o dati di un calcolatore. Come avre-te notato, ancora una volta l'informati-ca si rifà ai supporti musicali: ora ab-biamo anche dischi (peraltro delle di-mensioni di un LP). Ma non finiscequi: vedremo nel prossimo paragrafo itamburi magnetici e manco a farlo ap-posta, diversi decenni fa esistevanogrammofoni che leggevano la musicada appositi cilindri con su inciso unnormalissimo solco. E ancora: il mas-simo della musica incisa oggi è rappre-sentato dai famosi Compact Disc a let-tura laser: beh, lo sapete che dischi delgenere sono usati anche dai calcolato-ri per contenere dati, per di più da unbel po' di anni?

Comunque, disquisizioni informati-co-musicofìle a parte, in figura 2 è mo-strato schematicamente un disco percalcolatore.

Possiamo subito notare alcune cose:il disco è in alcune tracce, ognuna del-la quali a sua volta è divisa in più set-tori. Le tracce sono tra loro concentri-che, mentre i settori sono praticamen-te gli spicchi di cerchio visibili in figu-ra. Come per i nastri l'informazione èsuddivisa in vari blocchi separati traloro da un gap (spazio di disco nonutilizzato logicamente). La linea radia-le più marcata (un gappone) è utilizza-ta per segnare un inizio e una fine diogni traccia. Così, posto che le traccesiano numerate partendo dall'esterno

l : è mostrato il modo in cui sono me-morizzati i vari byte. Il nastro è suddi-viso longitudinalmente in 9 tracce e ibyte sono scritti (dalla relativa testinaa 9 canali) trasversalmente, l'uno dopol'altro. Dato che, se il nastro è fermo,prima di iniziare a registrare occorreche questo raggiunga una certa veloci-tà, i byte non vengono scritti uno allavolta (facendo fermare ogni volta ilnastro), ma raggruppati in blocchi diregistrazione prima del trasferimento(tutto d'un fiato) di un intero blocco.Lo spazio di nastro inutilizzato tra unblocco e il successivo, detto gap, è do-vuto proprio al fatto che il nastro si èfermato per poi ripartire per una nuo-va registrazione. È bene non fare bloc-chi troppo piccoli, proprio per lo spre-co di supporto ad ogni fermata. Lastessa dimensione del blocco coincide,viceversa, con la minima quantità diinformazione trasferita in memoriacentrale per ogni operazione di lettu-ra.

MCmicrocomputer n. 48 - gennaio 1986 85

Appunti di injormalica

Figura 4

ConclusioniVorremmo a questo punto tirare un

po' le somme su quanto detto nei pri-mi tre articoli di Appunti di Informati-ca. Dovrebbe essere chiaro che la ten-denza principale non è tanto quella direalizzare calcolatori quanto più po-tenti possibile né in un certo senso rea-lizzare calcolatori di per sé ultraveloci.

Nel primo caso infatti si dimostrache con un semplice nastro e con unagente di calcolo per niente complica-to (la famosa Macchina di Turing) siriesce a risolvere qualsiasi problemarisolubile (non è un rigiro di parole, èuna cosa seria) ossia non serve ricorre-re ad un IBM della serie 370.

Nel secondo caso è più utile sfrutta-re al massimo le attuali tecnologie perrealizzare «normali» calcolatori e cer-care di farli funzionare nel miglioredei modi (leggi: senza fargli mai per-dere tempo). Un esempio l'abbiamovisto lo scorso mese col sistema opera-tivo Batch che ottimizza l'uso da partedell'unità centrale di una stampante edi un lettore schede. Questo mese ab-biamo visto cosa «si sono inventati»per non aspettare qualche decimo disecondo in più l'informazione in arri-vo da una periferica quale l'unità a na-stri magnetici. ei prossimi numerivedremo dell'altro, il tutto per il fineprimo: «mai far a~[Jçttare un compu-ter». Infatti una è la peculiarità di talimacchine: la loro incredibile velocità,se paragonata a quella umana, percompiere operazioni abbastanza ripe-titive. Se perdiamo tempo il computer,da «cretino velocissimo» diventa «cre-tino e basta» e allora, credetemi, è me-glio buttarlo via. Me

che le tracce di un tamburo sono tuttedella stessa lunghezza, con conseguen-te spazio costante per la memorizza-zione dei blocchi. Nei dischi magneti-ci, infatti, se si vuoi mantenere costan-te il numero e la capacità dei blocchinelle varie tracce bisogna che la densi-tà di scrittura sia maggiore nei blocchiinterni che in quelli periferici. In altreparole accade quasi sempre che neiblocchi interni l'informazione sia peri-colosamente troppo compressa, o chein quelli esterni vi sia in un certo sensospazio sprecato, oppure che le tracceesterne siano effettivamente più ca-pienti di quelle esterne.

Per quel che riguarda il funziona-mento dei tamburi, non siamo moltolontani dai dischi con testi ne fisse: in-fatti per cercare un dato blocco di unatraccia non occorre altro che aspettareche questo passi sotto la testina relati-va alla traccia stessa. Anche qui, permigliorare le prestazioni è sufficientemunire l'unità di più serie di testi ne,per ridurre il tempo di attesa del bloc-co.

radiai mente ed equidistanti tra loro.In questo modo, oltre a non esserciperdita di tempo per cercare la traccia,il tempo per trovare il blocco risulterànotevolmente ridotto in quanto il pri-mo braccio che lo trova lo può trasfe-rire. Per fare un esempio assai sempli-ce, se 9isponiamo di un solo braccio almassimo dovremo aspettare un girodel disco; se ne mettiamo due, uno difronte all'altro, dovremo aspettarne alpiù mezzo; se mettiamo tre bracci po-sti a 120 gradi l'uno dall'altro aspette-remo al più un terzo di giro e così via.

Per applicazioni in cui necessiti unagran quantità di spazio memorizzabilee le operazioni di lettura e scritturacoinvolgano generalmente non solotutti i blocchi di una traccia, ma maga-ri quelli di due o tre tracce, una possi-bile soluzione è mostrata in figura 3C.Vengono usati delle vere e proprie piledi dischi, incisi su entrambe le facce(ad eccezione delle due esterne). Uninsieme di braccetti mobili, uno perogni faccia, provvede alle operazionidi lettura e scrittura. Grazie a questidispositivi è possibile leggere e scrive-re su più tracce senza spostare le testi-ne: basta utilizzare le stesse tracce didischi diversi.

'TlSl'INA Il

Figura 5

l'lAllIA i

"'''''14 111lAlL~~'T""fA 4

!

Tamburi magneticiL'ultimo dispositivo che descrivere-

mo in questa sede, è l'unità a tamburomostrata schematicamente in figura 5.Come è facile notare, si tratta di unsemplice cilindro sulla cui superficielaterale è disposto il materiale magne-tico. Come i dischi, anche il tamburogira continuamente ed è suddiviso intracce, sulle quali vengono incisi i variblocchi separati come sempre da ungap. Infine una serie di testine fisse(una per ogni traccia) ha l'effettivocompito di eseguire le operazioni dilettura e scrittura dei blocchi.

Dal confronto con un disco magne-tico (fig. 2) si evince in primo luogo

A

B

Prendiamo ora la più veloce unità adischi, del tipo descritto nel paragrafoprecedente e mostrato in figura 3A.Per migliorare le prestazioni, possia-mo procedere in diversi modi: il pri-mo, mostrato in figura 38, consiste neldotare l'unità di più testine (una perogni traccia) fisse. Sono fisse proprioper il fatto che non è pìu necessariospostarsi per posizionarsi su di unatraccia, dato che si ha sempre la trac-cia in linea semplicemente azionandola corrispondente testina. Le unità sif-fatte sono più veloci proprio perchéper trovare un dato blocco occorre so-lo aspettare che questo passi sotto.

Chi ha dimestichezza con i graficidia uno sguardo alla figura 4. E mo-strato l'andamento dei byte trasferitiin funzione del tempo. Come si vede,c'è sempre un certo tempo che trascor-re prima che i byte vengano trasferitiall'unità centrale che li ha richiesti.Tale tempo corrisponde alla ricercadel blocco interessato. Nel primo caso(fig. 4A) stiamo usando un'unità a di-schi con testina mobile; nel secondocaso (fig. 48) a testina fissa. Si notacome nel secondo diagramma il tem-po, per così dire, perso sia inferiore.

Un ulteriore miglioramento delleprestazioni (che però comincia a co-stare troppo) consiste nel mettere piùbracci di lettura, a più testine, disposti

86 MCmicrocomputer n. 48 - gennaio 1986

ECCEZIONALE NOVITÀIN TUTTE LE EDICOLE

TUTTO QUEL CHE SERVEPER ENTRARE NEL FAVOLOSO MONDO

DELLA COMPUTER-COMUNICAZIONE VIA TELEFONOHai un computer e un telefono? Questa rivista è fatta apposta per te! Tutto l'hardware e ilsoftware (su cassetta!) per comunicare via computer e telefono in Italia e in tutto il mondo.Potrai metterti in contatto con altri computer, trasmettere e ricevere posta, catturare programmi,trovare i mille amici (gli hackers!) del Modem Club lnternational con cui scambiare programmi einformazioni... più una banca dati diretta a disposizione 24 ore ... più altro ancora ...