Centro Formazione e Studi HARDWARE E SOFTWARE L’hardware è l’insieme di tutti i circuiti e dei dispositivi (device), elettronici ed elettromeccanici, preposti al controllo e alla esecuzione di specifiche operazioni. Esso è contenuto nel case, la scatola metallica che può essere posizionata orizzontalmente al di sotto del monitor (desktop) o accanto, verticalmente, se a forma di torretta (minitower); Il software è l’insieme dei programmi di base, che rendono più agevole la gestione del computer, e dei programmi applicativi orientati all’esecuzione di specifici compiti come l’elaborazione di testi, gestione degli archivi, ecc.. Per interagire con un calcolatore è indispensabile avere a disposizione degli strumenti che permettano di impartire comandi, di inviare e digitare dati (input) e degli strumenti che visualizzino i risultati delle elaborazioni (output). Queste funzioni sono svolte dalle periferiche: la tastiera e il mouse sono appunto dispositivi di input; il video e le stampanti dispositivi di output. Di seguito si illustrerà il funzionamento dei principali dispositivi hardware contenuti in un computer. CONSIDERAZIONI COMPUTER SUL FUNZIONAMENTO DI UN Prima di esaminare in maggior dettaglio il funzionamento dei principali componenti di un sistema di elaborazione, è necessario conoscere il sistema di numerazione comunemente adottato nei calcolatori elettronici. Attualmente, il software, sia di base che applicativo, si propone attraverso delle schermate amichevoli, di facile comprensione anche per l’utente che non ha specifiche competenze in informatica. Lo scopo è quello di consentire la gestione di procedure anche complesse unicamente cliccando con il mouse su particolari pulsanti. In ogni caso, per poter essere interpretati ed eseguiti dal computer, i comandi che vengono impartiti dall'utente sono tradotti, via software, automaticamente in istruzioni elementari scritte in codice. A tal fine si utilizza un vero e proprio vocabolario che traduce l’informazione di partenza in codici costituiti da combinazioni di due soli simboli. Nel nostro sistema di numerazione decimale (a base 10) i simboli adottati sono dieci, da zero a nove. Il sistema binario con il quale operano i calcolatori è a base due, pertanto i simboli usati sono due 0 e 1. 1 Centro Formazione e Studi Tutti i dispositivi costituenti l’hardware del computer si scambiano dati e istruzioni in codice binario, lo stesso avviene tra i computer e le periferiche ad esso collegate. La scelta del codice binario è dovuta alla più semplice realizzazione di componenti che possono assumere solo due stati (bistabili) ai quali è possibile associare i valori 0 o 1, denominati bit (binary digit). I dispositivi elettronici bistabili utilizzano transistor che restituiscono in uscita un valore di tensione 1 o 0, o diodi che consentono o non il passaggio di corrente; altri dispositivi ricorrono alla magnetizzazione di piccolissime sezioni di superfici magnetiche, creandovi campi magnetici con orientamenti opposti. Per esempio, premendo un tasto della tastiera, verrà generato automaticamente il codice binario associato a quel carattere. Viceversa avviene quando quel carattere viene visualizzato sullo schermo: al codice binario viene associato il simbolo corrispondente. Quindi, ogni carattere associato ad un tasto della tastiera avrà una particolare combinazione di 0 e 1. Per rappresentare un carattere (lettera dell'alfabeto), una cifra (le cifre da 0 a 9) o un simbolo (*,+,-,@,#, etc.) sono necessari 8 bit, pari ad un byte. Il byte rappresenta l’unità operativa fondamentale di informazione. Per esempio digitando la parola “SOLE” il computer utilizzerà 4 byte. Ognuno, costituito da 8 bit, rappresenterà la combinazione del codice binario corrispondente ai caratteri della parola digitata: S O L E 1 0 1 1 0 0 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 1 83 79 76 69 I numeri 83, 79, 76 e 69 sono i corrispondenti valori espressi nel sistema decimale e sono detti codici ASCII (American Standard Code for Information Interchange). Questo termine identifica uno standard di codifica sviluppato dall’American National Standards Institute (ANSI) al fine di assegnare un codice univoco ai caratteri dell’alfabeto, i numeri e altri simboli. La codifica ASCII riunisce 128 caratteri numerati da 0 a 127 e comprende numeri, segni di punteggiatura, lettere e codici di controllo speciali come quello che identifica la fine di una riga, la fine di un file oppure il ritorno a capo. 2 Centro Formazione e Studi Tabella dei codici ASCII Caratt. Cod ASCII Cod.binario Car. Spec. Cod ASCII Cod.binario Numeri Cod ASCII Cod.binario A 65 1010 0001 ! 33 0100 0001 0 48 0101 0000 B 66 1010 0010 " 34 0100 0010 1 49 0101 0001 C 67 1010 0011 # 35 0100 0011 2 50 0101 0010 D 68 1010 0100 $ 36 0100 0100 3 51 0101 0011 E 69 1010 0101 % 37 0100 0101 4 52 0101 0100 F 70 1010 0110 & 38 0100 0110 5 53 0101 0101 G 71 1010 0111 ' 39 0100 0111 6 54 0101 0110 H 72 1010 1000 ( 40 0100 1000 7 55 0101 0111 I 73 1010 1001 ) 41 0100 1001 8 56 0101 1000 J 74 1010 1010 * 42 0100 1010 9 57 0101 1001 K 75 1010 1011 + 43 0100 1011 L 76 1010 1100 , 44 0100 1100 M 77 1010 1101 - 45 0100 1101 N 78 1010 1110 . 46 0100 1110 O 79 1010 1111 / 47 0100 1111 P 80 1011 0000 : 58 0101 1010 Q 81 1011 0001 ; 59 0101 1011 R 82 1011 0010 < 60 0101 1100 S 83 1011 0011 = 61 0101 1101 T 84 1011 0100 > 62 0101 1110 U 85 1011 0101 ? 63 0101 V 86 1011 0110 @ 64 1010 0000 W 87 1011 0111 (blank) 32 0100 0000 X 88 1011 1000 Y 89 1011 1001 Z 90 1011 1010 1111 Ricapitolando: 1 byte è costituito da una successione di 8 bit con cui è possibile rappresentare fino a 256 (28) valori differenti. I multipli del byte sono: − il Kb, (kilobyte) costituito da 1024 byte; − il Mb, (megabyte) costituito da 1024 Kb (circa un milione di byte); − il Gb, (gigabyte) costituito da 1024 Mb (circa un miliardo di byte). LA CPU Il componente principale di un personal computer è il microprocessore o CPU (Central Processing Unit). La struttura del microprocessore è estremamente 3 Centro Formazione e Studi complessa. Si sviluppa su un unico chip delle dimensioni di qualche centimetro quadro su cui sono integrati milioni di transistori. Caratteristica importante è il fatto che si tratta di materiale semiconduttore1. Sul singolo chip vengono applicati i terminali di collegamento ed uno strato di rivestimento che lo incapsula. La CPU utilizza dei registri di memoria, costituiti da un certo numero di bit, destinati a contenere istruzioni o dati su cui operano tali istruzioni. I risultati di tali elaborazioni andranno ad occupare altri registri, per poi essere inviati in output e tradotti in segnali riconoscibili dalle opportune periferiche. Il numero di bit costituenti un registro può variare a seconda delle potenzialità del processore (8, 16, 32, 64 bit); un registro con più spazio a disposizione può ricevere contemporaneamente un numero maggiore di informazioni e aumentare la velocità di elaborazione. La CPU presiede a tutte le operazioni del computer: interpreta le istruzioni del programma e invia agli specifici dispositivi i segnali per l’esecuzione delle singole operazioni. Le CPU contengono la execution unit (unità di esecuzione delle istruzioni) e la control unit (unità di controllo). La execution unit esegue particolari tipi di operazione, come ad esempio le funzioni aritmetiche, il caricamento da memoria o la registrazione in memoria, la gestione delle diramazioni (branch processing), che altera la sequenza di istruzioni eseguite dalla CPU, cioè viene scelto un percorso tra diversi possibili. L’execution unit contiene la ALU (Arithmetic Logic Unit) e particolari registri che conservano i bit contenenti le istruzioni e i dati da elaborare. La control unit è l’unità di governo che sorveglia il ciclo di esecuzione di ciascuna istruzione che avviene nella execution unit. L’unità di controllo e l’unità aritmetico-logica sono dotate di particolari circuiti elettronici detti “circuiti di commutazione” che memorizzano, in ingresso, le stringhe di bit costituenti il dato da elaborare e producono, in uscita, (a seconda delle operazioni) una nuova stringa di bit che fornisce il risultato richiesto. Gli stessi circuiti vengono attivati con segali di abilitazione (impulsi, tensioni ecc.) di tipo binario. 1 Un materiale che si trova a metà strada tra un conduttore e un isolante. Non consente un facile passaggio della corrente elettrica, ma nemmeno lo impedisce. Questo genere di sostanza ha quattro elettroni nell’orbita più esterna del proprio atomo. Dato il loro numero, diventa perciò più difficile liberarne uno di quanto non sia con i conduttori che ne hanno solo uno oppure due, tuttavia non è impossibile come negli isolanti che ne hanno da 5 a 8 (il massimo) e che perciò hanno una stabilità eccellente. La definizione chimica di semiconduttore è qualsiasi sostanza che abbia l’orbita più esterna riempita esattamente a metà. 4 Centro Formazione e Studi Per progettare i circuiti di commutazione e le relative combinazioni si adotta una tecnica particolare: “L’Algebra di Boole”. Nell’algebra di Boole vengono definite varie operazioni logiche: AND, OR, NOT, NOR, NAND; che corrispondono, rispettivamente al prodotto, alla somma, al complemento, al complemento della somma, del prodotto di operandi in forma binaria. La potenza elaborativa di un processore è funzione del Clock, cioè della frequenza (misurata in MHz) con cui vengono elaborate le istruzioni elementari (la capacità elaborativa è misurata in MIPS: Million Instruction Per Second.). Un altro aspetto che influisce sulla potenzialità del processore è rappresentato dal numero di bit utilizzabili per l’indirrizzamento alle memorie e dal numero di bit che può trasferire contemporaneamente da e verso i dispositivi esterni (data path). CPU E MEMORIA DI UN COMPUTER Memoria centrale Unità di controllo Memoria di massa Unità di esecuzione Per far eseguire al computer un determinato compito è necessario predisporre un programma. Un programma è costituito da una sequenza di istruzioni che la CPU esegue passo passo. E' necessario, dunque, avere un supporto su cui memorizzare le istruzioni e i dati da elaborare, per sottoporli al processore nella sequenza stabilita dal programma. In generale, un computer, oltre a dover memorizzare i programmi applicativi per lo svolgimento di compiti specifici, ha bisogno di memorizzare tutta una serie di programmi relativi al suo funzionamento e alla gestione dei dispositivi ad esso collegati. Il complesso dei dati e dei programmi, il software, deve, per sue dimensioni, essere conservato su un supporto di memoria permanente detto in genere memoria di massa, per esempio un disco o nastro magnetico. Quando viene richiesta l’esecuzione del programma, il computer caricherà in un’altra memoria, detta memoria centrale solo il programma e i dati che servono. 5 Centro Formazione e Studi Se si devono aggiornare, per esempio, i dati di una persona, inseriti in un’anagrafe memorizzata su disco e contenente i dati di milioni di persone, il programma di gestione caricherà nella memoria centrale solo i dati da modificare è non tutto l’archivio. I dati modificati verranno poi memorizzati dallo stesso programma su disco. I due tipi di memoria si differenziano essenzialmente per la capacità e per la velocità di accesso. La memoria centrale, poiché deve continuamente contenere i dati e i programmi utilizzati in quel momento dal processore, deve avere tempi di accesso molto veloci. Le memorie di massa hanno invece elevate capacità di memoria, ma sono più lente e vengono impiegate per archiviare grosse quantità di dati, il software di base del computer e tutto il software applicativo, per l’elaborazione di testi, per la gestione di banche dati, per l’utilizzo di fogli elettronici, ecc. Di seguito si analizzerà la differenza tra memoria centrale o primaria e memoria di massa o secondaria MEMORIA PRIMARIA Nella memoria primaria sono depositate le informazioni da elaborare e i risultati conseguenti, e le istruzioni per elaborarle. Solitamente è composta da memorie RAM (Random Access Memory) e ROM (Read Only Memory). È direttamente collegata alla CPU e non ha bisogno di nessuna intermediazione per essere consultata da quest’ultima. Viene chiamata anche primary storage. La memoria RAM La memoria centrale detta anche RAM (Random Access Memory) è un insieme ordinato di locazioni di memoria in cui vengono registrati dati e istruzioni di programma. Il termine random proviene dal fatto che è possibile accedere ad una qualunque locazione in maniera casuale, cioè senza seguire un ordine particolare. In questa memoria vengono depositati i programmi che il PC dovrà eseguire e i dati su cui tali programmi dovranno operare, oltre che i risultati delle successive operazioni. La memoria è volatile, cioè non può essere mantenuta in mancanza di alimentazione elettrica. La capacità di memoria è misurata in milioni di byte (Mbyte –megabyte). La DRAM Si tratta di una tecnologia nata nel 1980 per l’implementazione della memoria centrale. Ogni bit viene registrato in una cella e le celle sono disposte su una matrice a cui si accede conoscendo la posizione della singola cella in termini di riga e di colonna. 6 Centro Formazione e Studi Una cella di DRAM è composta da un condensatore e da un transistor. Poiché il condensatore può trattenere la carica solo per pochi millisecondi, il contenuto della DRAM deve essere continuamente "rinfrescato" o rigenerato, vale a dire che il condensatore deve essere ricaricato frequentemente in modo da non perdere l’informazione (bit) che vi è registrata. Dal punto di vista elettronico, ciascun bit viene memorizzato in una cella che combina un piccolo condensatore collegato al gate (terminale di entrata) di un transistor che funge da amplificatore digitale assorbendo pochissima carica dal condensatore mentre ne legge lo stato. Il transistor "legge" lo stato del condensatore e se vi trova carica elettrica restituisce sulla propria uscita un 1. Se invece lo trova scarico restituisce uno 0. Questo genere di circuito presenta, tuttavia, un paio di problemi. Innanzi tutto l’operazione di lettura tende a scaricare il condensatore (visto che il transistor assorbe comunque una minuscola quantità di carica attraverso il gate) e a lungo andare quello che era stato registrato come un 1 diventa uno 0. Inoltre, ogni condensatore soffre di perdite interne che tendono a scaricarlo. Nel tempo perciò tutte le informazioni sono destinate ad andare perdute. Il rimedio consiste nel rigenerare centinaia di volte al secondo la carica di ogni singolo condensatore che contiene un 1 (refresh) e nel precaricare il condensatore appena prima che abbia luogo la lettura. Il tempo necessario per compiere queste due operazioni si combina in quello che viene definito cycle time (tempo di ciclo) o più semplicemente tempo di refresh o tempo di accesso. Agli albori le DRAM avevano un tempo di ciclo di 200 nanosecondi il che significa che era possibile eseguire 5 milioni di letture al secondo: un valore perfettamente accettabile per i primi personal computer che funzionavano con una frequenza di 4,77 MHz. Oggi si è arrivati a 70 e 60 nanosecondi. La DRAM viene di solito fornita sul mercato in due formati diversi: SIMM e DIMM. La SDRAM (Synchronous DRAM) La caratteristica fondamentale della Synchronous DRAM è di sincronizzare tutte le operazioni con il segnale di clock proveniente dal processore, tipicamente 66 MHz fino a un massimo di 100 MHz (una frequenza tre volte superiore rispetto a quella tollerabile da una RAM convenzionale). La sincronizzazione diretta rende più semplice l’implementazione delle interfacce di controllo. La SDRAM integra sul chip un contatore che può essere usato per incrementare automaticamente gli indirizzi di colonna per accessi a raffica. Questo significa che la SDRAM permette d’iniziare nuovi accessi prima che l’accesso precedente sia stato completato. La memoria ROM Quando si mette in funzione un calcolatore (bootstrap2), la CPU deve eseguire le istruzioni necessarie per il riconoscimento, la verifica e l’attivazione dei vari dispositivi che costituiscono il sistema di elaborazione quali la tastiera, la scheda video, il lettore di floppy disk, il disco rigido, ecc... 2 Il bootstrap è il processo stesso di avvio del calcolatore. 7 Centro Formazione e Studi Queste istruzioni sono memorizzate dal costruttore in una memoria permanente a sola lettura detta ROM (Read Only Memory). Inoltre, nella fase di avvio, il computer carica nella propria memoria il sistema operativo che gli permetterà, successivamente, di eseguire i comandi e i programmi dell’utente. Il programma registrato nella ROM è chiamato BIOS (Basic Input Output System). In generale, questo tipo di software prende il nome di firmware (residente). La CMOS Esiste un'altra memoria, la CMOS (Complementary Metal Oxid Storage), che contiene le informazioni sulla configurazione hardware del sistema e le impostazioni relative al BIOS. Al momento dell'accensione, il computer "ricorda" la sua configurazione grazie a questa memoria tampone alimentata mediante una piccola batteria, senza la quale il BIOS sarebbe costretto a richiedere all’utente le informazioni relative alla caratteristiche ed alla configurazione del computer. La cache memory E’ una memoria di transito che usa una piccola quantità di memoria ad altissima velocità per rendere immediatamente disponibili al processore le informazioni a cui questo accede più frequentemente. La cache risponde alle richieste di lettura e di scrittura verso la memoria centrale senza imporre stati di attesa al processore. Uno stato di attesa è un ciclo di clock (vedi CPU) durante il quale il microprocessore sospende l'elaborazione e attende il completamento di una richiesta di lettura o scrittura sulla memoria (operazione di I/O sulla memoria). La presenza della memoria cache velocizza il computer poiché consente un passaggio più veloce d'informazioni tra la memoria centrale e il microprocessore oppure tra il disco rigido e la memoria centrale. I tempi di accesso variano dai 10 ai 30 nanosecondi rispetto alla RAM che ha tempi di accesso tra i 60 e 70 nanosecondi. La cache funziona sul principio secondo il quale tutti i computer che eseguono istruzioni in modo sequenziale tendono ad accedere ripetutamente alla stessa porzione di memoria. La cache che si trova all'interno del microprocessore è la cache di primo livello. Col progredire dell'elaborazione la cache scarta informazioni non più necessarie e va a recuperare nella memoria centrale i nuovi dati richiesti. Quando il processore trova nella cache quello che cerca si verifica un "cache hit" quando invece l'informazione manca si verifica un "cache miss" e diventa necessario ricorrere a una cache esterna (di secondo livello) oppure direttamente alla memoria principale e lasciar trascorrere alcuni stati di attesa prima che le informazioni diventino disponibili. 8 Centro Formazione e Studi MEMORIA SECONDARIA Quando si lavora con un Personal Computer, è necessario avere dei supporti su cui poter archiviare dati e programmi, in modo tale da potervi accedere in qualunque momento anche dopo aver spento la macchina. I dispositivi di memoria ausiliaria3 più diffusi sono i dischi rigidi (hard disk): uno o più dischi coassiali, rivestiti di materiale magnetizzabile, che montati sull’unità (drive), ruotano ad alta velocità attorno all’asse centrale; una serie di testine di lettura/scrittura disposte su bracci mobili in senso radiale, consentono di leggere e registrare i dati secondo tracce concentriche. Le testine sfiorano la superficie del disco ad una distanza inferiore al millesimo di millimetro. I dischi prima di essere utilizzati vengono formattati. Questo procedimento registra sulla superficie del disco tante tracce suddividendole in altrettanti settori angolari. E’ come se un foglio, completamente bianco, venisse predisposto all’uso, disegnandovi uno schema o un modello dove trascrivere particolari informazioni. Il tipo di formattazione dipende dal sistema operativo del computer. Il disco funziona grazie ad un dispositivo elettromeccanico (driver) che combinando la rotazione del disco con i movimenti lungo il raggio della testina riesce a leggere o a scrivere in un settore qualsiasi, realizzando, così, una struttura di memorizzazione ad accesso diretto. Nei nastri magnetici, dove invece l’accesso è sequenziale, bisogna far scorrere tutta la parte del nastro che precede il dato da leggere prima di poter recuperare l’informazione. Il disco rigido può avere capacità molto elevate: i personal computer attualmente in commercio hanno capacità che vanno oltre i 6 miliardi di byte, Gb (gigabyte), con velocità di trasferimento verso la memoria che arrivano fino a decine di Mb (megabyte) al secondo e oltre. Esistono anche dischetti "portatili" (Floppy Disk) che permettono di immagazzinare una quantità minore di dati (circa 1,4 Mb) e di trasferirla da un computer all'altro. Poiché la consultazione di un archivio prevede l’identificazione dell’unità su cui è memorizzato, viene convenzionalmente assegnata all’unità disco rigido la denominazione C: e all’unità Floppy la denominazione A:. 3 Qualsiasi mezzo di memorizzazione non volatile, il che comprende dischi e nastri, nel quale vengono depositate informazioni che sono state elaborate dalla CPU o che non dovranno essere utilizzate da quest’ultima immediatamente. Tutta la memoria indirizzabile esterna a quella centrale, alla quale si può giungere per mezzo di canali di I/O. Viene anche chiamata memoria esterna (external storage), secondary storage, auxiliary storage. Si contrappone a memoria primaria. 9 Centro Formazione e Studi IL BUS Il Bus è un canale di comunicazione all’interno del computer per mettere in comunicazione tra loro dispositivi elettronici. Sul bus sono veicolate informazioni per tutte le apparecchiature connesse, ma utilizzate solo dall’apparecchiatura a cui sono destinate. Affinché siano riconoscibili, queste informazioni sono integrate da un indirizzo che identifica il mittente e il destinatario. Qualsiasi apparecchiatura può essere collegata in un punto qualsiasi del bus e funzionare allo stesso modo delle altre. IL CHIPSET Il chipset è un componente associato alla CPU, che controlla l’I/O della memoria, l’I/O del bus e, in molti casi, i controller integrati (interfaccia) degli hard disk IDE (Integrated Device Electronics). Questo componente governa anche le richieste di interrupt (IRQ - Interrupt ReQuest) e gli accessi diretti alla memoria (DMA Direct Memory Access) La DMA è una tecnica per trasferire dati dalla memoria centrale a un dispositivo periferico, come ad esempio una scheda di rete oppure il controller di un disco, senza chiamare in causa la CPU. Questo genere di trasferimento è più veloce e consente di utilizzare il processore per altri scopi. Tutti i moderni PC dispongono di almeno due canali per il DMA. Per le macchine Pentium sono disponibili molti chipset, ma quelli prodotti da Intel sono di gran lunga i più popolari. Il chipset Intel più comunemente usato, il 430FX (precedentemente conosciuto come Triton), verrà presto rimpiazzato dai nuovi chipset 430HX e 430VX. Il primo è per il mercato di fascia alta, il secondo è per le macchine destinate al mercato domestico e dei piccoli uffici. Il chipset HX supporta un massimo di 512 MByte di memoria centrale, doppio processore. Il chipset VX supporta solo 128 MByte di memoria principale. PCI (PERIPHERAL COMPONENT INTERCONNECT) E’ un bus locale a 32/64 bit per personal computer sviluppato da Digital Equipment, IBM, Intel e altri, che fornisce una connessione ad alta velocità tra CPU e schede di espansione (vedi oltre). Viene chiamato bus locale perché si collega direttamente alla CPU. Il PCI è stato usato praticamente su tutte le macchine dotate di processore Pentium Pro, su tutti i sistemi Pentium prodotti dal 1994 in avanti e anche su molte macchine 486 sviluppate a partire dallo stesso periodo. La velocità massima consentita nella prima versione di PCI è di 132 MByte per secondo (1.056 Mbps) se si usano schede di espansione a 32 bit (quelle più comuni) e di 264 MByte per secondo se 10 Centro Formazione e Studi s’impiegano schede di espansione con connettori a 64 bit. La frequenza di lavoro del bus è rapportata alla frequenza interna di funzionamento del processore. Il valore massimo previsto al momento è di 33 MHz. Ogni macchina tipicamente dispone di tre connettori PCI che coesistono con connettori ISA (bus precedente a 16 bit) USB (UNIVERSAL SERIAL BUS) E’ un’interfaccia seriale, bidirezionale ad alta velocità, a cui si possono collegare o scollegare dinamicamente apparecchiature che vengono automaticamente riconosciute dal computer acceso. Queste apparecchiature possono essere telefoni, tastiere, videocamere, stampanti, interfacce di rete, scanner economici, mouse, joystick, tavolette grafiche e altri sistemi di puntamento. Nasce per facilitare l’espansione di un personal computer, per fornire un sistema economico per il trasferimento dati fino alla velocità massima di 12 Mbit per secondo, per convogliare voce, audio e video in formato compresso (la cui trasmissione deve seguire tempistiche rigorose) assieme a messaggi e a dati che hanno priorità più bassa (che possono essere consegnati con qualche ritardo senza inficiarne la validità). Usa un’interfaccia standard, integrabile in qualsiasi dispositivo elettronico e si adatta a tutti i tipi di computer, da tavolo o portatili. Funziona a 10-100 Kbit per secondo per i dispositivi lenti (tastiera, mouse, stilo, joystick e affini, monitor configurabili a distanza e dispositivi di realtà virtuale), si sposta da 500 Kbps a 10 Mbps per dispositivi di velocità media (apparati audio, interfacce ISDN, telefoni e centralini) con punte massime di 12 Mbit per secondo per quelli veloci (videocamere e dischi esterni). E’ prevista un’estensione dello standard che porti la velocità da 25 a 500 Mbps per i dischi e la trasmissione video. Riesce a governare fino a 127 apparecchiature con un singolo connettore del PC. Oltre ai dati il cavo convoglia anche l’alimentazione per le apparecchiature a basso assorbimento. Dovrebbe in prospettiva rimpiazzare le porte seriali e parallele, la presa della tastiera, quella del mouse, più le varie prese audio, però inizialmente si limiterà ad affiancarle. L’USB è completamente Plug and Play, il che significa che ogni nuovo dispositivo inserito anche a caldo (a macchina accesa) viene riconosciuto automaticamente. La topologia di connessione è una stella multilivello, con una lunghezza massima di cinque metri per il singolo segmento. Ogni livello è composto da una stella che confluisce su un singolo concentratore (hub), secondo una disposizione simile a quel che avviene nelle reti locali basate su doppino. Il concentratore può essere passivo, nel qual caso riceve alimentazione dal computer e la ridistribuisce ai dispositivi a valle, oppure può essere attivo, nel qual caso genera per proprio conto l’alimentazione per i dispositivi a valle. 11 Centro Formazione e Studi LE SCHEDE DI INTERFACCIA (o SCHEDE DI ESPANSIONE) Una scheda che s’inserisce in uno dei connettori del bus di espansione e che è connessa ad uno o più dispositivi. Quando le informazioni vengono inserite nel computer dai dispositivi di input, o restituite in output, sono necessari altri dispositivi in grado di tradurre i dati in entrata in codice binario e in uscita in informazioni riconoscibili dalle periferiche. Questa funzione è svolta dalle schede di espansione che si installano sul bus consentendo la connessione tra la periferica che esse pilotano ed il resto del computer. In presenza di dati provenienti dalla periferica esterna, le schede di interfaccia avvertono il processore mediante un segnale di interruzione (IRQ) a seguito del quale esso esegue il trasferimento dei dati dalla scheda alla memoria RAM. I segnali di IRQ vengono trasmessi attraverso le cosiddette linee di IRQ (IRQ lines) che collegano i dispositivi periferici a un controllore di interrupt programmabile (PIC - Programmable Interrupt Controller). Il PIC assegna priorità alle richieste provenienti dai diversi dispositivi e le ritrasmette alla CPU una alla volta attraverso una speciale linea di IRQ che unisce direttamente il primo alla seconda. Le schede di espansione e quelle integrate direttamente sulla scheda madre, sono connesse ai dispositivi di input/output (periferiche) mediante cavi di collegamento attraverso delle porte, visibili nella parte posteriore del case. Esistono porte seriali e porte parallele. Una porta seriale spedisce i bit uno alla volta su una linea che unisce direttamente un computer alla sua periferica, come ad esempio un modem, oppure direttamente due computer Usa un connettore a 25 poli per convogliare tutta una serie di segnali di servizio, ma per la trasmissione dati è sufficiente usare una presa a 9 poli. Tipicamente consente di trasmettere informazioni alla distanza massima di 1.5 metri. La porta parallela, montata su tutti i personal computer, serve solitamente a trasmettere dati alla stampante, ma può essere utilizzata anche per collegare altre periferiche come nastri di backup, modem, dischi removibili e lettori di CD-ROM, e può anche servire per collegare tra loro due computer e trasmettere dati direttamente dall’uno all’altro. Trasmette dati a 150 KByte al secondo su una distanza massima di 2 metri. SCHEDA VIDEO La scheda video, anche chiamata VGA (Video Graphics Adapter) prende nome dallo standard per schede video definito da IBM per i suoi PS/2 che all’epoca (1987) aveva rimpiazzato i due standard già esistenti: CGA (Color Graphics Adapter) e EGA (Enhanced Graphics Adapter) che funzionavano rispettivamente a 320 x 200 punti con 4 colori e a 640 x 350 punti con 16 colori. In modalità VGA la 12 Centro Formazione e Studi risoluzione è stata portata a 640 x 480 punti con 16 colori, ma è stato anche cambiato il modo d’interazione tra scheda video e monitor. In precedenza la scheda video inviava al monitor segnali digitali che venivano da questo tradotti in pixel (elemento di immagine, picture element) da rappresentare sullo schermo; dall’arrivo della VGA in avanti le schede hanno inviato al monitor segnali analogici (a variazione continua) che si traducono molto più facilmente e con maggiore precisione in spostamenti del pennello elettronico che disegna immagini e caratteri sullo schermo. In questo modo è possibile aumentare la risoluzione e il numero di colori visualizzato senza modificare drasticamente la tecnologia. Infatti, nel tempo il numero di colori per la modalità VGA è stato portato a 256, 65.536 e 16.777.216 e lo standard medesimo si è evoluto in una forma potenziata, SuperVGA. La modalità SuperVGA arriva a 1024 x 768 punti con 16,7 milioni di colori simultanei (modalità conosciuta anche come true color oppure colore a 24 bit). Tutte le schede video e i monitor attualmente disponibili per personal computer possono funzionare in modalità SuperVGA oltre che VGA, e supportano anche la risoluzione intermedia di 800 x 600 punti, sempre con 256, 65538 oppure 16.777.216 colori a seconda della quantità di memoria montata sulla scheda video (detta anche memoria video). AGP (ACCELERATED GRAPHICS PORT) E’ una tecnologia resa disponibile da Intel alla fine del 1997, che consente una comunicazione veloce e diretta tra la scheda video e la RAM, allo scopo di utilizzare una porzione di quest’ultima per contenere informazioni video. Diventa una soluzione interessante nei giochi e negli altri programmi dove le informazioni da visualizzare sullo schermo sono tante da eccedere la capacità della memoria video in dotazione alla scheda (tipicamente 4 MByte). In questo caso, la presenza della connessione AGP permette di visualizzare immagini complesse e riccamente colorate senza perdere sensibilmente in velocità e senza acquistare costosa memoria di espansione dedicata unicamente all’acceleratore grafico (processore montato sulla scheda video). Quando non viene utilizzata per i giochi o altre funzioni video particolari, la RAM torna ad essere pienamente disponibile per le applicazioni normali. L’AGP è una connessione punto a punto, è un bus dedicato esclusivamente alla connessione di schede video. La connessione AGP funziona a 66 MHz con 32 bit. Nella versione 2X il trasferimento dei dati è raddoppiato per cui la frequenza del trasferimento risulta di 133 MHz. Le schede che supportano solo la modalità 1X permettono il trasferimento a 266 MByte al secondo. I piani futuri prevedono una modalità 4X corrispondente a oltre 1 GByte al secondo. La concezione dell’AGP da parte di Intel risale all’inizio del 1996 a fronte della previsione che le applicazioni che visualizzano scenari 3D si sarebbero trovate davanti a un collo di bottiglia dovuto alla insufficiente capacità di trasferimento dati del bus PCI (132 MByte al secondo teorici). Infatti la ricchezza e la verosimiglianza di una scena 3D sintetica viene raggiunta sia attraverso la risoluzione e il numero di 13 Centro Formazione e Studi colori sia, soprattutto, attraverso le texture, cioè le immagini bitmap che rivestono gli elementi della scena (poligoni) simulando il tipo di materiale, la consistenza e la finitura delle superfici e degli oggetti. Quindi maggiore è il numero di poligoni in cui sono scomposte le superfici e più accurate e sofisticate sono le texture, più la scena appare realistica. Ecco quindi che a un certo punto non bastano più le poche centinaia di KByte o i pochi MByte che, nella memoria della scheda grafica, possono essere riservati alle texture. Né si può ogni volta leggerli da disco in memoria e, attraverso il processore, recapitarli alla scheda grafica, perché questa strada sarebbe troppo lenta per avere un’animazione continua sullo schermo. Nel 1995 le schede grafiche 3D erano costose e disponevano di poca memoria (tipicamente 2 MByte). Dalla fine del 1997 è normale trovare schede con 4 MByte e nel 1998 hanno cominciato a diffondersi quelle con 8 MByte. Questa capacità è sufficiente per inglobare texture abbastanza estese da arredare degnamente le superfici di un gioco 3D a 800 x 600 con 16 milioni di colori e garantire fluidità all’azione. IL MONITOR Il monitor è un dispositivo di output che consente di visualizzare le informazioni elaborate dal computer e il risultato delle operazioni eseguite dall’utente. Le dimensioni variano da 13 a 22 pollici di diagonale. Sui computer portatili è realizzato per mezzo di pannelli a cristalli liquidi particolarmente sottili e leggeri. La qualità dell'immagine visualizzata dal monitor viene definita dal numero di pixel che compongono l’immagine, e dipende sia dal monitor che dalla scheda grafica istallata nel PC. Il pixel è l’elemento più piccolo di un immagine che può essere visualizzato su un monitor. Un pixel può essere acceso o spento e variare d’intensità indipendentemente dagli altri. Il monitor è fisicamente suddiviso in migliaia di minuscoli punti luminosi ciascuno dei quali corrisponde a un pixel. Su uno schermo monocromatico il pixel è composto da un solo punto che può cambiare unicamente nell’intensità luminosa. Su uno schermo a colori il pixel è composto da tre punti, uno per il rosso, uno per il verde e uno per il blu, che combinandosi producono qualsiasi colore, di variabile intensità. Il numero di colori e di tonalità che possono essere visualizzati a video dipende dal numero di bit che all’interno della memoria video sono abbinati a ciascun pixel. Nel caso di sistemi monocromatici basta un bit (acceso spento), passando ai 256 colori ci vogliono 8 bit che diventano 24 quando si lavora con 16 milioni di colori. Il dot pitch è una misura della risoluzione di un monitor a colori espressa come distanza diagonale tra due punti adiacenti dello stesso colore. Valori accettabili sono quelli inferiori a 0,28 millimetri. Un’altra caratteristica è rappresentata dalla frequenza di rigenerazione (refresh) delle immagini visualizzate. Valori accettabili sono quelli superiori o uguali a 75 Hz. 14 Centro Formazione e Studi CD ROM (COMPACT DISC READ ONLY MEMORY) E’ un disco del diametro di 12 centimetri che memorizza le informazioni in modo permanente su uno strato metallico leggibile mediante raggio laser. In fase di scrittura un raggio laser di potenza sufficiente, modulato dal segnale binario che rappresenta i dati da registrare, altera le caratteristiche di riflessione del materiale, di cui è ricoperto il disco, in corrispondenza degli “1”. Nella fase di lettura, un raggio laser di piccola intensità inviato sulla superficie del disco, viene riflesso in maniera diversa a seconda della presenza o meno dell’alterazione. Un fotodiodo converte la maggiore o minore quantità di luce riflessa nel corrispondente codice binario. Il sottile foglio metallico è racchiuso tra due dischi di plastica trasparente, così da conferirgli rigidità e al tempo stesso permettere il passaggio della luce di cui è composto il raggio di lettura. Questi dischi contengono dati, suoni, immagini e filmati video. Un normale lettore di CD audio non può leggere un CD-ROM. Un CD-ROM contiene 650 MByte di dati. Il formato è stato sviluppato da Sony e da Philips che lo hanno lanciato nel 1985. I primi lettori di CD-ROM (fine anni Ottanta) leggevano dati con una velocità di 150 KByte per secondo. Questo valore è stato successivamente utilizzato come riferimento per i lettori di generazione successiva. Queste prime unità potevano essere utilizzate per ascoltare musica oppure per trasferire dati dal CD alla memoria centrale e al disco del computer, ma non erano assolutamente idonee per applicazioni multimediali. I lettori di CD-ROM realizzati alla fine del 1998 hanno una velocità 40 volte superiore. CD RW (COMPACT DISC REWRITABLE) E’ un nuovo tipo di CD che può essere scritto e riscritto fino a 1.000 volte. DVD (DIGITAL VIDEO DISC) Il DVD è un CD-ROM ad alta densità che ha lo stesso diametro dei CD-ROM tradizionali, ma capacità molto superiori, sufficienti a registrare un intero film. Viene usato come sistema di registrazione per video e audio di alta qualità, oltre che per informazioni digitali di qualsiasi genere. Lo standard DVD riunisce le peculiarità delle tecnica di scrittura sviluppate da due fronti contrapposti. Il primo fra questi è l’MMCD (Multimedia Compact Disc) creato da Sony e Philips, che consente di memorizzare 3,7 GByte su un singolo disco utilizzando due livelli sovrapposti sulla stessa faccia. Il secondo è l’SD (Super Density) di Toshiba e 15 Centro Formazione e Studi Panasonic che utilizza due facce per scrivere fino a circa 8 GByte sul singolo disco. Come risultato il DVD consente di scrivere sue due facce e due livelli fornendo capacità variabili da 4,7 a 17 GByte per disco e garantendo la compatibilità con tutti i CD-ROM attualmente in circolazione. La capacità base di 4,7 GByte si riferisce all’impiego di una singola faccia e di un solo livello su quella faccia. Si passa a 8,5 GByte per un disco a doppio strato e a 9,7 GByte per un disco a doppia faccia, ognuna delle quali ha un singolo strato. Il traguardo dei 17 GByte è raggiunto con l’impiego di quattro strati complessivi (due per faccia). Usando la capacità base è possibile memorizzare 90 minuti di filmato in modalità MPEG-2, standard per comprimere e memorizzare filmati e animazioni in formato digitale per poi riprodurli a schermo pieno, dedicato al mercato professionale per riprodurre filmati con 30 fotogrammi al secondo (video di alta qualità). La seconda generazione dei lettori DVD 2X lanciata all’inizio del 1998 ha una velocità doppia rispetto alla prima generazione. Legge informazioni digitali a 2,76 MByte al secondo. LA STAMPANTE. A seconda della loro modalità di funzionamento esistono diversi tipi di stampanti. STAMPANTE A GETTO D’INCHIOSTRO E’ un tipo di stampante che utilizza degli speciali ugelli che spruzzano inchiostro sulla carta per generare una stampa. Le stampanti a getto d’inchiostro sono molto silenziose e relativamente veloci, possono anche stampare a colori ma non sono in grado di stampare documenti copiativi come quelle a impatto. La qualità della stampa è spesso molto elevata, anche se per raggiungere il massimo delle prestazioni è necessario utilizzare carta speciale STAMPANTE LASER Utilizza un raggio laser per generare un’immagine o testo che viene poi impresso sulla carta. La velocità di stampa si indica in pagine per minuto (ppm), mentre la qualità è espressa dal numero di punti per pollice (dpi) che la stampante è in grado di produrre. 16 Centro Formazione e Studi STAMPANTE TERMICA E’ una stampante che utilizza carta sensibile alla temperatura per creare copie di testo e immagini. Buona parte dei fax in commercio sono dotati al loro interno di una stampante termica. STAMPANTI A IMPATTO Questa categoria di stampanti prevede l’impatto fisico tra la testina di stampa, il nastro inchiostratore e la carta per generare una stampa. Generano i caratteri colpendo con piccoli aghi un nastro inchiostrato. Sono le stampanti più veloci ma, la qualità di stampa è la peggiore e possono essere molto rumorose. Le stampanti a matrice di punti sono utilizzate soprattutto per alti volumi di stampa (per esempio i rapporti statistici). IL MODEM E’ un dispositivo, che può essere esterno al computer o installato all’interno del case, che permette la connessione di due o più computer mediante linea telefonica. Esistono modem più o meno veloci, a seconda del numero di bit che possono trasferire in un secondo (bps); la maggior parte dei modelli attualmente in commercio trasmette a 33600 bps, anche se da circa un anno sono stati messi sul mercato modem che raggiungono la velocità di 56000 bps. Oltre a permettere la connessione con Internet, mediante l’utilizzo di appositi software i modem permettono anche di inviare e ricevere fax, sostituendo del tutto i tradizionali apparecchi fax. 17 Centro Formazione e Studi INTRODUZIONE AI SISTEMI OPERATIVI Il Sistema Operativo (di seguito S.O.) è un insieme di programmi e istruzioni che governano le attività del calcolatore a partire dall'accensione, passando per lo svolgimento di tutte le operazioni correnti, fino ad arrivare al suo spegnimento. Esso permette quindi un dialogo con l’utilizzatore del computer consentendo attraverso l'interfaccia utente il caricamento e l’esecuzione dei programmi applicativi, la configurazione e la gestione dei dispositivi hardware, offrendo dei meccanismi di protezione delle risorse. SCHEMA SEMPLIFICATO DI ARCHITETTURA DI UN S.O. Applications User Interface tools Registry API (Application Programming Interface) Kernel Fyle System Manager Configuration Manager Device drivers Hardware Applications: software applicativi; User interface tools: strumenti per la gestione dell’interfaccia utente; l’interfaccia utente può essere fatta di solo testo o di tipo grafico, come i più moderni sistemi operativi (GUI: grafic user interface) a 32 bit. API (Application Programming Interface): funzioni o sootoprogrammi (sub routine) richiamabili da programmi applicativi, come ad esempio il message box di Windows; Registry: database che contiene le informazioni sulla configurazione hardware e software del sistema; Configuration Manager: Modulo che consente la gestione delle risorse hardware; Fyle system manager: gestisce la memorizzazione dei files sulle memorie di massa; Kernel: nucleo o parte centrale della struttura, gestisce le operazioni fondamentali del sistema operativo, come ad esempio la ripartizione della capacità elaborativa del processore tra diversi blocchi di codice da eseguire, gestire le eccezioni (exception) generate dall’hardware e governare altre funzioni hardware del sistema. 18 Centro Formazione e Studi Device drivers: parte basilare del sistema operativo che regola il funzionamento dei dispositivi elettronici e meccanici dell’elaboratore. All’accensione del computer, subito dopo che il BIOS ha assolto ai propri compiti relativi ai controlli sull’esistenza e la funzionalità hardware, viene caricato il S.O. che, in prima istanza, attiva la comunicazione tra processore, tastiera e unità disco. In tal modo l’utente può immediatamente impostare i propri comandi, chiedendo alla macchina di eseguire determinate operazioni oppure lanciando programmi scritti secondo le caratteristiche del sistema operativo medesimo. Il sistema operativo carica in memoria i programmi richiesti, ne controlla l’esecuzione e fornisce i servizi per l’utilizzo degli archivi memorizzati sui dischi e per la gestione delle risorse hardware. Per sfruttare al massimo le potenzialità di elaborazione della CPU, il S.O. si fa carico delle operazione più lente come la stampa dei risultati o l’acquisizione dei dati. I sistemi operativi attuali supportano una nuova tecnologia per il riconoscimento automatico dei dispositivi hardware. La tecnologia impiegata nella costruzione dei nuovi dispositivi è definita "Plug and Play" (letteralmente inserisci e lavora), e prevede, da parte del sistema operativo, il riconoscimento dei dispositivi e l'installazione automatica dei programmi (driver) che li gestiscono. Il S.O. si occupa, inoltre, della gestione e pianificazione della capacità di memoria degli hard disk. Alcuni dei compiti svolti sono più o meno comuni a tutti i sistemi operativi, altri dipendono invece dai sistemi di elaborazione da gestire. Ad esempio, sebbene tutti i sistemi operativi offrano dei meccanismi di protezione delle risorse più o meno intensi, alcuni, gestendo delle reti di computer, dispongono di strumenti di protezione molto forti, essenziali per garantire riservatezza e sicurezza. Tali strumenti si risolvono nell'utilizzo di password di accesso, nel controllo e nella gestione dell'accesso di altri utenti alla memoria del proprio computer, ecc (vedi Windows NT). I SISTEMI OPERATIVI PIÙ COMUNI Esistono diversi sistemi operativi, nati per elaboratori con differenti caratteristiche e per le esigenze del mercato in continua evoluzione. Il primo sistema operativo per personal computer è stato il DOS. 19 Centro Formazione e Studi MS-DOS Il DOS è stato il sistema operativo progettato per il primo personal computer immesso sul mercato dall’IBM. È un tipico sistema a 16 bit, monoutente e monotask: in altri termini utilizza istruzioni a 16 bit, lavora per un utente alla volta e può svolgere un compito per volta. Inoltre, ed è la sua più importante limitazione, consente di indirizzare soltanto 1 MB di memoria RAM. Ha inoltre un'interfaccia utente (UI) di tipo testo che comporta la conoscenza del linguaggio (comandi e sintassi) necessario per impartire le istruzioni. Nonostante questa serie di limiti, ha una piattaforma che è indipendente dall’hardware e può quindi funzionare su computer con caratteristiche differenti, probabilmente questo è il motivo della sua diffusione e delle conseguenti modifiche che lo hanno adattato alla crescente potenza dei nuovi elaboratori. - Modalità: Reale,Protetta Solitamente la memoria primaria è divisa in memoria convenzionale (da zero a 1024 Kb con possibilità di espansione EMS>1024 Kb), utilizzabile solo dai Programmi in modalità reale4 e, memoria estesa (XMS>1024 Kb), utilizzabile solo in modalità protetta5. WINDOWS L'evoluzione della tecnologia e la diffusione dei computer per uso domestico ha posto, abbastanza rapidamente, l'esigenza di mettere a disposizione dell’utente un'interfaccia meno ostica e più comprensibile. Come primo passo, il DOS venne 4 Metodo di funzionamento nativo dei personal computer basati su microprocessore 80x86 e modo operativo attivato per difetto sui modelli di processore successivi che emulano le funzioni dell’80x86. In questa modalità il software applicativo può far riferimento diretto a qualsiasi indirizzo della memoria e a qualsiasi canale di input/output senza alcun vincolo o filtro imposto dal processore. Lo spazio di memoria complessivamente indirizzabile è di 1 MByte, di cui 640 KByte riservati alle applicazioni dell’utente e al sistema operativo. Questa è la modalità di funzionamento del DOS, ha il vantaggio di essere semplice e relativamente agile da gestire, e quindi di adattarsi anche a macchine di potenza limitata, però consente l’esecuzione di un solo programma (task) alla volta e non offre nessun sistema di gestione o di protezione della memoria per cui può accadere che due programmi tentino di accedere alla stessa porzione di RAM creando un conflitto che blocca il sistema e determina la perdita dei dati in elaborazione. 5 Modalità di funzionamento tipica del processore 80286 Intel e successivamente ereditata da tutti i processori Intel successivi che la emulano. In questo tipo di modalità di funzionamento del CPU un software può eseguire operazioni riservate che manipolano componenti critiche del sistema come la memoria e i canali di input/output solo attraverso l’intermediazione del sistema operativo, d’altro canto ha il vantaggio di poter indirizzare tutta la memoria visibile dal particolare processore in uso. La funzione più importante è quella di protezione della memoria, da cui deriva il nome, e consiste nel fatto che la CPU impedisce a qualsiasi programma di memorizzare informazioni in un’area che sia già occupata da un altro programma oppure dal sistema operativo. In modalità protetta è possibile realizzare funzioni di multitasking (esecuzione di più task contemporaneamente). 20 Centro Formazione e Studi equipaggiato di un’interfaccia utente di tipo grafico (GUI) che incapsulasse il vecchio sistema operativo. Nacque così, sempre per gli IBM e compatibili, Windows, un "ambiente operativo" in cui i comandi del DOS furono sostituiti da icone e menu accessibili con l’uso del mouse. In più le varie applicazioni, tramite l’uso di finestre, potevano essere gestite contemporaneamente, non essendo necessario chiuderne una per aprirne un’altra. Nella sua evoluzione Windows è stato dotato di un sottosistema che ha consentito una forma (seppure limitata) di multitasking, di una tecnologia per la gestione di memoria che consentiva alle applicazioni di accedere a tutta la memoria fisica e di un semplice sistema di connessione in rete locale. WINDOWS 95 Rappresenta l’evoluzione di Windows 3.x in grado di accedere alle funzionalità dei processori a 32 bit. Windows 95, infatti, è un sistema operativo a 32 bit che, pur potendo supportare le applicazioni a 16 bit, è dotato di una interfaccia utente decisamente più evoluta di quella di Windows 3.x e, soprattutto, di un migliore sistema di gestione del multitasking delle applicazioni e di una migliore gestione della memoria. WINDOWS 98 E 2000 Rappresenta l'evoluzione del Windows 95 sia nella direzione di una maggiore semplicità d'uso (l'interfaccia risulta ancora più semplice e maneggevole grazie alle nuove opzione del desktop), sia nella direzione di una maggiore affidabilità del sistema attraverso un miglioramento delle prestazioni (il nuovo file system a 32 bit6 consente una gestione più efficiente delle informazioni presenti nel disco rigido e un notevole risparmio di spazio), sia nella direzione dell'utilizzo di Internet (è possibile accedere al World Wide Web in qualunque momento e da qualunque applicazione). WINDOWS NT Si tratta di un sistema operativo nato per le reti di computer del tipo client-server dove alcune delle macchine in rete fungono esclusivamente da "fornitrici" (server) di risorse (principalmente Files, Stampanti e dispositivi di comunicazione) e di servizi, mentre le altre macchine (client) possono accedere alle risorse messe a disposizione dai vari server a seconda dei criteri di sicurezza e di accesso stabiliti dall'amministratore di sistema. 6 Vedi in seguito File system 21 Centro Formazione e Studi A differenza dei sistemi operativi installati solitamente sui personal computer, il S.O. Windows NT deve assolvere un numero di funzioni considerevolmente superiore, relative soprattutto alla gestione delle risorse condivise e alla sicurezza ed alla gestione degli utenti. Questo è uno dei compiti più critici del S.O. di rete che deve poter permettere la maggiore flessibilità possibile nell'attribuzione dei vari criteri di sicurezza: permessi di accesso alle varie risorse, eventuali priorità di accesso in funzione della tipologia degli utenti, rendere invisibili e inaccessibili le risorse private e quelle che l'amministratore ritiene tali. MACOS E’ il sistema operativo creato dalla APPLE che ha da sempre costruito computer che si contrappongono ai compatibili IBM; i suoi computer si sono sviluppati infatti a partire da un microprocessore prodotto dalla MOTOROLA avente caratteristiche diverse dai processori INTEL utilizzati dalla IBM e dai compatibili. Questo sistema è completamente diverso dal DOS e antesignano, in qualche modo, del Windows. Aveva, infatti, ed ha tuttora, un interfaccia di tipo grafico, con un insieme di applicativi integrati. E’ stato il primo a consentire l’uso del mouse. OS2 E’ un sistema operativo creato dall’IBM prima ancora che Microsoft introducesse il Win95 ed in parte sviluppato con la stessa Microsoft. Già al momento della sua introduzione nel 1992 aveva quasi tutte le caratteristiche che sono state successivamente introdotte in Windows95. Malgrado ciò esso non è riuscito ad ottenere un grande successo forse perché, per gli utilizzatori di PC IBM, i tempi per passare ad un sistema operativo diverso dal DOS non erano ancora maturi, mentre chi cercava un’interfaccia grafica si orientava sui computer Macintosh della Apple. UNIX E’ un sistema operativo multiutente, multitask, con un’interfaccia sia di tipo grafico che di tipo testo e a 32 bit. E’ quindi un sistema che accorda tutti i vantaggi degli altri sistemi operativi. Nonostante ciò non è ancora diffusissimo per i Personal Computer poiché è nato per i mainframe, cioè per i computer di grandi dimensioni a cui si possono connettere più utenti contemporaneamente e che eseguono simultaneamente più programmi. E’ solo da poco tempo che si è sviluppato lo stesso sistema anche per i PC, il suo nome è LINUX e prende il nome dal suo ideatore Linus Thorvald. Si tratta di un sistema 22 Centro Formazione e Studi operativo completo che possiede tutte le caratteristiche di Unix ma che risponde ad esigenze di ufficio e domestiche. Inoltre è gratuito e disponibile in rete. (INTERNET) MEMORIA REALE E MEMORIA VIRTUALE Una distinzione importante in tema di memoria del computer è quella tra memoria reale e memoria virtuale. La memoria reale è anche detta memoria fisica. Comprende tutte le locazioni di memoria scrivibili, il che significa tutta la RAM installata sul sistema. Alcune porzioni della memoria fisica vengono riservate al sistema operativo, per il poweron self test (POST) e per il video. Si tratta di quella parte di memoria fisica che è disponibile per le istruzioni e che viene chiamata memoria di sistema. Si contrappone alla memoria virtuale che, invece, è una tecnica che consente alle applicazioni di vedere più spazio di memoria di quello che effettivamente esiste in RAM. In questo modo è possibile poter eseguire programmi la cui dimensione eccederebbe la capacità del sistema oppure diversi programmi contemporaneamente. A questo fine si usa come are di sfogo una porzione su disco fisso (nei pc si chiama area di swap o file di swap) nella quale si trasferiscono le informazioni contenute in RAM (dati e programmi) che al momento non vengono utilizzati così da lasciare posto a quelli nuovi che l’utente ha richiesto di utilizzare in quel momento. Grazie a questo accorgimento la memoria di sistema viene incrementata e viene vista come una singola grande e uniforme riserva di memoria primaria (in RAM o ROM), anche se il realtà è frammentata e composta in parte da memoria secondaria (su disco). Le applicazioni accedono alla memoria usando indirizzi virtuali (logici) che vengono poi tradotti (mappati) in indirizzi fisici. Due tecniche comuni usate dai sistemi operativi moderni per realizzare la memoria virtuale sono la paginazione e la segmentazione. FILES SYSTEM MANAGER Ogni sistema operativo trasferisce il compito di gestire la memorizzazione delle informazioni sulle memorie di massa ad modulo specifico chiamato Files System Manager. Quando si salva un documento o si installa un programma, le informazioni contenute nel file vengono memorizzate in aree del disco rigido denominate cluster. Minore è la dimensione di questi cluster minore risulterà lo spazio inutilizzato e migliori saranno le prestazioni di memorizzazione del disco rigido. La dimensione dei cluster dipende dalla dimensione delle partizioni del disco rigido che a sua volta 23 Centro Formazione e Studi dipende dal tipo di file system utilizzato7. In base all'impostazione predefinita, la maggior parte dei computer utilizza un'unica partizione. Se l'hard disk non supera i 10 Gb, con dischi di capacità superiore per utilizzare cluster piccoli è necessario suddividere l'hard disc in due partizioni. Il DOS, il WINDOWS 95, il Windows98 e 2000 utilizzano il File System FAT (file allocation table). Mentre però il Windows 95 utilizzava una FAT a 16 bit8 il Windows 98 e quello 2000 (ma anche l'ultima versione del Windows 95) usa una FAT 32 bit. La differenza è appunto nella dimensione dei cluster: per dischi rigidi con partizioni di dimensione di 2 GB la FAT a 16 bit utilizza cluster di 32 KB mentre quella a 32 utilizza cluster di 4 KB. È chiaro che con cluster di dimensioni maggiori l’efficienza di utilizzo diminuisce visto che basta un byte che deborda dal penultimo cluster per avere la quasi totalità dell’ultimo cluster sprecato, spreco tanto maggiore quanto è maggiore la dimensione del cluster. Viene anche modificato il settore di bootstrap del disco al fine di creare un cluster iniziale a 32 bit invece che a 16 bit. FILES Parlando della memorizzazione delle informazioni sulle memorie di massa, si deve subito fare riferimento ai files. Tecnicamente un file è un insieme ordinato di byte e rappresenta l’unità di archiviazione minima. La memorizzazione dei file all'interno del computer avviene tramite una struttura logica che ne identifica la posizione fisica e le dimensioni (in termini di settori e di tracce), e che li raccoglie in contenitori chiamati “Directory” o cartelle. Esistono file di testo e file binari. I primi contengono solo caratteri leggibili con un normale editor di testo (es. file con estensione ini, inf, txt, ecc..). I file binari contengono un codice che la macchina è pronta ad eseguire. Il formato di registrazione è simile a quello di qualsiasi altro file di testo, anche se contiene simboli che in un file ASCII non sarebbero ammessi, inoltre non è concepito per essere letto dall’uomo, bensì per essere letto ed eseguito direttamente dal computer. Un file può essere individuato in modo univoco, all’interno del disco rigido o del floppy, da una combinazione di due attributi, il Nome e l’Estensione. Il Nome può contenere fino a 256 caratteri (compresi gli spazi), non deve contenere però dei caratteri che il sistema operativo utilizza per altre operazioni (ad es. il 7 Nel caso del DOS e di Windows a 16 bit la dimensione tipica è di 2 KByte per dischi fino a 127 MByte, 4 KByte per dischi fino a 255 MByte, 8 KByte per dischi fino a 511 MByte, 16 KByte per dischi fino a 1023 MByte e 32 KByte per dischi fino a 2047 MByte (la dimensione massima del volume generabile in questo ambiente) 8 i 16 e i 32 bit rappresentano la quantità di bit indirizzati ai settori del disco. 24 Centro Formazione e Studi punto viene utilizzato per separare il nome dall’estensione, non conviene quindi utilizzarlo nel nome stesso). L’estensione può essere di tre o di quattro caratteri, non viene modificata o scritta dall’utente ma dipende dal programma che ha generato il file. Quando si salva un file su disco l'utente si preoccuperà di individuarne il nome, mentre il programma in uso attribuirà l’estensione. L'identificazione di un file in modo univoco porta ad una conseguenza molto importante: è possibile che in una stessa cartella esistano files generati da programmi diversi (quindi con estensione diversa) con lo stesso nome, ma non è possibile che in una stessa cartella esistano files con lo stesso nome e con la stessa estensione, perché il S.O. li riconoscerà come lo stesso file e sovrascriverà l’uno con l’altro. Le estensioni di file più comuni sono le seguenti: DOC Documento creato da Word XLS Foglio di lavoro creato da Excel BMP Immagini formato bitmap, utilizzate per gli sfondi di Windows PPT Presentazioni create con il programma Power Point EXE File eseguibili ORGANIZZAZIONE DEI FILES I file sono organizzati in una struttura logica e gerarchica che permette una più facile individuazione e gestione da parte dell'utente. Tale struttura è già presente sul Personal Computer dopo l’installazione del sistema operativo: essa prevede una suddivisione in cartelle, sottocartelle e files che può essere ulteriormente arricchita e diversificata con la creazione di altre cartelle e sottocartelle a seconda dell’organizzazione del lavoro dell'utente. La gerarchia consiste nella dipendenza di ciascuna cartella da una cartella di livello superiore o direttamente dalla directory “radice” creata con l'installazione del sistema operativo e individuata dalla lettera “C:”, identificativa del disco rigido. L'individuazione, da parte dell'utente, di ciascuna directory all'interno del disco rigido avviene in base al percorso (path) che dalla directory radice si dirama verso la stessa. L'interfaccia che il sistema operativo fornisce all'utente per organizzare il proprio disco rigido in cartelle e sottocartelle e per effettuare agevolmente operazioni su tali cartelle e sui file in esse contenuti è Gestione risorse (File manager nel Windows 3.x ed Esplora risorse nel Windows98 e versioni successive). 25 Centro Formazione e Studi OPERAZIONI SUI FILES All'interno di questa struttura oltre a creare delle cartelle l'utente può svolgere tutta una serie di operazioni sia sui file che sulle cartelle. E’ possibile in primo luogo aprire cartelle e file per vederne il contenuto, è possibile spostarli da una posizione ad un'altra, è possibile copiarli da una posizione ad un'altra ed è possibile cancellarli. Con l’interfaccia grafica che offre Windows queste operazioni si possono svolgere anche solo con l’uso del mouse, dall’applicazione “Esplora Risorse”; prima era necessario conoscere i comandi specifici che utilizzava il DOS per ognuna di esse. UTILITÀ I programmi di utilità sono offerti sempre dal sistema operativo per la manutenzione del computer. Essi sono destinati a migliorare l’efficienza del sistema e ad agevolarlo nei propri compiti. Tra questi si possono individuare i programmi di deframmentazione dei dischi rigidi, lo scandisk, il backup, il drivespace e diversi altri. La deframmentazione dei dischi elimina gli spazi creati dal sistema operativo nella memorizzazione dei dati. Generalmente un file viene memorizzato sull’hard disk come un'unica striscia di dati in modo da renderne più rapida la lettura. Con l’uso capita però che non ci sia più spazio sufficiente per salvare un file in un’unica zona del disco ed il sistema operativo è costretto a spezzarlo per inserirlo negli spazi liberi, con un aumento del tempo necessario per leggere i dati. Questa utilità consente appunto di ottimizzare lo spazio sul disco rigido, ricostituendo i file frammentati. Lo scandisk viene invece eseguito per controllare l’integrità del disco rigido. Tale integrità può andare perduta quando il computer viene spento mentre le applicazioni o i file sono ancora aperti, comportando errori nei file e nelle cartelle o frammenti di file perduti. Il backup invece salvaguarda l’integrità del proprio lavoro, poiché consente di fare delle copie dei file che tutelano contro eventuali problemi cui può andare incontro il computer Il drivespace consente di comprimere dischi rigidi e dischi floppy per aumentare lo spazio disponibile per la memorizzazione dei file. 26 Centro Formazione e Studi PROGRAMMI APPLICATIVI Gli applicativi sono il software con cui chi lavora ha a che fare per la maggior parte del tempo, sono singoli programmi la cui utilità ed il cui scopo hanno confini ben delineati. La loro scelta è basata sul tipo di sistema operativo utilizzato, dal momento che sfruttano intensamente i suoi comandi e la sua gestione delle risorse. 27 Centro Formazione e Studi SOMMARIO HARDWARE E SOFTWARE ........................................................................................... 1 CONSIDERAZIONI SUL FUNZIONAMENTO DI UN COMPUTER......................... 1 LA CPU.............................................................................................................................. 3 CPU E MEMORIA DI UN COMPUTER......................................................................... 5 MEMORIA PRIMARIA ............................................................................................... 6 MEMORIA SECONDARIA ......................................................................................... 9 IL BUS ............................................................................................................................. 10 Il chipset ...................................................................................................................... 10 PCI (Peripheral Component Interconnect) .................................................................. 10 USB (Universal Serial Bus)......................................................................................... 11 LE SCHEDE DI INTERFACCIA (O SCHEDE DI ESPANSIONE) ................................................... 12 Scheda Video............................................................................................................... 12 AGP (Accelerated Graphics Port) ............................................................................... 13 IL MONITOR ...................................................................................................................... 14 CD ROM (COMPACT DISC READ ONLY MEMORY) ......................................................... 15 CD RW (Compact disc ReWritable) ........................................................................... 15 DVD (Digital Video Disc)........................................................................................... 15 LA STAMPANTE................................................................................................................. 16 Stampante a getto d’inchiostro .................................................................................... 16 Stampante laser............................................................................................................ 16 Stampante termica ....................................................................................................... 17 Stampanti a impatto ..................................................................................................... 17 IL MODEM ........................................................................................................................ 17 INTRODUZIONE AI SISTEMI OPERATIVI............................................................... 18 I SISTEMI OPERATIVI PIÙ COMUNI ..................................................................................... 19 MS-DOS ...................................................................................................................... 20 Windows...................................................................................................................... 20 Windows 95................................................................................................................. 21 Windows 98 e 2000 ..................................................................................................... 21 Windows NT ............................................................................................................... 21 MacOs.......................................................................................................................... 22 OS2 .............................................................................................................................. 22 Unix ............................................................................................................................. 22 MEMORIA REALE E MEMORIA VIRTUALE ....................................................... 23 FILES SYSTEM MANAGER .................................................................................... 23 FILES .......................................................................................................................... 24 Organizzazione dei files .............................................................................................. 25 Operazioni sui files...................................................................................................... 26 UTILITÀ ............................................................................................................................ 26 PROGRAMMI APPLICATIVI ................................................................................................. 27 28