hmm interessant tråd. Utroligt at så mange kloge folk kan tage så meget fejl.
Screem_brille har altså helt ret her, og resten må jo være grundlæggende uvidende om processorens tilstande: real mode, protected mode og long mode.
Den forsimplede historie: Når en processor, uanset om den er 32 eller 64 bit, kører i protected mode er den i stand til at adressere et input/output område på 32 bit. Hvis samtlige 32 bit benyttes til at adressere adresser i RAM vil den lige akkurat være i stand til at adressere 4GB RAM.
Men i vore dage har processoren jo behov for at hente information andre steder end blot i RAM. Det ville eksempelvis være trist hvis indholdet af RAM på ens PCI-E grafikkort skulle skubbes til systemets RAM før det kan komme til processoren.
Derfor er der i 32 bit arkitektur (protected mode) afsat I/O adresser svarende til ca 750MB RAM til PCI-E bussen. - Hvis man ikke har en PCI-E bus på sin maskine vil der af gode grunde ikke blive tilsidesat I/O adresser til det.
Løsningen: Kør et operativsystem som skifter processoren til long mode. Bedre kendt som et 64 bit operativsystem. I long mode har processoren 64 bit I/O adressering at gøre med. Dette ville være en ordentlig mængde RAM i teorien, men i praksis indtil videre begrænset til 128GB.
Egentlig har jeg deltaget i denne diskussion før i Microsofts newsgroups. Kan vel egentlig bare gentage min posting:
Well, in a little more detail then:
From address 0xFEC00000 and above there is approximately 20MB set aside
for Motherboard Resources (APIC), and Flash memory controllers.
Below that you have the so called PCI memory range. It contains:
Memory Mapped I/O, PCI/PCI-Express Configuration Space, Additional PCI
Device Memory, chipset resources, Direct Media Interface (DMI) and ICH
ranges.
The size of this area can vary depending on how many hardware devices
are in the system, but usually it is approximately 750MB.
It is important to note that these addresses are used regardless of the
amount of memory installed. The system resources do not actually use
memory, just the addresses. Once the addresses are used for hardware
resources, they are no longer available for memory. Memory that cannot
be addressed will go unused.
Systems with 3.0GB or less are not affected simply because the installed
memory doesn't use these upper addresses. Note that system resources use
the highest addresses and fill down from the top. Any remaining
addresses may be allocated to memory.
Immediately below the PCI memory range is the DRAM range, and this is
what is what can be addressed by the CPU and operating system. A little
chunk of that is the famous 640kb for DOS compatibility. I believe the
memory for video aperture is also taken here in the DRAM range, although
I am unsure.
So all in all, I believe there is not much you can adjust in the BIOS to
make it give back the address space. It would not be dramatic amounts
anyway. However, the amount of RAM available will certainly vary from PC
to PC because of the different hardware configurations, BIOS
technologies and chipsets.
Dell btw put up a support article about it:
http://support.dell.com/support/topics/global.aspx/support/dsn/en/document?docid=9311982C2A2A4B7EAEDB0B57ADD0422B&c=us&l=en&s=genHvis nogle skulle have lyst til at så tvivl om ovenstående, så gør det venligst på lødig teknisk vis med dokumentation, og ikke med løse anekdokter som ingen kan checke alligevel.