SlideShare a Scribd company logo
1 of 38
Corso di Laurea in Matematica
Dipartimento di Matematica e Fisica
Sistemi per l’elaborazione delle informazioni
1. Dal computer ad un sistema informativo
Dispense del corso IN530 a.a. 2017/2018
prof. Marco Liverani
Computer
Modello di Von Neumann (1945)
CPU
Unità di
input
Unità di
output
Unità Logico-Aritmetica
Unità di Controllo
Memoria
Unità di
input
Unità di
output
System Bus
CPU Memoria
Computer
CPU:
• Unità di sistema, bus,
Processore Intel/AMD, ...
Memoria:
• RAM, hard disk, ...
Unità di input:
• Tastiera, mouse, modem, ...
Unità di output:
• Monitor, modem, stampante,
altoparlante, ...
CD, chiavette USB, DVD, sono unità
di memoria di massa removibili,
che possono essere usate per
riversare dati da un computer
(output) e immetterli in un altro
(input)
Computer
Computer
Negli anni si è assistito ad un processo evolutivo nella struttura dei sistemi informatici
Periodo Utilizzo Elaborazione Dati Linguaggi Memoria
RAM
Memoria di
massa
Rete
1950-60 Calcolo
numerico
Centralizzata su
grandi computer
(mainframe)
Sul server, su
nastro
Linguaggio
Macchina,
Assembler
1-16 KByte < 10 MByte No
1970 Calcolo
numerico,
archiviazione
Centralizzata su mini
computer
Sul server, su
hard disk, su
Floppy disk
Assembler,
Cobol, Fortran
64 KByte < 50 MByte No, terminali
alfanumerici
seriali
1980 Elaboraz. locale
(contabilità,
archiviazione)
Decentralizzata su
personal computer
Sui personal
computer su
hard disk,
Floppy disk,
mini disk
Cobol, Fortran,
Basic, Pascal, C
16-64 KByte 20-40 MByte Modem seriali,
connessioni a
banche dati
1990 Elaboraz. locale
su PC e
workstation
UNIX
Decentralizzata su PC
o workstation o
piccoli server
(modalità
client/server)
Su server e
delocalizzata su
PC e
workstation
Visual Basic,
C/C++, Java,
ASP, Perl
640 Kbyte –
8/16/64
MByte
20-100
GByte
Protocollo
TCP/IP, rete
locale, rete
Internet bassa
velocità
2000 Servizi
gestionali
informatizzati
Centralizzata su
grandi server
Centralizzati su
SAN/NAS
accessibili in
rete
Java, C/C++, C#,
MS.net
4-64 GByte 70-700
Gbyte
Rete Internet
alta velocità
2010 Servizi
gestionali,
utility e social
Decentralizzata su
molti server e anche
su client
Decentralizzati
su molti server
(cloud)
Java, C/C++, C#,
MS.net, Python
8-256 GByte 250 Gbyte,
10-100
TByte
Rete Internet
wireless alta
velocità
Sistemi informativi
• Salvo che per usi strettamente personali, i computer sono inseriti nell’ambito di un sistema
informativo, ossia di un complesso di computer, programmi, infrastrutture di rete ed altri
strumenti, collegati e integrati fra loro, che permettono di gestire ed elaborare dati ed
informazioni di vario genere per supportare le finalità dell’organizzazione (azienda,
associazione, ente pubblico, dipartimento, laboratorio, ecc.) in cui il sistema informativo è
realizzato
• Di fatto i moderni sistemi informativi aziendali, basati su strumenti ed infrastrutture
informatiche, sostituiscono ed estendono i “sistemi informativi” non elettronici, né
automatizzati, che venivano comunque utilizzati in precedenza: archivi cartacei o su altri
supporti, strumenti di misurazione e documenti in cui tracciare le misurazioni, ecc.
• La struttura dei sistemi informativi aziendali è evoluta negli anni, di pari passo con
l’evoluzione della tecnologia informatica:
– Dai sistemi centralizzati basati su un unico grande computer (anni ’50-’60)
– Ai sistemi dipartimentali, più piccoli e accessibili contemporaneamente da più postazioni di lavoro
(terminali) da molti utenti contemporaneamente (anni ’70-’80)
– Ai sistemi distribuiti su numerosi sottosistemi client/server (anni ’80/’90)
– Ai sistemi distribuiti su reti geografiche private ad alte prestazioni (anni ’90/2000)
– Ai sistemi virtualizzati, distribuiti su locazioni che spaziano anche oltre i confini nazionali e basati
sulle cosiddette infrastrutture di “cloud computing” (oggi e nel prossimo futuro)
Digressione: anche i videogiochi hanno seguito un percorso simile
• 1979: andavo a casa di un compagno di scuola per giocare a Pong/Squash sul suo televisore
Digressione: anche i videogiochi hanno seguito un percorso simile
• 1985: con i compagni di scuola scambiavamo floppy disk e cassette con i videogiochi per i
nostri home computer
Digressione: anche i videogiochi hanno seguito un percorso simile
• 1995: con i colleghi in ufficio giocavamo insieme a Doom, ciascuno sul proprio PC,
utilizzando la rete locale
Digressione: anche i videogiochi hanno seguito un percorso simile
• 2015: con gli amici (ma anche altri sconosciuti) giochiamo ovunque a Candy Crush, ciascuno
sui propri computer/tablet/smartphone, utilizzando la rete Internet
1950-60: Sistemi informativi centralizzati su un grande computer
• Grandi elaboratori centralizzati, piuttosto fragili, difficili da programmare, possono eseguire
un solo programma alla volta
• La programmazione è esclusivamente di tipo batch, ossia senza alcuna interazione tra
l’uomo e la macchina se non l’inserimento del programma e dei dati in input attraverso
schede perforate e la restituzione degli errori o dell’output su una stampante al termine
dell’elaborazione
• Per usare il computer si prenota un “job”, si preparano le schede (centinaia, migliaia) con
una perforatrice e si esegue il job, recandosi presso il CED (centro elaborazione dati)
• I computer sono costosi, fragili e dunque pochi
possono permetterseli (grandi enti statali, grandi
aziende, ecc.)
1950-60: Sistemi informativi centralizzati su un grande computer
Utenti
Operatore
1970: mainframe e minicomputer connessi con terminali
• Fine anni ‘60, anni ’70: introduzione di nuovi grandi computer mainframe più robusti e ad alte
prestazioni, con più memoria, capacità multi-tasking, interconnessione con terminali alfanumerici per
consentire a più utenti contemporaneamente di utilizzare il sistema
• Parallelamente vengono introdotti computer più piccoli e meno costosi, denominati minicomputer, con
sistemi operativi più semplici e maggiore interattività con l’utente
• Sui minicomputer viene sviluppato il sistema operativo UNIX e il linguaggio C
• I minicomputer o “computer dipartimentali”, sono meno costosi dei predecessori, quindi più diffusi,
contribuiscono allo sviluppo della cultura informatica
• Si usano per archiviazione ed elaborazione di dati (contabilità, finanza, calcolo scientifico)
• L’utente accede al sistema con un terminale alfanumerico e digita il programma o lo carica dalla
memoria di massa; il programma è sia batch che interattivo e permette all’utente di inserire dati in input
a “run time”
1970: mainframe e minicomputer connessi con terminali
Mainframe
Storage
Minicomputer
Storage
Connessioni
seriali
Connessioni
seriali
Terminali
seriali
Terminali
seriali
Utenti dipartimento A Utenti dipartimento B
Non è una
rete!
1970: mainframe e minicomputer connessi con terminali
Local Area Network (LAN)
Mainframe
Storage
Minicomputer
Storage
Connessioni
seriali
Connessioni
seriali
Terminali
seriali
Terminali
seriali
Utenti dipartimento A Utenti dipartimento B
Questa è una rete: ma
è riservata a
connessioni (lente) fra
server
1970: mainframe e minicomputer connessi con terminali
Mainframe
Storage
Minicomputer
Storage
Connessioni
seriali
Connessioni
seriali
Terminali
seriali
Terminali
seriali
Utenti dipartimento A Utenti dipartimento B
Internet
(Wide Area Network - WAN)
Internet inizia alla fine
degli anni ‘70: lenta,
costosa, riservata a pochi,
per il trasferimento di file
1980: micro computer, personal computer, home computer
• La miniaturizzazione della tecnologia, l’abbattimento dei costi e la standardizzazione delle
componenti, consentono di portare il computer sulla scrivania degli utenti (e nelle loro case)
• Vengono realizzati programmi che permettono di operare sul computer senza saper
programmare il computer (fogli elettronici, programmi di videoscrittura, schedari
elettronici), sviluppando archivi di dati, procedure di calcolo, ecc.
• Il computer (non più il terminale) finisce sulla scrivania dell’utente:
– una CPU (4-8 MHz)
– una memoria RAM di pochi Kbyte (8-16 Kbyte)
– una memoria di massa (prima floppy disk, poi nastri e hard disk di piccola capacità: 10/20 Mbyte)
– una tastiera ed un monitor connessi direttamente al computer (24 righe da 80 colonne di testo, o
grafica a 3 colori 320x200 pixel)
– stampanti ad aghi collegate al computer su porta parallela
• Sistemi operativi mono utente, mono task, interfaccia a comandi alfanumerici, poca grafica
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
CPU
RAM
Memoria di massa
2014
2000
1984
1980: micro computer, personal computer, home computer
Ognuno ha un computer
(non un terminale) con i
propri file e i propri
programmi
1980: micro computer, personal computer, home computer
I computer non comunicano
fra di loro
(a che servirebbe?  ) Ognuno
è autonomo! Se proprio serve
si usano i floppy disk
1980: micro computer, personal computer, home computer
Inizia la “telematica”: con un
modem i computer possono
scambiarsi file usando la linea
telefonica
1980: micro computer, personal computer, home computer
BBS (Bulletin
Board System)
Si attivano “servizi telematici
on-line” per scambio file,
messaggi e consultazioni
banche dati
1990: workstation, reti locali, Internet, sistemi client/server
• Il processo di frammentazione dei computer si interrompe e si inverte: si sente la necessità
di condividere dati e fare in modo che più utenti contemporaneamente possano operare
sulle stesse informazioni: si realizzano i sistemi client/server
• Si diffondono i Relational Database Management Systems (RDBMS) e il linguaggio SQL
• Il potenziamento dei personal computer o la miniaturizzazione dei mini computer, porta alla
realizzazione delle workstation e dei server dipartimentali
• Nasce il sistema operativo Linux, da una costola di UNIX
• Tutti i sistemi operativi sono multitasking, multi utente e integrati con i servizi di rete
• Si sviluppano e si diffondono le interfacce utente grafiche (GUI – Graphical User Interface)
con l’uso di finestre, icone, menù a tendina e l’introduzione del mouse come nuovo
dispositivo di input; vengono introdotti i terminali grafici
• Si introducono le reti locali LAN (Local Area Network) basate sul protocollo TCP/IP
• Internet aumenta la propria diffusione, si riducono i costi, aumentano le prestazioni (utilizzo
di linee dedicate per aziende, modem su linea telefonica per professionisti e usi personali)
• La Sicurezza Informatica, con la diffusione delle reti pubbliche, delle connessioni con le reti
private e con l’uso di “sistemi aperti”, emerge come aspetto cruciale nello sviluppo dei
sistemi informativi
1990: workstation, reti locali, Internet, sistemi client/server
Terminali Workstation PC
(client)
Server
Server
Rete (LAN)
Linee seriali
1990: workstation, reti locali, Internet, sistemi client/server
Terminali
Workstation
PC
(client)
Server
Server
Rete (LAN)
Linee seriali
Server
Server
Server
PC
(client)
Server
CED (centro
elaborazione dati)
I server e i servizi offerti
diventano numerosi e si
moltiplicano; nasce un
vero e proprio “sistema
informativo”
Cresce a dismisura il
numero di utenti e di
client e la necessità di
collegarli al sistema
informativo
1990: workstation, reti locali, Internet, sistemi client/server
Terminali
Workstation
PC
(client)
Server
Server
Rete (LAN)
Linee seriali
Server
Server
Server
PC
(client)
Server
Terminali
Workstation
PC
(client)
Server
Server
Rete (LAN)
Linee seriali
Server
Server
Server
PC
(client)
Server
Internet
Rete (WAN)
1990: workstation, reti locali, Internet, sistemi client/server
ELABORAZIONE CLIENT / SERVERELABORAZIONE CENTRALIZZATA
Sistema Operativo Client
Sistema Operativo
Server
Sistema Operativo
Server
Programma
TERMINALE
Programma
EMULATORE DI
TERMINALE
Sistema Operativo
Server
Programma Server
Sistema Operativo Client
Programma Client
SERIALE
RETE
Servizio di
connessione remota
RETE
2000: sistemi informatici web-based
• La tecnologia web si diffonde anche in ambito aziendale e diventa un paradigma per lo
sviluppo delle applicazioni aziendali (sistemi intranet) e per il pubblico (portali Internet)
• La tecnologia web nasce per pubblicare e condividere documenti, contenuti statici; poi
evolve per consentire la fruizione di contenuti costruiti dinamicamente dal server sulla base
della richiesta del client (es.: l’elenco dei libri di un determinato autore presenti in un
archivio di una biblioteca)
• La tecnologia web è un’evoluzione e un’ibridazione di elaborazione centralizzata e
client/server
– l’elaborazione avviene prevalentemente sul server
– l’utente si collega mediante un client molto duttile (web browser) mediante cui si possono
utilizzare applicazioni diverse
– l’elaborazione server è più efficiente e permette la connessione di moltissimi client contemporanei
• Le applicazioni vengono costruite sulla base di un’architettura detta “three tier” (tre strati):
1. Livello di presentazione dei dati: web server che comunica con il web client attraverso il protocollo
HTTP e codificando le informazioni con il linguaggio HTML
2. Livello applicativo: application server che esegue la “business logic” dell’applicazione
3. Livello dati: il database server che gestisce l’archiviazione e l’estrazione dei dati
In configurazioni più semplici i livelli 1 e 2 vengono unificati in un solo strato (web server e application
server)
2000: sistemi informatici web-based
3. Data Layer
2. Application Layer
1. Presentation Layer
User Client
Database Server
Application Server
Web Server
2010: Architetture SOA, Virtualizzazione, Cloud computing
• L’evoluzione ulteriore è quella della razionalizzazione dell’architettura applicativa, mettendo
a fattor comune di più applicazioni singole operazioni utili più in generale, come servizi
offerti al sistema informativo
• Utilizzando tecnologie compatibili con le architetture web based, vengono implementate
architetture orientate ai servizi (SOA – Service Oriented Architectures):
– basate su uno strato applicativo, detto enterprise bus, dedicato allo scambio delle informazioni tra
– lo strato applicativo che implementa la “business logic” e
– lo strato dei servizi, che offre un’implementazione coerente ed efficiente di singole operazioni
• Dal punto di vista hardware si fa spazio un concetto già implementato su grandi mainframe:
la virtualizzazione
• Vengono sviluppati nuovi sistemi operativi, detti hypervisor, che permettono di ospitare su
una stessa macchina più macchine virtuali server, con sistemi operativi e configurazioni
diverse
• Le risorse hardware dell’host vengono ripartite dall’hypervisor sulle diverse macchine virtuali
attive
• Dalla fusione di architetture SOA e della virtualizzazione nasce e si definisce il cosiddetto
cloud computing:
– la virtualizzazione evolve aggregando su un unico host hardware molti server fisici, mettendo a
fattor comune tutte le risorse disponibili e poi suddividendole sulle macchine virtuali attive
– le architetture SOA evolvono offrendo servizi evoluti oltre il confine del sistema informativo
aziendale
2010: Architetture SOA, Virtualizzazione, Cloud computing
• Architetture orientate ai servizi (Service Oriented Architectures)
– Si identificano funzioni “atomiche” utili per la realizzazione di diverse applicazioni più complesse
(es.: estrazione dei dati anagrafici di una persona, calcolo del prezzo attuale di un prodotto presente
in magazzino, calcolo dell’estratto conto di un determinato conto bancario, ecc.)
– Si definiscono le modalità con cui tali funzioni possono essere utilizzate: quali applicazioni possono
richiamarle, quali parametri vengono forniti in input, quali dati vengono prodotti in output e con
quali formati
– Si implementa una infrastruttura di “enterprise service bus”, configurato per accettare l’iscrizione
alla fruizione di un servizio da parte di un’applicazione e la distribuzione del risultato
– Si implementano le funzioni come Web Service (WS) che comunicano con il protocollo SOAP
(Simple Object Application Protocol) e si comportano come descritto nel WSDL (Web Service
Description Language)
– Il service bus può supportare dei processi più articolati, orchestrando l’ordine con cui vengono
invocati i diversi servizi; il processo viene implementato da un BPM (business process manager) e
viene descritto con linguaggi analoghi a BPEL (Business Process Execution Language)
– Per la codifica dei messaggi scambiati con i Web Service (chiamata del WS e passaggio dei
parametri; restituzione dell’output dal WS), si utilizza la codifica XML (eXtensible Markup Language)
• Vantaggi
– disaccoppiamento dello strato applicativo dalle operazioni elementari: possono evolvere
indipendentemente le une dalle altre
2010: Architetture SOA, Virtualizzazione, Cloud computing
User Client
Database Server
Application Server
Web Server
Enterprise Service Bus
1. Presentation Layer
2. Application Layer
3. Service Layer
4. Data Layer
Application Server
2010: Architetture SOA, Virtualizzazione, Cloud computing
• Virtualizzazione delle infrastrutture server
– Per ridurre i costi delle infrastrutture server e rendere più flessibile la configurazione dei sistemi
server, permettendo anche una allocazione dinamica delle risorse hardware per potenziare i servizi
più critici, vengono virtualizzati i server, permettendo di configurare più server software su uno
stesso host hardware fisico
– Si sviluppano nuovi sistemi operativi chiamati hypervisor (es.: VMware Vsphere) che permettono
l’installazione non di programmi, ma di interi sistemi operativi, offrendo ai sistemi operativi ospitati
tutte le interfacce (virtualizzate) verso le diverse componenti hardware del computer: CPU, RAM,
filesystem, rete, porte seriali, ecc.
– Più server virtuali possono operare contemporaneamente su uno stesso host fisico
– I singoli server virtuali possono essere spenti senza alcun impatto sull’host fisico e possono essere
spostati facilmente da un host hardware ad un altro
– I server virtuali comunicano tra di loro e con i computer esterni all’host fisico, utilizzando i normali
protocolli di rete
• Vantaggi:
– risparmi nei costi dell’hardware
– semplificazione delle infrastrutture fisiche nei CED
– semplificazione delle procedure di backup e di disaster recovery
– ecc.
2010: Architetture SOA, Virtualizzazione, Cloud computing
User Client
Host fisico (server hardware)
Hypervisor
Server virtuale 1
Sistema operativo server
Programma 1
Programma 2
Programma n
Server virtuale 2
Sistema operativo server
Programma 1
Programma 2
Programma n
2010: Architetture SOA, Virtualizzazione, Cloud computing
• La virtualizzazione dei sistemi e la standardizzazione di infrastrutture “service oriented” trova la
sua naturale evoluzione nel Cloud computing:
– Infrastructure As A Service (IAAS): si acquista (o si predispone nel proprio CED) un’infrastruttura IT
virtualizzata come se fosse un qualunque altro servizio, pagando un canone in base alle risorse (virtuali) di
cui è composta l’infrastruttura; l’installazione del software di base e del software applicativo è a carico del
cliente
– Platform As A Service (PAAS): si acquista un’infrastruttura IT virtualizzata con ambienti per l’esecuzione di
applicazioni e la gestione di database, già predisposti, su cui eseguire le proprie applicazioni realizzate
secondo l’architettura applicativa prevista dalla piattaforma cloud stessa
– Software As A Service (SAAS): si acquista la possibilità di utilizzare, in una configurazione personalizzata ed
esclusiva, un software completo; i dati sono archiviati sui database del fornitore di servizi cloud
• I servizi cloud possono essere implementati internamente o acquistati da un fornitore in modalità
esclusiva (private cloud), ovvero è possibile utilizzare un’infrastruttura cloud usata
contemporaneamente anche da altri, con i dovuti criteri di protezione dei dati e delle applicazioni
(public cloud)
• I servizi cloud richiedono comunque un’infrastruttura di networking sicura ed efficiente
• Vantaggi:
– risparmi nei costi di acquisto dell’hardware
– semplificazione nella predisposizione di intere infrastrutture
– possibilità di attivare, potenziare/ridurre, disattivare le infrastrutture in base alle esigenze, senza
investimenti in apparati hardware
– riduzione degli investimenti economici alle sole effettive necessità
– ecc.
2010: Architetture SOA, Virtualizzazione, Cloud computing
LAN aziendale
Infrastruttura Cloud IAAS
(Infrastructure As A Service)
Internet
Server virtuale 1
Sistema operativo server
Programma 1
Programma 2
Programma n
Server virtuale 2
Sistema operativo server
Programma 1
Programma 2
Programma m
LAN virtuale
VPN
LAN aziendale
Infrastruttura Cloud PAAS
(Platform As A Service)
Internet
Application Server
virtuale
Programma 1
Programma 2
Programma k
Database Server
Virtuale
VPN
Database
1
Database
2
Database
h
Filesystem e altri
servizi virtuali
Filesystem
Servizio 1
Servizio p
LAN aziendale
Infrastruttura Cloud SAAS
(Software As A Service)
Internet
Applicazione / Servizio 1
Applicazione / Servizio 2
VPN
Applicazione / Servizio n
User Client User Client User Client
2020: espansione del Cloud computing, Internet of Things
• Oggi è quasi impossibile pensare di utilizzare un computer non connesso in rete con altri
computer; è difficile pensare anche all’uso di un computer non connesso ad Internet
• I servizi cloud stanno diventando pervasivi: il personal computer (o lo “smart device”)
diventa un terminale multimediale di applicazioni e servizi di accesso a dati residenti presso
enormi server farm dei fornitori di servizi cloud, dislocate in più località del pianeta
• La rete per connettere i client è wireless, la differenza tra rete telefonica e rete dati è ormai
inesistente; in particolare la disponibilità e l’efficienza del servizio di rete diventa cruciale
• I dati sono presso le infrastrutture cloud, più affidabili di quelle locali, ma gestite da altri:
problemi di sicurezza, privacy/riservatezza, disponibilità; di fondamentale importanza sono
anche i contratti di servizio ed i service level agreement (SLA)
• Il prossimo passo è quello di mettere in rete oggetti che fino ad oggi avevano una loro
funzione d’uso autonoma: automobili, orologi, singoli apparecchi presenti nelle abitazioni
(frigorifero, lavatrice, lavastoviglie, climatizzatore, impianto elettrico, sensori, ecc.)
• Si viene a creare una rete di oggetti: Internet of Things (IOT)
• Per realizzarla pienamente:
– Servono reti wireless ancor meno costose e più efficienti, servono protocolli di comunicazione con
la possibilità di gestire un numero di indirizzi enorme (IPv6)
– Servono regole chiare per la gestione delle informazioni, sempre più personali, sempre più
riservate, sempre più necessarie per la vita di tutti i giorni
– Serve maggiore formazione e maggiore consapevolezza degli utenti e dei gestori dei sistemi
informativi
Bibliografia essenziale
① Daniel P. Bovet, Introduzione all’architettura dei calcolatori, Zanichelli, 1996
② Brian W. Kernighan, D is for Digital, DisforDigital.net, 2011
③ Noam Nisan, Shimon Schocken, The Elements of Computing Systems, The MIT Press, 2008
④ Roger Young, How Computers Work, second edition, Lotontech, 2009
(http://www.fastchip.net/howcomputerswork/p1.html)
Server Farm ARUBA di Arezzo
Aruba è oggi uno dei primi e dei principali fornitori di servizi di cloud computing in Italia

More Related Content

What's hot

Concetti base di informatica
Concetti base di informaticaConcetti base di informatica
Concetti base di informaticaGianni Locatelli
 
Informatica Concetti Di Base - prima parte
Informatica Concetti Di Base - prima parteInformatica Concetti Di Base - prima parte
Informatica Concetti Di Base - prima parteAnna Rita Colella
 
Ecdl Modulo 1 Concetti teorici di base
Ecdl Modulo 1 Concetti teorici di baseEcdl Modulo 1 Concetti teorici di base
Ecdl Modulo 1 Concetti teorici di baseDanieleMartini15
 
Corso base di Tecnologia Prima lezione
Corso base di Tecnologia Prima lezioneCorso base di Tecnologia Prima lezione
Corso base di Tecnologia Prima lezionegemma64
 
Corso di informatica di base lezione 1 - conoscere il pc
Corso di informatica di base   lezione 1 - conoscere il pcCorso di informatica di base   lezione 1 - conoscere il pc
Corso di informatica di base lezione 1 - conoscere il pcEnrico Mori
 
Windows... per nostalgici
Windows... per nostalgiciWindows... per nostalgici
Windows... per nostalgiciClaudio Locci
 
Mini dizionario del PC
Mini dizionario del PCMini dizionario del PC
Mini dizionario del PCromolo
 
Architettura di un computer, istituto tecnico
Architettura di un computer, istituto tecnicoArchitettura di un computer, istituto tecnico
Architettura di un computer, istituto tecnicocesarem
 
Tecnologie informatiche
Tecnologie informaticheTecnologie informatiche
Tecnologie informaticheorestJump
 

What's hot (20)

Informatica corso base hw e sw
Informatica corso base hw e swInformatica corso base hw e sw
Informatica corso base hw e sw
 
Concetti base di informatica
Concetti base di informaticaConcetti base di informatica
Concetti base di informatica
 
Informatica Concetti Di Base - prima parte
Informatica Concetti Di Base - prima parteInformatica Concetti Di Base - prima parte
Informatica Concetti Di Base - prima parte
 
Corso base di computer
Corso base di computerCorso base di computer
Corso base di computer
 
Modulo 1 ECDL
Modulo 1 ECDLModulo 1 ECDL
Modulo 1 ECDL
 
Ecdl Modulo 1 Concetti teorici di base
Ecdl Modulo 1 Concetti teorici di baseEcdl Modulo 1 Concetti teorici di base
Ecdl Modulo 1 Concetti teorici di base
 
Informatica base1
Informatica base1Informatica base1
Informatica base1
 
2_il_computer
2_il_computer2_il_computer
2_il_computer
 
Corso base di Tecnologia Prima lezione
Corso base di Tecnologia Prima lezioneCorso base di Tecnologia Prima lezione
Corso base di Tecnologia Prima lezione
 
HARDWARE & SOFTWARE
HARDWARE & SOFTWAREHARDWARE & SOFTWARE
HARDWARE & SOFTWARE
 
Informatica di base
Informatica di baseInformatica di base
Informatica di base
 
Capire l'informatica
Capire l'informaticaCapire l'informatica
Capire l'informatica
 
Componenti hardware
Componenti hardwareComponenti hardware
Componenti hardware
 
Slide trentin
Slide trentinSlide trentin
Slide trentin
 
Corso di informatica di base lezione 1 - conoscere il pc
Corso di informatica di base   lezione 1 - conoscere il pcCorso di informatica di base   lezione 1 - conoscere il pc
Corso di informatica di base lezione 1 - conoscere il pc
 
La struttura del pc
La struttura del pcLa struttura del pc
La struttura del pc
 
Windows... per nostalgici
Windows... per nostalgiciWindows... per nostalgici
Windows... per nostalgici
 
Mini dizionario del PC
Mini dizionario del PCMini dizionario del PC
Mini dizionario del PC
 
Architettura di un computer, istituto tecnico
Architettura di un computer, istituto tecnicoArchitettura di un computer, istituto tecnico
Architettura di un computer, istituto tecnico
 
Tecnologie informatiche
Tecnologie informaticheTecnologie informatiche
Tecnologie informatiche
 

Similar to Dal computer ad un sistema informativo

Introduzione al computer e a Internet
Introduzione al computer e a InternetIntroduzione al computer e a Internet
Introduzione al computer e a InternetCarlo Vaccari
 
Storia dei sistemi di elaborazione
Storia dei sistemi di elaborazioneStoria dei sistemi di elaborazione
Storia dei sistemi di elaborazioneDavideMeschini
 
Storia dei sistemi di elaborazione
Storia dei sistemi di elaborazioneStoria dei sistemi di elaborazione
Storia dei sistemi di elaborazioneUniversita' di Bari
 
Introduzione ai Sistemi Operativi
Introduzione ai Sistemi OperativiIntroduzione ai Sistemi Operativi
Introduzione ai Sistemi OperativiorestJump
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singoloscaliafrancesco
 
Architetturacomputer1
Architetturacomputer1Architetturacomputer1
Architetturacomputer1cesarem
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singoloscaliafrancesco
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singoloFrancesco Scalia
 
Modulo1 lezione1
Modulo1 lezione1Modulo1 lezione1
Modulo1 lezione1scipag
 
Concetti di base (per iniziare)
Concetti di base (per iniziare)Concetti di base (per iniziare)
Concetti di base (per iniziare)Lorenzo Cassarisi
 
Tesina informatica e Internet
Tesina informatica e InternetTesina informatica e Internet
Tesina informatica e Internet37413600
 

Similar to Dal computer ad un sistema informativo (20)

Introduzione al computer e a Internet
Introduzione al computer e a InternetIntroduzione al computer e a Internet
Introduzione al computer e a Internet
 
Storia dei sistemi di elaborazione
Storia dei sistemi di elaborazioneStoria dei sistemi di elaborazione
Storia dei sistemi di elaborazione
 
Storia dei sistemi di elaborazione
Storia dei sistemi di elaborazioneStoria dei sistemi di elaborazione
Storia dei sistemi di elaborazione
 
Tecnologie di rete
Tecnologie di reteTecnologie di rete
Tecnologie di rete
 
Il personal computer
Il personal computerIl personal computer
Il personal computer
 
Introduzione ai Sistemi Operativi
Introduzione ai Sistemi OperativiIntroduzione ai Sistemi Operativi
Introduzione ai Sistemi Operativi
 
Storia del computer
Storia del computerStoria del computer
Storia del computer
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singolo
 
BLU_QWERTY 1
BLU_QWERTY 1BLU_QWERTY 1
BLU_QWERTY 1
 
Storia del computer
Storia del computerStoria del computer
Storia del computer
 
Architetturacomputer1
Architetturacomputer1Architetturacomputer1
Architetturacomputer1
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singolo
 
Storia del computer singolo
Storia del computer singoloStoria del computer singolo
Storia del computer singolo
 
Modulo1 lezione1
Modulo1 lezione1Modulo1 lezione1
Modulo1 lezione1
 
01 hardware
01 hardware01 hardware
01 hardware
 
01 Hardware
01  Hardware01  Hardware
01 Hardware
 
Concetti di base (per iniziare)
Concetti di base (per iniziare)Concetti di base (per iniziare)
Concetti di base (per iniziare)
 
La storia dei computer
La storia dei computerLa storia dei computer
La storia dei computer
 
Sistemi operativi
Sistemi operativiSistemi operativi
Sistemi operativi
 
Tesina informatica e Internet
Tesina informatica e InternetTesina informatica e Internet
Tesina informatica e Internet
 

More from Marco Liverani

Algoritmi di ordinamento
Algoritmi di ordinamentoAlgoritmi di ordinamento
Algoritmi di ordinamentoMarco Liverani
 
Il problema del Matrimonio Stabile
Il problema del Matrimonio StabileIl problema del Matrimonio Stabile
Il problema del Matrimonio StabileMarco Liverani
 
Algoritmi e complessità computazionale
Algoritmi e complessità computazionaleAlgoritmi e complessità computazionale
Algoritmi e complessità computazionaleMarco Liverani
 
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilità
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilitàAppunti sulla teoria degli automi, dei linguaggi e della calcolabilità
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilitàMarco Liverani
 
Qualche cenno sul mercato del lavoro in ambito informatico in Italia
Qualche cenno sul mercato del lavoro in ambito informatico in ItaliaQualche cenno sul mercato del lavoro in ambito informatico in Italia
Qualche cenno sul mercato del lavoro in ambito informatico in ItaliaMarco Liverani
 
Cammini di costo minimo: problemi e algoritmi
Cammini di costo minimo: problemi e algoritmiCammini di costo minimo: problemi e algoritmi
Cammini di costo minimo: problemi e algoritmiMarco Liverani
 
Principi di ingegneria del software
Principi di ingegneria del softwarePrincipi di ingegneria del software
Principi di ingegneria del softwareMarco Liverani
 
Sicurezza dei sistemi informativi
Sicurezza dei sistemi informativiSicurezza dei sistemi informativi
Sicurezza dei sistemi informativiMarco Liverani
 
Applicazioni web based
Applicazioni web basedApplicazioni web based
Applicazioni web basedMarco Liverani
 
Componenti di un sistema informativo aziendale
Componenti di un sistema informativo aziendaleComponenti di un sistema informativo aziendale
Componenti di un sistema informativo aziendaleMarco Liverani
 
Sistemi per l'elaborazione delle informazioni
Sistemi per l'elaborazione delle informazioniSistemi per l'elaborazione delle informazioni
Sistemi per l'elaborazione delle informazioniMarco Liverani
 

More from Marco Liverani (15)

Algoritmi di ordinamento
Algoritmi di ordinamentoAlgoritmi di ordinamento
Algoritmi di ordinamento
 
Il problema del Matrimonio Stabile
Il problema del Matrimonio StabileIl problema del Matrimonio Stabile
Il problema del Matrimonio Stabile
 
Algoritmi e complessità computazionale
Algoritmi e complessità computazionaleAlgoritmi e complessità computazionale
Algoritmi e complessità computazionale
 
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilità
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilitàAppunti sulla teoria degli automi, dei linguaggi e della calcolabilità
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilità
 
Qualche cenno sul mercato del lavoro in ambito informatico in Italia
Qualche cenno sul mercato del lavoro in ambito informatico in ItaliaQualche cenno sul mercato del lavoro in ambito informatico in Italia
Qualche cenno sul mercato del lavoro in ambito informatico in Italia
 
Cammini di costo minimo: problemi e algoritmi
Cammini di costo minimo: problemi e algoritmiCammini di costo minimo: problemi e algoritmi
Cammini di costo minimo: problemi e algoritmi
 
Principi di ingegneria del software
Principi di ingegneria del softwarePrincipi di ingegneria del software
Principi di ingegneria del software
 
Sicurezza dei sistemi informativi
Sicurezza dei sistemi informativiSicurezza dei sistemi informativi
Sicurezza dei sistemi informativi
 
Applicazioni web based
Applicazioni web basedApplicazioni web based
Applicazioni web based
 
Data warehouse
Data warehouseData warehouse
Data warehouse
 
Database relazionali
Database relazionaliDatabase relazionali
Database relazionali
 
Reti di computer
Reti di computerReti di computer
Reti di computer
 
Sistemi operativi
Sistemi operativiSistemi operativi
Sistemi operativi
 
Componenti di un sistema informativo aziendale
Componenti di un sistema informativo aziendaleComponenti di un sistema informativo aziendale
Componenti di un sistema informativo aziendale
 
Sistemi per l'elaborazione delle informazioni
Sistemi per l'elaborazione delle informazioniSistemi per l'elaborazione delle informazioni
Sistemi per l'elaborazione delle informazioni
 

Recently uploaded

Esperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superioreEsperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superiorevaleriodinoia35
 
San Giorgio e la leggenda del drago.pptx
San Giorgio e la leggenda del drago.pptxSan Giorgio e la leggenda del drago.pptx
San Giorgio e la leggenda del drago.pptxMartin M Flynn
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaStefano Lariccia
 
CON OCCHI DIVERSI - catechesi per candidati alla Cresima
CON OCCHI DIVERSI - catechesi per candidati alla CresimaCON OCCHI DIVERSI - catechesi per candidati alla Cresima
CON OCCHI DIVERSI - catechesi per candidati alla CresimaRafael Figueredo
 
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.giuliofiorerm
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaStefano Lariccia
 
lezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldilezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldivaleriodinoia35
 
Corso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativoCorso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativovaleriodinoia35
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaRafael Figueredo
 

Recently uploaded (9)

Esperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superioreEsperimenti_laboratorio di fisica per la scuola superiore
Esperimenti_laboratorio di fisica per la scuola superiore
 
San Giorgio e la leggenda del drago.pptx
San Giorgio e la leggenda del drago.pptxSan Giorgio e la leggenda del drago.pptx
San Giorgio e la leggenda del drago.pptx
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
 
CON OCCHI DIVERSI - catechesi per candidati alla Cresima
CON OCCHI DIVERSI - catechesi per candidati alla CresimaCON OCCHI DIVERSI - catechesi per candidati alla Cresima
CON OCCHI DIVERSI - catechesi per candidati alla Cresima
 
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.
RICERCA_SUGLI ANFIBI PER LA PRIMA MEDIA.
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
 
lezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldilezione di fisica_I moti nel piano_Amaldi
lezione di fisica_I moti nel piano_Amaldi
 
Corso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativoCorso di digitalizzazione e reti per segretario amministrativo
Corso di digitalizzazione e reti per segretario amministrativo
 
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla CresimaIL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
IL CHIAMATO ALLA CONVERSIONE - catechesi per candidati alla Cresima
 

Dal computer ad un sistema informativo

  • 1. Corso di Laurea in Matematica Dipartimento di Matematica e Fisica Sistemi per l’elaborazione delle informazioni 1. Dal computer ad un sistema informativo Dispense del corso IN530 a.a. 2017/2018 prof. Marco Liverani
  • 2. Computer Modello di Von Neumann (1945) CPU Unità di input Unità di output Unità Logico-Aritmetica Unità di Controllo Memoria Unità di input Unità di output System Bus CPU Memoria
  • 3. Computer CPU: • Unità di sistema, bus, Processore Intel/AMD, ... Memoria: • RAM, hard disk, ... Unità di input: • Tastiera, mouse, modem, ... Unità di output: • Monitor, modem, stampante, altoparlante, ... CD, chiavette USB, DVD, sono unità di memoria di massa removibili, che possono essere usate per riversare dati da un computer (output) e immetterli in un altro (input)
  • 5. Computer Negli anni si è assistito ad un processo evolutivo nella struttura dei sistemi informatici Periodo Utilizzo Elaborazione Dati Linguaggi Memoria RAM Memoria di massa Rete 1950-60 Calcolo numerico Centralizzata su grandi computer (mainframe) Sul server, su nastro Linguaggio Macchina, Assembler 1-16 KByte < 10 MByte No 1970 Calcolo numerico, archiviazione Centralizzata su mini computer Sul server, su hard disk, su Floppy disk Assembler, Cobol, Fortran 64 KByte < 50 MByte No, terminali alfanumerici seriali 1980 Elaboraz. locale (contabilità, archiviazione) Decentralizzata su personal computer Sui personal computer su hard disk, Floppy disk, mini disk Cobol, Fortran, Basic, Pascal, C 16-64 KByte 20-40 MByte Modem seriali, connessioni a banche dati 1990 Elaboraz. locale su PC e workstation UNIX Decentralizzata su PC o workstation o piccoli server (modalità client/server) Su server e delocalizzata su PC e workstation Visual Basic, C/C++, Java, ASP, Perl 640 Kbyte – 8/16/64 MByte 20-100 GByte Protocollo TCP/IP, rete locale, rete Internet bassa velocità 2000 Servizi gestionali informatizzati Centralizzata su grandi server Centralizzati su SAN/NAS accessibili in rete Java, C/C++, C#, MS.net 4-64 GByte 70-700 Gbyte Rete Internet alta velocità 2010 Servizi gestionali, utility e social Decentralizzata su molti server e anche su client Decentralizzati su molti server (cloud) Java, C/C++, C#, MS.net, Python 8-256 GByte 250 Gbyte, 10-100 TByte Rete Internet wireless alta velocità
  • 6. Sistemi informativi • Salvo che per usi strettamente personali, i computer sono inseriti nell’ambito di un sistema informativo, ossia di un complesso di computer, programmi, infrastrutture di rete ed altri strumenti, collegati e integrati fra loro, che permettono di gestire ed elaborare dati ed informazioni di vario genere per supportare le finalità dell’organizzazione (azienda, associazione, ente pubblico, dipartimento, laboratorio, ecc.) in cui il sistema informativo è realizzato • Di fatto i moderni sistemi informativi aziendali, basati su strumenti ed infrastrutture informatiche, sostituiscono ed estendono i “sistemi informativi” non elettronici, né automatizzati, che venivano comunque utilizzati in precedenza: archivi cartacei o su altri supporti, strumenti di misurazione e documenti in cui tracciare le misurazioni, ecc. • La struttura dei sistemi informativi aziendali è evoluta negli anni, di pari passo con l’evoluzione della tecnologia informatica: – Dai sistemi centralizzati basati su un unico grande computer (anni ’50-’60) – Ai sistemi dipartimentali, più piccoli e accessibili contemporaneamente da più postazioni di lavoro (terminali) da molti utenti contemporaneamente (anni ’70-’80) – Ai sistemi distribuiti su numerosi sottosistemi client/server (anni ’80/’90) – Ai sistemi distribuiti su reti geografiche private ad alte prestazioni (anni ’90/2000) – Ai sistemi virtualizzati, distribuiti su locazioni che spaziano anche oltre i confini nazionali e basati sulle cosiddette infrastrutture di “cloud computing” (oggi e nel prossimo futuro)
  • 7. Digressione: anche i videogiochi hanno seguito un percorso simile • 1979: andavo a casa di un compagno di scuola per giocare a Pong/Squash sul suo televisore
  • 8. Digressione: anche i videogiochi hanno seguito un percorso simile • 1985: con i compagni di scuola scambiavamo floppy disk e cassette con i videogiochi per i nostri home computer
  • 9. Digressione: anche i videogiochi hanno seguito un percorso simile • 1995: con i colleghi in ufficio giocavamo insieme a Doom, ciascuno sul proprio PC, utilizzando la rete locale
  • 10. Digressione: anche i videogiochi hanno seguito un percorso simile • 2015: con gli amici (ma anche altri sconosciuti) giochiamo ovunque a Candy Crush, ciascuno sui propri computer/tablet/smartphone, utilizzando la rete Internet
  • 11. 1950-60: Sistemi informativi centralizzati su un grande computer • Grandi elaboratori centralizzati, piuttosto fragili, difficili da programmare, possono eseguire un solo programma alla volta • La programmazione è esclusivamente di tipo batch, ossia senza alcuna interazione tra l’uomo e la macchina se non l’inserimento del programma e dei dati in input attraverso schede perforate e la restituzione degli errori o dell’output su una stampante al termine dell’elaborazione • Per usare il computer si prenota un “job”, si preparano le schede (centinaia, migliaia) con una perforatrice e si esegue il job, recandosi presso il CED (centro elaborazione dati) • I computer sono costosi, fragili e dunque pochi possono permetterseli (grandi enti statali, grandi aziende, ecc.)
  • 12. 1950-60: Sistemi informativi centralizzati su un grande computer Utenti Operatore
  • 13. 1970: mainframe e minicomputer connessi con terminali • Fine anni ‘60, anni ’70: introduzione di nuovi grandi computer mainframe più robusti e ad alte prestazioni, con più memoria, capacità multi-tasking, interconnessione con terminali alfanumerici per consentire a più utenti contemporaneamente di utilizzare il sistema • Parallelamente vengono introdotti computer più piccoli e meno costosi, denominati minicomputer, con sistemi operativi più semplici e maggiore interattività con l’utente • Sui minicomputer viene sviluppato il sistema operativo UNIX e il linguaggio C • I minicomputer o “computer dipartimentali”, sono meno costosi dei predecessori, quindi più diffusi, contribuiscono allo sviluppo della cultura informatica • Si usano per archiviazione ed elaborazione di dati (contabilità, finanza, calcolo scientifico) • L’utente accede al sistema con un terminale alfanumerico e digita il programma o lo carica dalla memoria di massa; il programma è sia batch che interattivo e permette all’utente di inserire dati in input a “run time”
  • 14. 1970: mainframe e minicomputer connessi con terminali Mainframe Storage Minicomputer Storage Connessioni seriali Connessioni seriali Terminali seriali Terminali seriali Utenti dipartimento A Utenti dipartimento B Non è una rete!
  • 15. 1970: mainframe e minicomputer connessi con terminali Local Area Network (LAN) Mainframe Storage Minicomputer Storage Connessioni seriali Connessioni seriali Terminali seriali Terminali seriali Utenti dipartimento A Utenti dipartimento B Questa è una rete: ma è riservata a connessioni (lente) fra server
  • 16. 1970: mainframe e minicomputer connessi con terminali Mainframe Storage Minicomputer Storage Connessioni seriali Connessioni seriali Terminali seriali Terminali seriali Utenti dipartimento A Utenti dipartimento B Internet (Wide Area Network - WAN) Internet inizia alla fine degli anni ‘70: lenta, costosa, riservata a pochi, per il trasferimento di file
  • 17. 1980: micro computer, personal computer, home computer • La miniaturizzazione della tecnologia, l’abbattimento dei costi e la standardizzazione delle componenti, consentono di portare il computer sulla scrivania degli utenti (e nelle loro case) • Vengono realizzati programmi che permettono di operare sul computer senza saper programmare il computer (fogli elettronici, programmi di videoscrittura, schedari elettronici), sviluppando archivi di dati, procedure di calcolo, ecc. • Il computer (non più il terminale) finisce sulla scrivania dell’utente: – una CPU (4-8 MHz) – una memoria RAM di pochi Kbyte (8-16 Kbyte) – una memoria di massa (prima floppy disk, poi nastri e hard disk di piccola capacità: 10/20 Mbyte) – una tastiera ed un monitor connessi direttamente al computer (24 righe da 80 colonne di testo, o grafica a 3 colori 320x200 pixel) – stampanti ad aghi collegate al computer su porta parallela • Sistemi operativi mono utente, mono task, interfaccia a comandi alfanumerici, poca grafica 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 CPU RAM Memoria di massa 2014 2000 1984
  • 18. 1980: micro computer, personal computer, home computer Ognuno ha un computer (non un terminale) con i propri file e i propri programmi
  • 19. 1980: micro computer, personal computer, home computer I computer non comunicano fra di loro (a che servirebbe?  ) Ognuno è autonomo! Se proprio serve si usano i floppy disk
  • 20. 1980: micro computer, personal computer, home computer Inizia la “telematica”: con un modem i computer possono scambiarsi file usando la linea telefonica
  • 21. 1980: micro computer, personal computer, home computer BBS (Bulletin Board System) Si attivano “servizi telematici on-line” per scambio file, messaggi e consultazioni banche dati
  • 22. 1990: workstation, reti locali, Internet, sistemi client/server • Il processo di frammentazione dei computer si interrompe e si inverte: si sente la necessità di condividere dati e fare in modo che più utenti contemporaneamente possano operare sulle stesse informazioni: si realizzano i sistemi client/server • Si diffondono i Relational Database Management Systems (RDBMS) e il linguaggio SQL • Il potenziamento dei personal computer o la miniaturizzazione dei mini computer, porta alla realizzazione delle workstation e dei server dipartimentali • Nasce il sistema operativo Linux, da una costola di UNIX • Tutti i sistemi operativi sono multitasking, multi utente e integrati con i servizi di rete • Si sviluppano e si diffondono le interfacce utente grafiche (GUI – Graphical User Interface) con l’uso di finestre, icone, menù a tendina e l’introduzione del mouse come nuovo dispositivo di input; vengono introdotti i terminali grafici • Si introducono le reti locali LAN (Local Area Network) basate sul protocollo TCP/IP • Internet aumenta la propria diffusione, si riducono i costi, aumentano le prestazioni (utilizzo di linee dedicate per aziende, modem su linea telefonica per professionisti e usi personali) • La Sicurezza Informatica, con la diffusione delle reti pubbliche, delle connessioni con le reti private e con l’uso di “sistemi aperti”, emerge come aspetto cruciale nello sviluppo dei sistemi informativi
  • 23. 1990: workstation, reti locali, Internet, sistemi client/server Terminali Workstation PC (client) Server Server Rete (LAN) Linee seriali
  • 24. 1990: workstation, reti locali, Internet, sistemi client/server Terminali Workstation PC (client) Server Server Rete (LAN) Linee seriali Server Server Server PC (client) Server CED (centro elaborazione dati) I server e i servizi offerti diventano numerosi e si moltiplicano; nasce un vero e proprio “sistema informativo” Cresce a dismisura il numero di utenti e di client e la necessità di collegarli al sistema informativo
  • 25. 1990: workstation, reti locali, Internet, sistemi client/server Terminali Workstation PC (client) Server Server Rete (LAN) Linee seriali Server Server Server PC (client) Server Terminali Workstation PC (client) Server Server Rete (LAN) Linee seriali Server Server Server PC (client) Server Internet Rete (WAN)
  • 26. 1990: workstation, reti locali, Internet, sistemi client/server ELABORAZIONE CLIENT / SERVERELABORAZIONE CENTRALIZZATA Sistema Operativo Client Sistema Operativo Server Sistema Operativo Server Programma TERMINALE Programma EMULATORE DI TERMINALE Sistema Operativo Server Programma Server Sistema Operativo Client Programma Client SERIALE RETE Servizio di connessione remota RETE
  • 27. 2000: sistemi informatici web-based • La tecnologia web si diffonde anche in ambito aziendale e diventa un paradigma per lo sviluppo delle applicazioni aziendali (sistemi intranet) e per il pubblico (portali Internet) • La tecnologia web nasce per pubblicare e condividere documenti, contenuti statici; poi evolve per consentire la fruizione di contenuti costruiti dinamicamente dal server sulla base della richiesta del client (es.: l’elenco dei libri di un determinato autore presenti in un archivio di una biblioteca) • La tecnologia web è un’evoluzione e un’ibridazione di elaborazione centralizzata e client/server – l’elaborazione avviene prevalentemente sul server – l’utente si collega mediante un client molto duttile (web browser) mediante cui si possono utilizzare applicazioni diverse – l’elaborazione server è più efficiente e permette la connessione di moltissimi client contemporanei • Le applicazioni vengono costruite sulla base di un’architettura detta “three tier” (tre strati): 1. Livello di presentazione dei dati: web server che comunica con il web client attraverso il protocollo HTTP e codificando le informazioni con il linguaggio HTML 2. Livello applicativo: application server che esegue la “business logic” dell’applicazione 3. Livello dati: il database server che gestisce l’archiviazione e l’estrazione dei dati In configurazioni più semplici i livelli 1 e 2 vengono unificati in un solo strato (web server e application server)
  • 28. 2000: sistemi informatici web-based 3. Data Layer 2. Application Layer 1. Presentation Layer User Client Database Server Application Server Web Server
  • 29. 2010: Architetture SOA, Virtualizzazione, Cloud computing • L’evoluzione ulteriore è quella della razionalizzazione dell’architettura applicativa, mettendo a fattor comune di più applicazioni singole operazioni utili più in generale, come servizi offerti al sistema informativo • Utilizzando tecnologie compatibili con le architetture web based, vengono implementate architetture orientate ai servizi (SOA – Service Oriented Architectures): – basate su uno strato applicativo, detto enterprise bus, dedicato allo scambio delle informazioni tra – lo strato applicativo che implementa la “business logic” e – lo strato dei servizi, che offre un’implementazione coerente ed efficiente di singole operazioni • Dal punto di vista hardware si fa spazio un concetto già implementato su grandi mainframe: la virtualizzazione • Vengono sviluppati nuovi sistemi operativi, detti hypervisor, che permettono di ospitare su una stessa macchina più macchine virtuali server, con sistemi operativi e configurazioni diverse • Le risorse hardware dell’host vengono ripartite dall’hypervisor sulle diverse macchine virtuali attive • Dalla fusione di architetture SOA e della virtualizzazione nasce e si definisce il cosiddetto cloud computing: – la virtualizzazione evolve aggregando su un unico host hardware molti server fisici, mettendo a fattor comune tutte le risorse disponibili e poi suddividendole sulle macchine virtuali attive – le architetture SOA evolvono offrendo servizi evoluti oltre il confine del sistema informativo aziendale
  • 30. 2010: Architetture SOA, Virtualizzazione, Cloud computing • Architetture orientate ai servizi (Service Oriented Architectures) – Si identificano funzioni “atomiche” utili per la realizzazione di diverse applicazioni più complesse (es.: estrazione dei dati anagrafici di una persona, calcolo del prezzo attuale di un prodotto presente in magazzino, calcolo dell’estratto conto di un determinato conto bancario, ecc.) – Si definiscono le modalità con cui tali funzioni possono essere utilizzate: quali applicazioni possono richiamarle, quali parametri vengono forniti in input, quali dati vengono prodotti in output e con quali formati – Si implementa una infrastruttura di “enterprise service bus”, configurato per accettare l’iscrizione alla fruizione di un servizio da parte di un’applicazione e la distribuzione del risultato – Si implementano le funzioni come Web Service (WS) che comunicano con il protocollo SOAP (Simple Object Application Protocol) e si comportano come descritto nel WSDL (Web Service Description Language) – Il service bus può supportare dei processi più articolati, orchestrando l’ordine con cui vengono invocati i diversi servizi; il processo viene implementato da un BPM (business process manager) e viene descritto con linguaggi analoghi a BPEL (Business Process Execution Language) – Per la codifica dei messaggi scambiati con i Web Service (chiamata del WS e passaggio dei parametri; restituzione dell’output dal WS), si utilizza la codifica XML (eXtensible Markup Language) • Vantaggi – disaccoppiamento dello strato applicativo dalle operazioni elementari: possono evolvere indipendentemente le une dalle altre
  • 31. 2010: Architetture SOA, Virtualizzazione, Cloud computing User Client Database Server Application Server Web Server Enterprise Service Bus 1. Presentation Layer 2. Application Layer 3. Service Layer 4. Data Layer Application Server
  • 32. 2010: Architetture SOA, Virtualizzazione, Cloud computing • Virtualizzazione delle infrastrutture server – Per ridurre i costi delle infrastrutture server e rendere più flessibile la configurazione dei sistemi server, permettendo anche una allocazione dinamica delle risorse hardware per potenziare i servizi più critici, vengono virtualizzati i server, permettendo di configurare più server software su uno stesso host hardware fisico – Si sviluppano nuovi sistemi operativi chiamati hypervisor (es.: VMware Vsphere) che permettono l’installazione non di programmi, ma di interi sistemi operativi, offrendo ai sistemi operativi ospitati tutte le interfacce (virtualizzate) verso le diverse componenti hardware del computer: CPU, RAM, filesystem, rete, porte seriali, ecc. – Più server virtuali possono operare contemporaneamente su uno stesso host fisico – I singoli server virtuali possono essere spenti senza alcun impatto sull’host fisico e possono essere spostati facilmente da un host hardware ad un altro – I server virtuali comunicano tra di loro e con i computer esterni all’host fisico, utilizzando i normali protocolli di rete • Vantaggi: – risparmi nei costi dell’hardware – semplificazione delle infrastrutture fisiche nei CED – semplificazione delle procedure di backup e di disaster recovery – ecc.
  • 33. 2010: Architetture SOA, Virtualizzazione, Cloud computing User Client Host fisico (server hardware) Hypervisor Server virtuale 1 Sistema operativo server Programma 1 Programma 2 Programma n Server virtuale 2 Sistema operativo server Programma 1 Programma 2 Programma n
  • 34. 2010: Architetture SOA, Virtualizzazione, Cloud computing • La virtualizzazione dei sistemi e la standardizzazione di infrastrutture “service oriented” trova la sua naturale evoluzione nel Cloud computing: – Infrastructure As A Service (IAAS): si acquista (o si predispone nel proprio CED) un’infrastruttura IT virtualizzata come se fosse un qualunque altro servizio, pagando un canone in base alle risorse (virtuali) di cui è composta l’infrastruttura; l’installazione del software di base e del software applicativo è a carico del cliente – Platform As A Service (PAAS): si acquista un’infrastruttura IT virtualizzata con ambienti per l’esecuzione di applicazioni e la gestione di database, già predisposti, su cui eseguire le proprie applicazioni realizzate secondo l’architettura applicativa prevista dalla piattaforma cloud stessa – Software As A Service (SAAS): si acquista la possibilità di utilizzare, in una configurazione personalizzata ed esclusiva, un software completo; i dati sono archiviati sui database del fornitore di servizi cloud • I servizi cloud possono essere implementati internamente o acquistati da un fornitore in modalità esclusiva (private cloud), ovvero è possibile utilizzare un’infrastruttura cloud usata contemporaneamente anche da altri, con i dovuti criteri di protezione dei dati e delle applicazioni (public cloud) • I servizi cloud richiedono comunque un’infrastruttura di networking sicura ed efficiente • Vantaggi: – risparmi nei costi di acquisto dell’hardware – semplificazione nella predisposizione di intere infrastrutture – possibilità di attivare, potenziare/ridurre, disattivare le infrastrutture in base alle esigenze, senza investimenti in apparati hardware – riduzione degli investimenti economici alle sole effettive necessità – ecc.
  • 35. 2010: Architetture SOA, Virtualizzazione, Cloud computing LAN aziendale Infrastruttura Cloud IAAS (Infrastructure As A Service) Internet Server virtuale 1 Sistema operativo server Programma 1 Programma 2 Programma n Server virtuale 2 Sistema operativo server Programma 1 Programma 2 Programma m LAN virtuale VPN LAN aziendale Infrastruttura Cloud PAAS (Platform As A Service) Internet Application Server virtuale Programma 1 Programma 2 Programma k Database Server Virtuale VPN Database 1 Database 2 Database h Filesystem e altri servizi virtuali Filesystem Servizio 1 Servizio p LAN aziendale Infrastruttura Cloud SAAS (Software As A Service) Internet Applicazione / Servizio 1 Applicazione / Servizio 2 VPN Applicazione / Servizio n User Client User Client User Client
  • 36. 2020: espansione del Cloud computing, Internet of Things • Oggi è quasi impossibile pensare di utilizzare un computer non connesso in rete con altri computer; è difficile pensare anche all’uso di un computer non connesso ad Internet • I servizi cloud stanno diventando pervasivi: il personal computer (o lo “smart device”) diventa un terminale multimediale di applicazioni e servizi di accesso a dati residenti presso enormi server farm dei fornitori di servizi cloud, dislocate in più località del pianeta • La rete per connettere i client è wireless, la differenza tra rete telefonica e rete dati è ormai inesistente; in particolare la disponibilità e l’efficienza del servizio di rete diventa cruciale • I dati sono presso le infrastrutture cloud, più affidabili di quelle locali, ma gestite da altri: problemi di sicurezza, privacy/riservatezza, disponibilità; di fondamentale importanza sono anche i contratti di servizio ed i service level agreement (SLA) • Il prossimo passo è quello di mettere in rete oggetti che fino ad oggi avevano una loro funzione d’uso autonoma: automobili, orologi, singoli apparecchi presenti nelle abitazioni (frigorifero, lavatrice, lavastoviglie, climatizzatore, impianto elettrico, sensori, ecc.) • Si viene a creare una rete di oggetti: Internet of Things (IOT) • Per realizzarla pienamente: – Servono reti wireless ancor meno costose e più efficienti, servono protocolli di comunicazione con la possibilità di gestire un numero di indirizzi enorme (IPv6) – Servono regole chiare per la gestione delle informazioni, sempre più personali, sempre più riservate, sempre più necessarie per la vita di tutti i giorni – Serve maggiore formazione e maggiore consapevolezza degli utenti e dei gestori dei sistemi informativi
  • 37. Bibliografia essenziale ① Daniel P. Bovet, Introduzione all’architettura dei calcolatori, Zanichelli, 1996 ② Brian W. Kernighan, D is for Digital, DisforDigital.net, 2011 ③ Noam Nisan, Shimon Schocken, The Elements of Computing Systems, The MIT Press, 2008 ④ Roger Young, How Computers Work, second edition, Lotontech, 2009 (http://www.fastchip.net/howcomputerswork/p1.html)
  • 38. Server Farm ARUBA di Arezzo Aruba è oggi uno dei primi e dei principali fornitori di servizi di cloud computing in Italia

Editor's Notes

  1. Abbiamo visto che nella prima metà del ‘900 sono stati ideati numerosi “modelli di calcolo”, da Turing a Church, fino ad arrivare a Von Neumann. Quest’ultimo ha proposto un modello assai vicino ai computer che da allora vennero effettivamente realizzati (mentre i modelli di Turing e di Church sono rimasti dei modelli teorici, molto utili per la dimostrazione di proprietà nell’ambito della complessità e della calcolabilità)
  2. Il modello di Von Neumann si sposa ancora piuttosto bene con quella che è la struttura di un computer come oggi siamo abituati a conoscerlo
  3. Ma la tecnologia sta progredendo ad una velocità spaventosa, per cui oggi i computer assumono aspetti, dimensioni e modalità operative, oltre che funzioni d’uso, assai diverse. In alcuni casi è difficile riconoscere in questi oggetti il modello di Von Neumann, anche perché alcune delle unità previste dal modello di Von Neumann sono “ibridate” fra loro: ad esempio il display è al tempo stesso unità di input e di output in uno smartphone, un tablet e uno smartwatch; in altri casi, come i grandi mainframe, è difficile riconoscere le unità di input e di output
  4. Negli anni ‘70 si introducono tecnologie per definire reti di computer: connessioni fragili e a bassa velocità, utilizzate per trasmettere dati (file) da una macchina all’altra. La connessione degli utenti al computer avviene mediante terminali alfanumerici collegati con linee seriali (corte, di bassa velocità, es.: 300 bps) con il server
  5. Introduzione di UNIX e del protocollo TCP/IP: connessione tra reti di computer = Internet (prima ARPA net)
  6. Inizialmente tutta l’elaborazione era sul server. Con l’arrivo dei PC anche questi computer vennero usati come terminali, con un programma di emulazione di terminale. Successivamente i programmi vennero riscritti suddividendoli in una componente server ed un’altra componente client, in modo da suddividere l’elaborazione in parte sul client (che è comunque un computer) ed in parte sul server. In un’architettura client server, più client possono connettersi ed operare contemporaneamente sfruttando il server
  7. Eseguire macchina virtuale su Parallels (gondrano – FreeBSD)
  8. a.a. 2017/2018