Corso di Informatica Caratteristiche Generali Ing Pasquale Rota Programma del corso • • • • • • • Caratteristiche generali dell’informatica Architettura dei sistemi di elaborazione Architettura dei sistemi operativi Organizzazione dei dati Reti di computer Caratteristiche del WEB Software di produttività personale Testo consigliato: “Lawrence Snyder, Alessandro Amoroso - Fluency Conoscere e usare l'informatica 4/ED. 2011” - ISBN 9788871926391 Che cosa è l’informatica • Insieme dei processi e delle tecnologie che rendono possibile il trattamento dell’informazione in modo automatico. Quali sono le funzioni principali? Elaborazione dei dati Conservazione e gestione dei dati Organizzazione delle informazioni Calcolo Scientifico Caratteristiche generali 3 Informatica “Insieme dei processi e delle tecnologie che rendono possibile il trattamento dell’informazione in modo automatico.” Il termine “informatica” proviene dalla compressione dei termini “informazione” ed “automatica”; cioè la gestione automatica delle informazioni mediante un sistema di elaborazione elettronico automatico. L'informatica è lo studio dell'informazione, e delle modalità di rappresentarla a livello logico, delle tecniche pratiche per la sua implementazione e applicazione in sistemi elettronici automatizzati. Caratteristiche generali 4 Compito dell’informatica Compito dell’informatica è quello di progettare algoritmi per risolvere problemi. Il processo di progettazione comprende: – l’analisi della correttezza degli algoritmi – L’implementazione di hardware (computer) idoneo alla esecuzione degli algoritmi – La realizzazione di linguaggi di programmazione per tradurre gli algoritmi in istruzioni eseguibili dall’hardware – L’identificazione dei problemi e la realizzazione di applicazioni software in grado di risolverli. Caratteristiche generali 5 Informazione e dato • Dato: Elemento o serie di elementi (simboli) accertati e verificati che possono formare oggetto di indagini, ricerche, elaborazioni o che comunque consentono di giungere a determinate conclusioni. • Informazione: comunicazione o notizia atta a essere formalizzata in dati e destinata ad essere manipolata da un sistema di trattamento automatico delle informazioni. (Da N. Zingarelli - Vocabolario della lingua italiana) Caratteristiche Generali 6 Informazione e dato Tutto ciò che comporta un aumento della conoscenza da parte di un individuo o sistema Informazione Dato Elemento rappresentativo della realtà Caratteristiche Generali 7 Informazione • Informazione: è la capacità di estrapolare conoscenza o esperienza da oggetti/fatti reali che possono risultare utili e vantaggiosi nell’esperienza di ciascun individuo. • l’informazione è in generale qualunque notizia o racconto, qualunque comunicazione scritta o orale in grado di fornire conoscenza. • il concetto di informazione si sviluppa con la necessità di comunicare e scambiare informazioni tra individui, “l'evoluzione della società sono il frutto dell'accumulazione di conoscenza sotto forma di informazione”. • Specie viventi diverse - esseri umani, animali ecc., elaborano un diverso livello di informazione, ogni specie, ogni forma di vita, percepisce il mondo a seconda del tipo di segnale che può ricevere ed elaborare. • La comunicazione dell’informazione, può avvenire attraverso: – la definizione di un dato alfabeto di simboli, – la capacità di associare conoscenze ai simboli. Caratteristiche generali 8 Codifica dell’informazione • La codifica dell'informazione consiste nel trasformare una informazione generica in una informazione comprensibile da un dispositivo o che sia adatta alla successiva elaborazione. • Il primo problema da affrontare nei processi di elaborazione dell'informazione è la rappresentazione dell'informazione La definizione esatta è che l'informazione si rappresenta usando un numero finito di simboli affidabili e facilmente distinguibili. • Nei sistemi informatici si è scelto di rappresentare l’informazione mediante una sequenza di bit (0/1). • All'interno delle apparecchiature digitali l'informazione è rappresentata mediante livelli di tensione o mediante magnetizzazione di dispositivi appropriati. Caratteristiche generali 9 Algoritmo Il compito dell’informatica è quello di progettare e sviluppare algoritmi in grado di risolvere problemi. Definizione: “Un algoritmo è una sequenza ordinata e finita di operazioni elementari in grado di risolvere un determinato problema.” Un algoritmo è quindi un sistema di regole e procedure di calcolo che portano alla soluzione di uno specifico problema. Caratteristiche generali 10 Algoritmo •La definizione formale di algoritmo contiene diversi concetti importanti: – Eseguibilità: ogni azione deve essere eseguibile in un tempo finito – Non-ambiguità: ogni azione deve essere univocamente interpretabile ed ordinata – Limitatezza: il numero totale di azioni da eseguire, per ogni insieme di dati di ingresso, deve essere limitato/finito. Caratteristiche generali 11 Sistemi di elaborazione • Il trattamento automatico è reso possibile grazie ai sistemi di elaborazione automatici in grado di trattare grosse quantità di dati in tempi molto brevi. • Un sistema di elaborazione automatico è un dispositivo elettronico costituito da 2 “elementi” fondamentali: - hardware - software Caratteristiche generali 12 Hardware e software I due pilastri su cui si regge l’informatica sono: Hardware: è la struttura fisica del sistema di elaborazione Software: è l’insieme delle istruzioni e dei comandi che permettono all’hardware di eseguire le operazioni previste Caratteristiche generali 13 Che cosa è il software Il software è un elemento logico immateriale che permette all’hardware di svolgere specifiche funzioni. • • • • Il software si sviluppa o si struttura non si fabbrica. Il software non si consuma. Il software può contenere errori e malfunzionamenti. Il software viene realizzato in modo specifico per risolvere specifici problemi. Caratteristiche generali 14 Che cosa è il software Il software è un programma o un insieme di programmi in grado di funzionare su un computer o qualsiasi altro apparato con capacità di elaborazione . Il ruolo del software è quello di: - Inserire - Modificare - Spostare/copiare - Produrre risultati Caratteristiche generali 15 Sistema di elaborazione • Elaboratore In grado di immagazzinare ed elaborare dati in base ad una serie di istruzioni (programma) • Elettronico utilizza componenti elettronici • Digitale Elabora informazioni convertendole in segnali digitali basati sul sistema binario Caratteristiche generali 16 Sistemi Informativi Insieme di parti correlate tra loro che operano in maniera congiunta per svolgere una specifica funzione. Parti integrate costruite per lavorare insieme, sinergicamente, in maniera interattiva tra loro, per conseguire un determinato obiettivo comune. Sistema informativo. Scopo comune: manipolazione di simboli/dati e calcoli Caratteristiche generali 17 Sistema • Sistema: insieme complesso ma determinato di parti correlate tra loro che operano in maniera congiunta per svolgere una specifica funzione. Ecosistema Sistema solare Sistema di equazioni … Caratteristiche generali 18 Sistemi Software • Categorie di software: • Sistema operativo • Programmi applicativi Il sistema operativo è un software che permette di gestire il sistema hardware e si frappone tra quest’ultimo ed i software applicativi. I programmi applicativi sono software che si occupano di svolgere i molteplici compiti loro affidati e colloquiano con i componenti hardware tramite il sistema operativo. Caratteristiche generali 19 Che cosa sono i dati • I dati sono l’oggetto del trattamento dei sistemi hardware e software. • I dati si distinguono in: – Semplici (primitivi) • Numeri • Caratteri • Date – Complessi • Immagini • Filmati • Suoni Caratteristiche generali 20 Elaborazione dei dati L’ Elaborazione dei dati (data processing ) è un qualsiasi procedimento informatico che converte dei dati in informazioni, dove con dato si intende una raccolta di numeri o lettere che descrivono misure ottenute da un sistema reale, mentre l’informazione è la risposta (dotata di significato) del sistema di elaborazione. Caratteristiche generali 21 Ingegneria del software • L’ingegneria del software è l’istituzione e l’impiego di principi ingegneristici fondati allo scopo di ottenere in modo economico software affidabile ed efficiente. • Si può considerare come un insieme di conoscenze in grado di applicare una strategia sistematica, disciplinata e misurabile mirata allo sviluppo, esercizio e manutenzione del software. • L’ingegneria del software comprende l’analisi, la progettazione, la costruzione, la verifica e la gestione degli oggetti tecnici che costituiscono il software. • “L’ingegneria del software è la disciplina che integra il processo, i metodi e gli strumenti per lo sviluppo del software” Caratteristiche generali 22 ITC • Information technology (IT), è lo studio, la progettazione, lo sviluppo, l’implementazione e la manutenzione dei sistemi informatici ( hardware e applicazioni software). • IT tratta delle modalità di utilizzo dei sistemi elettronici per convertire immagazzinare, proteggere, elaborare, trasmettere e ricevere le informazioni in modo sicuro. • ICT è l'acronimo di Information and Communications Technology, cioè Tecnologie dell'Informazione e della comunicazione (TIC). Con questa sigla si intende la convergenza di informatica e telematica per nuovi modi di trasmettere l’informazione. L’ICT è il settore industriale dei servizi inerenti le moderne tecnologie Informatiche e/o di telecomunicazioni. Caratteristiche generali 23 Le infrastrutture digitali • Le comunicazioni assumono il ruolo di tessuto connettivo della Società dell’Informazione. • Le nuove infrastrutture di rete sono essenziali per l’innesco e la diffusione dei processi innovativi, sia direttamente nell’ambito del settore ITC, che, indirettamente, come fattore abilitante per l’innovazione di prodotto e di processo nelle imprese utilizzatrici. • L’infrastruttura di rete è lo strumento attraverso il quale è possibile disporre dei servizi e distribuire le informazioni tra gli utilizzatori. Caratteristiche generali 24 Network Che cos’è il NETWORK? – Una rete informatica è un insieme di PC e altri dispositivi collegati tra loro mediante linee di trasmissione. – Il network consente ai dispositivi elettronici di comunicare e di condividere informazioni, risorse e applicazioni. Caratteristiche generali 25 Informatica e abaco Il progresso tecnologico è legato alla capacità di eseguire in modo semplice e veloce calcoli sempre più complessi. La storia del calcolo automatico ha origini antiche 2000 AC Il più semplice e il più antico strumento di calcolo è l’abaco. L'abaco è rimasto per migliaia di anni l'unico strumento da calcolo disponibile. Il sistema di calcolo è di tipo posizionale Caratteristiche generali 26 Primi sistemi automatici • Per arrivare a un nuovo tipo di sistema di calcolo, c’era un problema “complesso” da superare: il “riporto” da un'unità all'altra, problema che nell'abaco era risolto manualmente. • Soltanto nel Seicento venne l’idea di applicare i meccanismi degli orologi all’esecuzione di operazioni con i numeri. La serie di ruote dentate di un orologio, con le quali si calcolavano minuti, secondi e ore, poteva servire, allo stesso modo, per calcolare addizioni, sottrazioni e quindi moltiplicazioni e divisioni. • Il meccanismo è semplice la rotazione completa di una ruota fa avanzare di una unità la ruota alla sua sinistra. Caratteristiche generali 27 La macchina di calcolo di Pascal Blaise Pascal fu tra i primi, nel Seicento, a mettere a punto, con questa tecnica, una macchina da calcolo che eseguiva addizioni, sottrazioni e quindi anche moltiplicazioni e divisioni. Caratteristiche generali 28 Macchina di Leibniz Alcuni anni più tardi nel 1670, Gottfried von Leibniz realizzò una nuova macchina, con una particolare ruota dentata che consentiva di calcolare in modo più semplice e rapido moltiplicazioni, divisioni e radici quadrate. Caratteristiche generali 29 Macchine automatiche Nel corso di tutto il 1800 si susseguirono diversi tipi di macchine meccaniche che permettevano di automatizzare sia i calcoli che l’inserimento dei dati. Verso il 1820, un nobile inglese, Charles Babbage, riuscì per primo a intravedere la soluzione del problema di rendere completamente automatica l’esecuzione di qualsiasi serie di calcoli. Caratteristiche generali 30 Calcolatori elettrici • Con l’elettricità si rende finalmente disponibile la tecnologia per la realizzazione della macchina di Babbage. I vari ingranaggi potevano essere sostituiti da circuiti elettrici e le ruote dentate da interruttori. • Alla base dei primi calcolatori elettrici c’erano interruttori elettromeccanici chiamati relè, il cui compito era quello di aprire o chiudere circuiti elettrici. La prima versione di un calcolatore elettronico nacque nel 1939, e venne perfezionata nel 1943, grazie ai finanziamenti dell’IBM. “Mark 1” Caratteristiche generali 31 La macchina di Turing Nel 1936 il matematico inglese di origine ungherese Alan Turing presenta un suo concetto di macchina calcolatrice astratta, il sistema di uso generale era finalizzato alla soluzione di tutti i problemi matematici e rappresenta un primitivo e primordiale “prototipo” del computer moderno. Una macchina di Turing è costituita da due elementi. – Un nastro di lunghezza infinita, suddiviso in celle, in ognuna delle quali può essere scritto un simbolo appartenente all’alfabeto della macchina, che è composto da 0 e 1. – Una testina magnetica in grado di leggere i simboli scritti in una cella, di scrivervi un nuovo simbolo, di muoversi in entrambi i versi lungo il nastro. 32 La macchina di Von Neumann • Nel 1944 John von Neumann, definì la prima completa teoria del calcolatore elettronico. • Von Neumann suggerì di immagazzinare il programma di funzionamento all’interno della macchina e di dotare il computer di un proprio sistema capace di interpretare le istruzioni comunicate mediante le schede perforate, memorizzate in seguito all’interno della macchina stessa, evitando in questo modo il faticoso lavoro di cablaggio dei circuiti per adattarli ai differenti problemi posti all’elaboratore. • Von Neumann stabili di trattare dati ed istruzioni in forma numerica e di esprimere questi in forma binaria, facendo cioè uso di una numerazione in base due, la più adatta alla tecnologia dei tubi a vuoto, caratterizzati da due precisi livelli di potenziale elettrico. • La macchina ideata da von Neumann è in sostanza un elaboratore che lavora in maniera sequenziale, interpretando cioè uno alla volta le istruzioni contenute in un certo insieme ed applicandole ai dati forniti dall’operatore o dalla propria memoria. Caratteristiche generali 33 Sistemi a valvole termoioniche • Nel 1946, entra in funzione il gigantesco elaboratore elettronico Eniac (Electronic Numerical Integrator and Calculator). Realizzato per conto del dell’Esercito americano, per il calcolo delle tabelle balistiche. Eniac è il primo elaboratore programmabile interamente a circuiti elettronici e senza parti meccaniche in movimento anche se non rispetta il modello offerto da von Neumann: i dati sono memorizzati in accumulatori, ma il programma da eseguire su di essi non è memorizzato perché dipende dal cablaggio interno. Costituito da 19 mila valvole termoioniche, 70 mila resistenze e 10 mila condensatori, Eniac pesava 30 tonnellate, occupava un’area di 180 metri quadrati ed eseguiva 5 mila addizioni al secondo, con una velocità operativa mille volte superiore rispetto ai modelli elettromeccanici. • • Il calcolatore rimarrà in servizio per nove anni, fino a quando diverrà praticamente inservibile e di difficile manutenzione (occorrevano infatti circa 19 mila valvole nuove all’anno ed era previsto un guasto ogni 5 ore e mezza di funzionamento). Caratteristiche generali 34 La prima generazione • Nel corso del 1950 gli elaboratori elettronici cominciano ad interessare anche le industrie. • Si passa dalla fase di sperimentazione a quella di produzione e vendita. • Gli elaboratori di prima generazione si basano su 3 funzioni fondamentali: – Immissione delle informazioni – Elaborazione delle informazioni – Emissione del risultato delle elaborazioni I dati e le istruzioni vengono letti da schede perforate, tutte le operazioni e i controlli sono effettuati automaticamente, il funzionamento è guidato da una unità di controllo che presiede alla esecuzione dei comandi, ne controlla l’esattezza e regola il flusso dei dati. Caratteristiche generali 35 Diffusione nel mondo e in italia • Nel 1954 viene installato in Italia il primo elaboratore al politecnico di Torino • Nel 1958 negli stati uniti ci sono circa 2500 sistemi di elaborazione • L’inaspettata diffusione dei sistemi di elaborazione mette in evidenza i problemi di gestione e la necessità di ulteriori progressi tecnologici Caratteristiche generali 36 La seconda generazione - i transistor• La tecnologia viene in aiuto dei costruttori di sistemi grazie all’avvento dei transistor. I sistemi a valvole termoioniche vengono sostituiti dai più compatti circuiti a transistor (di dimensione dell’ordine del millimetro). • I transistor vengono impiegati, principalmente, come amplificatori di segnali elettrici o come interruttori elettronici comandati da segnali elettrici ed hanno sostituito praticamente quasi del tutto i valvole termoioniche. Caratteristiche generali 37 La seconda generazione - i transistor• Con l’impiego dei transistor e il perfezionamento delle macchine e dei programmi il calcolatore elettronico diventa più veloce ed economico, si diffonde in decine di migliaia di pezzi in tutto il mondo. • Gli impieghi dei sistemi di elaborazione investono tutti i settori di attività. • I vantaggi della nuova tecnologia a transistor sono: – dimensioni dei sistemi ridotti – Minori consumi – manutenzione migliorata • Vengono inoltre perfezionate le memorie secondarie e le unità per l’immissione e l’emissione dei dati. Caratteristiche generali 38 I circuiti integrati • Con l’introduzione dei circuiti integrati nasce la terza generazione di calcolatori elettronici. • Lo sviluppo della tecnologia permetteva di costruire su un unico chip migliaia di transistor, riducendo in modo sensibile i tempi di elaborazione, che diventavano dell’ordine del milionesimo di secondo. • Il circuito integrato attraverso la miniaturizzazione ha permesso la diminuzione dei costi di produzione. • L’incremento di velocità ha imposto un miglioramento della tecnologia di tutti gli altri componenti: memorie e dispositivi di I/O. • Con la terza generazione nascono sistemi di uso generale, cioè dispositivi senza un compito ben delineato già nella fase progettuale. Caratteristiche generali 39 La terza generazione • Al fine di gestire le varie componenti vengono creati programmi particolari detti Sistemi Operativi, che controllano il funzionamento della macchina senza l’intervento dell’operatore. • Vengono creati nuovi linguaggi di programmazione per rispondere alle esigenze più generiche (BASIC). • Vengono introdotti i concetti di multi-programmazione e di time-sharing per elaborare più programmi contemporaneamente. • Vengono introdotti i dischi magnetici per la memorizzazione dei dati. Caratteristiche generali 40 L’evoluzione dei sistemi di elaborazione • Nel corso degli anni 70 la tecnologia viene migliorata, nascono circuiti sempre più microscopici e veloci. • La tecnologia dei circuiti integrati viene estesa anche alle altri componenti dell’unità centrale e alla memoria principale. • Viene modificata la gestione della memoria permettendo l’esecuzione di programmi di dimensioni sempre maggiori. • Vengono introdotti i supporti a disco magnetico in grado di ospitare informazioni di diverse migliaia di schede perforate. Caratteristiche generali 41 I microprocessori • Nel corso degli anni 70 la INTEL concentrò in un unico chip tutte le funzioni dell’unità centrale realizzando il primo microprocessore. • Tutte le funzioni di elaborazione, interpretazione dei comandi e capacità di calcolo viene concentrata in un unico circuito. • Il primo prototipo il 4000-1 era costituito da circa 2000 transistor, aveva la dimensione di 3 cmq, ed elaborava dati a 4 bit. Caratteristiche generali 42 Sviluppo dei microprocessori • Il primo microprocessore commercializzato fu l’Intel 4004, progettato da Federico Faggin. • Successivamente l’Intel produsse il primo microprocessore ad 8 bit 8008. • La Zilog (fondata da Faggin) realizzò nel 1976 il processore Z80 che per anni rimase al centro di molteplici utilizzazioni. (Nel 2000 lo Z80 veniva ancora prodotto in grandi quantità ed utilizzato come microcontrollore per sistemi embedded.) • Contemporaneamente l’Intel propose il microprocessore 8080, predecessore di tutta la famiglia di microprocessori x86 • Nel corso del 1980 i fabbricanti e i modelli di microprocessori cominciarono a moltiplicarsi, ed iniziarono a prodursi i primi microprocessori a 16 bit. Caratteristiche generali 43 I personal computer Il microprocessore è l’elemento fondamentale per la creazione del primo Personal Computer. Nel 1977 una giovane società cominciò la produzione di un computer dai costi contenuti dotato di periferiche di I/O di facile utilizzo. Al prodotto venne dato il nome di Apple II. Il termine Personal Computer venne utilizzato in quanto, diversamente dai sistemi precedenti, l’elaboratore era stato progettato per l’uso di una singola persona. Nasceva il primo sistema che permetteva la diffusione di quella che poteva essere considerata la cultura informatica. Caratteristiche generali 44 La diffusione dei PC Nel corso degli anni 80 molti costruttori decisero di realizzare macchine a basso prezzo per uso privato, uffici o casalingo. • Sinclair Spectrum • Commodore C64 La corsa agli abbattimenti dei prezzi coinvolse anche le società più grosse portando ad una produzione di massa dei PC. Nel 1983 il time dedica una copertina al Personal Computer indicandolo come “l’uomo dell’anno”. Caratteristiche generali 45 La diffusione dei PC • L’avvento dell’IBM nel mondo dei PC portò alla produzione di sistemi così detti “professional computer” più potenti dei PC disponibili e adatti ad un uso professionale e personale. • Nasce uno standard a cui si rifanno anche altri costruttori (IBM compatibile) • L’utilizzo del sistema operativo DOS semplice e di facile comprensione da un ulteriore spinta alla diffusione dei PC. • Ancora oggi i la maggior parte dei PC si basano su l’evoluzione del sistema operativo creato da Bill Gates. Caratteristiche generali 46 Evoluzione dei Sistemi di elaborazione L’evoluzione dei sistemi di elaborazione prosegue da una parte nell’incremento della potenza di calcolo e dall’altra verso la miniaturizzazione dei sistemi per uso personale: • computer portatile o notebook computer trasportabili che possono entrare in una valigetta o essere appoggiati sulle ginocchia (laptop); • computer palmari: computer di ridotte dimensioni, tali da essere portati sul palmo di una mano; • tablet computer computer grandi come una tavoletta e dotati di uno schermo tattile (touch screen); • smartphone hanno caratteristiche molto simili ai computer palmari.