3 GB di RAM installati e rilevati dal BIOS, Windows Vista a 32 bit visualizza solo 2 GB


9

Sto tentando di installare più RAM su una macchina a 32 bit di Windows Vista che utilizza una scheda madre X6DAL-XG e la quantità di RAM indicata nel BIOS è di 3 GB +, ma Windows segnala solo 2 GB installati. La scheda madre ha 6 alloggiamenti RAM che ho popolato con varie combinazioni di 4 stick da 1 GB e 2 stick da 512 MB, ma non importa come li configuro Windows non vede più di 2 GB. Mi rendo conto ovviamente che Windows a 32 bit ha un limite di 3 GB in memoria, ma ciò non spiega perché segnalerà solo 2 GB quando sono effettivamente installati (attualmente) 5 GB. Dovrei pensare che sarei in grado di vedere almeno 3 GB.

Secondo l' elenco delle specifiche per la scheda madre i requisiti minimi di RAM sono DDR333 / 266mhz installati in coppia. L'ho fatto esattamente e il BIOS non segnala alcun problema al POST.

Configurazione RAM (secondo CPU-Z)

  • Slot n. 1: PQI MD6412ROE - 512mb PC2700 (166mhz)
  • Slot n. 2: PQI MD6412ROE - 512mb PC2700 (166mhz)
  • Slot n. 3: Kingston 128mx72D266C25 - 1024mb PC2100 (133mhz)
  • Slot n. 4: Kingston KVR266X72RC25 / 1024 - 1024mb PC2100 (133mhz)
  • Slot n. 5: Kingston 128mx72D266C25 - 1024mb PC2100 (133mhz)
  • Posto connettore n. 6: Kingston KVR266X72RC25 / 1024 - 1024mb PC2100 (133mhz)

Non sono sicuro se le specifiche di memoria sopra siano in conflitto con questa affermazione nel manuale della scheda madre o meno:

Supporto di memoria

X6DAL-XG supporta fino a 12 GB / 24 GB di memoria ECC DDR333 / 266 (PC2700 / PC2100) registrata. La scheda madre è stata progettata per supportare moduli da 4 GB (PC2100) in ogni slot, ma sono stati testati solo i moduli da 2 GB. Quando si utilizza la memoria ECC DDR333 (PC2700) registrata, è supportata l'installazione di quattro pezzi di memoria a doppio banco o sei pezzi di memoria a banco singolo.

Quindi, sto facendo qualcosa di sbagliato con la RAM che ho adesso o c'è qualche tipo di problema di compatibilità che mi manca?

Grazie!


Alcuni più dettagli

  • Rapporto CPU-Z per la macchina
  • Ho eseguito alcuni test aggiuntivi con questo problema sia in Ubuntu che in Windows Server 2008 e riportano entrambi anche solo 2 GB.
  • Ho provato a giocherellare con la funzione Memory Remap (Abilita / Disabilita) nella configurazione Northbridge della mia scheda madre, ma non ho visto alcun risultato.
  • Oltre all'hardware sopra, ho una scheda video PCI Express da 256 MB e basta per le periferiche. Non credo che il problema sia rappresentato dagli I / O associati alla memoria.
  • Ho rimosso i 2 stick da 512 MB e sono arrivato solo ai 4 stick da 1 GB
  • Ho eseguito il flashing del BIOS della scheda madre all'ultima revisione del produttore

Un altro aggiornamento

Sono riuscito a testare questa configurazione hardware su una copia a 64 bit di Ubuntu e la RAM è stata completamente rilevata a 4 GB installati , ma indipendentemente dalla configurazione RAM non riesco a trovare alcun sistema operativo a 32 bit che legga più di 2 GB. Quindi la domanda rimane: perché un sistema operativo a 64 bit può vedere più di 2 GB di RAM mentre un sistema operativo a 32 bit installato sulla stessa macchina è limitato a 2 GB?


After Thoughts

Apprezzo molto il contributo di tutti, tuttavia non sento ancora che ci sia stata una risposta corretta a questo problema, nonostante tutti i tuoi sforzi. Ho imparato, grazie a @Goyuix, che ho usato una CPU a 64 bit e non me ne sono nemmeno reso conto e quindi ora almeno ho un lavoro accettabile in giro.

