Informatica a.a. 2010/2011 Prof.Giovanni Arduini 1 Informazione Il termine informazione viene oggi utilizzato in modo ampio in contesti diversi per indicare elementi talvolta molto diversi fra loro In generale si può dire che l’informazione è tutto ciò che possiede un significato per l’uomo, e che viene conservato o comunicato in vista di una utilità pratica immediata o futura 2 1 L’osservazione del mondo reale ci consente di ottenere gli elementi che utilizziamo per esprimere un’opinione, oppure per caratterizzare un fenomeno, oppure per risolvere un problema. A questi elementi diamo il nome di dati Il trattamento dei dati per ottenere le informazioni viene indicato con il termine elaborazione 3 4 2 5 L’uomo opera con elaborazioni di tipo manuale o mentale, il computer produce elaborazioni automatiche utilizzando dispositivi elettronici Informazione + automatica = Informatica 6 3 L’informatica si basa sull’utilizzazione della matematica secondo il sistema binario 7 L’hardware (il materiale duro, la ferraglia) è la struttura fisica dell’elaboratore Il software (materiale morbido) è l’insieme di istruzioni che fanno funzionare il computer. Le istruzioni sono contenute in programmi. 8 4 I vari tipi di computer Supercomputer: le macchine più potenti al mondo Mainframe: grandi computer Workstation: computer di medie dimensioni Microcomputer: i piccoli computer (personal computer) Microcontroller: i computer più piccoli 9 L’elaboratore 10 5 Dal punto di vista dell’hardware, la struttura essenziale di un elaboratore comprende ¾ l’unità centrale di elaborazione (CPU, acronimo di Central Processing Unit, cioè unità centrale di elaborazione); ¾ La memoria centrale ¾ I dispositivi di input ¾ I dispositivi di output ¾ Le unità di memoria di massa 11 LA MEMORIA RAM (Random Access Memory) ROM (Read Only Memory) Insieme formano la Memoria centrale. ¾ dimensioni relativamente limitate ¾ accesso estremamente rapido RAM è volatile (perde il suo contenuto quando si spegne il calcolatore) ed è usata per memorizzare dati e programmi. ROM è persistente ( mantiene il suo contenuto quando si spegne il calcolatore) ma il suo contenuto è fisso e immutabile. È usata per memorizzare programmi di sistema. 12 6 LA MEMORIA Memoria di massa ¾ memorizza grandi quantità di informazioni. ¾ persistente (le informazioni non si perdono spegnendo la macchina). ¾ accesso molto meno rapido della memoria centrale (msec. contro nsec. - differenza 10 6 ). 13 LA MEMORIA Memoria di massa - supporti ¾Hard disk 80GB e oltre ¾Floppy disk 3,5” 1,44MB ¾Floppy LS Iomega Zip 100-250MB Supporti magnetici ¾Nastri 20-5000MB ¾CD-ROM 640-700MB ¾DVD fino a 8 GB Supporti ottici 14 7 LA MEMORIA Unità di misura ¾1 B = 1 Byte = 8 bit ¾1 KB = 1 Kilobyte = 2 10 = 1.024 (≅ mille) Byte ¾1 MB = 1 Megabyte = 2 20 = 1.048.576 (≅ un milione) Byte ¾1 GB = 1 Gigabyte = 2 30 = 1.073.741.824 (≅ un miliardo) Byte ¾ 1 TB = 1 Terabyte = 2 40 = 1.099.511.627.776 (≅ mille miliardi) Byte 15 DISPOSITIVI DI INPUT 16 8 DISPOSITIVI DI OUTPUT 17 DISPOSITIVI DI INPUT/OUTPUT Memorie di massa Modem Touchscreen 18 9 19 20 10 Il Sistema Operativo Una definizione esemplificativa del sistema operativo può essere la seguente: “il sistema operativo è una sorta di strato che si pone sopra la macchina fisica e permette di fare richieste ad una macchina virtuale ma che l’utente crede vera, inoltre il compito del sistema operativo, oltre a quello di controllare l’esecuzione degli altri programmi, consiste nell’impedire alle applicazioni di eseguire dei comandi che potrebbero rivelarsi dannosi” 21 Il Sistema Operativo Senza Sistema Operativo (SO) un computer è solo un “macchinario inutile”. Il SO rende possibile la gestione, l'elaborazione e l'immagazzinamento dell'INFORMAZIONE. •L’hw fornisce potenza di calcolo, il SO la rende disponibile agli utenti, gestendo l’hw in modo efficiente. • Il SO controlla l’esecuzione di tutti gli altri programmi. • Il SO è l’intermediario tra l’utente/i e la macchina. Il SO è il software che gestisce le risorse (hardware e software) della macchina. 22 11 Struttura del Sistema Operativo Il SO permette alle applicazioni di astrarre dal dettaglio hardware e di operare in termini di richieste di servizi al SO stesso. 23 Funzioni del Sistema Operativo La descrizione precisa di cosa faccia parte o meno del SO non è universalmente definita • Gestione dei Processi (multitasking) • Gestione della memoria (scheduler) • Gestione dei files (file system) • Gestione degli utenti (multiutenza) • Gestione dell’ I/O (stampanti, video, tastiera, ...) • Gestione servizi di Rete • Protezione del sistema • Interprete di comandi 24 12 Classificazione dei sistemi operativi In base al numero di utenti: • Mono-utente ( mono-user): un solo utente alla volta può utilizzare il sistema • Multi-utente (multi-user): più utenti contemporaneamente possono interagire con la macchina. Nel caso di più utenti contemporanei, il S.O. deve fornire a ciascuno l'astrazione di un sistema “dedicato”. 25 Classificazione dei sistemi operativi In base al numero di programmi in esecuzione: • Mono-programmato ( mono-task): si può eseguire un solo programma per volta. • Multi-programmato ( multi-task): il S.O. è in grado di portare avanti contemporaneamente l'esecuzione di più programmi (pur usando una sola CPU). Nel caso di multi-programmazione il S.O. deve gestire la suddivisione del tempo dell’unità di elaborazione (CPU) fra i vari programmi. 26 13 Classificazione dei sistemi operativi Esempi: · MS-DOS: monoutente, monoprogrammato · Windows95, OS/2: monoutente, multiprogrammato · Windows NT, XP: multiutente, multiprogrammato · UNIX: multiutente, multiprogrammato 27 Evoluzione del sistema operativo Windows Fino all'introduzione di Windows 98, i sistemi operativi a interfaccia grafica della Microsoft erano applicazioni (cioé programmi) vere e proprie che si appoggiavano a MS-DOS. Così Windows 1, 2, 3 e 95 andavano "lanciati" dalla finestra del DOS che si apriva all'accensione. Da Windows 98 in poi il sistema divenne totalmente autonomo. Si avviava direttamente dopo l'accensione e il DOS, nelle ultimissime versioni, è praticamente sparito. 28 14 I Files • Un file è una collezione di dati con un nome. • Un file è una sequenza di byte terminata da un carattere di EOF (End Of File) • Il file system è l’insieme dei files, della loro organizzazione in directory e dei metodi di gestione e di accesso. • I files risiedono nella memoria secondaria (dischi) • Esistono comandi per creare, distruggere, aprire, chiudere, leggere, scrivere files • In un sistema multiutente è necessario proteggere i files ci possono essere più livelli di protezione per diverse tipologie di utenti 29 Programmi applicativi Risolvono problemi specifici degli utenti: • word processor: elaborazione di testi • fogli elettronici: gestione di tabelle, calcoli e grafici • database: gestione di archivi • Scritti in linguaggi di programmazione di alto livello • Risentono in misura ridotta delle caratteristiche della architettura dell’ambiente sottostante ( portabilità). 30 15 Sviluppo di un Programma Affinché un programma scritto in un qualsiasi linguaggio di programmazione sia comprensibile (e quindi eseguibile) da un calcolatore, occorre tradurlo dal linguaggio originario al linguaggio macchina • Questa operazione viene normalmente svolta da speciali programmi, detti traduttori. I traduttori convertono il testo dei programmi scritti in un particolare linguaggio di programmazione (programmi sorgenti) nella corrispondente rappresentazione in linguaggio macchina (programmi eseguibili). 31 Traduzione Per essere eseguito dal processore, un programma deve essere tradotto in una serie di istruzioni eseguibili (linguaggio macchina) • Compilazione: la traduzione da linguaggio ad alto livello a linguaggio macchina viene effettuata da un apposito programma preesistente (il compilatore) • Interpretazione: il programma nel linguaggio ad alto livello viene letto una (o poche) istruzione alla volta e vengono eseguiti le corrispondenti istruzioni in linguaggio macchina. Questa operazione viene effettuata da un programma chiamato interprete 32 16 Quindi: • nel caso del compilatore, lo schema sopra viene percorso una volta sola prima dell'esecuzione • nel caso dell’interprete, lo schema sopra viene attraversato tante volte quante sono le istruzioni che compongono il programma; ad ogni attivazione dell'interprete su una particolare istruzione segue l'esecuzione dell'istruzione stessa. L'esecuzione di un programma compilato è più veloce dell'esecuzione di un programma mediante interprete. 33 34 17 35 Il sistema operativo Windows 36 18 37 38 19 39 La barra delle applicazioni La barra delle applicazioni costituisce la base del desktop di Windows 98. Percorrendo lungo il fondo lo schermo in tutta la sua larghezza, la barra delle applicazioni è divisa in tre sezioni: il pulsante di Start con il relativo menu a tendina, all’estrema sinistra; pulsanti per gli strumenti e le finestre aperte, nella parte centrale; e, all’estrema destra, l’area delle icone che mostrano lo stato attuale dei componenti del computer e dei programmi e processi che operano in sottofondo. Pulsante di start Pulsanti per aprire finestre Area di stato 40 20 Le finestre di Windows • La finestra di ogni cartella contiene elementi standard che rendono immediato visualizzare le informazioni desiderate Barra del titolo Barra dei menù Pulsanti di minimizzazione, ridimensionamento e chiusura Barre di scorrimento inferiore e laterale Barra di stato Pulsanti di scorrimento inferiore e laterale 41 I pulsanti di minimizzazione, ingrandimento e chiusura Minimizza Ingrandisce a tutto schermo Chiude 42 21 43 44 22 45 23