La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l’esecuzione dei programmi AA 2002/2003 ©Morpurgo,, Zanaboni.

Presentazioni simili


Presentazione sul tema: "Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l’esecuzione dei programmi AA 2002/2003 ©Morpurgo,, Zanaboni."— Transcript della presentazione:

1 Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l’esecuzione dei programmi AA 2002/2003 ©Morpurgo,, Zanaboni

2 Struttura hw del computer
Il nucleo di un computer è costituito da 3 principali componenti: Il processore La memoria Le periferiche Interconnesse attraverso il bus AA 2002/2003 ©Morpurgo,, Zanaboni

3 La scheda madre La piattaforma su cui sono montate alcune componenti del PC (processore, memorie, modem interno) è detta scheda madre (mother board). La scheda madre contiene slot liberi per l’eventuale aggiunta di memoria supplementare o di co-processori (es: scheda video) Contiene alcune prese (chiamate porte) per il collegamento di periferiche esterne (es: schermo, tastiera, modem esterno). AA 2002/2003 ©Morpurgo,, Zanaboni

4 La scheda madre Memoria bus processore Interfccia alle periferiche
©Morpurgo,, Zanaboni

5 IL PROCESSORE AA 2002/2003 ©Morpurgo,, Zanaboni

6 Il processore - chip Il processore è l’unità di elaborazione centrale (CPU: central processing unit) del computer. Oggi le CPU sono costituite da circuiti che contengono milioni di microscopici interruttori acceso/spento (i transistor) collegati tra loro da sottilissimi fili. I circuiti vengono “stampati” su una sottile lamina di silicio. Il chip che corrisponde a una CPU ha una superficie dell’ordine dei mm2. AA 2002/2003 ©Morpurgo,, Zanaboni

7 Il processore - chip Pertanto oggi si parla di microprocessore costituito da circuiti integrati: milioni di elementi tra loro collegati contenuti in una superficie quasi microscopica. AA 2002/2003 ©Morpurgo,, Zanaboni

8 Il processore AA 2002/2003 ©Morpurgo,, Zanaboni

9 Il linguaggio macchina
Il processore è in grado di riconoscere (e quindi di eseguire) solo programmi scritti in un proprio linguaggio (linguaggio macchina) Ogni modello di processore (es: Intel, Pentium, Motorola, PowerPC) ha un proprio linguaggio macchina diverso da quello degli altri processori AA 2002/2003 ©Morpurgo,, Zanaboni

10 Il processore - clock In corrispondenza di ogni istruzione espressa nel linguaggio macchina il processore svolge una serie di operazioni elementari (il ciclo della macchina). Il numero operazioni elementari svolte per ogni istruzione dipende dal tipo di processore (tra le 7 e le 10). AA 2002/2003 ©Morpurgo,, Zanaboni

11 Il processore - clock Il tempo impiegato dal processore per eseguire una operazione elementare è detto durata del ciclo di clock Il numero di operazioni elementari svolte dal processore in una unità di tempo (cioè il numero di cicli di clock al secondo) è la frequenza di clock AA 2002/2003 ©Morpurgo,, Zanaboni

12 Il processore - clock Quindi: 1 Frequenza di clock =
Durata di un ciclo di clock E’ un indicatore della “velocità” del processore nell’eseguire i programmi. Oggi si misura in Mhz (MegaHertz). 1 Mhz = 1 milione di cicli al secondo. AA 2002/2003 ©Morpurgo,, Zanaboni

13 Il processore - clock Dati due processori con lo stesso linguaggio macchina sarà più veloce quello con frequenza di clock maggiore Non è possibile fare un confronto tra processori con linguaggi macchina diversi AA 2002/2003 ©Morpurgo,, Zanaboni

14 Il processore - clock Esempio Computer A Clock : 500MHz
Linguaggio macchina richiede 10 operazioni elementari per istruzione Computer B Clock : 400MHz Linguaggio macchina richiede 6 operazioni elementari per istruzione Devono eseguire un programma di 100M istruzioni macchina A impiegherà 2 sec. B impiegherà 1,5 sec. AA 2002/2003 ©Morpurgo,, Zanaboni

15 Ciclo della macchina Le attività principali svolte dal computer quando deve eseguire un programma sono: Trasferimento del programma (già scritto in linguaggio macchina) in una memoria di lavoro (la memoria centrale), alla quale il processore può accedere velocemente Per ogni istruzione del programma esecuzione di tre tipi di operazioni, che costituiscono il ciclo della macchina: AA 2002/2003 ©Morpurgo,, Zanaboni

