Il computer
• DEFINIZIONE FORMALE: un
computer è un
dispositivo fisico che implementa il funzionamento
di una macchina di Turing (un meccanismo che
costituisce un modello di calcolo, retto da regole
elementari ma con potere computazionale massimo).
• DEFINIZIONE PRATICA: un computer è una
macchina elettronica programmabile capace di
ricevere, trasmettere, immagazzinare ed elaborare
informazioni.
Gli antenati del Computer
• LA MACCHINA DI ANTICITERA (I secolo a.C.) – calcolatore meccanico capace
di determinare le posizioni degli astri, il calendario solare e quello lunare.
• SPEEDING CLOCK (1623) – fu il primo calcolatore automatico, creato dallo
scienziato tedesco Wilhelm Schickard, capace di effettuare addizioni e sottrazioni.
• PASCALINA (1642) – creata dal filosofo e matematico francese Blaise Pascal, è la
prima calcolatrice meccanica.
Gli antenati del Computer (2)
• LA MACCHINA ANALITICA (1837) – progettata ma mai ultimata dallo
scienziato inglese Charles Babbage, costituisce il primo prototipo di computer,
pensata per effettuare calcoli generici complessi.
• TABULATING MACHINE (1890) – macchina in grado di leggere schede perforate
mediante l'analisi di circuiti elettrici. Brevettata dallo statistico americano Herman
Hollerith, che fondò la Tabulating Machine Company (dal 1924 IBM).
• Z1 (1937) - Konrad Zuse costruì il primo calcolatore meccanico programmabile, in
grado di effettuare addizioni e sottrazioni, dotato di memoria. Lo Z1 era capace di
leggere istruzioni di programma da schede perforate.
I primi computer
• Z3 (1941) – computer automatico e programmabile realizzato da
Zuse e composto da 2200 relè. Utilizzava il sistema binario.
• MARK I (1943) - realizzato ad Harvard dalla IBM, è il primo
calcolatore digitale automatico. (16m x 0.5m x 2.4 m).
• COLOSSO (1943/44) - macchina elettronica progettata per
velocizzare la decrittazione dei codici cifrati.
• ENIAC (1944/45) - Electronic Numerical Integrator And Calculator;
in grado di riconoscere il segno di un numero, confrontare numeri, e
di eseguire le operazioni di addizione, sottrazione, moltiplicazione,
divisione e radice quadrata. (30 tonnellate).
Colossus
Eniac
Gli sviluppi
• 1947 – Viene inventato il transistor, destinato a sostituire il relè e le valvole termoioniche.
• 1955 – Nasce il primo computer funzionante interamente a transistor, il TRADIC.
• 1956 – Il primo hard-disk: un pila alta un metro e mezzo contenente 50 dischi metallici
larghi 62 cm (memoria totale 5 megabytes!).
• 1957 – Due tecnici del M.I.T. fondano la DEC per la produzione e commercializzazione di
mini-elaboratori. Grande successo del PDP-I (49 computer venduti a 120.000$).
• 1958 – La Texas Instruments brevetta il primo chip.
• 1961 – Viene realizzato il mouse.
• 1963 – La DEC realizza il primo minicomputer della storia, il PDP-8 (18000$).
• 1964 – Il Basic diventa il primo primo linguaggio di programmazione semplificato.
• 1965 – La Olivetti produce la PROGRAMMA-101, il primo "personal" computer (3200$).
• 1967 – Il SISTEMA-360 (IBM), grazie all’impego del circuito integrato che potenzia le
prestazioni e riduce i costi, ottiene uno strepitoso successo di mercato.
• 1967 – Nasce l’Intel che diventerà leader mondiale nella produzione di processori.
• 1970 – Nasce Arpanet, per la gestione delle comunicazioni dei computer del Pentagono.
• 1970 – L’Intel crea la RAM.
• 1971 – L’Intel brevetta il microprocessore capace di contenere più transistor (all’epoca
alcune unità, ora milioni), che porterà i computer nella “Quarta Generazione”.
La Quarta Generazione
• Grazie al crollo dei costi ed all’aumento delle prestazioni il mercato dei computer ha
conosciuto un’immensa espansione nel corso degli ultimi 30 anni. Questo grazie a
circuiti sempre piu' piccoli e all'integrazione di molte componenti sullo stesso chip di
silicio capace di integrare milioni di transistor.
• Negli anni 70-80 il mercato era diviso tra supercomputer ad alto costo e ad altissime
prestazioni e minicomputer a più larga diffusione e costo contenuto.
• 1977 – Nasce l’APPLE II, il primo PC (minicomputer di seconda generazione, con
foglio di calcolo e grafica a colori).
• 1981 – Viene commercializzato l’IBM 5150, padre degli attuali PC. Viene governato
dal Sistema Operativo MS DOS, prodotto dalla Microsoft.
• 1984 – La Apple introduce un’interfaccia grafica per il sistema operativo.
• 1985 – Microsoft sviluppa Windows 1.0, l’interfaccia grafica per MS DOS.
• Ani 90 – Il duopolio Microsoft/Intel arriva a controllare il 90% del mercato.
• Oggi – Due tipologie di macchine:
 PC. Molti produttori diversi (ma non IBM): CPU, chip grafici, OS, HD.
 Server aziendali, sviluppati su piattaforma Unix, pochi produttori (SUN, IBM)
