Timeline
Chat
Prospettiva
Upper Memory Area
Da Wikipedia, l'enciclopedia libera
Remove ads
Nella gestione della memoria nei sistemi DOS, l'area di memoria superiore (in inglese upper memory area, UMA) è la memoria situata tra gli indirizzi di 640 KB e 1024 KB (0xA0000–0xFFFFF) in un PC compatibile IBM.

Questa memoria superiore, comprensiva di 384 kilobyte dedicati al sistema operativo, era raramente utilizzata totalmente, così il gestore della memoria rendeva disponibili le aree inutilizzate che si aggiungevano alla memoria convenzionale (i primi 640 KB). Queste aree sono dette blocchi di memoria superiore.[1]
Remove ads
Spazio di memoria riservato
La IBM riservò la regione superiore della memoria del PC, sopra la memoria convenzionale, per la ROM e per la RAM per l'I/O delle periferiche.[2] Questa regione è chiamata UMA e si colloca tra i 640 kB e il 1 MB, limite massimo indirizzabile per il processore Intel 8088. Ad esempio, l'area per il video monocromo è compresa tra gli indirizzi 0xB0000 e 0xB7FFF.
Alcuni spazi di questi 384 kB rimanevano inutilizzati. A parte lo spazio per le ROM a 0xC0000 e quello per il BIOS a 0xF0000, nella maggior parte dei PC lo spazio tra C800 e EFFF era libero. Già usati in precedenza per l'accesso alla memoria espansa, gli spazi inutilizzati vennero detti Upper memory blocks (UMB). Con il diffondersi dei processori Intel 80386, vennero sviluppati appositi gestori che utilizzavano le funzioni di MMU del processore per rendere visibili negli UMB delle porzioni di memoria estesa. Questi programmi, in particolare EMM386 che era distribuito assieme al sistema operativo, permettevano di spostare dati dalla memoria convenzionale agli UMB, e si rivelarono preziosi quando la memoria convenzionale iniziò ad essere insufficiente per i programmi dell'epoca.
Remove ads
DR-DOS
Con la versione 5.0 di DR-DOS, uscita nel 1990, fu disponibile il gestore di memoria espansa, EMM386, che compieva la maggior parte delle operazioni di QEMM.
Il kernel di DR-DOS e i suoi componenti potevano essere allocati nella memoria superiore, lasciando virtualmente tutta la memoria convenzionale libera, dai 620 ai 640 KB.
La configurazione non era automatica, i blocchi UMB liberi dovevano essere identificati a mano, EMM386 doveva essere scritto nel file CONFIG.SYS, e bisognava scegliere i driver da caricare nella memoria alta.
Remove ads
MS DOS
Questa funzionalità fu copiata dalla Microsoft con la versione 5.0 di MS-DOS 5.0, pubblicata a giugno del 1991.
Nei primi anni 1990, l'ottimizzazione manuale della memoria del DOS richiedeva conoscenze alte. La tecnica era quella di creare più blocchi UMB possibili e quindi identificare quali componenti DOS caricare in questi UMB.
Multitasking
Con l'uso di un multitasker DOS, come il Quarterdeck DESQview, potevano essere lanciate più sessioni, ognuna con 600 KB di memoria libera.[senza fonte]
Windows
La popolarità di Windows 3.0 rese questo problema[non chiaro] irrilevante, visto che le applicazioni Windows non soffrivano dei limiti di memoria DOS.[senza fonte]
Memoria superiore e RAM nascosta
Su molti sistemi, compresi quelli più moderni, è possibile utilizzare la memoria riservata per la ROM nascosta[non chiaro] come memoria superiore. Molti chipset si riservano 384 KB di RAM a questo scopo.
Memoria superiore sui IBM XT
Sui computer IBM XT era possibile aggiungere memoria alla scheda madre e utilizzare una PROM per farla vedere come ulteriore upper memory area .
Note
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads