Limiti di memoria 3.1 di Windows

3.10 3.11
WINDOWS
kbusage

Riepilogo

In questo articolo fornisce una breve descrizione e una panoramica dell'allocazione di memoria e i limiti di Microsoft Windows versione 3.1. In questo articolo non deve essere una spiegazione esauriente del soggetto; deve essere solo una panoramica.


Queste informazioni riguardano Microsoft Windows versione 3.1 e potrebbero non essere applicabile alle future versioni di Windows.

Ulteriori informazioni

Microsoft Windows versione 3.1, in modalità standard e 386 avanzata, alloca la memoria utilizzata dal driver XMS. L'unica eccezione si verifica quando si esegue Windows in modalità standard poiché modalità standard di Windows è possibile allocare la memoria da un provider di interfaccia di programma virtuale controllo (VCPI) (server) o un provider DOS protetto in modalità interfaccia (DPMI). Si noti che la modalità standard dispone di questa funzionalità, ma non modalità 386 avanzata.

Limiti di memoria imposti dai gestori di memoria

Il driver XMS fornito con Windows 3.1 è HIMEM. SYS versione 3.07, ma qualsiasi altro driver XMS conforme alle XMS 2. x o 3. x XMS provider specifiche dovrebbe funzionare anche. HIMEM. I driver XMS SYS 2. x fornito con Windows 3.0 e MS-DOS 5.0 impongono un limite di memoria di 16 MB e non memoria sopra l'indirizzo di bus 16 MB disponibili tramite chiamate memoria XMS.


Se Windows 3.1 viene eseguito con un precedente HIMEM. Driver XMS SYS di Windows 3.0 o MS-DOS 5.0, Windows 3.1 non può utilizzare memoria superiore a 16 MB. È necessario aggiornare il driver XMS al nuovo uno fornito con Windows 3.1 per eliminare questa barriera di 16 MB.

Windows 3.0 non supporta la memoria oltre il limite di 16 MB in modalità standard e avanzato e si basa sul driver XMS per applicare questo limite. Questo limite di 16 MB non si applica a Windows 3.1.

Limiti di memoria imposti da Windows 3.1

Il limite di memoria per Windows 3.1 è stato segnalato come 512 MB. Questo limite, anche se tecnicamente corretta, è necessario la qualificazione di alcuni. Questo limite si applica solo a Windows in esecuzione in modalità standard. Il limite per la modalità 386 avanzata è 256 MB. Questo numero rappresenta la somma di memoria fisica e memoria virtuale. Il limite di 512 MB dichiarato modalità standard di Windows è solo teoria e non è pratico. In pratica, il limite in modalità standard di Windows è lo stesso come limite della modalità avanzata 386 di 256 MB. Queste informazioni non si applicano ai computer con processore 80286. Questo processore è fisicamente limitato all'accesso solo a 16 MB.


Windows 3.1 non utilizza le funzionalità complete di XMS 3.0 di un driver XMS 3.0. Questo non inserire alcun limite sulla capacità di Windows per allocare memoria XMS. Funzionalità aggiuntive solo fornita da un gestore di memoria XMS 3.0 è la possibilità di allocare e gestire un blocco di memoria XMS singolo maggiori di 64 MB. Questo impone un limite di 64 MB sui sistemi operativi o applicazioni che utilizzano XMS 2. x chiamate per allocare la memoria di un driver XMS 3.0. Il risultato è un allocatore di 2. x XMS deve allocare più blocchi di memoria XMS, ciascuno non superiore a 64 MB, di accedere a tutta la memoria su un computer con più di 64 MB di memoria. Windows esegue questa operazione in modalità avanzata 386 e standard.


Il motivo per che il limite di 512 MB per la modalità standard non è pratico può essere spiegato meglio osservando il numero effettivamente da cui proviene. Nelle CPU 286 e 386 è un oggetto di sistema è denominato tabella descrittori locali (LDT). Questa struttura di dati viene utilizzata per impostare l'indirizzamento di quasi tutta la memoria utilizzabile Windows nel sistema. In questa tabella è disponibile spazio per 8096 descrittori. Ognuno di questi descrittori, a sua volta, può indirizzare fino a 64 KB di memoria. Il valore di 512 MB è determinato moltiplicando le dimensioni del numero di descrittori possibili per ogni dimensione massima di descrittori.

8096 k * 64 K = 512 MB
Per raggiungere i 512 MB, deve essere di dimensioni massime di 64 KB ogni descrittore nel LDT. In un tipico sistema di Windows, la dimensione media descrittore è molto più piccola. La dimensione media del descrittore è probabilmente 32K. Ciò produce un limite dimezzati big: 256 MB.


Il limite di 256 MB di modalità 386 avanzata Windows 3.1 è un limite di memoria fisica totale e memoria virtuale totale. In genere la quantità totale di memoria virtuale è quattro volte superiore all'importo totale di memoria fisica che è possibile accedere a Windows. Poiché entrambi questi elementi sono limitate a 256 MB, è in genere il seguente:

Total Physical      Usual Virtual     Actual Virtual
Memory in MB Memory in MB Memory in MB
-------------- ------------- --------------

4 16 16
8 32 32
16 64 64
32 128 128
64 256 256
128 512 256
256 1024 256

La dimensione effettiva della memoria virtuale rimane da 256 MB, una volta raggiunto 64 MB di memoria fisica totale e mai Ottiene le dimensioni.


Si noti che nel paragrafo precedente, la memoria fisica viene definita come "memoria fisica totale". In questo modo il limite di 256 MB è semplicemente un limite sulla quantità di memoria fisica totale. Questo limite ha nulla a che fare con il percorso del bus della macchina della memoria (indirizzo della memoria). Questa distinzione è importante perché su più computer di "memoria", la memoria fisica non è tutto in un blocco contiguo.


Ciò significa che per Windows 3.1 in esecuzione in modalità standard, il limite per l'indirizzo di memoria fisica utilizzabile massima è 4096 MB; il limite per la modalità 386 avanzata è 2044 MB.
Proprietà

ID articolo: 84388 - Ultima revisione: 30 gen 2017 - Revisione: 1

Feedback