Curtin, 7e - Capitolo 5

Page 1

5

Il sistema operativo i principali tipi di software disponibili. ⊸ Intrudurre i diversi tipi di interfacce utente e di sistemi operativi. ⊸ Confrontare la funzione e gli impieghi di un sistema operativo. ⊸ Spiegare gli elementi di base di un sistema operativo. ⊸ Usare i programmi di utilità. ⊸ Conoscere in che cosa consiste l’elaborazione centrata sul documento e perché è importante. ⊸ Capire ⊸ Riconoscere i problemi più comuni legati al software.

Obiettivi del capitolo

Senza il software il computer non è che un ammasso di plastica e metallo, tanto costoso quanto inutile. È infatti il software che permette al computer di svolgere tutti quei numerosi compiti che lo rendono una macchina universale: per cambiare le funzioni che un elaboratore è in grado di eseguire non si deve fare altro che cambiare programma. Prima dell’avvento del PC, i programmi in genere venivano sviluppati o direttamente dall’azienda che li utilizzava o dalle compagnie che vendevano gli elaboratori e provvedevano alla loro manutenzione. I computer erano talmente pochi che era impensabile produrre programmi per un mercato di massa. Nel 1965, per esempio, in tutti gli Stati Uniti c’erano soltanto diecimila elaboratori, per cui anche un programma di alta qualità non avrebbe potuto vendere che qualche centinaio di copie a prezzi molto elevati. La situazione cambiò radicalmente negli anni Ottanta quando, grazie alla diffusione capillare dei più piccoli ed economici PC, per le case produttrici di software si aprì un vastissimo mercato, e la produzione di programmi su grande scala determinò una significativa riduzione dei prezzi e la nascita di programmi capaci di risolvere i problemi più disparati. Il risultato di anni di mercato selvaggio è ora sotto gli occhi di tutti. In alcuni settori di largo consumo si è stabilizzato un monopolio di fatto, dovuto a iniziative commerciali spregiudicate unite a una sostanziale inerzia del grande pubblico; questa situazione determina un generale malcontento senza che però sembri apparire all’orizzonte qualcosa di nuovo a mutare la situazione. In altri campi molto specifici, invece, si è arrivati a una situazione paradisiaca dove il sistema clienti-fornitori di software sembra risolvere in anticipo i problemi prima ancora che stimolino il desiderio di qualcosa di nuovo. Dal punto di vista degli utenti un mercato meglio configurato porterebbe grandi vantaggi. Invece spesso si è costretti a imparare a usare un determinato software e rimanere legati a esso per non perdere la propria competenza, la propria esperienza.

05txt.indd 101

15/01/21 07:30


102  Capitolo 5 Nella realtà dei fatti, chi deve aggiornarsi molto spesso è proprio la componente umana del sistema software-hardware fatto di una persona davanti al PC; non tanto per non rimanere indietro nell’aggiornamento, quanto per non rimanere sorpresi da improvvisi cambiamenti e virate che un’unica grande industria può imprimere in una situazione del genere. Il sistema operativo, indispensabile per il funzionamento di un elaboratore elettronico, si occupa di controllare il computer stesso e permettere ai programmi applicativi, i nostri strumenti di lavoro, di funzionare. Il compito non è affatto facile, e non è il solo. Per far funzionare gli applicativi, il sistema operativo deve rendere fruibili dai programmi tutti i dispositivi che fanno parte del computer, oltre a quelli collegati esternamente. Deve cioè fare da arbitro tra tutte le richieste che i programmi fanno a questi dispositivi e il loro modo di soddisfare quelle richieste, e presentare tutte queste possibilità e il loro svolgersi in una maniera gradevole e comprensibile agli utenti: user friendly. Infine, tutte queste risorse vanno protette da accessi esterni indesiderati, da software applicativi nocivi (i virus), da utenti semplicemente maldestri o in un certo senso da se stessi, quando accadono i famigerati “conflitti di risorse”. È il sistema operativo che rende sotto forma di gradevoli icone la posizione dei nostri file e directory, non ci fa aggiornare i file condivisi in rete prima che un nostro collega abbia finito di usarli, gestisce le code di stampa senza farci perdere tempo attendendo i documenti altrui ed esegue più applicazioni contemporaneamente rendendoci il lavoro più facile e rapido. Tutto questo lavoro viene eseguito senza che l’utente se ne accorga e senza penose conseguenze per il suo lavoro, come perdere tempo in lunghe attese o interpretare oscuri messaggi d’errore. Non va dimenticato che i sistemi operativi non sono una prerogativa dei PC ma, ormai, di tutti i tipi di elaboratori elettronici. La centralina di controllo di un’automobile, che gestisce il funzionamento del motore, della trasmissione e dei dispositivi di sicurezza, ha il suo sistema operativo orientato a dare i massimi risultati nel lavoro real time. I telefoni cellulari e gli elettrodomestici di ultima generazione hanno anche loro dei sistemi operativi, realizzati per sfruttare al massimo le scarse risorse disponibili in quelle “macchine”. In tali casi, avere un sistema operativo programmabile rende le operazioni di diagnosi dei guasti, riparazione e aggiornamento sorprendentemente simili a quelle che si fanno abitualmente in un comune computer.

5.1  Che cos’è il software? Gli elaboratori non possono funzionare senza il software, ossia le sequenze di istruzioni che permettono loro di svolgere vari compiti. Que­ ste sequenze di istruzioni, meglio note come programmi, sono scritte da specialisti chiamati programmatori e vengono distribuite agli utenti finali su appositi dischi o tramite Internet. Possiamo distinguere due categorie fondamentali di software: i software di sistema e i programmi applicativi.

I sistemi operativi I software di sistema comprendono i linguag­ gi di programmazione e i sistemi operativi. I linguaggi di programmazione, che tratteremo più approfonditamente nel Capitolo 12, servono per creare tutti gli altri programmi. I sistemi operativi, invece, sono i programmi che fanno funzionare i vari componenti del computer e van­ no eseguiti prima di qualsiasi altro programma perché sono quelli che permettono all’elaboratore di interagire con l’utente. È grazie al sistema ope­ rativo, infatti, che potete ordinare al computer di aprire il programma di videoscrittura, di salvare un documento, di stampare un file ecc. Essendo così importante, il sistema operativo viene carica­ to automaticamente al momento dell’accensione

05txt.indd 102

del computer e procede quindi alla gestione delle risorse del sistema senza alcun intervento da parte dell’utente, che spesso non è nemmeno consape­ vole di ciò che avviene. In un certo senso, il siste­ ma operativo può essere assimilato a una sorta di “autocoscienza” primordiale del computer.

I programmi applicativi L’elaboratore e il software possono essere parago­ nati rispettivamente a un attore e a un copione: come l’attore recita ruoli diversi a seconda del co­ pione che gli viene dato, l’elaboratore svolge fun­ zioni diverse a seconda del programma utilizzato. I compiti eseguiti con l’ausilio del computer sono chiamati applicazioni e i programmi utilizzati per svolgerli sono detti programmi applicativi (Figura 5.1), anche se oggi applicazioni, app e programmi applicativi sono considerati sinonimi. La redazione di una lettera, la stesura di un bilan­ cio e la creazione di una lista di spedizioni sono applicazioni; i programmi di videoscrittura, i fogli elettronici e il software di gestione delle basi di dati sono i programmi applicativi con cui le ap­ plicazioni vengono svolte. È grazie allo sviluppo e alla distribuzione su vasta scala di questi pro­ grammi che il computer è diventato una macchi­ na universale, cioè in grado di svolgere una varietà di applicazioni pressoché infinita.

