Quando è nato il Dos non si prevedeva l'uso di memoria centrale oltre il singolo mebibyte (1 Mibyte). In base a questa considerazione veniva articolata l'architettura hardware degli elaboratori «XT» e poi «AT», dove si prevedeva l'uso di un massimo di 640 Kibyte di memoria centrale, riservando la parte successiva, fino alla fine di 1 Mibyte, per la memoria video e altri dispositivi fisici.
In questo senso, il Dos tradizionale può operare con un massimo di 640 Kibyte di memoria centrale; per sfruttarne di più occorrono degli accorgimenti non facili da applicare.
Per sfruttare la memoria oltre il primo mebibyte, si fa uso normalmente di due programmi, avviati attraverso CONFIG.SYS
, prima ancora dell'interprete di comandi. Si tratta di HIMEM.SYS e di EMM386.EXE. In generale, le cose si fanno nel modo seguente:
|
Il primo dei due programmi può essere utilizzato a partire da architetture i286, mentre il secondo si può inserire solo a partire da architetture i386.
HIMEM.SYS è in grado di utilizzare solo una piccola parte di memoria aggiuntiva, mentre EMM386.EXE permette teoricamente di sfruttare tutto il resto.
In generale, è molto difficile la gestione ottimale della memoria centrale, perché le applicazioni si comportano in maniera differente. Di solito si possono solo fare dei tentativi.
Per sfruttare la memoria centrale che supera la soglia convenzionale, sono disponibili alcuni comandi specifici. In generale, si comincia dalla configurazione con il file CONFIG.SYS
: dopo l'attivazione dei gestori speciali della memoria, è possibile indicare di collocare parte dell'interprete dei comandi e dello spazio richiesto dai programmi residenti in memoria, oltre il limite della memoria convenzionale:
|
In seguito, sempre nell'ambito del file CONFIG.SYS
, si può richiedere esplicitamente l'avvio di programmi nella memoria alta attraverso la direttiva DEVICEHIGH, come si vede nell'esempio seguente:
|
Per quanto riguarda i programmi avviati attraverso l'interprete dei comandi, è disponibile il comando LH, ovvero LOADHIGH:
LH programma [argomenti_del_programma] |
LOADHIGH programma [argomenti_del_programma] |
Per esempio, si potrebbe tentare di avviare in questo modo il programma di gestione della tastiera:
C:\>
LH KEYB IT
[Invio]
Il Dos offre un solo programma molto semplice per la verifica dell'utilizzo della memoria: MEM.
MEM [opzioni] |
Se MEM viene usato senza opzioni, visualizza brevemente la quantità di memoria utilizzata rispetto al totale disponibile. È interessante l'opzione /CLASSIFY, attraverso la quale è possibile distinguere l'utilizzo della memoria da parte dei programmi residenti; inoltre è interessante l'opzione /FREE, con cui si hanno informazioni dettagliate sulla memoria libera.
Le opzioni disponibili del comando MEM variano molto da una realizzazione all'altra. In generale conviene verificare prima di utilizzarlo, per conoscere le possibilità effettive. |
«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net