Che cos'è la memoria convenzionale?
La RAM (Random Access Memory) veniva utilizzata in modo abbastanza diverso su macchine PC IBM® e clonava nei giorni precedenti, quando governava DOS, un sistema operativo a riga di comando utilizzato prima di Windows®. I primi 0-640 Kilobyte (KB) di RAM sono stati designati come memoria convenzionale; l'area in cui DOS veniva caricato convenzionalmente all'avvio. Il blocco da 640 KB - 1 Megabyte (MB) costituito da 384 KB era la Upper Memory Area (UMA); i primi 64 KB oltre il limite di 1 MB sono diventati l'Area di memoria alta (HMA o HIMEM) e tutto ciò che è stato designato come memoria estesa.
La memoria convenzionale è stata utilizzata come area di lettura / scrittura per il sistema operativo e per i programmi, adattandosi perfettamente. DOS ha anche caricato routine, driver di sistema e parametri di sistema in questo spazio. Per liberare spazio, alcuni residenti della memoria convenzionale sono stati spostati nella scala RAM verso UMA e HMA. Ciò è stato ottenuto aggiungendo un paio di righe al file CONFIG.SYS, un file che insieme ad AUTOEXEC.BAT ha determinato in larga misura i parametri di caricamento della memoria dei dispositivi software e hardware utilizzati nei sistemi DOS e Windows® precedenti. Alla fine degli anni '80, Quarterdeck Expanded Memory Manager® (QEMM) automatizzava gran parte dell'ottimizzazione richiesta dagli utenti di computer che non erano in grado di farlo manualmente.
Nel 1990, DR DOS 5.0 di Digital Research® ha introdotto una strategia migliore per ottenere il massimo dalla memoria convenzionale, incluso il proprio gestore di memoria estesa incorporato: EMM386.EXE. Questa versione di DOS è stata caricata quasi interamente in memoria elevata, liberando memoria convenzionale per i programmi che potevano essere eseguiti solo lì. Un altro vantaggio di questo sistema operativo è che potrebbe essere acquistato dal pubblico (a partire dalla versione 3.1), mentre MS DOS era disponibile solo in bundle con l'hardware.
Microsoft® ha risposto a Digital Research® con la sua versione 5.0 nel 1991 che ha contrastato i vantaggi di DR DOS 5.0. La competizione è proseguita con DR. DOS 6.0 che includeva il cambio di attività e la compressione del disco, e MS DOS 6.0 lo seguiva in natura. MS DOS 6.22 è stato l'ultimo pacchetto MS DOS disponibile in modo indipendente commercializzato, mentre DR DOS continua ad essere venduto tramite drdos.com.
Con l'avanzare dei sistemi operativi Windows®, i vincoli dell'ottimizzazione della memoria convenzionale sono diventati una memoria distante, fatta eccezione per coloro che hanno continuato a utilizzare i programmi DOS, per necessità o per divertimento. A partire da Windows® 95, è stata integrata una versione ridotta di MS DOS allo scopo di eseguire il bootstrap o la risoluzione dei problemi. Windows® XP mantiene una versione scheletrica di MS DOS 8.0, accessibile solo creando un disco di avvio floppy, così come Vista®. Tutte le versioni di Windows® mantengono una shell o un'interfaccia della riga di comando. Nelle versioni precedenti di Windows® si trattava di COMMAND.EXE, che divenne CMD.EXE nella famiglia Windows-NT®.
A partire da settembre 2006 è diventata disponibile anche una versione open source gratuita di DOS, nota come FreeDOS, sebbene non sia mai stata sviluppata oltre la versione 1.0. Per coloro che usano macchine legacy o eseguono programmi DOS oggi, esistono molte informazioni online per ottimizzare manualmente la memoria convenzionale per ottenere il massimo dai programmi o giochi DOS.