16 Ciclo della macchina Lettura (fetch)– il processore reperisce dalla memoria l’istruzione da eseguire Decodifica (decode) – il processore identifica l’istruzione da eseguire Esecuzione (exec) – il processore esegue le operazioni corrispondenti all’istruzione AA 2002/2003 ©Morpurgo,, Zanaboni

17 Il processore - registri
Per eseguire le operazioni elementari il processore ha bisogno di utilizzare delle memorie (di piccole dimensioni) alle quale accedere in modo veloce (es: una zona che contiene l’indirizzo dell’istruzione da eseguire, una per i dati su cui l’istruzione opera) Queste memorie, che fisicamente sono contenute nel chip, sono chiamate registri del processore AA 2002/2003 ©Morpurgo,, Zanaboni

18 Memoria processore … registro registro registro
Interfccia alle periferiche AA 2002/2003 ©Morpurgo,, Zanaboni

19 Sistemi con più processori I co-processori
A seconda del tipo di uso che l’utente fa del computer, per velocizzarne le prestazioni si possono aggiungere dei co-processori. Questi sono processori specializzati nell’esecuzione di compiti specifici (es: gestione dello schermo) che operano sotto il controllo della CPU. AA 2002/2003 ©Morpurgo,, Zanaboni

20 Memoria processore … co-processore registro registro registro
Interfccia alle periferiche AA 2002/2003 ©Morpurgo,, Zanaboni

21 Sistemi con più processori Sistemi paralleli
I sistemi paralleli sono sistemi con più CPU che operano in modo indipendente e condividono le altre risorse del computer. Il coordinamento dei diversi processori è demandato al sistema operativo. La velocità del computer risulta aumentata ma non moltiplicata, perché non è trascurabile il tempo che il sistema operativo deve dedicare al coordinamento dei processori AA 2002/2003 ©Morpurgo,, Zanaboni

22 processore … Memoria processore … registro registro registro registro
Interfccia alle periferiche AA 2002/2003 ©Morpurgo,, Zanaboni

23 Sistemi distribuiti Le reti informatiche permettono di condividere risorse hw e sw presenti in luoghi geografici diversi. Si parlerà delle reti più avanti nel corso. AA 2002/2003 ©Morpurgo,, Zanaboni

24 LA MEMORIA AA 2002/2003 ©Morpurgo,, Zanaboni

25 La memoria La memoria è la componente che svolge la funzione di magazzino delle informazioni sulle quali opera il processore L’unità di informazione minima è il bit (binary unit). Consideriamola come una casella nella quale possiamo scrivere il simbolo 0 oppure il simbolo 1. AA 2002/2003 ©Morpurgo,, Zanaboni

26 La memoria-il bit Avendo a disposizione un solo bit si possono rappresentare due elementi diversi: Si assegna al primo elemento la codifica 0 e al secondo la codifica 1 Avendo a disposizione due bit si possono rappresentare quattro elementi diversi, assegnando a ciascuno una codifica diversa: 00, 01, 10, 11 AA 2002/2003 ©Morpurgo,, Zanaboni

27 La memoria-il bit Avendo a disposizione tre bit si possono rappresentare otto elementi diversi. .… Avendo a disposizione n bit si possono rappresentare 2n elementi diversi. AA 2002/2003 ©Morpurgo,, Zanaboni

28 La memoria-il byte Agli albori dell’informatica c’era l’esigenza di rappresentare i caratteri stampabili (le lettere dell’alfabeto, le cifre da 0 a 9, lo spazio, la virgola etc…) per un numero totale di caratteri compreso tra 90 e 120. Per poter rappresentare 128 elementi diversi servono almeno 7 bit (27=128). E’ bene avere a disposizione un bit supplementare poter effettuare controlli sulla sequenza AA 2002/2003 ©Morpurgo,, Zanaboni

29 La memoria-il byte Quindi per rappresentare i caratteri stampabili è necessaria una sequenza di 7+1=8 bit. Una sequenza di 8 bit è detta byte, ed è diventata una unità di misura della occupazione di memoria. AA 2002/2003 ©Morpurgo,, Zanaboni

30 La memoria-il byte BYTE = b 1 1 1 1 1 BIT AA 2002/2003
1 1 1 1 BIT AA 2002/2003 ©Morpurgo,, Zanaboni

31 Le celle di memoria AA 2002/2003 ©Morpurgo,, Zanaboni

