Page 1 of 2

looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 9:36 am
by lemonyii
i don't have a computer with more than 4g, nor do my friends. ( i wish to take down theirs and install on mine temporarily, but... you know that's not good :mrgreen: )
so i'll really appreciate that if u post your memory map here.

base len type
0 9f800 1
9f800 800 2
dc000 8000 2
....

thank you!

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 12:33 pm
by Brynet-Inc
Even systems with 4GB of RAM will typically map some of it above 4GB physical, surely you can find one.

From the e802 map in my laptop, there are two such ranges, one being reserved (..likely the GPU).

Type 1 at 0x100000000 for 262144KB.
Type 2 at 0x110000000 for 262144KB.

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 1:35 pm
by AJ
Hi,

While not ideal as an exclusive test, why not simulate this on a variety of emulators? I'm sure at least Bochs and Qemu can simulate more than the amout of RAM present on the host by swapping out?

Cheers,
Adam

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 10:29 pm
by lemonyii
AJ wrote:Hi,

While not ideal as an exclusive test, why not simulate this on a variety of emulators? I'm sure at least Bochs and Qemu can simulate more than the amout of RAM present on the host by swapping out?

Cheers,
Adam
i've got 2G ram, and the largest memory i can have in qemu and bochs are 1381M and 1822M, respectively, as i just tested it.
Brynet-Inc wrote:Even systems with 4GB of RAM will typically map some of it above 4GB physical, surely you can find one.

From the e802 map in my laptop, there are two such ranges, one being reserved (..likely the GPU).

Type 1 at 0x100000000 for 262144KB.
Type 2 at 0x110000000 for 262144KB.
thank you! but my machine never map my sideport video memory above 4G even if i choose "ABOVE 4G" in bios.
and i'm expecting more samples to get a better sense on this.
thank you!

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 10:39 pm
by lemonyii
again i tested my real machine.
it just do not show the sideport. and if i give some UMA to GPU in bios, it just cut out that size at the end of my memory ( disappear, not marked as other type ).
so i think i'll really need some more sample.

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 11:11 pm
by Brendan
Hi,
lemonyii wrote:so i think i'll really need some more sample.
There's 2 more in this old forum topic. :)

[EDIT]
Here's another one, cut & pasted from Linux boot logs on my current machine:

Code: Select all