15/01/21 07:30


Il sistema operativo  103

Figura 5.1  Alcuni tipi di programmi applicativi: un programma di grafica, un programma di videoscrittura e un foglio elettronico.

Altri tipi di programmi Oltre al software applicativo, esistono anche altri programmi di largo impiego, come, per esempio, i software di intrattenimento, di istruzione e di consultazione, e i programmi di utilità, che rispondono a specifiche esigenze dell’utente. Al­ cune di queste utilità integrano le funzioni del sistema operativo, altre quelle dei programmi ap­ plicativi. Un programma di utilità, per esempio, può essere utilizzato per la compressione dei file sul disco, un compito che rientra fra quelli del

Mia madre era un sistema operativo Potrà sembrarvi stupefacente ma i primi sistemi operativi erano delle persone. Negli anni Cinquanta, infatti, i programmi erano scritti su una pila di schede perforate che dovevano essere inserite manualmente da un operatore ogni volta che il programma andava cambiato. In quel periodo, una delle persone che avrebbero maggiormente contribuito allo sviluppo di Unix (tuttora uno dei principali sistemi operativi) avanzò l’idea di un sistema operativo che controllasse le risorse dell’elaboratore e fissasse l’ordine di esecuzione delle operazioni, perché non era più possibile fare tutto manualmente. Oggi i sistemi operativi non si limitano più alla sola esecuzione dei programmi; quasi tutti, infatti, comprendono un vasto numero di applicazioni che garantiscono il corretto funzionamento del sistema e ne gestiscono le risorse.

05txt.indd 103

sistema operativo, mentre un’altra utilità può ser­ vire per vedere un documento in diversi forma­ ti, funzione tipica di un programma applicativo. Elenchiamo di seguito alcuni tra i programmi di utilità più diffusi: • gli antivirus, che consentono di proteggere il sistema dai virus informatici; • le utilità per la visualizzazione dei file, che per­ mettono all’utente di vedere il contenuto di un’ampia varietà di documenti anche quando l’applicazione non è presente nel sistema; • i programmi diagnostici, che segnalano al­ l’utente la presenza di eventuali problemi nel sistema; • i programmi di disinstallazione, che permetto­ no di rimuovere le applicazioni e i file che non servono più; • le utilità per il miglioramento delle prestazioni, che servono ad aumentare la velocità del siste­ ma o la capacità di memorizzazione; • i programmi di backup, che servono per la protezione dei file duplicandoli su nastro o su disco.

Il progresso nel campo dell’informatica Il settore dell’informatica è caratterizzato da un incessante susseguirsi di innovazioni, tanto che quasi ogni giorno vengono alla ribalta nuovi si­ stemi più potenti e utili. In realtà, i cambiamenti non avvengono da un giorno all’altro perché le innovazioni richiedono un certo tempo per esten­ dersi a tutto il sistema; come un’onda partono dai

15/01/21 07:30


104  Capitolo 5

,QQRYD]LRQH GHOO·KDUGZDUH

,QQRYD]LRQH GHO VLVWHPD RSHUDWLYR

,QQRYD]LRQH GHO SURJUDPPD DSSOLFDWLYR

Figura 5.2  Le fasi di innovazione di un sistema.

©Mahod84/Shutterstock

componenti hardware, passano attraverso i siste­ mi operativi e arrivano infine ai programmi appli­ cativi (Figura 5.2).

5.2  Le interfacce utente Quando accendete il computer, appare sullo schermo l’interfaccia, chiamata così per­ ché è il mezzo di interazione tra l’utente e la macchina. I primi elaboratori avevano come unica interfaccia utente dispositivi hardware come la stampante e, a volte, una fila di luci intermittenti. Tuttavia, a mano a mano che il computer si è evoluto per rispondere in modo più adeguato alle esigenze dell’utente, anche le interfacce sono di­ ventate più flessibili e facili da utilizzare e soprat­ tutto sono state introdotte le interfacce software (Figura 5.3).

Figura 5.3 Il desktop di Mac OS Catalina.

Le interfacce e i sistemi operativi I sistemi operativi sono dotati di un’interfaccia software che permette la comunicazione con ­l’utente. L’interfaccia, comunque, rimane un ele­

Le interfacce a caratteri Inizialmente tutti i programmi utilizzavano un’interfaccia a caratteri. Il numero di caratteri era fisso: le lettere dalla A alla Z in maiuscolo e minuscolo, le cifre da 0 a 9 e un numero molto limitato di altri caratteri come ©, Ø e Ä, in tutto meno di 256 caratteri. Poiché il corrispondente sistema operativo non supportava grafica, ogni programmatore doveva inventare un proprio metodo per definire i comandi. Le interfacce a caratteri sono più rapide e ri-

chiedono meno memoria rispetto alle interfacce grafiche, ma sono più difficili da utilizzare. Il premio per la peggiore interfaccia utente mai sviluppata va a pari merito ai tremendi prompt di dBASE e DOS (un punto bianco su fondo nero il primo, A:\> il secondo). Se in dBASE si dovevano digitare comandi astrusi come SORT ON FIRST_NAME TO NEWFILE, in DOS ce n’erano altri ugualmente facili da dimenticare, come COPY A:*.TXT C:\WORD\NEW.

C:\>DIR *.BAK Volume in drive C is PROGRAMS Volume Serial Number is D845-2F2F Directory of C:\WINDOWS SYSTEM WIN WININIT ACTIVE-1

BAK BAK BAK BAK 4 file(s) 0 dir(s)

2,052 8,637 45 9,015

04-15-97 1:57p 04-15-97 12:55p 04-19-97 8:16a 04-19-97 5:27a 19,749 bytes 434,470,912 bytes free

SYSTEM.BAK WIN.BAK WININIT.BAK Active Setup Log.BAK

C:\>

05txt.indd 104

15/01/21 07:30


Il sistema operativo  105

Le interfacce grafiche utente (GUI) Le prime interfacce grafiche utente (GUI) ven­ nero sviluppate allo Xerox PARC (Palo Alto Research Center) negli anni Settanta e furono utilizzate per la prima volta nel 1980 su un computer chiamato Xe­ rox Star Oggi il mercato offre numerose interfacce grafiche, tra le quali la più diffusa è quella del siste­ ma operativo Windows di Microsoft (Figura 5.4)., anche se non arriva a ottenere le performance del più stabile ed evoluto Mac OS di Apple. Tutte le interfacce grafiche, in ogni modo, presentano una serie di funzionalità comuni:

©omihay/Shutterstock

