Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
—> PROTOCOLLO DI TIPO PEER-TO-PEER
La Legge 128 del 21 maggio 2004 ha introdotto per la prima volta nel nostro ordinamento le sanzioni contro il
file sharing, quando considerato lesivo del diritto d’autore.
Capitolo XVII - storia dell’informatica
Un calcolatore, o PC, è una macchina che può risolvere alcuni problemi eseguendo delle istruzioni, che le vengono
assegnate
con il termine programma si intende un insieme di istruzioni che descrive il modo per portare a termine un
—>
determinato compito
I calcolatori possono eseguire solo poche istruzioni:
Fare somme
• Verificare la differenza di un numero dallo zero
• Spostare dati in diverse porzioni di memoria
•
La somma di tutte le istruzioni elementari e non formano Linguaggio Macchina, la cui definizione deriva dal fatto
che permette al programmatore (umano) di comunicare con il calcolatore; è il progettista a decidere quali
istruzioni elementari faranno parte del linguaggio macchina necessario per comunicare
essi sono molto elementari, quindi è difficile utilizzarli per realizzare qualcosa di complesso
—>
Questa osservazione ha portato a strutturare i computer come una serie di livelli, costruito sulla base di
• quello sottostante, così che la complessità è maggiormente gestibile
Per superare il problema della differenza tra il modo di ragionare umano e il modo di ragionare macchina/
calcolatore, c’è bisogno di un nuovo insieme di istruzioni che sia più comodo da utilizzare, che formano un
linguaggio chiamato X, e allo stesso modo formano a loro volta un linguaggio chiamato Y
i programmi scritti in Y sono eseguiti da un computer in grado di eseguire solo quelli scritti nel proprio
—>
linguaggio
Un metodo per eseguire un programma in Y, consiste nel sostituire ogni sua istruzione con l’equivalente
• sequenza scritta in X -> questa tecnica è chiama traduzione
Un altro metodo consiste nello scrivere un programma X che accetta come dati di ingresso programmi in Y
•
-> questa tecnica è chiamata interpretazione, il cui programma è chiamato interprete
É più semplice immaginare l’esistenza di un ipotetico computer o macchina virtuale il cui linguaggio è X e Y->
chiamate VWY e VWX
Per rendere la traduzione e l’interpretazione utilizzabili in pratica i linguaggi X e Y non devono essere “troppo”
• diversi tra loro, poiché Y pur essendo migliore di X, spesso è ancora lontano dal linguaggio ideale
La definizione di una serie di linguaggi, ciascuno dei quali più pratico da utilizzare, può continuare finché non ne
ottenga uno adeguato.
ogni linguaggio utilizza il precedente come base -> un computer che usa questa tecnica può essere
—>
immaginato come una serie di livelli disposti uno sopra l’altro: il livello più in basso è il più semplice, quello più in alto
è il più sofisticato
I primi computer digitali (anni 40) avevano solo 2 livelli:
Livello ISA -> in cui erano realizzati tutti i programmi
• Livello logico digitale -> che li eseguiva, i cui circuiti erano difficili da comprendere e inaffidabili
• nel 1951 Maurice Wilkes, un ricercatore della Cambridge University, propose di progettare un computer a 3
—>
livelli, al fine di semplificare l’hardware
Essa avrebbe dovuto avere un interprete predefinito e non modificabile, che doveva eseguire i programmi al
• livello ISA con l’interpretazione, e doveva avere un minor numero di circuiti elettronici, costituiti da valvole,
così da migliorare l’affidabilità
Negli anni 50 vennero costruite poche di queste macchine, ma negli anni 60 ne costruirono di più
a partire dal 1970 l’idea di aver un livello ISA interpretato da un microprogramma divenne dominante
—>
In questi anni la maggior parte dei computer era di tipo “fai da te”, quindi il programmatore doveva far
• funzionare la macchina personalmente
Questa procedura fu per anni la normalità in molti centri di calcolo: i programmatori erano costretti ad
imparare come far funzionare la macchina
intorno al 1960 si cercò di ridurre la quantità di tempo sprecato, automatizzando il lavoro dell’operatore
—>
Un programma chiamato sistema operativo era tenuto sempre nel computer, e il programmatore forniva
• alcune schede di controllo che venivano lette ed eseguite dal sistema operativo
*uno dei primi computer con un sistema operativo fu l’IBM 709*
negli anni successivi, i sistemi operativi divennero sempre più sofisticati, e al livello ISA vennero aggiunte
—>
nuove istruzioni.
Quando la programmazione divenne una pratica comune, i progettisti capirono che avrebbero potuto
aggiungere nuove istruzioni estendendo i “microprogrammi” -> aggiungere “hardware” per mezzo della
programmazione
I progettisti gareggiavano nel produrre insiemi di istruzioni sempre più estesi e migliori, ma a volte non erano
• necessari
durante gli anni d’oro della programmazione (60/70) le dimensioni dei microprogrammi aumenta coì tanto che
—>
cominciano a divenire via via sempre più lenti
I ricercatori capirono che questo problema poteva essere risolto eliminando il microprogramma, riducendo
• l’insieme delle istruzioni e facendo in modo che quelle rimanenti venissero eseguite direttamente
Capitolo XVIII - storia dell’informatica, 1° generazione
Nel corso dell’evoluzione che ha portato agli attuali computer, sono stati progettati e costruiti centinaia di
diversi tipi di elaboratori, di cui, un ristretto numero ha avuto un impatto significativo sulle idee alla base delle
moderne architetture
Blaise Pascal -> costruì una macchina interamente meccanica, costituita da ingranaggi azionata a mano, in
• grado di compiere solamente somme e sottrazioni; dopo 30 anni, il Barone Gottfried Wilhelm von Leibniz,
costruì una macchina capace di eseguire anche moltiplicazioni e divisioni
Per 150 anni non ci fu nessun progresso..
Charles Babbage -> progettò e costruì una macchina, Difference Engine, capace solo di sommare e sottrarre,
• progettata per calcolare tabelle di numeri utili per la navigazione, ma pensata per eseguire un solo algoritmo,
il metodo matematico delle differenze finite.
Il suo aspetto più interessante era la sua forma di output -> i risultati venivano incisi mediante una punta di
acciaio su una lastra di rame
Si stancò di questa macchina che poteva eseguire solo un algoritmo, e costruì l’Analitic Engine, composta da
—>
4 componenti: magazzino, mulino, dispositivo di input e il dispositivo di output, anch’essa interamente meccanica
Dato che la seconda era programmabile mediante un semplice linguaggio assemblativo, era necessario
• produrre il software -> Babbage assunse Ada Augusta Lovelace, la figlia del poeta Byron, ma non riuscì mai a
ottenere un hardware privo di errori
le sue idee erano in largo anticipo sui tempi, tanto che alcuni computer moderni hanno la stessa struttura
—>
dell’Analitic Engine *è il padre degli odierni calcolatori*
Konrad Zuse -> verso la fine degli anni 30 costruì una serie di macchine calcolatrici automatiche utilizzando dei
• relè elettromagnetici, ma le sue macchine vennero distrutte nel 1944 durante un bombardamento
John Atanasoff -> costruì una macchina molto avanzata per l’epoca, basata sull’aritmetica binaria che
• utilizzava dei condensatori per la memoria, la quale veniva aggiornata periodicamente tramite il processo
“jogging the memory”; le moderne memorie dinamiche si basano su questo principio -> non ebbe successo
George Stibitz -> costruì una macchina, sebbene meno evoluta di quella di Atanasoff, che riuscì a funzionare
• Howard Aiken -> dai lavori di Babbage costruì la sua prima macchina, il Mark I, composta da 72 parole e 23 cifre
• decimali, con un tempo d’istruzione di 6 sec; realizzò poi il Mark II, e i computer basati su relè divennero
obsoleti
Calcolatori a valvole
Lo stimolo per lo sviluppo dei computer elettronici venne dalla S.W.W. Nella prima parte della guerra, gli ammiragli
tedeschi spedivano i comandi via radio ai sottomarini, ma gli ordini potevano essere intercettati dai britannici,
codificati per mezzo del dispositivo ENIGMA, il cui precursore era stato progettato da Thomas Jefferson.
ma per farlo bisognava eseguire un gran numero di calcoli, ed era necessario poterlo fare molto
—>
velocemente
Il governo britannico creò un laboratorio segreto per la costruzione di un computer chiamano COLOSSUS,
• grazie all’aiuto di Alan Turing, che divenne operativo nel 1943, ma non ebbe nessun seguito
L’esercito aveva bisogno di tabelle per impostare la mira dell’artiglieria pesante, una procedura che richiedeva
molto tempo
John Mauchly -> venne a sapere che gli esercito era interessato alla costruzione di calcolatori meccanici, e
• chiese un finanziamento, cosi nel 1943, con J. Presper Eckert, costruì un computer chiamato ENIAC, costituito
da 18.000 valvole termoioniche e 1500 relè, pesava 30 tonnellate e consumava 140 KW
*fu terminata solo nel 1946, quando ormai non poteva più essere utile per lo scopo originale*
fu concessa ai due l’organizzazione di una scuola estiva dove poter presentare ENIAC ai colleghi, e questo
—>
diede un forte impulso a molti altri ricercatori per costruire computer elettronici nuovi
Maurice Wilkes -> costruì il primo elaboratore ad essere operativo, EDSAC.
• Eckert e Mauchly -> iniziarono a lavorare su un successore, EDVAC, ma il progetto morì nel momento in cui
• decisero di lasciare la Pennsylvania University per formare a Philadelphia una propria società, la Eckert-
Mauchly Computer Corporation, che divenne la moderna Unisys Corporation
Un membro del progetto ENIAC, John Von Neumann, un genio al livello di Da vinci, andò all’Istitute of Advanced
Studies di Princeton, per costruire la propria versione dell’EDVAC, la macchina IAS.
il primo progetto elementare che descrisse è conosciuto come Macchina di Von Neumann, alla base ancora
—>
oggi di quasi tutti i computer digitali, ed era composta da:
Memoria -> costituita da 4096 locazioni, ciascuno da 40 bit
• Unità aritmetico-logica -> all’interno della quale vi era l’accumulatore
• Unità di controllo
• Dispositivi di output e input
• Rete di connessioni
•
Altri ricercatori del M.I.T stavano costruendo un computer, il Whirlwind I, con parole di 16 bit
a questo progetto si deve l’invenzio