MODELLI DI MEMORIA






Per modello di memoria intendiamo il modo in cui la CPU usa la memoria allo scopo di rendere più efficiente la esecuzione dei programmi e l'allocazione dei dati.
Esistono 5 modelli di memoria:

Il modello flat

Il modello piatto è stato utilizzato dai processori delle prime generazioni (Z80 Zilog, 8085 Intel,6800 Motorola) e su di esso si basava il funzionamento dei rudimentali sistemi operativi degli home computer" anni 80.
In questo modello il processore vede la memoria come un unico blocco di locazioni. Un programma viene eseguito secondo le seguenti fasi: L'indirizzo fisico della prima istruzione viene scritto in uno speciale registro della CPU chiamato IP (Istruction Pointer) o PC (Program Counter).



Per eseguire l'istruzione, la CPU: Per eseguire le successive istruzioni, la CPU: Per es. (vedi figura sotto) dopo l'esecuzione di istr1


la CPU incrementa IP di 3 ( 00A560C3) ed esegue l'istruzione istr2. Successivamente incrementa IP di 2 edesegue l'istruzione istr3



Modello segmentato real mode

Il modello segmentato  è stato adottato dai microprocessori come l'8088/88 della Intel o il 68000 della Motorola, e su di esso si basa il sistema operativo DOS.  Questi processori avevano un bus indirizzi di 20 bit. per cui su Pentium vengono utilizzati solo i primi 20 bit del campo indirizzi a 32 bit.

Ecco le caratteristiche del modello:



Quindi possiamo concludere che nel modello segmentato real mode una locazione di memoria viene individuata da due numeri: l'indirizzo base che dà il segmento a cui appartiene e l'offset che la individua all'interno del segmento. 
Questi due numeri costituiscono l'indirizzo logico della locazione.

Per accedere ad una locazione di memoria, il processore deve fare la conversione da indirizzo logico a fisico,  perchè può accedere alla locazione solo attraverso il bus indirizzi (20 bit). La procedura di conversione consiste in

Programma e dati vengono caricati in due segmenti distinti chiamati segmento codice e segmento dati.