32 Le celle di memoria Ogni cella di memoria contiene un byte, ed è contraddistinta da un indirizzo Volendo scrivere o leggere un dato dalla memoria il processore deve sempre specificare l’indirizzo della cella alla quale vuole accedere AA 2002/2003 ©Morpurgo,, Zanaboni

33 La memoria-unità di misura
Le dimensioni di una memoria si misurano in: Kbyte (kilo byte)= 210 byte = 1024 byte ≈ 103 byte Mbyte (Mega byte)= 210 Kbyte = 1024 Kbyte= 220 byte ≈ 106 byte Gbyte (Giga byte)= 210 Mbyte =1024 Mbyte = 230 byte ≈ 109 byte Tbyte (Tera byte)= 210 Gbyte =1024 Gbyte = 240 byte ≈ 1012 byte AA 2002/2003 ©Morpurgo,, Zanaboni

34 ESECUZIONE DEI PROGRAMMI
AA 2002/2003 ©Morpurgo,, Zanaboni

35 L’esecuzione dei programmi
La memoria centrale è l’area di lavoro: contiene i programmi in esecuzione in quel momento ed i relativi dati in particolare, contiene sempre la parte del sistema operativo che governa l’utilizzo delle risorse di calcolo L’unità fisica che esegue i programmi in memoria centrale è la CPU (CPU, Central Processing Unit) AA 2002/2003 ©Morpurgo,, Zanaboni

36 L’esecuzione dei programmi
Si dice che un programma ha il controllo della CPU se la CPU sta eseguendo quel programma; impropriamente, diremo che: un programma P svolge un compito per dire che la CPU svolge quel compito sotto il controllo di P AA 2002/2003 ©Morpurgo,, Zanaboni

37 L’esecuzione dei programmi del Sistema Operativo (SO)
Quando il calcolatore è in attesa di comandi, il controllo della CPU è detenuto dal SO, che: gestisce l’interfaccia utente accetta i comandi dell’utente avvia (lancia) l’esecuzione dei programmi applicativi AA 2002/2003 ©Morpurgo,, Zanaboni

38 L’esecuzione di un programma applicativo
La CPU è sotto il controllo del SO, che gestisce l’interfaccia utente L’utente chiede, tramite l’interfaccia, di eseguire, ad esempio, WORD La CPU, sotto il controllo del SO, riconosce la richiesta e carica WORD in memoria centrale inizia ad eseguire WORD L’esecuzione di WORD termina e la CPU riprende ad eseguire il SO; nuovamente sotto il controllo del SO, la CPU è pronta ad accettare nuovi comandi AA 2002/2003 ©Morpurgo,, Zanaboni

39 Ma la situazione è più complessa
In realtà il SO gestisce l’esecuzione di più programmi e più utenti, per cui si hanno più processi e il SO concede la CPU a ciascuno di essi, per piccoli intervalli di tempo, a rotazione o secondo altre politiche tutto ciò è trasparente all’utente e non ce ne occuperemo in questo corso AA 2002/2003 ©Morpurgo,, Zanaboni

40 Funzionamento della CPU
RI (Registro Istruzione) registri PC (Program counter) registro dati 1 Memoria centrale processore registro dati k CPU AA 2002/2003 ©Morpurgo,, Zanaboni

41 La nostra CPU finta Una CPU può leggere/scrivere il contenuto di una sola cella di memoria alla volta, specificandone l’indirizzo; contiene inoltre dei registri, come area di lavoro veloce la nostra CPU finta contiene i seguenti registri il registro PC (Program counter) che contiene l’indirizzo dell’istruzione da reperire il registro RI, (Registro istruzioni) che contiene l’istruzione da decodificare ed eseguire 4 registri dati il ciclo di esecuzione, nelle sue fasi, avviene come segue AA 2002/2003 ©Morpurgo,, Zanaboni

42 Ciclo della macchina La CPU esegue le istruzioni in memoria centrale ripetendo i seguenti passi (ciclo della macchina): 1) Lettura (fetch) reperisce dalla memoria centrale l’istruzione da eseguire e la carica nel registro istruzioni RI 2) Decodifica (decode) riconosce l’istruzione presente nel RI; 3) Esecuzione (exec) esegue le operazioni dettate da tale istruzione 4) Torna al passo 1) per la lettura della prossima istruzione AA 2002/2003 ©Morpurgo,, Zanaboni

