Stats Tweet

Informàtica.

Scienza del trattamento automatico delle informazioni - parole, numeri e altri tipi di dati - mediante elaboratori elettronici (computer). Con la parola computer sino a ieri si è inteso parlare di una macchina capace di elaborare dati per scopi di calcolo. Oggi le applicazioni del computer come sistemi di controllo sono talmente diffuse e sofisticate da far passare in sottordine la suddetta proprietà, che rimane pur sempre l'essenza prima della macchina. Le origini sono da ricercare all'inizio degli anni Quaranta, con il progetto ASCC (Automatic Sequence Controlled Calculator) della IBM che determinò il primo calcolatore "universale", detto Mark 1. Nell'immediato dopoguerra John von Neumann, considerato il vero "padre" degli attuali computer, dà inizio al progetto EDVAC (Electronic Discrete Variable Computer). Si tratta di progettare il primo calcolatore moderno, interamente elettronico, nel quale i programmi non vengano immessi volta per volta dall'esterno, come nel caso del Mark 1, ma siano residenti nella memoria della macchina, dalla quale automaticamente richiamarli ogni volta che serve. La concorrenza riuscirà a capire l'idea e costruire due sistemi (EDSAC e BINAC) basati sulla stessa struttura operativa, ormai nota come macchina di von Neumann. Nel frattempo compare il primo mini-computer, battezzato Whirlwing dai ricercatori del MIT (Massachusetts Institute of Technology), incorporante le nuove memorie a nuclei magnetici e dedicato principalmente al funzionamento in "tempo reale", vista l'ottima velocità di elaborazione raggiunta. La diffusione massiccia del nuovo prodotto è legata all'avvento delle tecnologie legate al silicio. Il transistor, nato nel 1947, trova un massiccio impiego nei calcolatori nella seconda metà degli anni Cinquanta. Parallelamente si diffondono le tecniche di memorizzazione su supporti di tipo magnetico. Da questa seconda generazione si passerà alla terza nell'arco del successivo decennio. Gli anni Sessanta rappresentano il vero boom dei computer. L'avvento dei circuiti integrati permette di ridurre i costi e gli ingombri del prodotto, aumentandone le capacità. Negli stessi anni si diffonde largamente l'uso dei mini-computer anche in aree, come l'amministrazione delle medie aziende, che sinora erano rimaste inaccessibili per motivi legati all'elevato investimento necessario all'automazione delle procedure. Dalla terza generazione si passa alla quarta, basata sull'utilizzo dei circuiti LSI e VLSI (Very Large Scale Integratio), attraverso la crisi dell'inizio degli anni Settanta, che però preparano l'avvento anche dei nuovi prodotti di successo legati alla piccola informatica, come i personal-computer. Si arriva così a macchine che possono essere suddivise nelle seguenti classi: Main frames; Mini-computer; Work-station; Personal-computer; Home-computer. ║ Main-frames: computer ad alto costo ed alta capacità elaborativa dedicato principalmente a scopi di calcolo o gestione di grosse memorie centrali. In una rete di calcolatori, il main-frame è l'unità centrale, alla quale fanno capo tutti gli altri sistemi, siano essi altri calcolatori o periferiche di vario tipo. ║ Mini-computer: calcolatore di medie prestazioni e costo ridotto, a priori non dedicato ad alcun compito specifico. Il mini-computer è quindi per sua natura un general purpose, oggetto di tipo generale, specializzabile dall'utente. A seconda della configurazione hardware scelta (quali piastre di memoria, quali unità di interfaccia montate) e del software installato (i programmi applicativi da far eseguire), il mini-computer può diventare una macchina da calcolo, isolata o connessa ad una rete di calcolatori, o un controllore di processi di varia natura, o un elaboratore di immagini o il gestore di una particolare banca dati. A tutt'oggi è l'oggetto maggiormente diffuso in ambiente scientifico o industriale, proprio grazie a questa enorme versatilità. D'altra parte questa genericità della macchina si paga in termini di perdita di efficienza. ║ Work station: comparse nella prima metà degli anni Ottanta, sono stazioni dedicate ad uno specifico "lavoro" per un singolo operatore. Ne esistono ormai molteplici tipi dedicati ai compiti più diversi: aiuti alla progettazione CAD (Computer Aided Design), aiuti all'ingegnerizzazione CAE (Computer Aided Engineering), calcolo numerico veloce, intelligenza artificiale, ecc. Il pregio delle work-station è l'alta efficienza nello svolgere il compito affidato. Per contro abbiamo la singola utenza (cioè un solo operatore può stare seduto al terminale della stazione) e il relativo alto costo. L'investimento è globalmente comparabile a quello di un mini-computer, ma mentre quest'ultimo accetta di vedere più operatori ad utilizzare simultaneamente la stessa macchina, nel caso delle "stazioni di lavoro" la spesa è destinata a creare un unico posto di lavoro. Ultimamente sono state immesse nel mercato delle work-station multi-utente, legate ad esempio ad una rete di personal-computer. Questa soluzione non rimuove però la rigidità del sistema, che rimane dedicato ad un'unica funzione, e introduce una caduta verticale delle prestazioni, in termini di efficienza, al crescere del numero di utenti collegati. In ogni caso l'evoluzione tecnologica gioca a favore delle work-station, che vedranno progressivamente calare il proprio costo sino al punto da esser una soluzione competitiva in ogni situazione. ║ Personal-computer: si sono sviluppati in parallelo alle work-station, oggetti molto simili a loro perché anch'essi destinati alla singola utenza. Il personal-computer è un calcolatore personale, generalmente a basso costo e limitate prestazioni, che oggi si differenzia dalla work-station perché la sua architettura è di tipo general-purpose, in modo che la macchina sia utilizzabile in ambienti diversi e per scopi molteplici. Il personal-computer gioca un ruolo fondamentale nell'automazione d'ufficio, ma è ugualmente utile in aree molto diverse, dai registratori di cassa per i negozi al controllo di macchine utensili. Molti anche tra gli addetti ai lavori, considerano le work-station e i personal-computer oggetti identici, almeno in prospettiva, assumendo che l'unica vera differenza sia l'attuale divario di costo, che progressivamente è destinato a scomparire. Al di là dell'affascinante proiezione marketing, vi è però una profonda differenza tecnica che non è destinata a mutare nel tempo. Pur essendo entrambe le macchine progettate per servire un utente singolo, le work-station sono strutturate per massimizzare l'efficienza nella soluzione di un predeterminato compito, mentre i personal-computer rimangono oggetti general-purpose, che cambiano le proprie prestazioni in funzione della personalizzazione scelta dal loro proprietario e che possono svolgere simultaneamente compiti molto diversi tra loro. Pertanto le architetture delle due macchine sono e rimarranno diverse. ║ Home-computer: oggetti di bassissimo costo e limitate prestazioni, parenti stretti dei video-giochi, che tra tutte le macchine suddette sono quelli maggiormente vicini ad un utente non specializzato. Dal punto di vista del progetto sono dei personal-computer impoveriti, a ridotte affidabilità e prestazioni per ottenere i voluti obiettivi di prezzo. L'unica particolarità che li distingue è lo studio delle interfacce, dedicate agli oggetti di tipica utenza domestica, quali impianti HI-FI o TV a colori. Gli home-computer vanno visti quindi come una classe destinata a scomparire a causa del progressivo ridursi di costo dei loro fratelli maggiori, i personal-computer. Questo proprio grazie al fatto che quest'ultimi rimarranno dei general-purpose, specializzabili pertanto anche alle esigenze di un'utenza non professionale o giovanissima, di tipo domestico. Grazie alle attuali tecnologie, che hanno permesso la suddetta stratificazione dei prodotti, si è potuto parallelamente sviluppare il fronte applicativo degli stessi. Oggi è particolarmente difficile elencare tutte le aree di utilizzo dei computer, sarebbe forse più facile stabilire dove ancora non sono impiegati. Si possono però schematizzare le grandi aree applicative, che raggruppano sotto un unico cappello realtà tecniche diverse ma omogenee per ambiente, indicando le più recenti realizzazioni. Nel campo militare il sistema di protezione "ad ombrello" antimissili nucleari. In quello spaziale, il computer di bordo dello Shuttle. In quello aeronautico, il nuovo sistema di ILS. Nell'automazione di fabbrica, i recenti sistemi informativi integrati. Nella robotica, il robot ad autoapprendimento per il montaggio degli autoveicoli. In campo scientifico le applicazioni sono così varie ed innumerevoli da recare un certo imbarazzo nella scelta della più significativa. Ad ogni modo citeremo, ad esempio, le nuove macchine di calcolo per la ricerca veloce delle soluzione di equazioni differenziali di ennesimo ordine. Anche nella medicina il computer è insostituibile, con l'avvento della TAC e della Risonanza Magnetica Nucleare. Nel terziario avanzato ormai tutte le procedure burocratiche fanno capo a programmi per sistemi computerizzati. Nelle telecomunicazioni sono dei computer che redigono le problematiche legate al traffico internazionale, dal "gateway" del videotel alla "mondo-visione" televisiva via satellite. Troviamo il computer anche nell'arte, dal video-restauro delle antiche tele alla musica elettronica. Per non parlare delle attività progettate, dall'architettura all'ingegneria meccanica, dall'elettronica alla moda, non c'è area dell'attività creativa dell'uomo che non trovi nel computer un fedele alleato. Questo alleato sta oggi infrangendo le classiche barriere del calcolo per proiettarsi verso la cosiddetta "A.I." (Intelligenza Artificiale). La quinta generazione di computer sarà il substrato circuitale sul quale applicare efficacemente le nuove tecniche elaborative già sperimentate. Ma già oggi esistono numerose work-station organizzate strutturalmente in modo tale da accettare la nuova logica operativa. Nel nuovo modo di operare il risultato finale non è stabilito in modo deterministico dall'insieme delle regole di calcolo e dei parametri presentati in ingresso, così come avviene per le macchine calcolatrici. Bensì si opera con il principio dell'If....then, cioè con associazioni, anche multiple, ad esempio del tipo "se succede questo, allora la causa può essere questa o quest'altra". Il risultato estratto dalla "base di conoscenza" del sistema può essere imprevedibile a priori. Inoltre ogni risultato imprevisto dà luogo ad un ulteriore incremento reale delle conoscenze disponibili al sistema, che diventa così un expert-system (sistema esperto) in un dato ambiente. A questo punto l'evoluzione della macchina non è più controllabile, né sindacabile, dall'uomo. Difatti se tale sistema ha sicuramente molto meno capacità e conoscenze globali di qualsiasi persona, per contro, nella propria area applicativa, ha una efficienza e conoscenza reale (acquisita dopo un certo tempo di attività) molto maggiore di qualsiasi esperto del settore. Tutto ciò è stato sperimentato nel campo della matematica, con risultati incredibili. Oggi si stanno creando sistemi esperti nel campo militare, nella finanza, persino nella medicina. ║ I linguaggi: il computer è un'apparecchiatura che, tramite le istruzioni inserite dall'operatore, elabora i dati e fornisce le informazioni richieste. La comunicazione con il calcolatore avviene tramite un linguaggio, che è la traduzione in numeri delle istruzioni in ingresso. Esistono vari tipi di linguaggio, di cui il più semplice è il cosiddetto linguaggio-macchina, formato da cifre binarie (si ricordi che una cifra binaria può assumere solo due valori, 0 e 1, e si chiama bit). Poiché un messaggio in questo linguaggio risulta lungo e complicato e la ricerca di un eventuale errore quasi impossibile, si sono elaborati dei linguaggi simbolici più vicini a quello umano e che consentono di scrivere un programma con il sistema di numerazione decimale. Il più semplice linguaggio simbolico è l'Assembler, in cui vi è una corrispondenza biunivoca con le istruzioni in linguaggio-macchina. I linguaggi simbolici cosiddetti evoluti hanno invece un diverso rapporto con il linguaggio-macchina: ad ogni istruzione in linguaggio simbolico corrisponde un gruppo di istruzioni in linguaggio-macchina. Tra i primi linguaggi ad alto livello sono da ricordare il Fortran, ideato e prodotto dall'équipe di John Backus a partire dal 1954, usato per applicazioni scientifiche; il Cobol, nato nei primi anni Sessanta, destinato ad applicazioni gestionali. A questi si sono aggiunti in seguito il PL/1, definito negli anni Sessanta dal personale dell'IBM, la cui struttura è stata studiata per soddisfare le esigenze delle applicazioni scientifiche e gestionali; il Pascal, comparso nella sua prima versione nel 1970 ad opera di Niklaus Wirth e Kathleen Jensen dell'ETH University di Zurigo. Di questo esistono diverse versioni, la cui comune caratteristica è quella di studiare un linguaggio atto a rendere facilmente applicabili le regole della programmazione strutturata. Il Basic, creato tra il 1963 e il 1964 grazie alla collaborazione tra la General Electric ed una équipe guidata dai professori John G. Kemey e Thomas E. Kurtz del Dipartimento di Matematica al Darliyth College, è ora uno dei più diffusi linguaggi di programmazione, per i molteplici vantaggi che offre: permettendo infatti un rapporto diretto tra utente e calcolatore, riduce notevolmente il lavoro di programmazione. È quindi particolarmente adatto ai personal-computer che, originariamente rivolti al pubblico dei cosiddetti "hobbisti", stanno ora invadendo svariati settori: la gestione di piccole imprese, l'istruzione assistita da calcolatore (CAI, Computer Aided Instruction), la progettazione e il disegno assistito da calcolatore (CAD, Computer Aided Design), ecc.