Corso di Informatica e Rappresentazione Digitale PDF
Document Details
Uploaded by HardierRooster5292
Università San Raffaele Roma
Noemi Scarpato
Tags
Summary
This document is a presentation of a computer science course, likely given at the Università Telematica San Raffaele Roma. It covers topics such as computer architecture, von Neumann machines, memory (RAM and ROM), buses, and the CPU cycle. The presentation is by Noemi Scarpato.
Full Transcript
Noemi Scarpato CORSO DI INFORMATICA E RAPPRESENTAZIONE DIGITALE Noemi Scarpato Università Telematica San Raffaele Roma Von Neumann 1 di 24 N...
Noemi Scarpato CORSO DI INFORMATICA E RAPPRESENTAZIONE DIGITALE Noemi Scarpato Università Telematica San Raffaele Roma Von Neumann 1 di 24 Noemi Scarpato Cosa Vedremo Nelle Lezioni 1. Fondamenti Dell´Informatica 2. Architetture e Sistemi Operativi 3. Introduzione alle Reti di Calcolatori - INTERNET, IL World Wide Web e i loro servizi. 4. Elaborazione di documenti elettronici 5. Fondamenti di elaborazione multimediale 6. Creazione di Pagine Web. Von Neumann 2 di 24 Noemi Scarpato Architetture e Sistemi Operativi Introduzione al Computer e Rappresentazione dell'Informazione. Architettura della macchina di von Neumann. Dispositivi di memoria,dispositivi di input, dispositivi di output. Classificazioni, architetture. Sistemi Operativi. Introduzione e organizzazione dei sistemi operativi. Gestione dei processi. Gestione della memoria. Gestione dei dispositivi. File system. La sicurezza nei sistemi operativi. Casi di studio: Windows (VISTA,SEVEN) e Linux (Mandriva,Ubuntu). Von Neumann 3 di 24 Noemi Scarpato Architettura della macchina di Von Neumann. Von Neumann 4 di 24 Noemi Scarpato Architettura della macchina di Von Neumann. La macchina di Von Neumann è costituita da cinque elementi principali che svolgono un ruolo specifico. Memoria interna Contiene tutto il necessario all’esecuzione di un programma: i dati e le istruzioni. Spesso indicata con l’acronimo RAM, dall’inglese Random Access Memory, che potrebbe essere tradotto come memoria ad accesso diretto; viene anche detta memoria centrale. Un programma in esecuzione deve essere contenuto nella memoria centrale. È di tipo volatile, ossia perde il suo contenuto quando il computer viene spento. Von Neumann 5 di 24 Noemi Scarpato Architettura della macchina di Von Neumann. Bus di sistema Ha la funzione di connettere tra loro gli altri elementi funzionali permettendo un scambio di dati fra questi. Unità centrale di elaborazione o processore Svolge le elaborazioni e controlla il trasferimento dei dati e programmi tra le altre componenti. È l’elemento funzionale che esegue i programmi. Spesso è chiamata CPU, acronimo inglese di Central Processing Unit. Von Neumann 6 di 24 Noemi Scarpato Architettura della macchina di Von Neumann. Memoria esterna o di massa Contiene dati e programmi in forma persistente, ossia indipendentemente dallo stato di acceso o di spento del computer. Solitamente indicata come memoria di massa perché la sua capacità è tipicamente molto più grande di quella della RAM. Ha tempi di accesso molto più lenti di quelli della RAM. Interfaccia alle periferiche È la parte che gestisce tutte le periferiche di comunicazione con l’ambiente esterno. Notiamo che le periferiche, ad esempio tastiera video o mouse, sono considerate dispositivi distinti dal computer. Von Neumann 7 di 24 Noemi Scarpato Ciclo della CPU Von Neumann 8 di 24 Noemi Scarpato Ciclo della CPU L’idea principale è che la CPU legge le istruzioni dalla memoria interna, le decodifica e le esegue. Le istruzioni possono essere di elaborazione o di trasferimento dei dati. I trasferimenti dei dati tra i vari elementi funzionali sono fatti per mezzo del bus di sistema. La macchina di Von Neumann opera tramite un ciclo di passi scanditi nel tempo. In sincronia con ogni battito dell’orologio di sistema, un quanto di tempo, la CPU esegue un passo del suo ciclo. Perché un programma possa essere eseguito occorre che sia caricato nella memoria centrale. Vedremo successivamente come l’utente possa richiedere tale operazione. Von Neumann 9 di 24 Noemi Scarpato Ciclo della CPU Ciclo della CPU Si divide in due fasi, ognuna delle quali comporta più passi. Fase di istruzione, o di fetch – La CPU legge dalla memoria l’istruzione da eseguire – la CPU decodifica l’istruzione appena letta. Fase di esecuzione – la CPU legge dalla memoria gli eventuali operandi dell’istruzione, – la CPU esegue l’istruzione – la CPU memorizza l’eventuale risultato. Von Neumann 10 di 24 Noemi Scarpato Ciclo della CPU Al termine della fase di esecuzione la CPU riprende il suo ciclo a partire dalla prossima istruzione da eseguire. Il modello proposto da Von Neumann è quindi strettamente sequenziale nella esecuzione delle istruzioni, e questa costituisce una delle sue caratteristiche fondamentali. Von Neumann 11 di 24 Noemi Scarpato RAM La memoria centrale è costituita da una sequenza ordinata di celle che sono in grado di memorizzare una parola (word) e che sono identificate univocamente da un indirizzo. Ogni cella di memoria ha un indirizzo predefinito, e rappresenta l’unità minima di memoria che la CPU riesce a accedere. La CPU è responsabile della gestione dei dati contenuti nella RAM. Il numero di volte che ogni singola cella può essere letta o scritta è sostanzialmente illimitato. Ogni singola cella può essere acceduta direttamente per mezzo del suo indirizzo univoco, per questo la RAM prende anche il nome di memoria ad accesso diretto. Von Neumann 12 di 24 Noemi Scarpato RAM Le celle di memoria sono realizzate tramite dispositivi a semiconduttori, ossia con tecnologia basata su transistor, e hanno bisogno di essere continuamente alimentate da energia elettrica per preservare il loro contenuto. Una mancanza di alimentazione comporta la perdita del contenuto della RAM, che quindi è detta anche memoria volatile. Il contenuto della memoria al momento dello spegnimento del computer viene perso. Von Neumann 13 di 24 Noemi Scarpato RAM Leggere e scrivere nella RAM Indirizzi e registri Ogni cella di memoria ha un indirizzo fisico predefinito e invariabile. Il numero di bit per la rappresentazione degli indirizzi delle celle è predefinito nell’architettura del computer, e definisce il massimo numero di celle indirizzabili. La CPU dispone al suo interno di una speciale memoria, detta registro indirizzi, che serve a rappresentare l’indirizzo della cella di memoria che viene acceduta. Il registro dati, sempre contenuto nella CPU, è capace di contenere una parola di memoria. Von Neumann 14 di 24 Noemi Scarpato RAM Quando la CPU effettua una operazione di lettura della memoria copia nel registro dati il contenuto della cella il cui indirizzo è nel registro indirizzi. Quando la CPU effettua una operazione di scrittura della memoria copia il contenuto del registro dati nella cella il cui indirizzo è contenuto nel registro indirizzi. L’operazione di copia di una parola cancella il contenuto precedente dell’unità di destinazione, sia esso il registro dati sia una cella di memoria. Von Neumann 15 di 24 Noemi Scarpato ROM Alcune aree di memoria sono solamente leggibili, e non possono essere scritte dalla CPU. Tali aree di memoria vengono dette ROM, acronimo dell’inglese Read Only Memory. Dal punto di vista concettuale le celle della ROM sono costituite come quelle della RAM, con la differenza che possono solo essere lette nel corso del normale funzionamento del computer. Le ROM preservano il loro contenuto anche quando il computer viene spento, e vengono utilizzate per contenere alcuni dati e programmi speciali. Il contenuto delle ROM prende il nome di firmware perché è un software con la caratteristica, tipica dell’hardware, di non essere modificabile nel corso del funzionamento normale. Von Neumann 16 di 24 Noemi Scarpato Bus di Sistema Il bus di sistema connette tra loro, in modo sincrono, le altre unità funzionali. Ad ogni quanto di tempo (clock) il bus connette tra loro due unità funzionali, una invia e l’altra riceve. Il bus è controllato dalla CPU. Le varie unità funzionali connesse al bus entrano in funzione solo quando sono selezionate dalla CPU. Il bus di sistema è costituito da tre tipologie di connessioni elementari specializzate: Von Neumann 17 di 24 Noemi Scarpato Bus di Sistema bus dati: fa transitare sia il contenuto del registro dati dalla CPU a una delle altre unità funzionali, sia da una di queste al registro dati della CPU; bus indirizzi: fa transitare dalla CPU verso la memoria l’indirizzo della parola che viene acceduta; bus controllo: fa transitare dalla CPU a una delle altre unità funzionali il codice della operazione da eseguire, e dalla unità funzionale il codice risultato dell’operazione. La presenza di più linee di connessione elementari per ogni tipo di bus permette la trasmissione contemporanea dei bit, ossia uno per ogni linea in uno stesso quanto di tempo. Von Neumann 18 di 24 Noemi Scarpato Bus di sistema Se il bus non ha sufficienti linee di connessione, è costretto a effettuare più trasmissioni, una per ogni quanto di tempo. Nella figura seguente le linee di indirizzo connettono solamente il processore e la memoria interna, e sono rappresentate con una linea continua, le linee di dati e controllo connettono tutte le componenti della macchina e sono rappresentate, rispettivamente, con una linea tratteggiata e una linea punteggiata. Von Neumann 19 di 24 Noemi Scarpato CPU Unità di controllo: Regola l’esecuzione del ciclo della CPU, e invia i segnali di controllo per i trasferimenti sul bus. Decodifica le istruzioni e gestisce sia i trasferimenti all’interno della CPU sia quelli con il mondo esterno. Orologio o clock: Stabilisce l’ampiezza del quanto di tempo, ossia la frequenza di sincronia del sistema. Von Neumann 20 di 24 Noemi Scarpato CPU Unità logico aritmetica, ALU (Arithmetic Logic Unit): Realizza le operazioni aritmetiche e quelle logiche. In figura è mostrata una ALU con due operandi capace di eseguire una delle quattro operazioni aritmetiche in un quanto di tempo. Il risultato dell’operazione viene memorizzato nel registro A. Registri: Sono memorie locali che possono essere accedute alla velocità del clock della CPU, mentre quelle della RAM sono accessibili alla velocità del clock del bus, solitamente molto più lento, attraverso le operazioni di lettura e scrittura descritte in precedenza. Von Neumann 21 di 24 Noemi Scarpato CPU I registri principali sono: – registro dati (RD): ha un numero di bit prefissato che coincide con una parola della memoria centrale; – registro indirizzi (RI): ha un numero di bit prefissato che coincide con l’indirizzo massimo accessibile in memoria. Si noti che non sempre il computer è dotato di tutta la RAM indirizzabile; – registro istruzione corrente (RIC): contiene l’istruzione in esecuzione nel quanto di tempo corrente, ha la stessa lunghezza di una parola della memoria centrale; Von Neumann 22 di 24 Noemi Scarpato CPU – contatore di programma (PC): contiene l’indirizzo in memoria centrale relativo alla prossima istruzione da eseguire, ossia quella che verrà letta all’inizio del prossimo ciclo della CPU. Ha la stessa lunghezza del registro indirizzi; – registro interruzioni (RINT): contiene alcune dati relativi allo stato di alcune periferiche, come si vedrà successivamente; – registri operandi: contengono gli eventuali operandi e risultato dell’istruzione in esecuzione. Nell’esempio sono indicate con A e B; Von Neumann 23 di 24 Noemi Scarpato CPU – registro di stato (RS): contiene indicazioni sulle operazioni svolte dalla ALU, quali, ad esempio: il risultato è troppo grande per essere rappresentato, overflow dell’operazione; segno del risultato se l’operazione è andata a buon fine; in A c’è un valore nullo; l’operazione ha generato un riporto. Von Neumann 24 di 24