43 Esempio con una CPU finta, che usa la numerazione decimale
La nostra CPU finta usa una memoria centrale indirizzata da 2 cifre decimali, cioè di 100 elementi 013005 Celle di memoria di lunghezza 6 cifre decimali 00 Indirizzi da 00 a 99 012006 01 02 112310 03 021006 999999 04 05 000120 06 000080 …. …….. AA 2002/2003 ©Morpurgo,, Zanaboni

44 Quando inizio il reperimento il PC contiene l’indirizzo
dell’istruzione da eseguire in quel momento In questo esempio è l’istruzione di indirizzo 01 013005 00 registri 012006 01 000000 01 PC 02 112310 1 000120 013005 RI 03 021006 2 000000 999999 04 processore 000000 3 05 000120 06 000080 CPU …. …….. Nel reperimento: la CPU trasferisce l’istruzione da eseguire (di indirizzo 01) nel RI e si ottiene: AA 2002/2003 ©Morpurgo,, Zanaboni

45 che RI contiene l’istruzione da eseguire
013005 00 Registri dati 012006 01 02 PC 000000 02 112310 012006 1 000120 RI 03 021006 2 000000 999999 04 processore 000000 3 05 000120 06 000080 CPU …. …….. il PC punta già alla prossima, di indirizzo 02 ha inizio la decodifica ed esecuzione dell’istruzione in RI AA 2002/2003 ©Morpurgo,, Zanaboni

46 L’esecuzione trasferisce 000080 nel registro 2
Decodifica trasferisci nel registro 2 il dato contenuto nella cella di memoria 06 011005 00 Registri dati 012006 01 02 PC 000000 02 112310 012006 1 000120 RI 03 021006 2 000000 999999 04 processore 000000 3 05 000120 06 000080 CPU …. …….. L’esecuzione trasferisce nel registro 2 AA 2002/2003 ©Morpurgo,, Zanaboni

47 Inizia un nuovo ciclo di esecuzione, che reperisce
011005 00 Registri dati 012006 01 02 PC 000000 02 112310 012006 1 000120 RI 03 021006 2 000080 999999 04 processore 000000 3 05 000120 06 000080 CPU …. …….. Inizia un nuovo ciclo di esecuzione, che reperisce l’istruzione puntata dal PC, ora quella di indirizzo 02, e così via AA 2002/2003 ©Morpurgo,, Zanaboni

48 LA MEMORIA AA 2002/2003 ©Morpurgo,, Zanaboni

49 La memoria- parametri di caratterizzazione
Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo di trasferimento, misurata in base alla quantità di dati trasferita in una unità di tempo. È anche chiamata larghezza di banda, e si misura in bit/sec. oppure byte/sec. AA 2002/2003 ©Morpurgo,, Zanaboni

50 La memoria- parametri di caratterizzazione
capienza, cioè la quantità di byte che può contenere costo, misurato in migliaia di lire per byte modalità di accesso, cioè la possibilità di: reperire le informazioni memorizzate (accesso in lettura) modificare le informazioni memorizzate (accesso in scrittura) AA 2002/2003 ©Morpurgo,, Zanaboni

51 La memoria- parametri di caratterizzazione
volatilità, cioè la possibilità di mantenere il proprio contenuto anche in mancanza di alimentazione elettrica: Le memorie volatili perdono il contenuto in assenza di alimentazione elettrica Le memorie permenenti lo mantengono (non in eterno, ma per un tempo che dipende dal tipo di dispositivo: decenni o più). AA 2002/2003 ©Morpurgo,, Zanaboni

52 La memoria-gerarchia Esiste una dipendenza diretta tra costo di realizzazione e velocità del dispositivo. Per questo motivo la memoria di un computer è distribuita su dispositivi hw diversi, che nel loro insieme costituiscono il sistema di memoria del computer, detto gerarchia di memorie. AA 2002/2003 ©Morpurgo,, Zanaboni

53 La memoria -gerarchia Ai livelli più alti della gerarchia di memorie ci sono le memorie più veloci ma più costose. Ai livelli più bassi ci sono quelle più economiche AA 2002/2003 ©Morpurgo,, Zanaboni

54 La memoria- uso della gerarchia
Se voglio prepararmi un piatto di spaghetti guardo se ne ho nella dispensa; se non ne trovo lì allora devo andare dal panettiere sotto casa perdendo un po’ di tempo in più; se non ne trovo neanche lì devo andare al supermercato, dove perderò ancora più tempo. Analogamente: Quando il processore ha bisogno di un dato, prima guarda se è presente nella memoria veloce cache; se non lo trova lì lo va cercare nella memoria centrale un po’ più lenta , se non c’è neanche lì, lo va a cercare sul disco fisso che ha tempi di accesso e trasferimento superiori. AA 2002/2003 ©Morpurgo,, Zanaboni