• visualizzano sullo schermo del computer del­ le finestre sovrapposte, ognuna delle quali può contenere un programma applicativo o un do­ cumento; l’utente può così passare velocemen­ te da un compito all’altro; • per eseguire un comando basta puntare l’icona che lo rappresenta sul desktop digitale e fare clic con il mouse; • impiegano la tecnologia WYSIWYG, grazie alla quale i documenti vengono visualizzati sullo schermo in modo molto simile a come appari­ ranno una volta stampati;

Figura 5.4  L’interfaccia grafica di Windows 10.

05txt.indd 105

• i comandi sono gli stessi per tutti i programmi. Per cancellare un elemento da un documento, per esempio, si tratti di una parola, di un dise­ gno o di un record di una base di dati, si utilizza sempre lo stesso comando. Utilizzare un nuo­ vo programma diventa quindi più facile perché molte funzioni che l’utente ha già appreso a usa­ re sono presenti anche nella nuova applicazione.

Le interfacce a stilo Il principale svantaggio degli elaboratori è che in genere i dati vanno inseriti tramite la tastiera, le cui dimensioni limitano la possibilità di ridurre la grandezza del computer. Di conseguenza, per gli elaboratori tascabili serve un tipo di sistema ope­ rativo e di interfaccia utente diverso. Di norma l’interfaccia è costituita da uno schermo sensibile al contatto, sul quale si può scrivere o puntare un comando per mezzo di uno stilo. Lo schermo interpreta la posizione dello stilo e visualizza il te­ sto o esegue il comando. In alcuni casi è possibile, comunque, collegare tastiere esterne che agevola­ no la produttività nell’input dei dati

Le interfacce touch screen I chioschi degli aeroporti, dei musei e di molti altri luoghi pubblici sono dotati di elaboratori che si utilizzano puntando con un dito le immagini e le icone presenti sullo schermo. L’uso di que­ sti sistemi è talmente semplice che non servono nemmeno le istruzioni (Figura 5.5).

Le interfacce conversazionali L’interazione tra computer e utente difficilmente continuerà a basarsi sull’uso del mouse. Per essere davvero funzionali, infatti, gli elaboratori in futu­ ro dovranno essere in grado di eseguire coman­ di vocali. In questo campo i progressi sono stati

©frantic00/Shutterstock

mento indipendente, tant’è che uno stesso siste­ ma operativo può averne più di una. Probabilmen­ te, nel corso di informatica che state seguendo utilizzate un’interfaccia grafica utente, con la quale potete interagire selezionando menu e pulsanti con il mouse. Tuttavia questo non è l’u­ nico tipo di interfaccia esistente. Le interfacce a caratteri sono state le prime a essere sviluppate e, nel­l’uso quotidiano, sui PC, sono state quasi del tutto soppiantate dalle interfacce grafiche. Vista l’evoluzione delle interfacce grafiche, sempre più avanzate e user friendly, i programmi applicativi che utilizzano l’interfaccia a caratteri sono dedi­ cati quasi completamente ad ambiti specialistici (come l’amministrazione di server).

Figura 5.5  aeroporto.

L’interfaccia touch screen presente in un

15/01/21 07:30


106  Capitolo 5

Le funzioni principali Una delle funzioni fondamentali del sistema opera­ tivo consiste nel gestire le risorse dell’elaboratore e controllare che le operazioni vengano eseguite in modo rapido e regolare. Il sistema operativo ha inol­ tre la funzione di determinare dove vanno memo­ rizzati i programmi e i dati, di coordinare la comuni­ cazione tra i vari componenti del computer, come, per esempio, la stampante e il monitor, e di gestire l’interazione tra l’utente e i programmi applicativi.

Il ruolo del BIOS Al momento dell’accensione, l’elaboratore cerca in­ nanzitutto il BIOS (Basic Input Output System, siste­ ma fondamentale di input/output), un piccolo pro­ gramma registrato permanentemente su un chip di memoria ROM (Figura 5.6). Poiché questa piccola porzione di software è installata in modo perma­ nente nel sistema, può essere considerata una via di mezzo tra software e hardware e viene spesso indicata con il termine firmware. È riconoscibile per non avere alcuna grafica; al momento dell’accen­ sione il computer indica un tasto da premere per accedere al BIOS. Esso svolge una serie di importanti funzioni: per esempio, interpreta i dati immessi tra­ mite la tastiera, visualizza i caratteri sullo schermo, gestisce le comunicazioni che passano attraverso le

05txt.indd 106

ma fondam ste

Hardware

tput (BIOS)

Quando dovete utilizzare un programma ap­ plicativo per svolgere un lavoro, è il sistema operativo che lo carica in memoria e lo esegue. I sistemi operativi hanno subìto nel corso del tem­ po un graduale ampliamento delle loro funzioni e continuano tuttora a espandersi, diventando sem­ pre più complessi. Di norma i nuovi compiti, come, per esempio, la trasmissione di video o la connessione a una rete, sono svolti da programmi applicativi appo­ sitamente creati. Tuttavia, non appena queste ap­ plicazioni si diffondono, il loro ruolo viene assor­ bito dal sistema operativo e diventa quindi parte integrante di quella “piattaforma” che i progettisti software, al momento di scrivere un nuovo pro­ gramma, considerano comune a tutti gli elabora­ tori. Passiamo ora ad analizzare il sistema operati­ vo moderno e il tipo di funzioni che riveste.

u /o

5.3  I sistemi operativi: introduzione

ap ammi plicativi ogr r P ma operativo ste i S d tale i input en

Si

piuttosto lenti ma i programmi di riconoscimen­ to vocale sono in continuo miglioramento e oggi permettono di impartire comandi vocali, immet­ tere dati e dettare testi.

Figura 5.6  Il ruolo del BIOS.

porte del computer e controlla l’integrità del siste­ ma ogni volta che questo viene avviato. Lo scopo del BIOS, in sostanza, è di fornire un collegamento tra il software e i componenti hardware del­l’elaboratore. Quando date a un’applicazione l’ordine di stampa­ re, per esempio, il comando viene inviato prima al BIOS e poi da questo alla stampante. Grazie a tale sistema, dunque, il software rimane indipendente dall’hardware. Se l’hardware di un sistema viene completamente sostituito, non si deve fare altro che aggiornare il BIOS. È quindi possibile apporta­ re dei miglioramenti ai componenti hardware senza rischiare di rendere i programmi software obsoleti.

L’interprete dei comandi La porzione del sistema operativo riservata all’in­ terpretazione dei comandi ha la funzione di rice­ vere dalla tastiera l’input dell’utente e di interpre­ tarlo. Proprio come due persone che non parlano la stessa lingua devono ricorrere a un interprete, i comandi di un programma applicativo, per essere eseguiti dai componenti hardware, devono prima essere interpretati dal sistema operativo. Per aprire un documento in un programma, per esempio, po­ tete fare clic su un pulsante della barra degli stru­ menti o trascinare il file sullo schermo e rilasciarlo sull’icona dell’applicazione. Il sistema operativo in­ terpreta questi comandi allo stesso modo e copia il documento nella memoria centrale del computer.

I sistemi multitasking Mentre i vecchi sistemi operativi potevano esegui­ re soltanto un programma alla volta, quelli odierni consentono di utilizzare diversi programmi per svolgere più compiti contemporaneamente. Per

