10 ore di Informatica

Transcript

10 ore di Informatica
10 ore di Informatica
prof. Gerardo COSTA
Dip. di Informatica e Scienze dell' Informazione
Maggio 2001
Aggiornamento: Ottobre 2006
Testi consigliati per approfondimenti:
• Console, Ribaudo : Introd. all'informatica, 2a ed. UTET (piu` accessibile)
• Ceri, Mandrioli, Sbattella : Informatica arte e mestiere, McGraw
(piu' completo su programmazione e basi di dati)
Costa --DISI
1
Traccia
•
Generalita` su
! informatica
! struttura dei calcolatori
! codifica dell'informazione
! software di base e applicativo
! .........................................
! reti di calcolatori
•
Cenni ad alcune classi di applicazioni
! elaboratori di testo
! fogli elettronici
! basi di dati
! e-mail
WWW .....
Costa --DISI
2
Informatica
In primo piano l'obiettivo:
l'informazione
rappresentazione, archiviazione, elaborazione
calcolo dell'orbita di un pianeta
informazione; di tipo astronomico rappresentata da dati numerici
elaborazione: procedimento di calcolo
diagnosi al calcolatore
Informazione:di tipo medico rappresentata da “formule logiche"
elaborazione: un processo di “deduzione”
Reti, Internet … ===> diffusione / ricerca dell'info
integrazione tra varie forme
testo, immagine, filmato, audio, ..
Costa --DISI
3
Computer Science
In primo piano: lo strumento, il computer
informatica = scienza che studia
principi
progettazione e realizzazione
uso
dei calcolatori
Notare:
uso include moltissime cose:
programmazione, sviluppo sw, applicazioni
Visioni complementari ……..
Costa --DISI
4
Principi / Teoria / Basi : un esempio
C'è qualcosa che NON si può fare con un calcolatore ??
•
risposte da salotto:
Divina Commedia, Traviata, ....., amore, .....
•
risposta scientifica ( logica matematica):
NON si può automatizzare la matematica
( il "ragionamento matematico" )
Alan Turing, Kurt Goedel, Alonzo Church, ....
anni '30
Costa --DISI
sempre
5
Principi
In particolare, i calcolatori NON possono decidere su
alcune questioni che li riguardano:
•
•
•
•
correttezza
dei programmi
terminazione
dei programmi
equivalenza
dei programmi
.......................................................
NOTA: a questo livello,
programma ! calcolatore
A meno di non rivoluzionare l'idea di calcolatore ......
Costa --DISI
6
Indecidibilità della terminazione
Programmi "classici":
INTPUT
OUTPUT
PROG
.... in un tempo finito .....
Per non tagliarsi le gambe, non si può limitare a priori il "tempo" ....
Allora, NON esiste calcolatore/programma decisore:
input : X
SI : P termina su X
DEC
prog : P
NO : P non term. su X
Costa --DISI
7
Classi di calcolatori
•
Palmari - Palm-top
•
Portatili - Lap-top
•
PC = Personal Computer
•
Workstation (PC di alto livello) sempre Desk-top
•
Microcomputer : non tanto micro, piu' grande di un PC !
Desk-top
(per un laboratorio, oggi raro)
•
Minicomputer (per un dipartimento, oggi raro)
•
Mainframe (per un centro di calcolo, oggi raro)
•
Supercomputer (NASA, CERN, progetto Genoma)
Costa --DISI
8
Calcolatori -- Sistemi
•
Calcolatore = elaboratore = computer
visto come " singolo oggetto "
•
Sistema di elaborazione (dell' informazione)
visto come composto da piu' parti ......
poi :
Reti di calcolatori .......
Costa --DISI
Schema di un PC
CPU
Processore ++
( macchina di Von Neumann )
RAM
HD
memoria centrale
volatile
BUS
controller
VIDEO
9
memoria di massa
"permanente"
…..
controller
(fili ….)
controller
Tastiera
Costa --DISI
controller
Mouse
10
Rappresentazione dell'info
--
Codifiche - 1
All'interno di un calcolatore : solo due simboli, valori, stati
motivo : affidabilita`, semplicita`
Tutto va espresso usando solo 2 simboli
Oggetti /
(es 0/1)
0000111100001111
0101010101010101
1100110011001100
…………………...
informazioni
stringhe di 0/1
Costa --DISI
11
Codifiche 2 : numeri
Numeri naturali : rappresentazione posizionale base 2
Decimale : 237 <===> 2 * 102 + 3 * 101 + 7 * 100
Binario :
101 <===> 1* 22 + 0 * 21 + 1 * 20 == 5
Inoltre:
lunghezza fissa (16, 32 …. bits)
es 16 bits : valori da 0 a 216 -1
Numeri relativi e razionali
..... complicazioni ....
Costa --DISI
12
Codifiche 3 : caratteri
Per i caratteri "standard" inglesi
a b c .....
A B C ....
0 1 2 3 ...... 9
+ - ; " & $ ....... "spazio"
"a capo"
sufficienti stringhe di 7 bits ( codice ASCII ) :
spazio
!
"
quindi:
0100000
0100001
0100010
ba!
"
a
b
c
1100001
1100010
1100011
110001011000010100001
Costa --DISI
13
Codifiche 4 : immagini
Immagine:
rettangolo con griglia
quadratino griglia : pixel (pict element)
ogni pixel <--> "colore" predominante
"colori"
bianco e nero
16 toni di grigio
16 000 colori
1 bit
4 bit
4 + 10 bit
eccetera ......
Di solito le codifiche sono trasparenti all'utente
Costa --DISI
14
Cod_5 : immagini -- esempio
Scanner
1
0
0
1
1
0
0
1
Scheda
grafica
Bisogna aumentare la risoluzione ................
es: 800 x 600
1024 x 768 .....
Costa --DISI
15
Bit, byte, .....
•
•
•
•
•
•
•
•
bit
byte
K =
M=
G =
Kb
KB
Mb
binary digit
= 8 bit
210 = 1024
220
Mega,
30
2
Giga ,
Kilo bit
Kilo Byte
MB Gb
0 /1
•
processore, memoria a
circa 1 milione
circa 1 miliardo
GB
.......
8, 16, 32, 64,.... bit
Costa --DISI
16
Hardware -- Software
Sistema di elaborazione
= hardware + software
• hardware = componenti elettroniche, fili,.....
• software = .......
! software di base
-- sistema operativo ( Win,Unix- Linux, MacOS,...)
-- software di comunicazione
! software applicativo
es Office (Word + Excel + Power Point + Access )
Software per posta (Eudora, Outlook,...)
Web browser (Netscape, Explorer,....)
Costa --DISI
17
Hw&Sw - stratificazione
• Hardware
• Software
! Livello "macchina"
! Nucleo Sist Op
HW
! soft di gestione rete
e basi dati
! software applicativo
Costa --DISI
18
Hw & Sw : Macchine virtuali
Hw diversi
stessa macchina virtuale
stesso Hw
macchine virtuali diverse
Motivi: portabilita`, standardizzazione, .... flessibilita` .....
Costa --DISI
M. von N.
19
In pratica ....
•
•
PC spento : RAM "vuota", tutto su HD
Accendo :
! si esegue programmino firmware in ROM ....
che carica in RAM il nucleo del sistema operativo
! parte il sist op .... e poi aspetta comandi ....
! io posso "fare ordine" : copiare, spostare,.... file
lanciare programma : posta
web browser
giochino .......
•
•
ciclo continuo: HD --> RAM --> CPU --> RAM --> HD
Vediamo ......
Costa --DISI
20
Archiviazione dell'informazione
•
Informazione == dati e programmi
•
Archiviazione <---> persistenza (nulla cambia se non lo voglio io)
•
Supporti per archivi
! dischi magnetici "fissi"
! dischetti magnetici "rimuovibili"
! nastri magnetici "rimuovibili"
a ... morire .....
! dischi ottici "rimuovibili", pennine USB,….
Organizzazione logica molto simile ....
•
Contenitore primario per archiviazione : il file
Costa --DISI
21
Files
•
1 lettera
<---> 1 file
•
1 libro
<---> 1 file / tanti file
•
1 immagine
<---> 1 file
•
1 programma
<--->
1 file / tanti file
•
1 catalogo libri
<--->
1 file / tanti file
•
1 giochino
<---> tanti file
Costa --DISI
:
programmi
preferenze utente
immagini
schemi di gioco
..............................
22
Files (continua)
•
•
1 lettera
1 immagine
<---> file LETT
<---> file IMM
Per l'utente : LETT e` una ... lettera
IMM e` una ... immagine
infatti " aprendo " il file LETT a video compare una lettera ...
A " livello macchina " : i due
file sono solo
successioni di bit /byte
L' insieme dei file e` organizzato in un " file system "
organizzazione "decisa" da sistema operativo e utente
Costa --DISI
23
Files (continua)
Piu’ precisamente :
1 file è
una successione di bit /byte/…
impacchettata
l’imballo, comprende:
• un nome unico
• informazioni su come interpretare correttamente la
successione di bit/byte/….
• altre informazioni (data di creazione, …)
Costa --DISI
24
Tipica organizzazione logica di un " file system "
Costa --DISI
25
Elaborazione dell'informazione
Tramite programmi ( software )
•
•
scritti dall'utente (o su commissione ...)
preconfezionati : pacchetti applicativi (Office ....)
Programmazione : in genere ad alto livello (in C, Java, ...)
Esecuzione : sempre a "livello macchina"
In mezzo: traduzione, interpretazione
Costa --DISI
26
Programmazione a livello evoluto
es stupido in PASCAL
program
const
var
begin
i
primi da 2 a 100 }
MAXNUM = 100;
n, k : integer;
primo : boolean;
writeln (" 2 e` primo");
for n := 3
begin
to
MAXNUM
do
primo := true;
for
k := 2
if
end.
{ trova
primi(input, output);
if
end
primo
to
n-1
do
(n mod k) = 0
then
then
primo := false;
writeln (n, " e` primo")
Costa --DISI
27
Programmazione a livello (quasi) macchina
CPU
RAM
0
Reg 0
Reg 1
Reg 7
es. formato istruzione:
istruzioni tipiche:
1
2
A
L
U
01010111
001
00 .... 010
op code
reg
RAM address
azzera Reg_i
Reg_i <--- Reg_i + Reg_k
copia da RAM [ addr ] in Reg_i
Poco o nulla di piu' complicato
o viceversa
salvo I/O .....
Costa --DISI
28
Sistema operativo
Without its software, a computer is basically a useless lump of metal.
..............................................................
Computer software can be roughly divided into two kinds:
the system programs, which manage the operation of the computer
itself, and
the application programs, which solve problems for the user.
The most fundamental of all the system programs is the
operating system, which
controls all the computer's resources
and
provides the base upon which the application prog.s can be written.
Andrew S. Tanenbaum - Modern Operating Systems - Prentice Hall
Costa --DISI
Sist. op. come
29
Resource Manager
Modern computers [ computer systems ] consist of
processors, memories, timers, disks, ...., network interfaces,
laser printers,.....
.... the job of an operating system is
to provide for an orderly allocation of the
processors, memories and I/O devices
among the various programs competing for them.
Anche su un PC
piu' progammi "in competizione"
es:
lancio la stampa di un lungo documento
controllo da web l'orario dei treni
il programma di posta sorveglia arrivo messaggi ....
Costa --DISI
30
Sist. op. come
Macchina Virtuale
Usare un computer a "livello macchina" e` terrificante.
Es: I/O da floppy interagendo con il controller NEC PD765 (PC IBM)
16 comandi per leggere, scrivere, muovere la testina di lettura,....
i comandi READ e WRITE richiedono 13 parametri ...
finita l'operazione il controller risponde con 23 "messaggi"
il tutto impacchettato in 7-9 bytes
non basta: bisogna gestire il motore:
se e` off
per leggere-scrivere, va messo on
(e bisogna tener conto dell'attesa ...)
non puo' restare on troppo tempo; si consuma il floppy ....
Allora: uno scopo del sist. op. e`
presentare all'utente una macchina piu' comoda
Costa --DISI
31
Sistemi operativi -- interfaccia utente
Interazione utente - sist op :
•
A comandi ( interazione testuale )
es MS DOS
Unix-Linux "nudi"
•
A finestre e icone
( interazione grafica, con interfacce grafiche )
es Mac OS Windows
Unix-Linux "vestiti"
Vediamo in pratica ........
Costa --DISI
32
Software applicativo : esempi
Strati
•
Ambienti di programazione
•
Editori di testo e elaboratori di testo
•
Fogli elettronici
•
Agende elettroniche
•
Gestori di Basi di Dati
•
Applicazioni legate alla rete ( posta, WWW, ....)
•
Appl. per grafica
•
elaborazione suoni ....... (non vediamo)
.................................................................
(solo un cenno)
elaborazione immagini
Costa --DISI
33
Software applicativo
Dedicato a esigenze specifiche .... ma non troppo
Scrivere
lettere
articoli
tesi
......
possibile unico strumento che si adatti
Applicativi : programmi (insiemi di programmi)
per un compito specifico
ma con campo di azione abbastanza ampio
Spesso :
una certa indipendenza dalla piattaforma
Costa --DISI
34
In - Dipendenza dalla Piattaforma
Piattaforma # sistema operativo
•
Word per Windows
Word per Win
!
Word per Macintosh
NON gira
su un Mac
•
L'utente pero` vede quasi lo stesso ambiente
•
Compatibilita`:
documenti prodotti con Word per Win si possono
leggere e modificare con Word per Mac
e ..... quasi ....viceversa.
Costa --DISI
35
Elaborazione di testi : text editors
testo = file di testo
= successione di caratteri
inclusi "spazio" , "a capo" , ....
text-editor:
• scopi di base:
creare, modificare, archiviare file di testo
•
concetti di base:
e
•
carattere, parola, linea
posizione corrente
funzionalita` di base:
! inserire / cancellare caratteri, parole, .....
! ricerca di
carattere, parola,
.....
poi e` stato aggiunto altro ...................... >> es. Smultron
>>
Costa --DISI
36
Text editors e Sistema op.
Apro text-editor :
creo file
Sist Op provvede spazio in RAM
inserisco testo
tutto in RAM volatile
salvo
Sist Op provvede a copiare su HD
modifico
modifica solo su copia RAM (*)
salvo
anche copia su HD modificata
eccetera
...........................................
(*)
(*) se manca corrente perdo tutto cio` che non e` su HD
Vale anche per word-processors, fogli elettronici ......
Costa --DISI
37
Elaborazione di documenti
documento
.....
=
testo + formattazione + immagini +
<--> 1 file / tanti file
elaboratori di documenti :
•
word processors
es: Word
•
text formatters
es: TEX
•
strumenti professionali per Desk Top Publishing
Costa --DISI
38
Elaborazione di docs : funzionalita`
funzionalita` di base di un text- editor
•
+
definire caratteristiche generali del documento
margini,
allineamento
quante colonne
font stile dimensione
dei caratteri
spaziatura tra righe ............
font
.......
questo è Times (normale)
questo è Helvetica (normale)
questo ! Apple Chancery
"normale#
stile
questo è Times bold sottolineato
questo è Times italic e bold
dim
Times a 24 punti
Times a 18 punti
Costa --DISI
39
Elaborazione di docs : ancora funzionalita`
•
modificare localmente impostazioni generali
•
supportare / gestire "automaticamente" :
! capitolo, sezione, paragrafo,......
! indici, sommari
! note a pie` pagina
! elenchi numerati ........................
definire tabelle
inserire figure, grafici, formule,.....
anche generate da altri strumenti
controlli ortografici, sintattici,......
>> Esempio Word >>
•
•
•
Costa --DISI
40
Word processors (esempio: Word)
Produco il documento
•
scrivendo il testo "normalmente"
•
dando comandi di formattazione
tramite tasti, menu,
mouse
•
vedendo sullo schermo il risultato di stampa
What You See Is What You Get
•
senza mai vedere il formato " interno" del file
(ad es. in Word e` inaccessibile !!)
Costa --DISI
41
Text Formatters
Es:
TEX
testi scientifici di matematica, fisica, informatica,....
AMSTEX : standard per American Math Soc.
LATEX : standard per Assoc. Computing Machinery
anche formato HTML
per WWW
Produco il documento
• usando un semplice text-editor
• mescolando testo e direttive di formattazione
•
NON vedendo sullo schermo il risultato di stampa
•
avendo "pieno controllo" del file
Il file viene poi passato a programma formattatore .....
>> es. TEX >>
Costa --DISI
42
Fogli elettronici - Fogli di calcolo - Spreadsheet
Per
" piccoli " calcoli scientifici / gestionali
con possibilita` di produrre grafici, istogrammi,....
Astrattamente:
• tanti fogli o pagine
• foglio = matrice a 2 dimensioni di "celle"
• ogni cella : 3 tipi di informazioni
! valori :
numeri interi/razionali -- visibili
! etichette :
testo
-- visibile
! espressioni nascoste, si vede il valore
Caratteristiche:
propagazione variazioni valori
duplicazione " intelligente "
>> es Excel >>
Costa --DISI
43
Basi di Dati
Archiviare grandi quantita` di dati
con possibilita` di
• ricerca
• aggiornamento:
modifica, cancellazione, inserimento
in modo "facile", sicuro, efficiente ......
Dati :
archiviati su file (tanti file)
Gestione e consultazione dei dati : tramite
DBMS (= Data Base Management System )
+ appositi programmi (applicativi)
Costa --DISI
44
Basi di Dati -- schema
Costa --DISI
45
Basi di Dati -- definizione
Una base di dati e`
una collezione di informazioni
organizzate e gestite da un sistema software specifico,
il DBMS (che si appoggia sul sistema operativo);
quest'ultimo offre
verso l'esterno : linguaggi specifici per
consultazione, organizzazione e gestione dei dati
all'interno : metodi robusti ed efficienti per
l'organizzazione dei dati stessi
Costa --DISI
46
BD -- esempio:
Info che vogliamo:
• dati su studenti
! personali:
! scolastici:
! altri:
•
•
dati sui corsi:
eccetera
Info "aggiunte":
BD x segreteria studenti
nome, indirizzo,...
piano di studi, esami superati,...
reddito, tasse pagate,....
titolo, CdL, docente,....
numeri matricola, codici esami,......
Come sono organizzate queste info ? ... dipende ....
ma interessa al progettista / amministratore
NON agli utenti cui interessa solo
come usare le info ....
Costa --DISI
47
BD - esempio - Cosa possono fare gli utenti:
•
studente puo` solo:
! vedere
i suoi dati
! modificare suo indirizzo, piano di studi
•
docente puo` solo:
! vedere elenco iscritti ai suoi corsi
! inserire dati suoi esami
( corso, studente, data, voto )
•
presidenza Facolta` puo` solo:
! vedere
i dati "didattici" dei suoi studenti
•
segreteria studenti
NOTA:
puo` tutto
vedere/modificare/inserire/..../tutto
solo tramite " le procedure previste" .....
Costa --DISI
48
BD - Viste
Utenti diversi hanno viste diverse della stessa base di dati
vista
<---> cosa puo` vedere / modificare / ....
•
Vedere
•
Modificare/Inserire
Motivi
NON organizzazione reale dei dati
MA una
presentazione dei dati
solo
tramite procedure fissate
riservatezza dei dati
protezione da errori / manomissione
facilita` d'uso
.......................................
Costa --DISI
49
BD - Viste in pratica
Utente_A
<---->
Vista_A <---->
una "schermata"
Schermata:
ecco cosa puoi fare -- scegli tramite menú, bottoni,...
operazione scelta :
maschera / form
esempio: cambio di indirizzo
Costa --DISI
50
Prima delle Reti di calcolatori
Sistema informatico di una azienda / un centro di ricerca:
R
MAINFRAME
T : terminale stupido
solo video e testiera
R : risorsa
R
T
T
stampante,
archivio,.....
Tutto centralizzato:
informazioni
elaborazione
comunicazioni
T
T1 e T2 comunicano
passando dal mainframe
Costa --DISI
51
Reti di calcolatori
C
C
C : computer
anche eterogenei
R : risorsa
in mezzo :
R
R
Ogni computer puo`
C
C
connessioni .....
lavorare in locale
usare risorse in rete
dialogare con gli altri
C
Molte possibilita`, varianti,...
continua
e
Costa --DISI
evoluzione
rivoluzione...
52
Reti di calcolatori : perche ?
1
Per una azienda:
! condivisione di risorse : es 1 sola stampante per tutti
! tolleranza ai guasti : se il lavoro e` distribuito tra piu'
macchine ed una si guasta ....
! economia :
costa meno una rete di PC di un mainframe,
"a parita` di prestazioni"
! scalabilita`:
e` facile far crescere un rete,
piu' difficile far crescere un mainframe ....
! comunicazione :
gratis e flessibile !
Costa --DISI
53
Reti di calcolatori : perche ?
2
Per le persone:
! accesso ad informazioni remote
! informazione "istantanea" , personalizzata
! comunicazione, anche di gruppo
e-mail, newsgroups
! svago interattivo, personalizzato,...
! telelavoro
! shopping, trading .... on line
! ..............................................
Costa --DISI
54
Una piccola rete (LAN) : un labo didattico
PC
PC
PC
St
Sv
MONDO
• St = stampante condivisa
• PC : autonomi e anonimi non contengono dati utenti [*]
• Sv = Server
contiene dati utenti [*]
gestisce collegamenti da/verso esterno
• poi :
cavi + software di rete sul Server e sui Client
(*) l'utente sceglie uno qualunque dei PC per lavorare, quindi i dati personali
non possono stare sui PC .......
Costa --DISI
55
Una rete di calcolatori è .....
1 Rete =
nodi : calcolatori
e altri "oggetti intelligenti", es laser-printer
+ archi di collegamento
+ software di rete
Uso /scopo fondamentale:
( cavi, ..... )
comunicazione tra nodi
Comunicazione : tramite messaggi
Messaggio = mittente + destinatario + corpo del messaggio
indirizzi
esempi: messaggio di posta elettronica,
ma anche stampa di documento da PC su laser
Costa --DISI
56
Tipi di rete
In base a estensione:
• LAN
Local Area Network
un ufficio, un palazzo, un campus
•
MAN
Metropolitan A. N.
es GENUANET
•
WAN
Rete cittadina
GENUANET
Wide A. N. ( Reti Geografiche ) le altre
es italiani: rete GARR
rete INFN
In base a connessioni:
• con cavi : doppino telefonico, coassiali, a fibra ottica
• senza cavi - wireless : onde radio, microonde,.....
Costa --DISI
57
internet -- Internet -- WWW
internet
= inter-network
= una "federazione" di reti, spesso eterogenee,
interconnesse
Internet
= una particolare internet
di fatto : la Rete delle reti
WWW
= World Wide Web = .....
a framework for accessing linked documents
spread over thousands [+++] of machines
all over the Internet
quindi NON e` Internet, ma si appoggia a
Internet, come la posta elettronica ed altro
Costa --DISI
58
Internet all'inizio : ARPANET a Dic. 1969
ARPA = Advanced Research Project Agency del DoD
SRI
UTAH
Primo esperimento
Data: Dicembre 1969
Macchine
UCSB
minicomputers
senza dischi
RAM = 24KB
UCLA
Linee telefoniche a 56 Kbps
Costa --DISI
59
Principali servizi offerti oggi da Internet
•
" tradizionali "
! collegamento a macchina remota
telnet
! trasferimento file
ftp
! posta
! newsgroups
! accesso a banche dati remote
es MEDLINE
•
basati sul WWW
! navigazione su enorme ipertesto distribuito
! versione web di alcuni servizi precedenti
es accesso via web a MEDLINE
! e-commerce, home banking,..., 740 on line,......
Costa --DISI
60
Posta elettronica
•
•
•
•
invio di messaggi
con eventuali allegati
a uno /tanti destinatari ( = indirizzi )
!
messaggi
" puro testo "
testo formattato + immagini + suoni + ......
!
allegati
files contenenti
documenti formattati
immagini, suoni, ......
gestione di
mailing-lists
gestione di archivio messaggi ricevuti, mandati,....
possibilita` di
reply automatico
filtraggio messaggi in entrata
cifratura messaggi
..................................
Costa --DISI
61
Indirizzi Internet
Internet
e` divisa in
domini <---> nazioni
domini
divisi in sottodomini .....
indirizzi simbolici usati da utenti:
dominio + sottodominio + sotto-sottodominio + ...
come indirizzi postali:
nazione + provincia + citta` + ....
esempi:
!
!
!
!
murst.it
doc.ic.ac.uk
whitehouse.gov
amazon.com
unige.it
dmi.ens.fr
un.org
mit.edu
indirizzi fisici = indirizzi IP :
disi.unige.it
|| US
|| implicito
212.216.112.222 (tin)
Costa --DISI
62
Indirizzi Internet -- 2
disi.unige.it
dominio
sottodom.
sottodom.
it = Italia
unige = Univ. di Genova
disi = D.I.S.I.
doc.ic.ac.uk
dominio
sottodom.
sottodom.
sottodom.
uk = UK
ac = rete accademica
ic = Imperial College
doc = Dept. Of Computing
cs.cmu.edu
dominio implicito
USA
sottodom.
edu = rete accademica
sottodom.
cmu = Carnegie Mellon U.
sottodom.
cs = Dept. of Comp Sci
Costa --DISI
63
Indirizzi di posta elettronica
nome@indirizzo_internet_di_nodo_server_di_posta
[email protected]
[email protected]
[email protected]
Ma anche:
[email protected] (qualunque cosa)
qualunque cosa <[email protected]>
eccetera (???)
Costa --DISI
64
WWW = World Wide Web
•
NON è Internet
ma si appoggia ad Internet
•
all'origine:
grande ipertesto distribuito
•
poi:
enorme ipertesto distribuito
•
ora:
idem
+ altri "servizi"
ftp, accesso a basi di dati,
e-commerce,.........
•
domani :
???
Costa --DISI
WWW -- il punto di partenza
Scopo iniziale:
65
1
rendere facilmente accessibili
informazioni fisicamente distribuite
Idea 1
• info <---> files residenti su macchine server
• ogni file ha, nella macchina dove risiede,
unico access path
/dir_1/dir_2/.../dir_n/nomefile
•
ogni server ha un unico indirizzo Internet
es
www.disi.unige.it
•
allora esiste unico indirizzo Internet del file
www.disi.unige.it/staff/costa/personale/cv
•
da cui si ricava
URL
Uniform Resource Locator
http://www.disi.unige.it/staff/costa/personale/cv
Costa --DISI
66
WWW -- il punto di partenza
Idea 2
• usare ipertesti
•
2
per le informazioni
ipertesto www di base : file in formato HTML contenente
! testo
! direttive di strutturazione e visualizzazione
! links ad altre parti dello stesso file ( salta a .... )
! links a files di immagini da visualizzare assieme al testo
! links per accedere ad altri ipertesti
link = URL che può puntare anche all'altro capo del mondo
a file su un server diverso da quello dove
risiede l'ipertesto che contiene il link
Costa --DISI
>>> www.disi >>
67
WWW -- il punto di partenza
3
Idea 3
Usare schema Client - Server
•
Client :
(macchina con)
browser
Mosaic, Netscape, Explorer, Opera,....
•
Server :
(macchina con)
server web
Apache .........
•
protocollo:
HTTP
si appoggia a TCP/IP
Costa --DISI
68
Applicazioni dell'informatica :
numeriche -- gestionali
•
•
numeriche
! calcolo scientifico
anche NON per ricerca
gestionali :
! prima
es previsioni meteo
archivi, contabilita` ......
! poi
office automation : quanto sopra,
ma integrato e " comunicante "
! poi
ERP
Enterprise Resource Planning
gestione dell'intera azienda +
supporto a planning, decision making...
Costa --DISI
69
Applicazioni : automazione industriale
•
automazione industriale :
! automazione produzione
robot, macchinari "intelligenti"
! supporto a progettazione
CAD = Computer Aided Design
! supporto a lavorazione
CAM = Computer Aided Manufacturing
Costa --DISI
70
Applicazioni : controlli
•
controllo :
! di
processi produttivi industriali
! di
apparecchiature anche mediche
! di
traffico aereo
! di
frenata
( ABS )
! di
elettrodomestici (oggi, non nel futuro)
! ..............................................
con supervisione umana
senza supervisione : sistemi embedded
la componente informatica e` "dentro", non
visibile, spesso ignorata
Costa --DISI
71
Applicazioni : telematiche - simulazioni
•
servizi telematici
telematica = telecomunicazioni + informatica
!
!
!
!
!
•
Bancomat, POS, ....
prenotazioni aeree, ....
sportello del cittadino, ....
.........................................
e-commerce
e-questo
e-quello ...............
simulazione - realta` virtuale
! Simulatori
di guida, volo, ....
! musei virtuali, ......
Costa --DISI
72
Applicazioni : medicina, .....
•
nel campo della medicina :
! archivi di cartelle elettroniche
! banche dati di vario genere
! telemedicina
! controllo strumentazione
! supporto a diagnosi : sistemi esperti
! analisi: ecografi, TAC, SPECT, .....
! .......................................
•
altri campi :
difficile tener traccia di tutto ..............
Costa --DISI
73
TAC / SPECT .....
Acquisizione
dati
Ricostruzione
delle immagini
Costa --DISI
74
TAC -- es sezione tronco
sinogramma
prodotto da scansione corpo
immagine ricostruita
dal calcolatore
Costa --DISI
75