Upload
borellam7606
View
30
Download
3
Embed Size (px)
Citation preview
1
DEFINIZIONE DI INFORMATICA
Insieme delle discipline che studiano gli strumenti per l’elaborazione automatica dell’informazione.
La parola informatica deriva da due termini INFORmazione autoMATICA.
Nel trattamento automatico dell’informazione il computer svolge un ruolo così rilevante che non
avrebbe senso parlare di informatica se non esistessero gli elaboratori .
L’INFORMATICA è la disciplina che si occupa delle problematiche di gestione automatica
dell’informazione.
Per informazione intendiamo tutti i dati (numerici e non) del mondo che ci circonda; per gestione
intendiamo la capacità di memorizzare, trasmettere o elaborare l’informazione.
IL BIT
L’informazione elementare è gestita dal calcolatore mediante lo stato di un dispositivo fisico che
può assumere solo due posizioni (acceso/spento).
Questa informazione è detta binaria (bit) e noi la rappresentiamo con i due simboli 0 e 1
assegnandoli ai 2 stati del dispositivo.
Qualunque informazione rappresentata all’interno del calcolatore è quindi rappresentata da una
sequenza di bit de tipo 10010110100101001010… più o meno lunga a seconda del tipo di
informazione. L’abbinamento tra informazione e sequenza binaria è detta codifica.
Ad esempio la lettera ‘A’ è rappresentata da 01000001.
Il codice è una particolare codifica di un insieme di informazioni (caratteri alfabeto, giorni della
settimana, numeri, ecc.) con sequenze binarie.
LE INFORMAZIONI NEL MONDO DEI COMPUTER: BIT E BYTE
Il computer è una macchina programmabile che opera mediante la memorizzazione, l’elaborazione
e la trasmissione di informazioni sotto forma di impulsi elettrici: i bit. Il computer codifica tutte le
informazioni utilizzando una conversione binaria, cioè due simboli che si riferiscono ai due stati
elettrici fondamentali: l’assenza e la presenza di corrente (si ricordino i transistor), ovvero 0 e 1.
L’unità elementare di informazione può quindi avere solo due valori (o e 1) e viene chiamata bit
(BInary digiT).
2
Per rappresentare lettere e numeri è necessario utilizzare gruppi di bit. Un raggruppamento di 8 bit
viene chiamato byte ed è in grado di rappresentare 256 valori: questo numero si ottiene provando
tutte le combinazioni possibili di 0 e 1 nelle otto posizioni disponibili del byte, per esempio
00000001, 00001111, 11111111, ecc..
Il numero 256 che corrisponde a 28, permette di considerare l’insieme dei caratteri alfabetici, dei
segni di punteggiatura, dei caratteri accentati o speciali di controllo (come quello per l’avanzamento
delle pagine da stampare).
In concreto un singolo byte può rappresentare una lettera dell’alfabeto, un segno di punteggiatura,
un numero o un carattere speciale (per esempio @).
Dato che gran parte delle informazioni elaborate da un PC sono numeri o lettere, il byte è stato
usato come unità di misura della quantità di dati memorizzati su computer e della capacità di
immagazzinamento dei dispositivi di memorizzazione. Come avviene per le unità di misura, anche
per i byte si sono definiti dei multipli:
• Un kilobyte (KB) = 1024 byte
• Un megabyte (MB) = 1024 KB (circa un milione di byte)
• Un gigabyte (GB) = 1024 MB (circa un miliardo di byte)
• Un terabyte (TB) = 1024 GB (mille miliardi di byte)
Da numerazione binaria a decimale:
1010 = 1*23 + 0*22 +1*21+0*20
= 8 + 0 + 2 + 0 = 10
11111111 = 1*27 + 1*26 + 1*25 + 1*24 + 1*23 + 1*22 + 1*21+ 1+20 = 255
Il byte ci permette una scelta tra 256 diverse alternative; può quindi rappresentare un carattere
scelto tra un alfabeto di 256 simboli.
Un carattere di testo pesa normalmente un byte.
Da numerazione decimale a binaria:
Prendiamo come esempio il n° 54:
3
54 : 2 = 27 resto 0
27 : 2 = 13 resto 1
13 : 2 = 6 resto 1
6 : 2 = 3 resto 0
3 : 2 = 1 resto 1
1 : 2 = 0 resto 1
Il numero binario corrispondente è perciò: 110110
Se per verifica lo ritrasformiamo in numero decimale con la relazione precedente abbiamo:
110110 = 1 * 25 + 1 * 24 + 0 * 23 + 1 * 22 + 1 * 21 + 0 * 20 = 54
RAPPRESENTAZIONE DIGITALE DELL'INFORMAZIONE
La rappresentazione attraverso '0' e '1' (attraverso cioè un sistema di codifica binaria, che utilizzi
due sole cifre) ha un importante vantaggio: i dati binari sono facilmente rappresentabili (e
manipolabili) all'interno di un computer.
Questa celletta corrisponde a un bit di informazione.
Un bit, infatti, non è altro che la quantità di informazione fornita dalla scelta fra due alternative
diverse, considerate come egualmente probabili.
In effetti, l'uso in campo informatico del termine 'digitale' non si riferisce di norma solo al fatto che
l'informazione è rappresentata in forma numerica, ma al fatto che è rappresentata in forma numerica
sulla base di una codifica binaria, e dunque attraverso bit (il termine bit corrisponde alla
contrazione dell'inglese binary digit, numero binario).
Rappresentare in forma binaria una qualsiasi informazione numerica è compito relativamente facile.
Rappresentazione binaria dei numeri decimali da 0 a 16
Numero decimale Valore delle posizioni binarie
16 8 4 2 1
4
0 0 0 0 0 0
1 0 0 0 0 1
2 0 0 0 1 0
3 0 0 0 1 1
4 0 0 1 0 0
5 0 0 1 0 1
6 0 0 1 1 0
7 0 0 1 1 1
8 0 1 0 0 0
9 0 1 0 0 1
10 0 1 0 1 0
11 0 1 0 1 1
12 0 1 1 0 0
13 0 1 1 0 1
14 0 1 1 1 0
15 0 1 1 1 1
16 1 0 0 0 0
Nel caso dei numeri, infatti, non dobbiamo fare altro che passare da una notazione all'altra.
Codificare invece in formato binario una informazione di tipo testuale risulta più complesso.
Tuttavia un testo non è altro che una successione di caratteri, e i caratteri di base – quelli compresi
nell'alfabeto della lingua usata - sono in un numero che varia col variare delle lingue, ma che è
comunque - almeno per le lingue basate sull'alfabeto latino - finito e piuttosto ristretto. E’
sufficiente allora stabilire una tabella di corrispondenza fra caratteri da un lato e numeri binari
dall'altro. Dovremo ricordarci di includere fra i caratteri da codificare tutti quelli che vogliamo
effettivamente differenziare in un testo scritto: se vogliamo poter distinguere fra lettere maiuscole e
minuscole dovremo dunque inserirvi l'intero alfabeto sia maiuscolo che minuscolo, se vogliamo
poter inserire nei nostri testi anche dei numeri decimali dovremo inserire le dieci cifre
(0,1,2,3,4,5,6,7,8,9), se vogliamo poter utilizzare segni di interpunzione (punto, virgola, punto e
virgola....) dovremo inserire i caratteri corrispondenti, e così via... senza dimenticare naturalmente
di includere lo spazio per separare una parola dall'altra!
5
Una tabella di questo tipo si chiama tabella di codifica dei caratteri. Per molto tempo, la codifica di
riferimento è stata la cosiddetta codifica ASCII (American Standard Code for Information
Interchange).
Il codice ASCII
La codifica ASCII originaria (ASCII stretto) permetteva di distinguere 128 caratteri diversi; la
tabella di caratteri attualmente più usata, denominata ISO Latin 1, distingue 256 caratteri, i primi
128 dei quali sono 'ereditati' dall'ASCII stretto. L'indicazione ISO indica l'approvazione da parte
dell'International Standardization e 'Latin 1' indica che si tratta della tabella di riferimento per gli
alfabeti di tipo latino. È questa la codifica di caratteri utilizzata dalla maggior parte dei sistemi
operativi (Windows, Macintosh...). Come ogni tabella di codifica dei caratteri, anche la tabella ISO
33 ! 49 1 65 A 81 Q 97 a 113 q
34 " 50 2 66 B 82 R 98 b 114 r
35 # 51 3 67 C 83 S 99 c 115 s
36 $ 52 4 68 D 84 T 100 d 116 t
37 % 53 5 69 E 85 U 101 e 117 u
38 & 54 6 70 F 86 V 102 f 118 v
39 ' 55 7 71 G 87 W 103 g 119 w
40 ( 56 8 72 H 88 X 104 h 120 x
41 ) 57 9 73 I 89 Y 105 i 121 y
42 * 58 : 74 J 90 Z 106 j 122 z
43 + 59 ; 75 K 91 [ 107 k 123 {
44 , 60 < 76 L 92 \ 108 l 124 |
45 - 61 = 77 M 93 ] 109 m 125 }
46 . 62 > 78 N 94 ^ 110 n 126 ~
47 / 63 ? 79 O 95 _ 111 o 127 _
48 0 64 @ 80 P 96 ` 112 p
6
Latin 1 codifica i caratteri da essa previsti (che come si è accennato sono 256) facendo
corrispondere a ciascuno un numero binario. Il primo di questi caratteri corrisponderà al numero
binario '00000000', il secondo al numero binario '00000001', il terzo al numero binario '00000010',
e così via, fino al duecento cinquantaseiesimo, che corrisponderà al numero binario '11111111'.
Questi numeri sono tutti espressi attraverso una notazione 'lunga' esattamente otto cifre
binarie, ovvero 8 bit. In sostanza, possiamo 'scriverlo' utilizzando otto cellette affiancate, in
ciascuna delle quali può esserci uno '0' o un '1' (nel caso considerato, le cellette conterranno tutte
degli '1').
Le otto cellette possono quindi essere usate come 'contenitore' per rappresentare - in formato binario
- un qualunque carattere della tavola di codifica: ci si dovrà solo ricordare, se il numero binario che
codifica un determinato carattere è più 'corto' di otto cifre, di farlo precedere da tanti '0' quante sono
le cellette rimaste vuote. Così, ad esempio, per rappresentare il carattere corrispondente al numero
binario '10' si riempiranno le cellette in questo modo: '00000010'.
Riassumendo: 8 bit possono differenziare fra 256 combinazioni diverse, e dunque una 'parola'
lunga 8 bit (otto cellette) può rappresentare, attraverso la sua particolare combinazione di '0' e '1',
uno qualunque dei 256 caratteri della nostra tavola di codifica.
Per convenzione, una 'parola' lunga 8 bit è chiamata byte.
Il byte è dunque una unità di misura dell'informazione, e indica la quantità di informazione
corrispondente alla scelta fra 256 alternative diverse. Se adottiamo come base per la nostra codifica
dei testi una tavola comprendente 256 caratteri, ogni carattere del nostro testo richiederà un byte per
essere codificato: in altri termini, 'costerà' un byte.
RAPPRESENTARE LE IMMAGINI E I SUONI
Quando guardiamo la televisione, le immagini che vediamo ci appaiono di norma abbastanza facili
da interpretare: possiamo identificare forme e strutture, e ad esempio riconoscere il volto di un
attore o di un'attrice. Se ci avviciniamo molto allo schermo, tuttavia, noteremo che quella che a una
certa distanza ci era apparsa come un'immagine ben definita e continua si 'sgrana' in piccoli puntini
luminosi e colorati (i cosiddetti pixel - termine inglese corrispondente alla contrazione di picture
elements). L'immagine che vediamo è in realtà il risultato dell'integrazione dei tanti singoli 'segnali'
7
luminosi emessi da ciascuno dei singoli pixel. La griglia di pixel è talmente fitta da darci
un'impressione di continuità.
Per digitalizzare un'immagine, il primo passo è proprio quello di 'sovrapporre' all'immagine
analogica (ad esempio una fotografia) una griglia fittissima di minuscole cellette. Ogni celletta sarà
considerata come un punto dell'immagine, come un pixel. Naturalmente, a parità di immagine, più
fitta è la griglia, più piccole saranno le cellette, e migliore sarà l'illusione di un'immagine continua.
In questo modo, abbiamo sostanzialmente 'scomposto' l'immagine in tanti puntini. Ma non abbiamo
ancora risolto il problema della nostra codifica digitale. Per farlo, occorre un passo ulteriore:
rappresentare i puntini attraverso numeri. Come procedere? L'idea di base è semplice: utilizzare
anche qui una tavola di corrispondenza, che però questa volta, anziché far corrispondere numeri a
caratteri, faccia corrispondere numeri a colori diversi, o a sfumature diverse di colore.
I primi personal computer con capacità grafiche, all'inizio degli anni '80, utilizzavano griglie molto
larghe (i pixel sullo schermo del computer più che a minuscoli puntini corrispondevano a grossi
quadrati) e i colori codificati erano molto pochi (solo il bianco e nero, o al più 8 o 16 colori diversi
Se abbiamo a disposizione un numero maggiore di bit, potremo rendere più fine la griglia, oppure
aumentare il numero dei colori, o magari (se possiamo permettercelo) fare tutte e due le cose
insieme.
Così, se ad esempio per ogni celletta decidiamo di 'spendere' 8 bit (e dunque 1 byte) anziché 1 bit
soltanto, anziché usare solo il bianco e nero potremo codificare 256 colori diversi (giacché come
abbiamo visto le possibili combinazioni di '0' e '1' nelle nostre 8 cellette sono proprio 256; quando si
parla di immagini 'a 256 colori' o 'a 8 bit' ci si riferisce proprio a un'immagine la cui palette di colori
- ovvero l'insieme dei colori utilizzati - è codificata in questo modo); se di bit ne possiamo spendere
16, avremo a disposizione 65.536 colori diversi, e così via. Certo, con l'aumento della risoluzione e
la crescita del numero dei colori codificati, il numero di bit necessario a rappresentare la nostra
immagine sale molto: supponiamo di voler utilizzare una griglia di 800 colonne per 600 righe (è una
risoluzione assai diffusa per i personal computer), e di destinare a ogni celletta, a ogni pixel, 24 bit
(il che ci consentirà di distinguere la bellezza di oltre 16 milioni di sfumature di colore). I bit
necessari per rappresentare una singola immagine diventano 800x600x24 = 11.520.000
Nel caso dei suoni, invece, la trasformazione del dato analogico in dato digitale si basa su un
processo di 'segmentazione' dell'onda sonora di partenza.
8
Con un procedimento non troppo dissimile da quello già considerato a proposito della grigliatura in
pixel di una immagine, questa funzione può essere 'segmentata' in regioni abbastanza piccole da
poter essere considerate come se si trattasse di singoli punti. Ognuno di questi punti sarà identificato
dai suoi valori sugli assi del piano cartesiano, e questi valori, naturalmente, sono dei numeri:
sappiamo dunque bene come rappresentarli attraverso una codifica binaria. Ecco allora che la
successione di questi valori (assieme alle necessarie informazioni sullo spettro delle frequenze
considerate e sulla 'frequenza di campionatura', che ci dicono in sostanza quanto è esteso lo spettro
sonoro considerato e quanto è accurata la nostra segmentazione della funzione d'onda, ovvero
quanto 'fitta' è la nostra griglia) ci fornisce quella rappresentazione numerica, e dunque quella
digitalizzazione dell'onda sonora, che stavamo cercando.
CODIFICA A BITMAP
La tecnica per la digitalizzazione di una immagine pittorica consiste nel sovrapporre idealmente
all’immagine una griglia bidimensionale. Per ogni incrocio della griglia (pixel) viene digitalizzato il
valore dell’intensità luminosa in modo monocromatico o multicromatico.
Un pixel può essere descritto da un singolo bit (acceso/spento) o da una sequenza di bit che
codificano un certo numero di colori o di sfumature di grigio.
La rappresentazione più utilizzata per i colori è la RGB; con questa tecnica il colore è rappresentato
e determinato dalla composizione dei tre colori fondamentali Red – Green – Blue.
La risoluzione generalmente si misura con il numero lineare di pixel per pollice (inch) – (es. 600
dpi = Dot Per Inch). Le immagini bitmap (BMP) vengono memorizzate come una lunga sequenza
di bit in relazione alla modalità utilizzata per rappresentare pixel e colori.
Altri formati adottano tecniche di compressione per ridurre il numero di byte come ad esempio:
- TIFF (Tagged Image File Format)
- GIF (Graphics Interchange Format)
- JPEG (Joint Photographers Expert Group)
- PNG (Portable Network Graphics)
9
Lo scanner è un dispositivo che consente di digitalizzare una immagine pittorica (ad esempio una
fotografia); l’utente sceglierà la risoluzione desiderata ed il formato del file.
La qualità dell’immagine dipende dal numero di punti in cui viene suddivisa (risoluzione) e dai toni
di colore permessi dalla codifica; formati tipici di risoluzione di immagini sullo schermo sono: 640
x 480, 800 x 600, 1024 x 768, mentre i colori ammessi vanno da 2 a 16.8 milioni di colori.
L’occupazione di memoria delle immagini è notevole.
CODIFICA VETTORIALE
Quando le immagini da memorizzare hanno delle caratteristiche geometriche ben definite (es.
disegno tecnico) è possibile adottare una tecnica più efficiente per codificare le figure. Nel caso di
una progettazione il disegno da memorizzare può facilmente essere scomposto in elementi base
come linee o archi di circonferenza. La memorizzazione dell’intera immagine avviene tramite la
codifica di ogni singola parte (ad esempio per la codifica di un segmento basta memorizzare le
coordinate degli estremi).
Questo tipo di codifica viene detto vettoriale, i principali formati utilizzati sono il DXF usato anche
da Autocad.
Altri importanti formati per la memorizzazione delle informazioni grafiche sono il PostScript ed il
PDF (Portable Document Format) che consentono di trattare le immagini in entrambi i metodi
(bitmap e vettoriale).
Il formato PDF (Portable Document Format) è un formato di file introdotto dalla Adobe Systems
Inc. alcuni anni fa e utilizzato per rappresentare un documento in modo indipendente dalle
applicazioni software che lo generano, dall'hardware presente e dal sistema operativo installato sul
computer.
Un documento PDF contiene una o più pagine. Ogni pagina del documento può contenere una
qualsiasi combinazione di testo, grafica e immagini in un formato indipendente dalla piattaforma e
10
dalla risoluzione utilizzata. Ciò significa che, generato un file PDF, questo potrà essere utilizzato
anche in sistemi operativi diversi e, soprattutto, potrà essere visualizzato o stampato nello stesso
modo.
PDF è un formato di file universale che conserva i font, le immagini, gli elementi grafici e
l'impaginazione di qualsiasi documento originale, indipendentemente dall'applicazione e dalla
piattaforma usate per la sua creazione.
11
HARDWARE E SOFTWARE
La grande flessibilità del computer deriva dal fatto che coesistono due componenti, una materiale,
chiamata hardware, e una logica, denominata software.
L’hardware è costituito dall’insieme di parti fisiche da cui è composta la macchina.
Le istruzioni, i programmi eseguibili e i dati, rappresentano il software.
I COMPONENTI DEL PC
Di solito i componenti del PC vengono considerati separando l’unità centrale e le periferiche.
L’unità centrale è un involucro (case) che contiene i componenti elettronici e i circuiti integrati
fondamentali per il funzionamento del computer.
Le periferiche sono i dispositivi che permettono al PC di comunicare con l’esterno: possono servire
per introdurre dati e programmi (dispositivi di input, come la tastiera e il mouse) o per comunicare
all’utente i risultati di un’elaborazione (dispositivi di output, come il video o la stampante).
CHE COSA C’È DENTRO?
Il computer è una machina complessa, le cui funzionalità sono garantite dai vari componenti
assemblati nell’unità centrale: schede, circuiti elettronici e cavi. Per comprendere, almeno nelle
linee generali, la struttura globale del PC e il suo funzionamento proviamo a sollevare il coperchio
del case e a dare un’occhiata dentro.
Al primo sguardo si nota la scheda madre (motherboard), il componente principale su cui si
innestano tutti gli altri, quello che fa da tramite per lo scambio delle informazioni.
La scheda madre si presenta come un grosso circuito stampato di forma rettangolare, che contiene:
il microprocessore, la memoria RAM e i circuiti che collegano le memorie di massa (cioè il
disco fisso, il floppy disk e il CD-ROM), la scheda video, di rete ed audio.
12
IL CERVELLO DEL COMPUTER
Il microprocessore, detto anche CPU (Central Processing Unit – Unità Centrale di Elaborazione),
è la parte più importante del PC. È un chip integrato che dirige e controlla ogni attività del
computer, costituito da una piccola piastra di silicio, situata sulla scheda madre.
La CPU svolge due funzioni fondamentali: governa tutte le operazioni richieste dalle applicazioni e
dal sistema operativo (cioè genera tutti i segnali occorrenti per il funzionamento degli altri circuiti
a essa collegati) ed esegue tutti i calcoli, poiché contiene al suo interno l’Unità Logica Aritmetica,
l’ALU (Arithmetic Logic Unit)
I BUS
Il microprocessore e gli altri componenti elettronici che si trovano sulla scheda madre comunicano
tra loro per mezzo d’impulsi elettrici. Questi impulsi viaggiano attraverso piste di rame tracciate
sulla scheda madre stessa che, proprio per la loro funzione di trasporto, si chiamano bus. Se la CPU,
per la sua importanza può essere considerata il cervello del PC, i bus rappresentano il sistema
nervoso della scheda madre. Il bus centrale, che mette in comunicazione la CPU con la RAM, si
chiama system bus, ovvero bus di sistema. A esso sono connessi tutti i bus che collegano la CPU
con altri dispositivi di ingresso e di uscita, cioè tutti quei componenti che possono ricevere o inviare
informazioni (drive dei dischetti, tastiera, monitor, ecc.).
Il bus di sistema è definito da un valore che ne misura l’ampiezza, cioè il numero di bit di
informazioni che possono essere trasferite contemporaneamente. Questo numero è andato
costantemente crescendo con il progresso della tecnologia dei circuiti: dai 16 bit delle prime CPU si
è arrivati ai 64 del modelli oggi più comuni.
LA MEMORIA RAM
La RAM (Random Access Memory, o memoria ad accesso casuale) è la memoria principale, o
memoria centrale, del computer. Si tratta di un dispositivo in cui vengono caricati dati e programmi
nel momento in cui devono essere elaborati.
13
Quando si chiede al computer di eseguire un programma, il processore estrae dal disco rigido una
copia, la “parcheggia” temporaneamente nella memoria RAM e quindi la esegue.
La quantità di memoria RAM è cruciale per il buon funzionamento del PC: quanto maggiore è la
RAM, tanto meno frequentemente la CPU deve rivolgersi alle cosiddette memorie secondarie (disco
rigido, floppy disk, CD-ROM) per lavorare.
I dati, però, restano nella RAM soltanto finché il computer è in funzione. Quando si spegne il
computer, la RAM si svuota. Il sistema operativo e tutti gli altri file verranno prelevati dal disco
rigido e caricati di nuovo nella RAM quando sarà riacceso.
Il processore sfrutta la velocità della RAM per elaborare dati e informazioni nei tempi più rapidi. La
RAM infatti è molto più veloce di qualsiasi altro supporto: se per estrarre un dato da un disco rigido
sono necessari alcuni millisecondi, per compiere un’operazione analoga della RAM di sistema
bastano qualche decina di nanosecondi
LA CACHE RAM
Nei microprocessori più moderni alla RAM si affianca la cache RAM, o più familiarmente cache: è
un tipo di RAM molto veloce che contiene i dati e le istruzioni utilizzate più frequentemente dal
processore, in modo da poterli mettere a disposizione più rapidamente e velocizzare la operazioni e
i calcoli del computer.
La memoria cache (la traduzione letterale della parola francese è nascondiglio) è organizzata in due
livelli: la cache di primo livello (L1) è racchiusa nel chip di silicio che ospita il processore; la cache
di secondo livello (L2) o esterna è incorporata sulla scheda madre.
Proprio perché è integrata nel microprocessore, la cache L1 lavora alla sua stessa frequenza e risulta
quindi più veloce. Essendo molto costosa, però, è ridotta al minimo indispensabile (32 o 64 KB). La
cache L2 è un po’ più lenta e di quantità superiore rispetto alla L1 (256 o 512 KB).
La memoria cache esterna può essere ampliata installando nuovi chip sulla scheda madre.
L’ampliamento della cache L1, invece, non è possibile, perché renderebbe necessaria la sostituzione
del microprocessore.
14
COME È ORGANIZZATA LA RAM
Memoria ad acceso casuale non significa che all’interno della RAM i dati siano sparpagliati a caso
o senza criterio. Vuol dire che al processore occorre sapere lo stesso tempo per accedere a una
qualsiasi, casuale, parte della memoria.
In realtà sarebbe più corretto chiamarla memoria non sequenziale o memoria ad accesso diretto,
perché la RAM è organizzata in modo tale da permettere che i dati siano immagazzinati e “ritirati”
direttamente dalle specifiche celle, o locazioni, in cui si trovano.
La RAM è un’immensa matrice (o tabella) strutturata in una serie di celle o locazioni di memoria,
ognuna delle quali è caratterizzata da un nome o un indirizzo identificativo da un numero di riga e
da un numero di colonna. Ogni cella ha la funzione d’immagazzinare un dato (in genere corrisponde
a un byte - memoria indirizzabile al byte), in attesa di ricevere dal processore un ordine del genere
“leggere la cella di riga x e colona y” oppure “memorizzare il carattere A nella locazione di riga x e
colonna y”.
LA MEMORIA ROM E IL BIOS
Se al momento dell’accensione del computer la memoria RAM è vuota, dove sono conservate le
informazioni che consentono al computer di ripartire e di eseguire i vari programmi? Le istruzioni
di base devono essere trasmesse alla CPU all’avvio del sistema sono contenute nei circuiti delle
memoria ROM (Read Only Memory), una memoria permanente, sempre in funzione, anch’essa
presente sulla scheda madre. Come dice il nome, è una memoria a sola lettura il cui contenuto è
stato registrato in fase di costruzione del computer e quindi non può essere modificato.
Ogni volta che viene acceso, il computer esegue un piccolo programma contenuto nella ROM che
gli permette di:
• Dentificare il processore installato sulla scheda madre;
• Controllare la quantità di memoria RAM in dotazione e verificarne il funzionamento;
• Esaminare il disco rigido ed eventuali periferiche aggiuntive (ad esempio CD-ROM);
• Leggere la traccia, cioè il settore del disco rigido, in cui sono contenute le istruzioni per
l’avvio del sistema
15
• In particolare la ROM che avvia il sistema è chiamata BIOS (Basic Input/Output System).
LE MEMORIE DI MASSA
Poiché la memoria RAM è soltanto temporanea, dati e programmi per non essere perduti devono
essere salvati su memorie permanenti, le memorie di massa. Le più importanti e diffuse memorie
di massa sono il disco rigido (hard disk), il floppy disk e i CD-ROM. Floppy e CD-ROM sono
rispettivamente i supporti più adatti al trasporto di dati e per la lettura di software commerciali. Il
disco rappresenta il principale dispositivo per la memorizzazione dei dati.
IL DISCO RIGIDO
Il disco rigido è chiuso in un contenitore sottovuoto e visto dall’esterno di una scatola grigia, sul
retro della quale si trovano due connettori: uno per l’alimentazione e l’altro per il cavo piatto del
bus, adibito alla trasmissione dei dati. La parte inferiore della scatola è costituita da un circuito
stampato, o piastra logica, in cui sono situati i componenti elettronici che controllano il movimento
dei dischi de delle testine.
La velocità di rotazione dei dischi indica il numero di volte che un dato passa sotto la testina di
lettura in un minuto. I modelli di hard disk più recenti adottano di regola una velocità di almeno
7.200RPM (Rotazioni Per Minuto) mentre i dischi più grandi per server e workstation raggiungono
i 9.000 e 10.000RPM. Maggiore è la velocità di rotazione, minore è il tempo necessario per trovare
le informazioni sul disco rigido. Il tempo medio d’accesso rappresenta il tempo impiegato dall’hard
disk per estrarre un dato, cioè per posizionare la testina sulla giusta traccia, leggere il dato e
caricarlo nel buffer dell’unità. I dischi IDE attuali hanno tempi di accesso tra gli 8 e i 9,5ms, mentre
i dischi SCSI più veloci arrivano a 5ms.
La superficie dei dischi, infatti, è ricoperta da particelle magnetizzate che formano delle tracce
concentriche, suddivise in settori (o cluster).
Per ritrovare le informazioni il controller ha bisogno di conoscere il numero di traccia, il settore
d’inizio e la lista degli altri settori contenenti le informazioni desiderate. Quando la CPU richiede la
lettura di una determinata traccia in un determinato settore, controller posiziona la testina e inizia a
16
recuperare i dati, fino a riempire la memoria cache disponibile. Il controller, a sua volta, si occuperà
di passarli alla CPU e quindi alla RAM, o alla memoria di lavoro del PC.
La File Allocation Table (FAT) è lo schedario che consente al controller di organizzare i dati su
disco: nel caso in cui il settore su cui è registrata la FAT venga danneggiato, il controller perde tutti
i riferimenti ai file registrati sul disco, che diventa così inutilizzabile.
I DISCHETTI (Floppy Disk)
I dischetti (floppy disk) sono dischi magnetici rimovibili di capacità relativamente ridotta. Sono
utilizzati per memorizzare informazioni su un supporto esterno al computer e spostare i dati da un
PC all’altro, soprattutto se non si è collegati in rete.
I dischetti variano per il formato e la densità (ovvero la quantità di dati memorizzabili). Il formato
standard è quello di 3” ½ , mentre sui primi PC si usavano floppy da 5” ¼.
Prima di essere pronti per memorizzare informazioni i dischetti devono essere formattati, cioè
predisposti dal computer per le operazioni di lettura e scrittura dei dati.
NB : La formattazione, o inizializzazione, è un operazione effettuata dal sistema operativo e
consiste nella suddivisione del rivestimento magnetico del dischetto in settori e tracce concentriche,
grazie ai quali la superficie del disco viene organizzata in modo da permettere alla testina di leggere
e scrivere i dati rapidamente.
I CD-ROM
Sono dei supporti ottici.
Sul CD-ROM le informazioni digitali (i bit) sono codificate come incisioni sulla superficie del
disco: queste vengono colpite da un raggio laser, che determina il valore (0 o 1) rappresentato da
ciascun pit, per pi essere decodificate e trasmesse.
I CD-ROM, che non sono sensibili ai campi magnetici, costituiscono un supporto di
memorizzazione molto affidabile e di elevate capacità (circa 600MB), che permette di distribuire
17
grandi quantità di informazioni. Anche i CD però sono delicati: graffi e polvere possono ostacolare
la lettura delle informazioni, fino a compromettere l’integrità dei dati memorizzati.
LA SCHEDA VIDEO
Con l’avvento dell’interfaccia grafica lo sviluppo di video giochi e applicazioni multimediali
sempre più sofisticate e il diffondersi del World Wide Web, la scheda video, il dispositivo
responsabile delle immagini che appaiono sul monitor, è diventata nel giro di pochi anni uno dei
componenti fondamentali del PC. La scheda video oggi è un vero e proprio computer nel computer,
dotato di processore, memoria RAM e ROM, in grado di visualizzare filmati e animazioni sempre
più “reali” per definizione delle immagini, e per la qualità del colore.
La scheda video riceve le informazioni su ciò che deve visualizzare dalla CPU, a cui è connessa da
un bus ad alta velocità, le elabora attraverso il video chip e la video RAM, le trasforma in segnali
analogici attraverso e le invia al monitor.
La risoluzione e i colori
Il monitor del computer visualizza le immagini dividendo lo schermo in migliaia (o milioni) di
piccoli quadratini colorati, i pixel, ordinati in righe e colonne. I pixel sono così vicini uno dall’altro
da apparire uniti.
Il numero di bit utilizzati per rappresentare ogni pixel determina il numero di colori, o la tonalità di
grigio, che possono essere visualizzati sullo schermo. Nei colori a 8 bit (ossia un byte), per esempio,
il monitor impiega 8 bit per pixel riuscendo a visualizzare una gamma di colori di 256 diversi colori
o tonalità di grigio.
Il numero di pixel che può essere contenuto sul monitor sul monitor costituisce la risoluzione,
definita da numero di pixel sull’asse orizzontale e da quello sull’asse verticale.
La qualità dell’immagine che appare sullo schermo dipende dalla risoluzione e dalla quantità di bit
utilizzati per rappresentare ogni pixel, quindi dal numero di colori visualizzati contemporaneamente
sullo schermo, che possono essere 16, 256, 65.536, e infine 16.700.00.
Le risoluzioni standard per i PC sono: 640 righe × 480 colonne, 800 righe × 600 colonne, 1024
righe × 768 colonne, 1280 righe × 1024 colonne, a 8,16 o 24 bit.
18
Nel gergo multimediale si chiamano pseudo color i colori a 8 bit (256), high color i colori a 16 bit
(65.536) e true color i colori quelli a 24 bit (16.700.000).
I sistemi che utilizzano 24 bit, cioè 3 byte per pixel, si chiamano true color perché permettono di
visualizzare più di 16 milioni di colori distinti, una gamma nella quale dovrebbero rientrare tutte le
tonalità di colore esistenti in natura.
I byte utilizzati per ricostruire attributi, cioè le caratteristiche di ogni singolo pixel (colorazione e
posizione sullo schermo) sono quelli della memoria RAM della scheda video.
Esiste quindi una relazione tra la quantità di memoria RAM installata sulla scheda, il numero di
colori e la massima risoluzione delle immagini sullo schermo.
Nella maggior parte dei computer attuali sono presenti delle schede chiamate SVGA (Super Video
Graphics Array).
Con questa sigla si fa riferimento a una serie di standard grafici sviluppati da un consorzio di
costruttori di monitor e schede grafiche denominato VESA (Video Electronics Standards
Association) in grado di migliorare le prestazioni della VGA, il sistema di visualizzazione grafica
sviluppato da IBM nel 1987, divenuto il denominatore comune minimo delle schede video per i PC.
Ci sono vari tipi di schede SVGA, ognuna delle quali può offrire risoluzioni diverse: 800 × 600
pixel, 1024 × 768 pixel, 1600 × 1200 pixel. Tutti gli standard SVGA rendono disponibili un set di
16 milioni di colori, ma il numero di colori che possono essere visualizzati contemporaneamente
dipende dalla qualità di memoria video installata in un sistema.
IL MONITOR
L’architettura dei monitor non consente di visualizzare l’intera immagine contemporaneamente su
tutta la superficie dello schermo. L’immagine è tracciata progressivamente partendo dall’alto verso
il basso e seguendo una direzione da destra a sinistra. In questo modo il computer è in grado di
tenere costantemente aggiornata l’immagine visibile a video. Maggiore è tale frequenza più
l’immagine è nitida e stabile. Per lavorare senza stancare la vista è consigliabile una frequenza di
75-80Hz.
19
L’intera schermata viene quindi ridisegnata continuamente. In termini tecnici la frequenza con cui
viene ridisegnata l’immagine al secondo di chiama frequenza di refresh e può arrivare fino a
120Hz.
La frequenza di refresh, non è assoluta, ma dipende dalla risoluzione adottata. Per esempio un
video che raggiunge i 120Hz alla risoluzione 640×480 pixel, ha un refresh di 90Hz alla risoluzione
di 800×600, ma scende a 72Hz con risoluzione di 1024×768 e raggiunge il minimo di 60Hz con
risoluzione 1280×1024.
I monitor possono adottare diverse risoluzioni, in relazione alle loro caratteristiche e alle prestazioni
della scheda video del PC. Per un monitor da 15”, la risoluzione ideale è di 800 ×600 pixel o di
1024 ×768 pixel. Con un video di 21” è possibile impostare anche una risoluzione di 1280 ×1024
pixel.
Dot pitch è la distanza tra i pixel visualizzati sullo schermo, espressa in frazioni di millimetro. Può
variare, a seconda delle qualità del monitor: un dot pitch di 0,28mm è considerato buono per un
monitor da 15”. Più piccola è la distanza più nitida appare l’immagine sullo schermo.
SUPPORTI DI MEMORIA ESTERNI
Oltre alle memorie di massa esistono dei supporti di memoria esterni al PC, collegabili a una porta
parallela (la stessa porta dove si collega la stampante) che sono utilizzati per registrare grandi
quantità di dati.
I più diffusi sono i lettori Jaz e Zip. D’aspetto simile a mangianastri, contengono delle cartucce
speciali (Jaz e Zip) in grado di memorizzare una capacità di dati molto superiore a quella dei floppy
disk. Lo zip riesce a memorizzare fino a 250MB di dati (contro 1,44MB dei semplici floppy). Nei
Jaz la capacità di memorizzazione è ancora maggiore e arriva a 2GB.
Molto diffuse, soprattutto nell’ultimo anno le penne USB, molto pratiche per le piccole dimensioni
che permettono di memorizzare dati da 32 a 512 MB.
20
FORMATTAZIONE DEI DISCHI
Il metodo migliore per capire il processo di formattazione consiste nell’immaginare il disco come se
fosse completamente vuoto.
• Format lo divide in tracce circolari parallele.
• Poi divide queste tracce in settori.
Questo è il disco nuovo, non formattato:
Format lo divide in tracce concentriche, i cilindri:
Poi divide ogni traccia in settori.
21
Tracce e settori per alcuni tipi di dischi:
I settori danneggiati:
Talvolta è possibile che alcune parti del disco siano difettose. La parti difettose non sono capaci di
memorizzare le informazioni, perciò FORMAT esamina anche tutti i settori, marcando quelli
danneggiati. Grazie a questo meccanismo, FORMAT evita che il Sistema Operativo possa cercare
di memorizzare informazioni sui settori danneggiati.
Formattare un disco rigido
La formattazione di un hard disk è una operazione che viene fatta raramente. Possono avvenire delle
cose che ci possono indurre a dover formattare un disco rigido. Ad esempio: virus, errori
22
irreversibili, file fondamentali che mancano possono portare alla formattazione come unico modo
per poter ripristinare il sistema.
Poiché la formattazione di un disco rigido è una operazione che comporta la perdita di una grande
quantità di dati, il comando FORMAT ci avverte e chiede se siamo davvero disposti a continuare:
ATTENZIONE! TUTTI I DATI DELL’UNITA’ C:
DEL DISCO RIGIDO ANDRANNO PERSI!
Procedere con la formattazione? (S/N)
Il disco di sistema
Affinchè il DOS possa avviarsi, sono necessari alcuni file fondamentali:
•Command.com
•IO.sys
•MSDOS.sys
Grazie al comando FORMAT è possibile creare automaticamente un disco che contiene questi file.
Un disco così creato, ha la capacità di avviare il sistema e perciò viene detto: DISCO DI
SISTEMA.
Il comando che dobbiamo usare sarà:
C:\> format [unità:] /S
In questo modo, alla fine della formattazione verranno trasferiti i file di sistema ed apparirà il
messaggio: Sistema trasferito.
Il record di boot (boot record)
Il primo settore del disco viene chiamato record di boot.
Il record di boot è un settore speciale, perché contiene informazioni importanti, se il disco è un
disco di sistema, il record di boot contiene anche un piccolo programma che avvia il processo di
23
inizializzazione del Sistema operativo. La distruzione del record di boot è un evento molto grave,
che impedisce l’avvio della macchina.
La FAT
Il sistema operativo memorizza tutti i file sul disco e crea una tabella nella quale: memorizza
l’esatta posizione dei file, memorizza i settori utilizzati, i settori danneggiati ed i settori liberi.
Questa tabella si chiama tabella di allocazione dei file (FAT).
La FAT è una specie di mappa che il Sistema Operativo consulta per qualsiasi operazione sui file.
La FAT è memorizzata direttamente su disco, se la FAT contiene degli errori ed il sistema non
riesce ad accedere ad essa, allora esso non sarà neppure in grado di trovare i file sul disco. Per
evitare questo, esistono due copie di FAT, in modo che se una è corrotta, si può sempre contare
sulla copia di riserva.
I CLUSTER
La più piccola quantità di byte che il Sistema Operativo può scrivere sul disco è detta unità di
allocazione (cluster).
Ogni cluster è formato da più settori connessi insieme. La dimensione del cluster è variabile, può
infatti essere compresa tra 16, 32 o 64 Kb.
Supponiamo che nel nostro disco rigido la dimensione di ogni cluster sia fissata a 2048 byte
. •Immaginiamo di avere tre file:
Piccolo - di 1024 byte
Esatto - di 2048 byte
Grande - di 3072 byte
Come verranno scritti questi file nei loro cluster?
Il file piccolo è grande 1024 byte. Sebbene questo file ha una dimensione di soli 1024 byte, la più
piccola quantità di byte che il Sistema Operativo può scrivere è data dalla dimensione del cluster.
24
Poiché nel nostro esempio il cluster è grande 2048 byte, il Sistema Operativo scrive 2048 byte. Di
questi 2048 byte, solo 1024 sono occupati dal file piccolo, mentre 1024 sono inutilizzati.
(2048 byte - 1024 byte) = 1024 byte inutilizzati
Il file esatto è grande 2048 byte. Poiché il nostro cluster è grande 2048 byte, tutto lo spazio del
cluster è occupato dal file, non esistono byte inutilizzati.
(2048 byte - 2048 byte) = 0 byte inutilizzati
Il file grande è 3072 byte. •Il Sistema Operativo deve scrivere due cluster da 2048 byte ciascuno,
quindi risulterannoi 1024 byte.
( [2*2048 byte] - 3072 byte) = 1024 byte inutilizzati
Anche se i cluster possono portare a dello spreco di spazio libero, esistono buone ragioni per
utilizzarli.
I cluster comprendono più settori, quindi l’elenco della FAT è più piccolo. Se si dovesse
considerare ogni settore, allora un disco da 60 Mb dovrebbe contenere 122.880 elementi. Questo
rallenterebbe di molto le operazioni di lettura e di scrittura. Invece utilizzando i cluster, l’elenco è di
gran lunga più piccolo (ed occupa meno spazio).
I cluster sono importanti perché essi riservano dello spazio che può essere utilizzato dal file che
contengono. Se le dimensioni del file crescono con l’utilizzo, il DOS può utilizzare direttamente lo
spazio residuo del cluster.
Il primo grande svantaggio consiste nello spreco di spazio libero.
Il secondo svantaggio è dato invece dalla possibile frammentazione dei file.
25
Che cosa è la frammentazione ?
Quando il Sistema Operativo accede ad un file memorizzato su due cluster adiacenti, può leggere
l’intero contenuto del file passando da un settore ad un altro.
Un file frammentato invece, non è scritto su due cluster adiacenti, perciò il Sistema Operativo deve
saltare da un settore ad un altro presente in un’altra zona del disco.
La frammentazione dei file può essere causa di grandi rallentamenti del sistema. Infatti se il sistema
deve leggere il settore successivo, l’operazione di posizionamento delle testine è quasi immediata
(pochi millisecondi). Ma se deve leggere un settore distante, esso deve prima aspettare che il disco
giri e si metta nella giusta posizione, poi deve spostare il braccio con le testine di lettura/scrittura e
poi passare alla lettura vera e propria del settore. Tutto questo rallenta di molto il sistema.
Nel DOS e anche in Windows esiste un modo molto semplice per evitare che la frammentazione
rovini le prestazioni del sistema. E’ infatti possibile ottimizzare lo spazio sul disco utilizzando il
comando DEFRAG; è un’utility che elimina i frammenti dei file, ordinando tutti i file su settori
adiacenti.
DEFRAG deve essere considerato come una normale manutenzione, che deve essere fatta almeno
una volta al mese.