55 La memoria -gerarchia I registri del processore (ciascuno di 32 bit )
I livelli di memoria presenti nella configurazione standard di un PC di oggi sono: I registri del processore (ciascuno di 32 bit ) La memoria cache (256 Kbyte) La memoria centrale (128 Mbyte) Il disco fisso (20 Gbyte) I supporti a lettura ottica (CD-ROM) I supporti magnetici (dischetti, zip) AA 2002/2003 ©Morpurgo,, Zanaboni

56 Le memorie volatili Le memorie volatili sono memorie elettroniche, realizzate con la tecnologia dei circuiti integrati (VLSI, very large scale integration) Sono indicate con il termine RAM (Random Access Memory) perché l’accesso ad una cella di memoria richiede un tempo indipendente dalla posizione in cui la cella risiede. La memoria centrale, la cache e i registri del processore sono memorie volatili AA 2002/2003 ©Morpurgo,, Zanaboni

57 Le memorie volatili AA 2002/2003 ©Morpurgo,, Zanaboni

58 Le memorie permanenti Le memorie permanenti si dividono in due classi:
Le memorie di sola lettura (ROM: read only memory), cioè dispositivi il cui contenuto, una volta immagazzinato, è inalterabile. Le memorie di lettura e scrittura, i cui contenuti possono essere letti e anche cambiati nel tempo AA 2002/2003 ©Morpurgo,, Zanaboni

59 Le memorie permanenti Le memorie su supporto magnetico (dischetti, dischi, nastri) Scrittura e lettura Accesso sequenziale e lento Basso costo AA 2002/2003 ©Morpurgo,, Zanaboni

60 Le memorie permanenti Le memorie ottiche (CD-ROM, DVD)
Accesso sequenziale ma veloce Di sola lettura (per il momento) Basso costo AA 2002/2003 ©Morpurgo,, Zanaboni

61 Le memorie permanenti Esiste anche una memoria non volatile realizzata con tecnologia elettronica e di sola lettura: è la ROM, che contiene informazioni di vario tipo che servono per l’esecuzione di particolari funzioni, come l’avvio del computer o la diagnosi del funzionamento delle periferiche. AA 2002/2003 ©Morpurgo,, Zanaboni

62 Memorie: confronti Nota: ns=nanosecondi=10-9 sec. AA 2002/2003
©Morpurgo,, Zanaboni

63 La memoria centrale Quando il computer è spento tutte le informazioni risiedono sul disco fisso. Appena lo si accende tutte le informazioni necessarie al suo funzionamento vengono trasferite dalla ROM e dal disco fisso alla memoria centrale. AA 2002/2003 ©Morpurgo,, Zanaboni

64 La memoria centrale In particolare, il sistema operativo, che a computer spento risiede sul disco fisso, viene copiato nella memoria centrale, e lì ci rimarrà fino a quando verrà spento il computer. Zona riservata al sistema operativo Memoria Centrale Programmi applicativi e dati AA 2002/2003 ©Morpurgo,, Zanaboni

65 La memoria cache La memoria cache è utilizzata come passaggio intermedio tra la memoria centrale e il processore e contiene informazioni che il sistema operativo di volta in volta ritiene più urgenti e utili. AA 2002/2003 ©Morpurgo,, Zanaboni

66 Interfaccia alle periferiche
ROM registro Disco rigido registro processore bus registro Memoria centrale cache Interfaccia alle periferiche AA 2002/2003 ©Morpurgo,, Zanaboni

67 La memoria virtuale Le dimensioni della memoria centrale sono relativamente piccole, e spesso succede che i programmi applicativi o i file di dati abbiano dimensioni superiori allo spazio disponibile nella RAM. Situazioni di questo tipo si verificano soprattutto quando un utente richiede di lavorare con più di una applicazione “contemporaneamente”. AA 2002/2003 ©Morpurgo,, Zanaboni

68 La memoria virtuale Memoria centrale Sistema operativo Disco fisso
Zona riservata al sistema operativo Non c’è spazio ! Applicazione 1 come gestire questa situazione? Applicazione 2 Applicazione 3 Parte di memoria rimasta libera dati usati da Applicazione 1 dati usati da Applicazione 2 File da caricare in memoria centrale AA 2002/2003 ©Morpurgo,, Zanaboni