15/01/21 07:30


Il sistema operativo  107 Programma di videoscrittura

CPU

Sessione di Internet

Foglio elettronico

Foglio elettronico

Sessione di Internet

Programma di videoscrittura

La CPU viene occupata ora da un processo, ora da un altro

Figura 5.7  La politica multitasking per la gestione del tempo di CPU.

esempio, è possibile impiegare un programma per scaricare un file da Internet e allo stesso tempo elaborare un documento in un altro programma. Poiché i sistemi in genere hanno un solo micropro­ cessore, per eseguire più programmi nello stesso momento cedono rapidamente il controllo della CPU a uno o all’altro, a seconda delle esigenze; in realtà, quindi, è operativo soltanto un programma alla volta. Questo tipo di multitasking consiste nel suddividere il tempo di lavoro della CPU tra i vari programmi in esecuzione. I sistemi più recenti, comunque, utilizzano il multitasking preemptive (con prelazione). In questo caso l’accesso al microprocessore è controllato dal sistema operati­ vo, che gestisce una lista di processi con diversa priorità; un processo in corso può quindi essere temporaneamente interrotto per assegnare la CPU a un processo con priorità maggiore (Figura 5.7).

I sistemi multithreading I programmi, in genere, elaborano i dati e i coman­ di in ordine sequenziale e, quindi, soltanto quando un’operazione è stata portata a termine possono iniziarne un’altra. Si può pertanto dire che ogni operazione eseguita da un programma si snoda come un singolo filo (in inglese thread, da cui mul­ tithreading) dall’inizio alla fine. Quando il sistema operativo è multithreading, invece, i program­ mi applicativi possono svolgere più operazioni contemporaneamente (Figura 5.8). Un programma di videoscrittura, per esempio, può leggere i dati immessi dall’utente tramite la tastiera e allo stes­ CPU Stampa

Controllo ortografico

Modifica

Modifica

Controllo ortografico

Stampa

La CPU viene occupata ora da un’operazione, ora da un’altra

Figura 5.8  La gestione multithreading di un programma di videoscrittura.

05txt.indd 107

so tempo visualizzarli sullo schermo e stampare il documento elaborato. In definitiva, si può dire che il multithreading non è altro che il processo di multitasking applicato a un singolo programma.

I sistemi multiutenti I sistemi operativi dei minicomputer, dei mainfra­ me e dei supercomputer sono progettati in modo tale da permettere il collegamento simultaneo di più utenti a una stessa macchina.

I sistemi multiprocessori Alcune applicazioni, come l’elaborazione delle previsioni del tempo, le simulazioni e la proget­ tazione assistita dal computer, richiedono una no­ tevole capacità di elaborazione. Per rispondere a questa esigenza, sono stati sviluppati sistemi ope­ rativi in grado di gestire un sistema dotato di più processori (a volte centinaia).

Altre funzioni del sistema operativo Oltre alle funzioni descritte precedentemente, il sistema operativo svolge anche questi compiti: • controlla continuamente il sistema e in caso di disfunzioni avverte l’utente con un messaggio di errore; • assegna a ogni programma uno spazio proprio in modo che se un’applicazione presenta un problema, questo non influisce sul funziona­ mento degli altri programmi; • regola l’alimentazione di energia del sistema in base alle necessità (controlla il livello di carica della batteria nei computer portatili, e gestisce l’UPS, Uninterruptible Power Supply, il grup­ po di continuità per l’alimentazione continua dell’elaboratore anche in caso di interruzione della corrente elettrica di rete); • è in grado di supportare le nuove applicazioni multimediali, come la visualizzazione di video e animazioni, l’audio e la realtà virtuale.

5.4  I sistemi operativi: le categorie Tutti gli elaboratori, dai supercomputer fino ai microprocessori incorporati negli orologi, sono dotati di un sistema operativo. Nel corso de­ gli anni ne sono stati sviluppati vari tipi, molti dei quali sono ancora in uso. Quando il PC dell’IBM diede avvio alla diffusione dei microcomputer, il DOS, nonostante i suoi mol­ ti limiti, divenne il sistema operativo più usato nei PC. Successivametne la Microsoft introdusse il siste­

15/01/21 07:30


108  Capitolo 5

ma operativo Windows la cui ultima incarnazione, Windows 10, è il suo rappresentante più popolare. Il mondo dei sistemi operativi è particolarmente vasto e ha diversi protagonisti come Mac OS (Figura 5.9), utilizzato sui PC Apple, o Linux che rimane un’otti­ ma alternativa capace di rivitalizzare anche hardwa­ re obsoleto. Ci sono anche i sistemi operativi studiati appositamente per i dispositivi mobili come iOS di Apple, Android di Google o HarmonyOS di Huawei. I moderni sistemi operativi permettono di svolgere con un normale PC compiti che prima richiedevano l’uso dei più costosi mainframe e minicomputer.

I compiti dei diversi sistemi operativi Ogni sistema operativo è stato progettato per svol­ gere compiti specifici. I mainframe, i minicompu­ ter e i supercomputer utilizzati nelle aziende, per esempio, possono essere collegati a migliaia di altri computer ed elaborare grandi basi di dati, per cui devono avere un sistema operativo in grado di ge­ stire tutte queste transazioni. Un computer tascabi­ le, invece, è usato di norma da un singolo utente e soltanto per un numero limitato di attività, e quin­ di è sufficiente un sistema operativo più semplice. Tra questi due estremi possiamo collocare i moderni PC, che sono ormai i più utilizzati per i collegamenti in rete e per supportare applicazioni multimediali, e richiedono quindi un sistema ope­ rativo capace di gestire un’ampia varietà di attività.

Le caratteristiche dei sistemi operativi

monotasking o multitasking; monothreading o multithreading; interfaccia utente a caratteri o grafica; sicurezza alta o bassa; capacità di elaborazione (otto, sedici, trentadue o sessantaquattro bit per volta); • portabilità (un sistema operativo portabile non dipende da uno specifico microprocessore); • proprietario o aperto: un sistema operativo pro­ prietario funziona solo con un tipo di compu­ ter ed è gestito da un singolo produttore; un sistema operativo aperto, invece, può funzio­ nare su macchine diverse ed è modificabile da qualsiasi programmatore che desideri cambiare alcune funzioni per esigenze specifiche.

I sistemi operativi per i desktop Tra tutti i software di sistema, i sistemi operativi per desktop sono i meno potenti e affidabili, e al tempo stesso i più diffusi. Windows, nelle sue varie versioni (98, NT, ME, 2000, XP, Vista, Windows 7, Windows 10), è attualmente il sistema operativo più usato. È infat­ ti installato sul 90% dei nuovi PC. Mac OS, della Apple, è installato sui computer iMAC, Mini, MAC Pro. Il suo predecessore fu il primo sistema operativo dotato di interfaccia gra­ fica ad avere grande diffusione. DOS fu introdotto nel 1980 sul primo PC del­ l’IBM. Oggi questo sistema a otto bit, con interfac­ cia a caratteri, monotasking e privo di garanzie di sicurezza è caduto pressoché in disuso. Linux è il sistema operativo Open Source più diffuso e nelle sue più recenti versioni (anche se esistono decine di diverse incarnazioni di Linux, dette distribuzioni) ha raggiunto una stabilità e