Escludendo alcune svolte inaspettate di eventi, sembra che la taglia verrà accreditata automaticamente su @Mark Booth a causa della scadenza della taglia, che non mi dispiace necessariamente perché la sua risposta è buona ; semplicemente non è la soluzione a questo particolare problema. (Assolutamente senza offesa, Mark, apprezzo molto la tua risposta di alta qualità!)

In ogni caso, la discussione generata da questa domanda è stata estremamente istruttiva per me (e dovrebbe fungere da ottimo materiale di riferimento per i futuri ricercatori). Il problema originale è stato mitigato con successo mediante l'uso di un sistema operativo a 64 bit, ma non è stato ancora risolto . Sfortunatamente (per me), non sarò mai veramente contento fino a quando non riuscirò a individuare il problema esatto, quindi se in futuro qualcuno riuscirà a pensare a una soluzione che non è stata menzionata, per favore, per favore, pubblicala.

Grazie a tutti.


Se avessi a disposizione Windows 7, mi piacerebbe assolutamente vedere come funziona questa patch: superuser.com/questions/67444/…
Breakthrough

Inoltre, cosa succede quando si rimuovono i due bastoncini da 512 MB?
Sfondamento

@Breakthrough Ho provato a rimuovere i bastoncini da 512 MB ma non sembrava fare alcuna differenza. Ho provato ogni possibile combinazione di accoppiamento dello stesso modello possibile con i 6 stick di RAM che ho a disposizione.
Nathan Taylor,

Controllare il registro eventi di sistema eseguendo eventvwr.msc e cercando i messaggi correlati.
Mark Allen,

@Mark Non è isolato solo da Windows - si verifica anche in Ubuntu. Il registro eventi non ha alcuna indicazione di un problema hardware.
Nathan Taylor,

Risposte:


3

Dato che hai menzionato in un commento che Server 2008 riporta solo 2 GB, allora qualcosa non va nella configurazione.

  1. Cosa segnala il BIOS per la RAM installata? Vede 4 GB?
  2. Secondo il manuale:
    • Memory Remap deve essere abilitato
    • Il mirroring della memoria deve essere disabilitato
  3. Come sono installati i tuoi moduli? Il manuale specifica che devono essere installati in coppia e che gli slot accoppiati sono adiacenti l'uno all'altro. Secondo il tuo post, sembra che tu non abbia il tuo ram accoppiato installato negli slot adiacenti. Verificare l'installazione fisica dei moduli rispetto al manuale della scheda madre / stampa della scheda madre.
  4. Hai provato ogni coppia di moduli da 1 GB singolarmente?
    • In tal caso, testare ogni coppia con Memtest86 + per assicurarsi che ogni coppia funzioni correttamente.
    • Se ogni coppia esegue il checkout, prova a modificare l'ordine in cui sono installati.

Il BIOS riporta 4 GB, così come CPU-Z. La rimappatura della memoria è abilitata e il mirroring disabilitato. Gli darò un altro colpo, ma mentre ricordo di aver accoppiato la RAM in modo diverso rispetto a quello attuale, il BIOS non lo riconosce. Proverò memtest sulle singole coppie e vedrò cosa succede.
Nathan Taylor,

Qualche parola sul testare le singole coppie?
Afrazier,

Come è stato accettato questo? Non l'ho scelto, il che significa che la risposta con il voto più alto dovrebbe accettarlo, no?
Nathan Taylor,

"La risposta più votata creata dopo l'inizio della taglia con almeno 2 voti verrà automaticamente accettata." (enfasi mia) Detto questo, hai ancora un problema se il Server 2008 a 32 bit non vede tutti i 4 GB. Se questo è un server di produzione, è qualcosa che dovresti davvero risolvere.
Afrazier

9

Considerando le prove fornite sopra, le due cose più probabili da considerare sono:

  • L'hardware mappato in memoria limita la memoria disponibile per un sistema operativo a 32 bit.

  • Windows sta limitando artificialmente la memoria disponibile per il sistema operativo.

Limitazione hardware

Con un sistema operativo a 32 bit, hai 4 GB di spazio indirizzo. Qualsiasi periferica con IO mappato in memoria (porte IO, schede di rete, schede grafiche, altre schede madri o schede aggiuntive) occuperà una parte (di solito piuttosto piccola) di quello spazio di indirizzi. Qualsiasi memoria utilizzata per l'IO mappato in memoria non può essere utilizzata per la memoria principale.