Panoramica sull’hardware
Elaboratore
RAM
input
porte
CACHE
CPU
bus
memoria
di massa
clock
porte
output
Dispositivi di ingresso/uscita
Consentono alla macchina di interfacciarsi con il
mondo esterno ricevendo dati e ritrasmettendoli
sotto forma di risultati.
Input:
Tastiera, mouse, microfono, scanner, …
Output:
Monitor, stampanti, altoparlanti,…
Porte: permettono lo scambio di dati tra il computer e i
dispositivi esterni. Seriali che trasmettono i dati i
sequenza,
Parallele
che
trasmettono
i
dati
contemporaneamente, USB (universal serial bus) che
consentono il collegamento di più dispositivi sulla
stessa porta, modalità Plug and Play, Firewire : per
dispositivi multimediali, a infrarosso (IrDA=Infrared
Device Association), PC Card (PCMCIA=PC and
Memory Card Int. Ass.), Porte dedicate a dispositivi
multimediali, …
Hardware (scheda madre)
L’hardware è l’insieme delle componenti fisiche del computer.
La scheda madre (motherboard) supporta, connette e controlla
(tramite circuiti) tutte le parti interne. Le componenti hardware del
computer sono fisicamente collegate alla scheda madre che permette
loro di dialogare tramite un canale composto da fili di rame (bus di
sistema).
Hardware (microprocessore o CPU)
Processore (Central Processing Unit) (es. Intel Pentium IV) legge, interpreta e
gestisce le istruzioni da eseguire (unità di controllo), esegue calcoli ed
operazioni logiche (unità aritmetico logica), alloca temporaneamente i risultati
e le istruzioni più comuni (CPU cache nei registri).
Velocità di clock: es. 3200 Mhz = 3.2 miliardi di cicli al secondo
Le tecnologie dual core o quad core permettono di collocare 2 o 4 CPU in un
unico microprocessore, aumentando considerevolmente le prestazioni.
Hardware (memorie)
Unità di memoria RAM (Random Access Memory) memoria ad
accesso casuale, temporanea, è un accesso veloce serve per le
elaborazioni (512 Mbyte, 4 Gbyte).
Memoria ROM (Read Only Memory) memoria non volatile,
contenente dati disponibili per la sola consultazione, in particolare il
Bios (il primo codice che viene eseguito, testa l’hardware, carica il
sistema operativo, funge da interfaccia tra hardware e periferiche).
Memoria di massa
memoria permanente, conserva i dati.
Tecnicamente non fa parte del computer. Floppy disk (1.44 Megabyte),
CD (700 Megabyte) , DVD (4.7 Gigabyte), Blu-ray (55 Gigabyte),
pendrive (64 Gigabyte), Hard disk (1.5 Terabyte).
Unità di misura della memoria
Il bit è la più piccola informazione rappresentabile in un PC. Si
indica con la lettera “b” e può assumere i valori: 0 e 1, VERO e
FALSO, ON e OFF, TRUE e FALSE.
1 byte (B) = 8 bit (N.B.=23) = 1 carattere (=> 28=256 possibilità)
1 Kilobyte (kB) = 210 byte =1024 byte
1 Megabyte (MB) = 1024*1024 byte (220)
1 Gigabyte = 230 byte
1 Terabyte = 240 byte
N.B. una pagina di un libro può contenere 2-3000 caratteri, diciamo circa 210 *2
= 211 byte => un terabyte contiene 240/211 = 240-11 = 229 = 220 · 29 pagine di
libro ovvero circa 1.000.000 libri di 500 pagine (29 = 512)
Notazione binaria
Rappresentazione di un numero:
67310= 3*100+7*101+6*102
10112 = 1*20+1*21+0*22+1*23=1+2+8=1110
la cifra più a destra è la MENO SIGNIFICATIVA (peso 20= 1)
la cifra più a sinistra è la PIU’ SIGNIFICATIVA (peso 23= 8)
Somma: 1+1=10 (“0 con riporto di uno”);
Esempio
11+
11 = ?
posizione 0:
1+1 =
0 con riporto di 1
posizione 1: 1+1 (+ 1 che riportavo) = 10 + 1 = 11
Risultato in base 2:
N.B.: 110 = 1102 = 0*20+1*21+1*22 = 610
110
Caratteri ASCHII (o ASCII)
Un byte è una sequenza di 8 bit. Quando si preme un tasto sulla
tastiera del computer si aziona un gruppo di otto interruttori che
genera un byte traducendo il carattere digitato in un numero in base 2.
Con 8 bit si possono generare 256 numeri binari diversi che vanno da
"00000000" (tutti gli interruttori sono chiusi, corrispondente al numero
in base dieci "0") a "11111111" (tutti gli interruttori sono aperti,
corrispondente al numero in base dieci "255").
Il codice ASCHII (American Standard Code for Information
Interchange) è una tabella che contiene il codice corrispondente ai
primi 128 caratteri (0-127). Per i successivi caratteri (128-255) non
esiste uno standard, ma vengono utilizzate varie tabelle conosciute
come "codice ASCHII esteso".
Ad ogni carattere della tastiera corrisponde un diverso gruppo di byte.
• Ad esempio, il carattere {
corrisponde al byte 0111 1011
• CIAO
=
67
73
ha la codifica ASCHII 123 che
65
79
=
0100 0011 0100 1001 0100 0001 0100 1111
• Si possono richiamare schiacciando Alt + il numero sul tastierino
numerico. Ad esempio il carattere ~ si ottiene con Alt+126
Il software
Il software è l’insieme dei programmi che permettono il
funzionamento del computer e che il computer esegue:
• Il sistema operativo è il programma che controlla e gestisce
l'hardware. Si occupa anche di gestire gli accessi degli utenti e dei
processi che vengono eseguiti.
• I driver sono quei programmi che permettono ad un sistema
operativo di utilizzare un dispositivo hardware senza conoscerlo,
operando da interpreti.
• I programmi applicativi sono algoritmi tradotti in un linguaggio
adatto a essere eseguito dal computer.
Il sistema operativo
Accensione: il BIOS residente nella memoria non volatile avvia il
POST (Power On Self Test).
Rilevati i dispositivi collegati, viene caricato il SISTEMA
OPERATIVO (per es. windows) al quale passa il controllo;
al sistema operativo è demandata la gestione dei file e della
memoria virtuale, con esso interagiamo tramite un’interfaccia, un
insieme di dispositivi user friendly: tastiera, mouse in ingresso e
schermo in uscita.
Il cuore del OS è il Kernel, che garantisce al software le funzioni
fondamentali per l’accesso controllato all’hardware.
DOS
Disk Operating System: sono i sistemi operativi capaci di gestire
un file system, cioè le funzioni che permettono di organizzare le
memorie di massa.
I file sono organizzati in una struttura gerarchica ad albero, i nodi si
chiamano DIRECTORY
file
sottodirectory
Directory
sottodirectory
file
file
file
Il disco fisso si chiama C ed è la radice dell’albero
Possiamo far partire MS DOS da windows (per tornare scrivere exit)
Il desktop
Le directory diventano cartelle che si aprono, svuotano,
riempiono… utilizzando il mouse
NEL DESKTOP E NELLE VARIE CARTELLE, LE
ICONE RAPPRESENTANO SOTTOCARTELLE e file
• I FILE e LA LORO ESTENSIONE:
file eseguibili: .exe
file di sistema: .com .sys .bat
file creati da applicazioni: .doc .xls .html .bmp …
• APPLICAZIONI: file .exe + altri file di solito l’eseguibile
viene fatto partire cliccando sull’icona dell’applicazione
Browser
Sono programmi in grado di interpretare il codice HTML e visualizzarlo
in forma di ipertesto. L'HTML è il codice col quale la maggioranza delle
pagine web nel mondo sono composte.
I più diffusi sono Netscape Navigator (ora Netscape Browser 9), Internet
Explorer, Mozilla Firefox, Opera, Safari , Google Chrome:
Risiedono nel PC e possono lavorare solo se è fisicamente attivo il
collegamento con il server
Consentono principalmente:
 navigazione (to browse = sfogliare) negli ipertesti (pagine) di un sito
 salvataggio delle pagine visitate (o parte, frames)
 download di file
 memorizzazione indirizzi delle pagine visitate (segnalibri, bookmarks)
Computer collegati in rete
Collegando tra loro un insieme di computer
tramite una rete – network – (fisicamente di solito
si tratta di una rete elettrica) è possibile
scambiare dati e condividere risorse (ad es.
stampanti).
Internet è una rete di reti telematiche (“la” rete).
Elementi base di una rete
1. Una infrastruttura di comunicazione basata su linee
telefoniche preesistenti e su canali specificamente
costruiti (link satellitari, cavi transoceanici,
collegamenti in fibra ottica..).
2. Insieme di tecnologie hardware che permette di
collegare fisicamente un computer alla rete
(schede, cavi, modem, router…) per formare reti
locali (LAN, Local Area Network), per collegare le
LAN tra di loro per formare reti più ampie (WAN,
Wide Area Network); il collegamento delle WAN
attraverso i canali specificati costituisce la rete.
3. Un insieme di regole (protocolli) necessarie per la
gestione delle comunicazioni.
L’insieme dei protocolli è denominato
TCP/IP
(Transmission Control Protocol/Internet Protocol)
Per collegare un computer alla rete è quindi
necessario installare e configurare opportuni software
che implementino i protocolli.
Struttura di Internet
I siti
Il nostro PC (client) è collegato ad un server
(mediante linea dedicata - locale - oppure tramite
modem su linea telefonica).
I
server sono gestiti da strutture pubbliche
(università,
ministeri,
centri
di
ricerca,
biblioteche) oppure da società private, i provider.
Nel server sono custoditi i siti eventualmente
lasciati in gestione ai singoli client.
Con il TCP/IP nascono gli indirizzi di rete (indirizzi IP)
Affinché i vari computer, delegati allo smistamento dei
dati, trovino la strada giusta per ogni messaggio, viene
impiegato uno schema di INDIRIZZAMENTO dei computer
collegati in rete.
Ogni host è dotato di un suo indirizzo univoco (indirizzo di
rete) denominato
IP
(Internet Protocol)
Sequenza di 4 numeri separati da punti (192.168.4.1)
Al sistema di indirizzi numerici è stato affiancato
un sistema di nomi simbolici, assai più facili da
ricordare.
Domain Name Service (DNS)
I nomi assegnati ai computer su Internet si chiamano
nomi di dominio
Esempi di indirizzi
http://www.unive.it
http://www.comune.venezia.it
Nell’indirizzo deve essere premesso il tipo di protocollo
da usare per la comunicazione. Le lettere http indicano il
protocollo usato nel trasferimento degli ipertesti:
Hypertext Transfer Protocol
Suffissi
CODICE
SIGNIFICATO
ita de usa
com
edu
E’ il codice della nazionalità
Società privata di tipo commerciale
Istituzione educativa (scuole o
università) statunitense
Istituzione del governo degli Stati Uniti
d’America
Risorse di rete
Organizzazione non-profit
gov
net
org
ALTRI PROTOCOLLI DI COMUNICAZIONE
TELNET
permette di collegarci ad un computer remoto ed agire sul
computer remoto proprio come se fosse il nostro computer
locale sfruttando le risorse che il nostro sistema mette a
disposizione (ad esempio si può accedere ad archivi
bibliografici, cataloghi, ecc.).
SMTP
Protocollo per la posta elettronica, consente di inviare e
ricevere mail, di allegare file, registrare dati su persone
(rubrica), di firmare i documenti inviati
SSH (Secure Shell)
Utilizzabile per connessioni remote, che sfrutta
algoritmi di crittografia per garantire una connessione
sicura
SSH File Transfer Protocol
o
SFTP
Permette sia il trasferimento che la manipolazioni dei
file remoti. Utilizza connessioni protette
NTP
E’ il protocollo che gestisce l’orario esatto nella rete.
FTP
FILE TRANSFER PROTOCOL
permette di collegarsi ad un computer remoto,
di visualizzare il contenuto del suo disco e,
se in possesso di adeguati permessi di accesso,
di prelevare o inviare file.
MODALITA’ di collegamento ad una macchina remota
FTP anonimo
• Usato per il prelievo di file con accesso pubblico
(presso università, enti, società).
• Non serve disporre di un codice utente (e password)
presso il computer remoto. Si accede anonimamente.
• Solo determinate directory – tipicamente la directory
pub (pubblica) sarà accessibile.
FTP con account
• Consente il collegamento ad un server
• Necessarie username e password
• Pieno accesso alla directory del sistema remoto,
nella quale potremo inserire, modificare e cancellare
file, proprio come se fosse una directory del nostro
hard disk.