©ms_pics_and_more/Shutterstock

Per fare un raffronto tra i vari tipi di sistemi opera­ tivi esistenti si può ricorrere a una serie di criteri, alcuni dei quali vi sono già familiari:

• • • • •

Figura 5.9  Schermata di Mac OS Catalina.

05txt.indd 108

15/01/21 07:30


Il sistema operativo  109

Figura 5.10  L’interfaccia a caratteri del sistema operativo Linux, che, volendo, si può configurare anche in questo modo “vintage”.

una facilità di uso paragonabili a quelle di Win­ dows (Figura 5.10). Possiede una serie di inter­ facce grafiche utente tra le quali scegliere e può vantare un grado di personalizzazione e ottimiz­ zazione difficilmente raggiungibile con gli altri sistemi operativi.

I sistemi operativi per i server I computer di un’azienda collegati in rete non sono connessi tra loro direttamente ma attraverso potenti elaboratori chiamati server, che hanno la funzione di garantire la sicurezza dei collega­

menti e di dirigere il traffico tra una rete e l’altra, operazioni piuttosto complicate che richiedono l’uso di potenti sistemi operativi, a trentadue o sessantaquattro bit. Questi sistemi svolgono anche altri compiti di cruciale importanza per l’esistenza di un’azienda (le cosiddette applicazioni mission-critical), come le progettazioni di ingegneria, l’evasione degli ordini e la gestione dei libri paga, che prima potevano essere svol­ ti soltanto dai mainframe. I sistemi operativi dei server sono sicuri, multitasking, multithreading e dotati di interfacce grafiche utente; inoltre, sono in genere portabili, cioè possono funzionare con vari microprocessori. Windows Server è il fratello maggiore della versione per desktop. Si tratta del sistema operativo per server che si sta diffondendo più rapidamente. OS/2 (Operating System/2), sviluppato dalla IBM, era nato per fare concorrenza a Windows, ma pur essendo molto potente non ha avuto gran­ de diffusione. Unix fu sviluppato nel 1973 presso i Bell Labo­ ratories della AT&T. Purtroppo, di questo sistema operativo sono state realizzate varie versioni che differiscono leggermente sia dall’originale, su cui sono basate, sia tra loro; di conseguenza, le applica­ zioni scritte per una variante non possono di nor­ ma essere eseguite su un’altra, e questa è senz’altro una delle ragioni per cui Unix è installato soltanto sull’1% dei microcomputer. Per risolvere questo problema le compagnie Sun, Hewlett Packard, IBM, Novell, SCO e i Bell Laboratories della AT&T, riuni­ te in un consorzio, si sono accordate per la creazio­ ne di un ambiente software aperto comune (COSE, Common Open Software Environment) e di un ambiente desktop comune (CDE, Common Desktop Environment) (Figura 5.11).

Figura 5.11  Un CDE.

05txt.indd 109

15/01/21 07:30


110  Capitolo 5

Dal codice Unix deriva anche il già citato Linux che può svolgere perfettamente anche la funzione di sistema operativo server. È disponibile per varie piattaforme hardware, dai PC alle workstation, ai server dedicati, e per diversi microprocessori.

I sistemi operativi per i mainframe Quando i mainframe e i minicomputer domina­ vano la scena, ogni casa produttrice sviluppava il proprio sistema operativo. Alcuni mainframe dell’IBM, per esempio, utiliz­ zano ancora un sistema operativo detto Open MVS, mentre i minicomputer della Digital Equipment Corporation OpenVMS. In passato, per i mainfra­ me, le aziende sviluppavano sia il sistema opera­ tivo sia i programmi applicativi. In questo caso il software installato è chiamato “software proprietario” perché di proprietà di una sola società. Poiché esistevano numerosi sistemi proprietari in competizione tra loro, la comunicazione tra ela­ boratori era pressoché impossibile. In ogni modo, anche se piuttosto costosi, questi software di si­ stema erano potenti e affidabili, capaci di svolge­ re tutti quei compiti che definiscono un sistema operativo moderno. Oggi sono ormai in disuso e utilizzati solo sui vecchi mainframe ancora in funzione.

I sistemi operativi per i computer tascabili Esistono diversi sistemi operativi per i computer tascabili e palmari, che utilizzano una piccola ta­ stiera virtuale e uno schermo sensibile al contatto. Tra questi ricordiamo Windows Mobile, Palm OS, Symbian OS, Android e iOS. Naturalmente per ciascuno di questi sistemi sono disponibili numerosi software applicativi svi­ luppati specificamente per le piattaforme mobili, ma dotati di funzionalità non dissimili da quelle degli omologhi applicativi desktop.

I sistemi operativi incorporati Anche i microprocessori incorporati in piccoli di­ spositivi come un orologio o un tostapane sono dotati di un sistema operativo. Uno di questi si­ stemi è una versione del DOS chiamata DOS embedded, che invece di essere memorizzato su un’unità del disco fisso si trova su un chip di me­ moria e si attiva immediatamente all’accensione del dispositivo. Quando viene a mancare la luce e l’orologio dei dispositivi segna le 00:00, significa che si è verificato un blocco del sistema. In questo caso, per impostare nuovamente l’ora si deve uti­

05txt.indd 110

lizzare l’apposito pulsante di interfaccia di DOS. Se vi capiterà di dover utilizzare diverse procedu­ re per ristabilire l’ora corretta nei vari dispositivi, capirete l’importanza delle interfacce standard.

5.5  La gestione dei file Il sistema operativo ha la funzione di gestire i file contenuti nel disco fisso. Tre sono i re­ quisiti essenziali per reperire i file: il nome del file, la cartella in cui è archiviato e l’unità di memoria su cui si trova.

I nomi dei file Al momento del salvataggio, ai file viene assegna­ to un nome di file (Figura 15.12) che ne permet­ te l’identificazione in qualsiasi momento. In quasi tutti i sistemi, i nomi dei file sono costituiti da due parti: il nome e l’estensione, che si possono paragonare al nome e cognome di una persona. Il nome viene scelto dall’utente per poter iden­ tificare il file in un successivo momento. Tutti i mo­ derni sistemi operativi consentono di usare nomi lunghi e descrittivi. L’estensione è separata dal nome con un punto. Ha la funzione di identificare il formato del file o l’applicazione con cui è stato creato. Un’estensione .jpg, per esempio, indica che si tratta di un file grafico, mentre .doc (o .docx) in genere sta a significare che il file è un documento elaborato con il programma di videoscrittura. Nei sistemi Windows l’estensione riveste un ruolo di fondamentale importanza in quanto con­ sente ai programmi di identificare l’applicazione con la quale è stato creato un file. Conoscere il formato di un documento può essere importante: se fate doppio clic sul nome di un file memorizza­ to sul disco, Windows apre innanzitutto l’applica­ zione che lo ha creato e poi, all’interno di questa, il file stesso. Inoltre, se utilizzate un programma come Word per aprire un documento, la finestra di dialogo che compare elenca di norma soltanto i file con l’estensione .doc, partendo dal presup­ posto che vi interessano solamente i documenti