[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009c000 (usable)
[    0.000000]  BIOS-e820: 000000000009c000 - 00000000000a0000 (reserved)
[    0.000000]  BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
[    0.000000]  BIOS-e820: 0000000000100000 - 000000008c01e000 (usable)
[    0.000000]  BIOS-e820: 000000008c01e000 - 000000008c16e000 (ACPI NVS)
[    0.000000]  BIOS-e820: 000000008c16e000 - 000000008c228000 (ACPI data)
[    0.000000]  BIOS-e820: 000000008c228000 - 000000008d628000 (ACPI NVS)
[    0.000000]  BIOS-e820: 000000008d628000 - 000000008f602000 (ACPI data)
[    0.000000]  BIOS-e820: 000000008f602000 - 000000008f64f000 (reserved)
[    0.000000]  BIOS-e820: 000000008f64f000 - 000000008f71d000 (ACPI data)
[    0.000000]  BIOS-e820: 000000008f71d000 - 000000008f7cf000 (ACPI NVS)
[    0.000000]  BIOS-e820: 000000008f7cf000 - 000000008f800000 (ACPI data)
[    0.000000]  BIOS-e820: 000000008f800000 - 0000000090000000 (reserved)
[    0.000000]  BIOS-e820: 00000000a0000000 - 00000000b0000000 (reserved)
[    0.000000]  BIOS-e820: 00000000fc000000 - 00000000fd000000 (reserved)
[    0.000000]  BIOS-e820: 00000000fed1c000 - 00000000fed20000 (reserved)
[    0.000000]  BIOS-e820: 00000000ff800000 - 0000000100000000 (reserved)
[    0.000000]  BIOS-e820: 0000000100000000 - 0000000370000000 (usable)
[/EDIT]


Cheers,

Brendan

Re: looking for some E820 result with more than 4G memory

Posted: Sun Dec 04, 2011 11:46 pm
by Brynet-Inc
lemonyii wrote:again i tested my real machine.
it just do not show the sideport. and if i give some UMA to GPU in bios, it just cut out that size at the end of my memory ( disappear, not marked as other type ).
so i think i'll really need some more sample.
It is entirely possible that the CPU/chipset combination might not support > 32-bit physical addresses, Intel has x86-64 processors with a 32-bit address bus.. and some early chipsets didn't support the larger address space even if the CPU supported it.

Re: looking for some E820 result with more than 4G memory

Posted: Mon Dec 05, 2011 12:15 am
by lemonyii
much too terrible.
seems that my bootloader will break all of these machines since i assumed that 0-9f000 are available.
and Brendan, how many memory do u have on these machines respectively?
seems i could only assume 512K usable memory now.

Re: looking for some E820 result with more than 4G memory

Posted: Mon Dec 05, 2011 12:19 am
by lemonyii
Brynet-Inc wrote: It is entirely possible that the CPU/chipset combination might not support > 32-bit physical addresses, Intel has x86-64 processors with a 32-bit address bus.. and some early chipsets didn't support the larger address space even if the CPU supported it.
my machine is not that old i think :mrgreen: but the differences between platforms really threatened me, i don't know where i can assume to put my kernel safely.

Re: looking for some E820 result with more than 4G memory

Posted: Mon Dec 05, 2011 12:25 am
by Brendan
Hi,
lemonyii wrote:and Brendan, how many memory do u have on these machines respectively?
The older one (from the other forum post) is 8 GiB. The newer one (above) is 12 GiB.
lemonyii wrote:seems i could only assume 512K usable memory now.
512 KiB of RAM (from 0x00000000 to 0x0007FFFF, or slightly less than that due to BDA) should be plenty of RAM during boot (before you get the memory map, parse it and found out what other RAM you can use to load larger things into).


Cheers,

Brendan

Re: looking for some E820 result with more than 4G memory

Posted: Mon Dec 05, 2011 4:15 am
by xenos
lemonyii wrote:i've got 2G ram, and the largest memory i can have in qemu and bochs are 1381M and 1822M, respectively, as i just tested it.
You can configure Bochs to simulate > 4GB RAM, but using a fewer amount of actual RAM. This is how it looks in my bochsrc file (simulating 8GB, but using only 64MB):

Code: Select all

memory: guest=8192, host=64
And this is what my kernel reports:

Code: Select all

Memory map of length 0x000000a8 at address 0x0002bde8
Mem: 0x0000000000000000-0x000000000009efff, Type: 0x01
Mem: 0x000000000009f000-0x000000000009ffff, Type: 0x02
Mem: 0x00000000000e8000-0x00000000000fffff, Type: 0x02
Mem: 0x0000000000100000-0x00000000bffeffff, Type: 0x01
Mem: 0x00000000bfff0000-0x00000000bfffffff, Type: 0x03
Mem: 0x00000000fffc0000-0x00000000ffffffff, Type: 0x02
Mem: 0x0000000100000000-0x00000001ffffffff, Type: 0x01

Re: looking for some E820 result with more than 4G memory

Posted: Tue Dec 06, 2011 2:42 am
by lemonyii
XenOS wrote: You can configure Bochs to simulate > 4GB RAM, but using a fewer amount of actual RAM. This is how it looks in my bochsrc file (simulating 8GB, but using only 64MB):

Code: Select all

memory: guest=8192, host=64
but... that's what i got:
D:\开发专用\system\sim>"C:\Program Files\bochs\bochs64mp.exe" -q -f cfg/bochsrc.
x8.bxrc
========================================================================
Bochs x86 Emulator 2.4.1.cvs
Build from CVS snapshot, after release 2.4.1
========================================================================
00000000000i[ ] reading configuration from cfg/bochsrc.x8.bxrc
00000000000p[CTRL ] >>PANIC<< numerical parameter 'size' was set to 4100, which
is out of range 1 to 4096
00000000000e[CTRL ] notify called, but no bxevent_callback function is registere
d
========================================================================
Bochs is exiting with the following message:
[CTRL ] numerical parameter 'size' was set to 4100, which is out of range 1 to 4
096
========================================================================
00000000000i[CTRL ] quit_sim called with exit code 1

Bochs is exiting. Press ENTER when you're ready to close this window.
so which version of bochs are u using? P.S. i just tried 4096 is ok but no more.
thank you all so much!

Re: looking for some E820 result with more than 4G memory

Posted: Tue Dec 06, 2011 2:57 am
by Owen
Bochs needs specially configuring at compile time for >32-bit physical addressing

Re: looking for some E820 result with more than 4G memory

Posted: Tue Dec 06, 2011 4:24 am
by Combuster
I see an old bochs as well :wink:

Re: looking for some E820 result with more than 4G memory

Posted: Tue Dec 06, 2011 4:49 am
by xenos
I'm using the latest SVN snapshot (after the 2.5 release).