69 La memoria virtuale In questi casi il sistema operativo dovrebbe impedire l’apertura di nuovi programmi per mancanza di memoria. Una soluzione meno drastica consiste nel permettere al sistema operativo di utilizzare una zona del disco fisso come “espansione” della memoria centrale, e di usarla come deposito temporaneo di alcune informazioni contenute nella memoria centrale. AA 2002/2003 ©Morpurgo,, Zanaboni

70 La memoria virtuale- swapping
La parte di disco fisso dedicata a questa funzione di memoria virtuale è detta area di swap, e non è accessibile da parte dell’utente. Il sistema operativo sceglie quali parti della memoria centrale scaricare temporaneamente nell’area di swap e quali parti dell’area di swap riportare in memoria centrale AA 2002/2003 ©Morpurgo,, Zanaboni

71 La memoria virtuale-swapping
Memoria centrale Sistema operativo Disco fisso Zona riservata al sistema operativo Applicazione 1 Area di swap Applicazione 2 Trasferiti in area di swap Applicazione 3 dati usati da Applicazione 1 dati usati da Applicazione 2 File da caricare in memoria centrale AA 2002/2003 ©Morpurgo,, Zanaboni

72 La memoria virtuale- swapping
Memoria centrale Sistema operativo Disco fisso Zona riservata al sistema operativo Applicazione 1 Area di swap Applicazione 2 File caricato in memoria centrale Applicazione 3 dati usati da Applicazione 1 dati usati da Applicazione 2 AA 2002/2003 ©Morpurgo,, Zanaboni

73 La memoria virtuale- paging
I problemi non sono completamente risolti se si cerca spazio contiguo nella memoria centrale. Ecco un caso tipico non risolto applicando semplicemente lo swapping: AA 2002/2003 ©Morpurgo,, Zanaboni

74 La memoria virtuale- paging
Memoria centrale Sistema operativo Disco fisso Zona riservata al sistema operativo Spazio sufficiente ce ne sarebbe, ma non contiguo Applicazione 1 Applicazione 3 Parte di memoria rimasta libera dati usati da Applicazione 1 File da caricare in memoria centrale AA 2002/2003 ©Morpurgo,, Zanaboni

75 La memoria virtuale- paging
La soluzione consiste nel gestire i file a pagine, permettendo il trasferimento di alcune pagine dalla e nella memoria centrale al posto dei file interi. AA 2002/2003 ©Morpurgo,, Zanaboni

76 La memoria virtuale- paging
Memoria centrale Sistema operativo Disco fisso Zona riservata al sistema operativo Applicazione 1 Applicazione 3- pag 1 Applicazione 3- pag 2 Applicazione 3- pag 3 Parte di memoria rimasta libera dati usati da Applicazione 1 Applicazione 3- pag 4 File da caricare in memoria centrale AA 2002/2003 ©Morpurgo,, Zanaboni

77 La memoria virtuale- paging
Memoria centrale Sistema operativo Disco fisso Zona riservata al sistema operativo Area di swap Applicazione 1 Applicazione 3- pag 1 Pagine del file caricate in pagine di memoria centrale Applicazione 3- pag 2 Applicazione 3- pag 3 dati usati da Applicazione 1 Applicazione 3- pag 4 AA 2002/2003 ©Morpurgo,, Zanaboni

78 La memoria virtuale La combinazione di paginazione e swapping permette un utilizzo ottimizzato della memoria centrale. Il sistema operativo di volta in volta decide quali pagine scaricare dalla memoria centrale all’area di swap e quali portare dall’area di swap in memoria centrale. AA 2002/2003 ©Morpurgo,, Zanaboni

79 La memoria virtuale L’utente può accorgersi di una page fault (cioè del fatto che la pagina richiesta non è presente nella memoria centrale) durante l’utilizzo di una applicazione, perché percepisce un ritardo tra un comando inviato al computer e la risposta Ciò è dovuto al fatto che l’algoritmo di gestione della memoria è abbastanza complesso. AA 2002/2003 ©Morpurgo,, Zanaboni

80 La memoria virtuale Infatti il sistema operativo deve:
scegliere quali pagine trasferire in base all’uso che l’utente ne sta facendo mantenere aggiornate le tabelle che tengono traccia della corrispondenza tra indirizzi logici (cioè la sequenza di pagine di un dato file) e indirizzi fisici (cioè la loro posizione nella memoria fisica) AA 2002/2003 ©Morpurgo,, Zanaboni


Scaricare ppt "Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l’esecuzione dei programmi AA 2002/2003 ©Morpurgo,, Zanaboni."

Presentazioni simili


Annunci Google