Newyork.bmp Nome di file in DOS

New York Skyline.bmp Nome di file in Windows Figura 5.12  Nomi di file.

15/01/21 07:30


Il sistema operativo  111

+DUG 'LVN

+DUG 'LVN

8Q GLVFR ILVVR QXRYR FRPH LO FDVVHWWR YXRWR GL XQ DUFKLYLR QRQ KD RUJDQL]]D]LRQH

/¡RUJDQL]]D]LRQH GHO GLVFR LQ GLUHFWRU\ R FDUWHOOH q SDUDJRQDELOH DOOD VXGGLYLVLRQH GHO FDVVHWWR G¡DUFKLYLR WUDPLWH GLYLVRUL

+DUG 'LVN

/¡XOWHULRUH VXGGLYLVLRQH GHOOH GLUHFWRU\ LQ VRWWRGLUHFWRU\ R GHOOH FDUWHOOH LQ VRWWRFDUWHOOH q SDUDJRQDELOH DOO¡DJJLXQWD GL XOWHULRUL GLYLVRUL QHO FDVVHWWR G¡DUFKLYLR

+DUG 'LVN

, ILOH SRVVRQR HVVHUH PHPRUL]]DWL LQ TXDOVLDVL GLUHFWRU\ R FDUWHOOD

Figura 5.13  Le cartelle.

elaborati con quel programma di videoscrittura (eseguendo un’operazione in piĂš, comunque, è possibile vedere anche altri tipi di file).

Le cartelle Immaginate che in un ufficio la corrispondenza riguardante la campagna vendite del prossimo anno sia stata messa alla rinfusa in un unico con­ tenitore: per trovare un documento si dovrebbe passare in rassegna tutto il suo contenuto! Se in­ vece i documenti sono riposti in un archivio e suddivisi in cartelle a seconda del contenuto, la ricerca del documento sarĂ piĂš semplice. Lo stes­ so vale per i file memorizzati su disco fisso (Fi­ gura 5.13): se i file logicamente simili sono rac­ colti in un’unica cartella (in inglese directory), sapremo sempre dove reperirli. Nella cartella chiamata Windows, per esempio, troverete ul­ teriori cartelle e file contenenti le varie parti del sistema operativo.

Gli indicatori delle unità di memoria Molti sistemi sono dotati di piÚ unità di memoria. Per distinguerle, a ognuna è assegnata una lettera o un nome (Figura 5.14): di norma, in ambiente Windows, le unità per dischetti sono identificate dalle lettere A e B (ma ormai sono in disuso), men­ tre al disco fisso è assegnata la lettera C. Ulteriori unità possono essere indicate con le lettere D ed

05txt.indd 111

E. Dato che il numero e il tipo di unitĂ variano da sistema a sistema, l’assegnazione delle lettere e dei nomi cambia a seconda dell’elaboratore. Con l’avvento dei sistemi operativi di ultima generazione, questo tipo di nomenclatura è ormai caduta in disuso. Oggi, per convenzione, le uni­ tĂ di memorizzazione sono chiamate con nomi relativi al tipo di unitĂ (HD, Flash memory, CDROM) o, meglio, con i nomi (anche di fantasia) che ­l’utente sceglie di dare alle proprie unitĂ .

Le gerarchie ad albero Per illustrare l’organizzazione di un’unitĂ in car­ telle può essere utile ricorrere a un’analogia: come AeB

D

UnitĂ per dischetto

UnitĂ per CD/DVD

C

E

Disco fisso

Chiavetta USB

Figura 5.14  Gli indicatori delle unitĂ di memoria.

15/01/21 07:30


112  Capitolo 5

Figura 5.15  Un esempio di organizzazione ad albero.

da un albero si dipartono vari rami e questi a loro volta si dividono in ulteriori ramificazioni, così un’unità si divide in varie cartelle, che possono a loro volta contenerne altre. Utilizzando una gerarchia ad albero, è possibile espandere o ridurre sia l’intera unità sia una singo­ la cartella. Si può quindi passare dal sommario dei contenuti dell’unità alla descrizione dettagliata di un file. Nella Figura 5.15, due organizzazioni ad albero di Windows: i segni “>” indicano che quel­ le cartelle sono state ridotte, cioè contengono car­ telle nascoste; i segni “∨”, invece, segnalano che il contenuto delle cartelle è visualizzato.

I percorsi Per reperire un file memorizzato in una cartella di un disco di memoria, è necessario seguire un determinato “percorso”. Per esempio, se il file Pao­ lo. doc è archiviato nella cartella Lettere sull’unità C, il percorso per raggiungere il file è C:\Lettere\ Paolo.doc. Se invece si trova nella cartella Memo,

il percorso sarà C:\Memo\Pa­ olo.doc. L’indicatore di unità è C:, separato dal nome della cartella dal carattere “\”. Il carattere “\” separa anche i nomi delle cartelle, nel caso in cui il file sia contenuto in una cartella contenuta a sua volta in un’altra cartella. Se la cartella Lettere contiene una cartella Venditori, per esem­ pio, il percorso del file sarà C:\ Lettere\Venditori\Paolo.doc. In genere, non è necessario digitare questi percorsi. Qua­ si tutti i programmi e sistemi operativi, infatti, consentono di cercare i file aprendo le cartelle con il mouse.

I programmi di gestione dei file Una parte del sistema operativo è costituita da un programma, detto programma di gestione dei file o Finder (Figura 5.16), che serve per la localizzazione e l’accesso alle unità, alle cartelle e ai file presenti nell’elaboratore. Questi programmi consentono di visualizzare le cartelle di un’unità secondo una strut­ tura ad albero. Facendo clic su una cartella, viene visualizzato un elenco completo dei suoi contenuti. Quando furono sviluppati i browser e i motori di ricerca per navigare sul Web, il reperimento di un documento in rete divenne per l’utente mol­ to più semplice della localizzazione di un file nel proprio sistema. Di conseguenza, oggi la tecnolo­ gia dei browser viene applicata anche alla gestio­ ne dei file, permettendo di muoversi all’interno del proprio sistema come si naviga in Internet e visualizzando il contenuto delle cartelle (direc­ tory) come fossero pagine Web.

Figura 5.16  La finestra del Finder nel sistema operativo Mac OS Catalina di Apple.

05txt.indd 112

15/01/21 07:30


Il sistema operativo  113

che registra la localizzazione di tutti i file sul di­ sco. Quando un documento viene salvato, il siste­ ma operativo lo archivia in gruppi di settori detti cluster, che costituiscono la più piccola unità di memoria che il computer è in grado di indirizzare. Il sistema operativo, in pratica, cerca nella tabella di allocazione dei file i cluster ancora vuoti e vi memorizza il documento. L’indirizzo dei cluster dove il file ha inizio e dove termina viene quindi inserito nella tabella e utilizzato per reperire il documento quando l’utente lo richiede.

Settore del disco Tracce