I peggiori porci dell'IO mappato in memoria sono le schede grafiche. Se hai due schede grafiche, ognuna con 1 GB o memoria, verranno utilizzati 2 GB di spazio indirizzo, lasciandoti solo 2 GB di memoria principale, indipendentemente dalla quantità di memoria fisica installata.

Questo non è un problema su una macchina con un sistema operativo a 64 bit, poiché quei 2 GB possono essere mappati ben lontano dalla memoria principale, ma su un sistema operativo a 32 bit, sei limitato a 4 GB in totale (senza usare trucchi che Microsoft ha disabilitato nel loro non server a 32 bit OS).

Limitazione artificiale

L'altra opzione è che alcuni hardware o software impostano una restrizione sulla quantità di memoria disponibile per Windows quando è stata installata e che il limite artificiale è ancora in vigore, anche dopo aver installato più memoria.

Non l'ho mai fatto con Vista, ma con XP avresti eseguito msconfig e guardato le "Opzioni avanzate" nella scheda "BOOT.INI". Se è stato impostato "/ MAXMEM", XP ignorava tutta la memoria sopra di essa.

Cercando sul web, sembra che tu usi bcdedit sotto Vista. Una bella descrizione di come usarlo può essere trovata qui . Tuttavia, come sempre, assicurati di aver capito cosa stai facendo prima di fare confusione con queste cose.

Altre possibilità, specifiche per i sistemi server / workstation

Guardando il manuale X6DAL-XG , mi chiedo se il "Mirroring della memoria e risparmio" sia abilitato nel BIOS:

Selezionare Abilitato per abilitare Memory RAS (-Mirroring and Sparing) per consentire al sistema di creare una copia mirror dei dati scritti nella memoria per la sicurezza dei dati. Le opzioni sono Disabilitate e Abilitate.

Immagino che in modalità mirroring della memoria vengano utilizzati solo 4 banchi, il che spiegherebbe perché la rimozione dei dimmer da 512 MB non ha fatto alcuna differenza per la memoria visibile a Windows.


1
Attualmente sto eseguendo una GeForce 7800GTX con 256 MB di memoria video su quel sistema, quindi non sospetto che si morderebbe molto nella memoria fisica.
Nathan Taylor,

Questa è un'ottima risposta, ma per quanto ne so nessuno di questi è il problema che sto riscontrando in base alla configurazione hardware e al fatto che il problema si estende anche ad altri sistemi operativi.
Nathan Taylor,

Sulla base della mia scoperta che la RAM è completamente rilevata su un sistema operativo a 64 bit, penso che sia sicuro dire che questa risposta non è pertinente. Grazie lo stesso però!
Nathan Taylor,

dato che vedi tutta la RAM sul sistema operativo a 64 bit, suggerirei che questa risposta sia molto pertinente
HorusKol

@Mark Al momento ho Memory Mirroring e Sparing impostati sul valore predefinito di "Disabilitato".
Nathan Taylor,

2

Pur non risolvendo completamente il tuo problema, può essere d'aiuto nella diagnosi - Hai provato a eseguire un cd live di Linux come Ubuntu ? Idealmente dovresti provare ad avviare sia una versione a 32 bit che a 64 bit: il 64 bit dovrebbe vedere la RAM aggiuntiva senza problemi e se ne vede solo due, avrai quasi sicuramente un problema relativo all'hardware. Se il Linux a 32 bit vede anche solo 2 GB di RAM, allora, come affermato da Mark Booth , probabilmente gli I / O mappati in memoria occupano il resto.

Le schede video tendono ad essere i peggiori trasgressori nel consumare la RAM disponibile, non ti capita di avere due schede da 1 GB installate, vero?

Rimappatura della memoria

Molti BIOS moderni avranno un'opzione per rimappare lo spazio di memoria per evitare problemi MMIO, anche se questo funziona solo per sistemi operativi a 64 bit o sistemi abilitati PAE. Controlla il BIOS per questa impostazione.

http://support.microsoft.com/kb/929605


Il sistema sta attualmente eseguendo un singolo 7800 GTX (256 MB), quindi non sospetto che sia la causa del problema
Nathan Taylor,