La frammentazione Per spiegare la frammentazione può essere utile ricorrere a un’analogia. Poniamo che un gruppo di amici decida di andare a un concerto. Se prenota­ no i posti con un certo anticipo riusciranno sicu­ Questo disco è diviso in nove settori ramente a sedersi uno accanto all’altro, mentre se aspetteranno fino all’ultimo minuto dovranno pro­ Figura 5.17  La formattazione del disco. babilmente accontentarsi dei posti rimasti, sparsi qua e là nell’auditorium. Lo stesso accade con i dischi fissi (Figura 5.18). All’inizio, i dati vengono archiviati in ordine lineare: le varie porzioni di un 5.6  Le utility file sono memorizzate in cluster adiacenti, come In aggiunta al programma di gestione dei i posti di una stessa fila. Tuttavia, a mano a mano file, i sistemi operativi comprendono una se­ che si cancellano i file più vecchi e se ne aggiun­ rie pressoché infinita di programmi di utilità, tra i gono di nuovi, i frammenti dei file vengono spar­ quali illustriamo quelli che ogni utente dovrebbe si in cluster localizzati in diverse aree del disco. conoscere. Questa frammentazione comporta un rallenta­ mento delle funzioni del computer perché l’unità di lettura impiega più tempo per localizzare, sal­ La formattazione vare e recuperare i file frammentati. Per risolvere Un programma di utilità è adibito alla formatta­ questo problema, è necessario effettuare regolar­ zione dei dischi (Figura 15.17), che rende possi­ mente l’operazione di deframmentazione (debile l’archiviazione dei dati (vedi Paragrafo 14.5). frag) del disco. Questa procedura sposta i dati sul Questo programma crea anche una directory, disco finché i frammenti di uno stesso file sono chiamata tabella di allocazione dei file (FAT), riuniti nuovamente su tracce contigue. Spesso gli utenti tendono a trascurare que­ sta operazione, salvo poi chiedersi File non frammentati perché il loro elaboratore diventa 1 2 3 4 5 6 7 8 9 10 11 12 sempre più lento. In molti casi, ca­ pita anche che il sistema cominci a funzionare male, danneggiando i programmi o impedendo l’apertura dei file. Spesso, per risolvere questi problemi non si deve fare altro che File A File B File C deframmentare il disco. Settore di traccia

Cluster (2 settori di traccia)

File frammentati 1 2 3

4

5

6

7

8

9

10

11

12

File A File C File B File B File C File A File C File B File A File C File A File B Figura 5.18  La frammentazione del disco.

05txt.indd 113

Lo scanning del disco La produzione dei dischi fissi non sempre riesce bene. Alcune aree del disco, infatti, possono risultare inuti­ lizzabili. In questi casi, il costruttore effettua lo scanning del disco e marca elettronicamente le aree fuori uso, in

15/01/21 07:30


114  Capitolo 5

modo che non vi vengano memorizzati dati. Altre aree, però, possono guastarsi quando usate il disco. Per questo motivo viene impiegato un programma di utilità che ha la funzione di effettuare lo scan­ ning del disco a scadenze regolari e di individuare e marcare eventuali settori rovinati. Se tale opera­ zione non viene eseguita, il sistema operativo può memorizzare alcune porzioni di file in queste aree, provocandone la perdita. Lo scanning ha anche la funzione di individuare e risolvere eventuali pro­ blemi relativi ai file. Se, per esempio, si verifica un guasto del sistema e alcune parti di file finiscono disperse in modo casuale nel disco, il programma di scanning localizza i cluster perduti e li raccoglie in un file a parte, che qualche volta può anche essere aperto per recuperare i dati persi.

recuperare in qualsiasi istante un file eliminato. Quando siete assolutamente sicuri che un file non vi serve più, non dovete fare altro che svuotare il cestino e il contenuto sarà eliminato definitiva­ mente. In questo caso, il file viene cancellato dal disco ed è quindi impossibile recuperarlo. In ogni modo, se vi capita di cancellare per sbaglio un file molto importante, non toccate niente e rivolgete­ vi a un esperto. Esistono infatti dei programmi in grado di recuperare i file cancellati, ma soltanto a condizione che non siano stati successivamente eseguiti dei comandi che possono aver memoriz­ zato nuovi file nello spazio del disco in cui si tro­ vavano quelli cancellati.

L’eliminazione dei file e il cestino

5.7  I principali problemi relativi al software di base

Molti file dopo un certo periodo non servono più e possono quindi essere cancellati dal disco. Nei sistemi operativi più recenti, i file non vengono cancellati immediatamente ma spostati in un’area del disco chiamata cestino, in modo che possiate

Dopo aver appreso come si utilizzano il si­ stema operativo e le applicazioni, è impor­ tante sapere come si installano i programmi, quali sono le principali cause di eventuali guasti e di­ sfunzioni, e che cosa fare e non fare in questi casi.

Le utilità multimediali Tutti sappiamo che è possibile ascoltare i CD musicali anche con un computer. Tutto ciò che serve è un programma multimediale per lettore CD che si installa sotto il controllo del sistema operativo e usa l’unità per dischi ottici per leggere i CD audio. Questo programma funziona

proprio come un vero lettore CD: per ascoltare, interrompere o cambiare traccia basta premere un pulsante. Chiaramente, con l’avvento dei formati audio MP3, oggi la musica si ascolta su PC senza l’ausilio di alcun supporto di memoria esterna.

Il controllo del volume in Windows

05txt.indd 114

15/01/21 07:30


Il sistema operativo  115

L’installazione e la disinstallazione dei programmi Per utilizzare un nuovo programma applicati­ vo bisogna innanzitutto installarlo sul computer eseguendo un programma di installazione. Questo processo copia i file del programma sul di­ sco fisso, adattando l’applicazione ai componenti hard­ware del sistema. Quando l’applicazione non serve più, si ricor­ re a un programma di disinstallazione. Ciò, in teoria, dovrebbe eliminare tutti i file del pro­ gramma, ma in realtà accade spesso che molti ri­ mangano sul disco. Per risolvere questo problema, sono stati sviluppati dei programmi autonomi che hanno la funzione di localizzare e rimuovere i file rimasti. Questo vale soprattutto per i sistemi operativi Windows, perché nei sistemi più evoluti, come Mac OS X o Linux, i programmi di installazione sono molto più semplici, e la disinstallazione, nel­ la maggior parte dei casi, avviene semplicemente trasportando l’icona del programma nel cestino. Tutto ciò contribuisce notevolmente alla semplifi­ cazione dell’utilizzo complessivo del sistema. Molti programmi sono installabili direttamente dal Web. In questo caso viene inizialmente salvata sul nostro disco fisso una versione compressa del programma di installazione, che una volta lancia­ ta procede normalmente occupandosi di decom­ primere altri file o di prelevare dal Web ulteriori file necessari. Bisogna ricordarsi però che quel file originale non è il “vero” programma d’installazio­ ne, quindi va rimosso manualmente non appena possibile.

hardware. Se nel sistema operativo manca il dri­ ver per un dispositivo, quel componente rimane inutilizzabile. È bene sapere che impiegare una stampante o uno schermo senza il driver corri­ spondente può avere conseguenze inaspettate.