@Nathan - hai provato uno dei sapori di Linux? Nota anche: Indipendentemente dalla quantità di RAM installata e visibile, un singolo processo non sarà mai in grado di utilizzare più di 2 GB in un sistema operativo Windows desktop a 32 bit. Dove vedi i 2GB segnalati? Il BIOS? Le proprietà del sistema? Cosa succede se si tirano le due levette da 512 MB?
Goyuix,

@Goyuix Avevo l'impressione che Windows a 32 bit potesse indirizzare fino a 3 GB, anche se allocare solo 2 GB ai processi. Il BIOS segnala 4 GB di RAM mentre il sistema operativo segnala solo 2 GB. Non ho provato Linux, tuttavia ho provato a cambiare le levette in giro inclusa la rimozione dei moduli DIMM da 512 MB.
Nathan Taylor,

@Nathan in teoria Win32 può indirizzare tutti i 4 GB di memoria, il problema è che l'architettura x86 utilizza I / O mappati in memoria per molti dispositivi - in genere il più grande offensore sono le schede video a causa delle loro grandi dimensioni di memoria. Una scheda da 512 MB ridurrà la RAM massima indirizzabile totale a 3,5 GB. Inserisci due schede video da 1 GB in un computer e Win32 non può nemmeno vedere più di 2 GB di RAM in totale. Anche altri dispositivi utilizzano I / O mappati in memoria, sebbene in genere il loro intervallo di indirizzi sia al massimo di pochi megabyte e passi in gran parte inosservato.
Goyuix,

1
@Nathan: non è solo la scheda video. Il chipset di sistema, il componente aggiuntivo e i dispositivi integrati e la configurazione del BIOS entrano in gioco, perché molte cose usano MMIO. Inoltre, i client Windows a 32 bit possono utilizzare solo indirizzi di memoria fino a 4 GiB. Server 2003 Std a 32 bit può indirizzare fino a 4 GiB di RAM, indipendentemente dagli indirizzi in uso. Enterprise & DataCenter può indirizzare molto, molto di più. L'intero "limite di Windows 4 GiB a 32 bit" è una limitazione delle licenze, niente di più. La quantità di spazio di indirizzi virtuale disponibile per un singolo processo è un problema completamente separato.
Afrazier

1

Se tutti i sistemi operativi segnalano 2 GB, probabilmente il problema riguarda la scheda madre.

Non mi piace il fatto che tu stia utilizzando due schede di memoria diverse, anche se sono installate in coppia.
Suggerirei di utilizzare solo un tipo di scheda di memoria.

Secondo ramshopping.com , solo le schede KVR sono consigliate per la scheda madre.
Vorrei provare a estrarre le altre due carte e vedere se la macchina si avvia ancora con 2 GB.
Se sì, sostituirei le due carte non funzionanti con carte identiche a quelle che funzionano.


1
Sebbene questa sia una possibilità, non credo che sia il problema perché ho provato 4 diversi tipi di RAM che erano tutti stick da 1 GB e di tutti loro, i 4 che ho installato ora sono gli unici 4 che sono stati completamente rilevati dal BIOS.
Nathan Taylor,

@Nathan Taylor: Ma hai usato 4 stick identici?
harrymc,

No, solo i 4 bastoncini che vedi sopra.
Nathan Taylor,

@Nathan Taylor: Questo è quello che volevo dire - usando 4 stick dello stesso tipo.
harrymc,

Sta usando 4 Kingston- 2 KVR, 2 128mx- come è stato per un po 'di tempo ..
Nathan Taylor,

0

Non so se questo risolverà il problema, ma non sembra che tu stia accoppiando correttamente i tuoi moduli RAM. Secondo la pagina delle specifiche, le coppie devono essere inserite una accanto all'altra secondo le coppie blu e nere affiancate.

Il tuo setup che hai elencato sopra non sembra seguire questo. È possibile che questo stia lanciando il sistema operativo cercando di leggere i doppi canali.


0

Dovresti controllare il tuo BIOS. Molti hanno una funzione chiamata "Modalità di installazione del sistema operativo" o un nome simile che limita la quantità di RAM che può vedere il sistema operativo. Ciò era necessario perché alcuni programmi di installazione del sistema operativo non sarebbero riusciti se fosse disponibile troppa memoria. La disattivazione dovrebbe risolversi.


Mi sono guardato intorno nel BIOS e anche nel manuale, ma non vedo alcuna opzione simile a questa.
Nathan Taylor,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.