L’aggiornamento dei programmi Le case produttrici di software in genere ag­ giornano i loro programmi applicativi e sistemi operativi a cadenza annuale. Gli aggiornamenti includono di norma sia funzionalità riviste e corrette delle versioni precedenti sia funziona­ lità completamente nuove, volte a migliorare le prestazioni del programma. Per evitare una spe­ sa inutile, prima di acquistare la nuova versione di un programma accertatevi che le innovazioni offerte vi siano necessarie. I numeri di versione sono impiegati per indicare i vari stadi di svilup­ po di un programma. In genere, questi numeri comprendono una parte decimale. Un salto signi­ ficativo nel numero di versione (per esempio, da 6.0 a 7.0) indica una revisione completa, mentre un cambiamento del numero decimale (per esem­ pio, da 7.1 a 7.2) denota modifiche più marginali (Figura 5.19). In ogni modo, queste regole non sempre sono rispettate, in quanto: • gli uffici di marketing tendono a cambiare i nu­ meri di versione per fronteggiare la concorrenza; • alcune modifiche, come, per esempio, la correzione di errori di programmazione, vengono apportate senza cambiare il numero di versione del programma. Questo comporta numerosi problemi per gli utenti finali perché copie di un programma con lo stesso numero di versione risultano in realtà leggermente diverse.

I driver

Le novità in questo campo sono sempre molto al­ lettanti, ma è opportuno tenere conto del fatto Quando collegate una nuova periferica al compu­ che l’aggiornamento del software comporta anche ter, per fare in modo che il sistema operativo pos­ dei problemi. Uno dei più seri è quello della comsa comunicare e interagire correttamente con il patibilità, o meglio dell’incompatibilità, che si nuovo dispositivo è necessario installare il relativo verifica a vari livelli: driver (pilota). I driver sono piccoli programmi con la funzione di tradurre le istru­ zioni generiche inviate da un pro­ Gen Mar Giu Set Gen Mar gramma o dal sistema operativo alla periferica in istruzioni per un Modifiche componente hardware specifico. sostanziali 5.0 6.0 Quando esce sul mercato un nuo­ vo dispositivo, i programmatori Modifiche dei sistemi operativi non modifica­ marginali 5.1 5.2 no l’intero sistema, ma si limitano Correzioni a scrivere un apposito programma di errori pilota. In genere, i sistemi opera­ 5.1.1 tivi sono dotati di una libreria di Figura 5.19  Gli aggiornamenti di un programma. driver, uno per ogni componente

05txt.indd 115

15/01/21 07:30


116  Capitolo 5

• se si cambia il sistema operativo, per esempio, sostituendo il sistema della Apple con quello di Microsoft, è necessario cambiare tutto il software; • l’aggiornamento può introdurre nuovi errori di programmazione; • quando i sistemi operativi vengono aggiorna­ ti, alcune applicazioni non funzionano più e, a volte, se vengono a mancare i driver adeguati, diventano inutilizzabili anche alcuni compo­ nenti hardware; • possono sorgere incompatibilità con documen­ ti creati con una versione precedente dello stesso programma.

La distribuzione del programma Nella maggior parte dei casi (almeno per i softwa­ re commerciali) i programmi e i relativi aggiorna­ menti vengono distribuiti su CD-ROM. Ma, come abbiamo già rilevato, stanno emergendo anche al­ tre forme di distribuzione. Tra quelle in più rapida crescita troviamo la diffusione via Internet, spe­ cialmente per quanto riguarda gli aggiornamenti e i programmi accessori come i driver e i filtri per la conversione dei file. Per esempio, le più recenti versioni di un si­ stema operativo possono essere aggiornate me­ diante servizi on line, che automaticamente ve­ rificano quali aggiornamenti siano necessari per un determinato sistema, li scaricano dalla rete e li installano.

Il supporto tecnico Un normale elaboratore contiene decine di di­ spositivi e programmi prodotti da diverse azien­ de, per cui individuare un’eventuale disfunzione diventa una difficoltà insormontabile. Per risol­ vere almeno in parte questo problema, sono stati sviluppati dei programmi di correzione automatica, che hanno la funzione di effettuare la diagnosi del sistema e di risolvere gli eventuali problemi riscontrati. Questi programmi sono col­ legati anche a Internet per cui, se non sono in grado di far fronte a un problema, possono con­ sultare una base dati e cercare le informazioni più recenti al riguardo.

I bug Sembra inevitabile che dopo un lungo periodo di utilizzo del computer comincino a verificarsi dei fatti inspiegabili: improvvisamente compare un messaggio che segnala la presenza di un errore, op­ pure la tastiera si blocca impedendovi di digitare un comando o di eseguire un programma. Quasi

05txt.indd 116

“Se EasyFlow non funziona, affari vostri. Se subite una perdita di miliardi a causa di un suo malfunzionamento, siete voi che andate in perdita, non noi. Se non vi piace questo disclaimer, affari vostri. Noi ci riserviamo il diritto di fare il minimo indispensabile stabilito dalla legge, vale a dire niente. Questo disclaimer nella sostanza è come quelli che accompagnano gli altri software, ma il nostro è scritto in modo chiaro e limpido, mentre gli altri sono in avvocatese. In realtà noi non volevamo includere nessun disclaimer, ma i nostri avvocati hanno insistito.” Figura 5.20  Un disclaimer davvero originale! (per gentile concessione della EasyFlow).

sempre si tratta di errori causati dal programmatore, noti come bug.

I disclaimer I disclaimer allegati ai software hanno lo scopo di limitare la responsabilità del produttore. Di soli­ to sono assolutamente incomprensibili a tutti, fat­ ta eccezione per gli avvocati, per cui il disclaimer che abbiamo scelto come esempio (Figura 5.20) rappresenta decisamente un’eccezione.

⊸ Bibliografia

Un valido strumento è P. Ancilotti, M. Boari, A. Ciampolini, G. Lipari, Sistemi operativi, seconda edizione, McGraw-Hill Education, che è completo ed esauriente senza esagerare in tecnicismi; più generale e più completo è R.S. Pressman, Principi di ingegneria del software, quinta edizione, McGraw-Hill Education. Interessante e godibile anche da non esperti è l’atteggiamento che emerge dalle pagine di D.S. Platt, Perché il software fa schifo, Mondadori Informatica. Illuminante sulla questione delle interfacce, anche nei risvolti che vanno al di là del computer, è J. Raskin, Interfacce a misura d’uomo, Apogeo. Tra i molti siti che si occupano di software ricordiamo news.swzone.it, la rivista www.​pc-​facile.​com – ottima anche nella tradizionale versione cartacea – e www.​azpoint.​net. Per i sistemi operativi i testi più usati sono A.S. Tanenbaum e A.S. Woodhull, Sistemi operativi. Progetto e implementazione, Prentice-Hall, e, per i singoli SO, D.I. Schwartz, Introduzione a UNIX, Apogeo, e B. Ball, H. Duff, Red Hat Linux 9, Apogeo. È chiaro che molte più informazioni, anche storiche, sui SO si trovano sul sito dei singoli produttori o distributori o creatori: www.​microsoft.​com/​windows; www.​ bell-​labs.​com/​history/​unix; www.​linux.​org; www.​apple.​com.

15/01/21 07:30


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.