looking for some E820 result with more than 4G memory

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
User avatar
lemonyii
Member
Member
Posts: 153
Joined: Thu Mar 25, 2010 11:28 pm
Location: China

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

Post by lemonyii »

spent 8 hours compiling bochs-2.5 and qemu-1.0 but got nothing. i tried to download binaries, but they just don't fit my requirements. bochs normally have no smp support and qemu on win just do not work.

for bochs, i tried to compile it in fedora but failed to configure it to generate windows binaries, and vs2008 showed me a lot of unsolved symbol.
for qemu, much too long it takes to build and i didn't make any change to it so i don't think it will generate the windows binaries i want and it's now 3'o clock in the morning and i have to sleep.

how do u guys do this? i'll really appreciate it if u have experience generating win binaries of them on linux.
thank you!
Enjoy my life!------A fish with a tattooed retina
User avatar
xenos
Member
Member
Posts: 1121
Joined: Thu Aug 11, 2005 11:00 pm
Libera.chat IRC: xenos1984
Location: Tartu, Estonia
Contact:

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

Post by xenos »

Actually I never tried to cross-compile Bochs Windows binaries on Linux... A few years ago I compiled Bochs using CygWin + GCC, but since I don't use Windows anymore, I cannot provide any support for this. Currently I'm using Ubuntu 10.04 both to compile and run Bochs.
Programmers' Hardware Database // GitHub user: xenos1984; OS project: NOS
User avatar
lemonyii
Member
Member
Posts: 153
Joined: Thu Mar 25, 2010 11:28 pm
Location: China

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

Post by lemonyii »

3 more hours, bochs compiled in vs 2008! :twisted:
but i'm just too tired and qemu will be compiled several days later.
it is advised to start a thread presenting newest often-used tools
Enjoy my life!------A fish with a tattooed retina
User avatar
AJ
Member
Member
Posts: 2646
Joined: Sun Oct 22, 2006 7:01 am
Location: Devon, UK
Contact:

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

Post by AJ »

Hi,

3 Hours to compile Bochs? Time for an upgrade!

Cheers,
Adam
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

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

Post by turdus »

Unfortunately dmesg is rotated, so I can serve with /proc/iomem only (based on E820 too). It's a 32G RAM machine.

Code: Select all

00010000-0009dbff : System RAM
0009dc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d4000-000da3ff : Adapter ROM
000f0000-000fffff : System ROM
00100000-7d7f3fff : System RAM
7d7f4000-7f803fff : reserved
7f804000-7f862fff : ACPI Non-volatile Storage
7f863000-7f86dfff : ACPI Tables
7f86e000-7f888fff : reserved
7f889000-7f889fff : ACPI Non-volatile Storage
7f88a000-7f89afff : reserved
7f89b000-7f89dfff : ACPI Non-volatile Storage
7f89e000-7f918fff : reserved
7f919000-7f930fff : ACPI Non-volatile Storage
7f931000-7f955fff : reserved
7f956000-7fb58fff : ACPI Non-volatile Storage
7fb59000-7fdfffff : System RAM
e0000000-efffffff : reserved
f4000000-f7ffffff : PCI Bus #02
f8000000-fbffffff : PCI Bus #01
fc000000-fc8fffff : PCI Bus #06
fc900000-fc9fffff : PCI Bus #05
fca00000-fcafffff : PCI Bus #04
fcb00000-fcbfffff : PCI Bus #03
fcc00000-fcc00fff : 0000:00:14.5
fcc01000-fcc010ff : 0000:00:13.2
fcc02000-fcc02fff : 0000:00:13.1
fcc03000-fcc03fff : 0000:00:13.0
fcc04000-fcc040ff : 0000:00:12.2
fcc05000-fcc05fff : 0000:00:12.1
fcc06000-fcc06fff : 0000:00:12.0
fcc07000-fcc073ff : 0000:00:11.0
fec00000-fec00fff : reserved
fec10000-fec10fff : reserved
fec20000-fec20fff : reserved
fed00000-fed00fff : reserved
fed40000-fed44fff : reserved
ffc00000-ffffffff : reserved
100001000-87fffffff : System RAM
User avatar
lemonyii
Member
Member
Posts: 153
Joined: Thu Mar 25, 2010 11:28 pm
Location: China

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

Post by lemonyii »

AJ wrote:3 Hours to compile Bochs? Time for an upgrade!
3 more, about 10 in total.
turdus wrote:Unfortunately dmesg is rotated, so I can serve with /proc/iomem only (based on E820 too). It's a 32G RAM machine.
:shock: 32G :shock: are u kidding me?
nice map, i'll check it out.
thank you!
Enjoy my life!------A fish with a tattooed retina
User avatar
xenos
Member
Member
Posts: 1121
Joined: Thu Aug 11, 2005 11:00 pm
Libera.chat IRC: xenos1984
Location: Tartu, Estonia
Contact:

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

Post by xenos »

Here's what dmesg tells me about my 4GB Asus M60J:

Code: Select all

[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009bc00 (usable)
[    0.000000]  BIOS-e820: 000000000009bc00 - 00000000000a0000 (reserved)
[    0.000000]  BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
[    0.000000]  BIOS-e820: 0000000000100000 - 00000000bec9e000 (usable)
[    0.000000]  BIOS-e820: 00000000bec9e000 - 00000000bece4000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bece4000 - 00000000becf5000 (reserved)
[    0.000000]  BIOS-e820: 00000000becf5000 - 00000000bed07000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed07000 - 00000000bed0d000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed0d000 - 00000000bed15000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed15000 - 00000000bed1a000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed1a000 - 00000000bed1b000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed1b000 - 00000000bed33000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed33000 - 00000000bed36000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed36000 - 00000000bed38000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed38000 - 00000000bed39000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed39000 - 00000000bed3c000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed3c000 - 00000000bed3f000 (ACPI data)
[    0.000000]  BIOS-e820: 00000000bed3f000 - 00000000bed44000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed44000 - 00000000bed53000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed53000 - 00000000bed75000 (reserved)
[    0.000000]  BIOS-e820: 00000000bed75000 - 00000000bed76000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000bed76000 - 00000000bf800000 (reserved)
[    0.000000]  BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
[    0.000000]  BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
[    0.000000]  BIOS-e820: 00000000fed1b000 - 00000000fed20000 (reserved)
[    0.000000]  BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
[    0.000000]  BIOS-e820: 00000000ffa00000 - 00000000ffc00000 (reserved)
[    0.000000]  BIOS-e820: 00000000ffe00000 - 0000000100000000 (reserved)
[    0.000000]  BIOS-e820: 0000000100000000 - 0000000140000000 (usable)
Just out of curiosity, I checked one of my computing cluster nodes at work (32GB RAM):

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 - 00000000cffbcdc0 (usable)
[    0.000000]  BIOS-e820: 00000000cffbcdc0 - 00000000cffd0000 (ACPI data)
[    0.000000]  BIOS-e820: 00000000cffd0000 - 00000000d0000000 (reserved)
[    0.000000]  BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
[    0.000000]  BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
[    0.000000]  BIOS-e820: 0000000100000000 - 0000000830000000 (usable)
Programmers' Hardware Database // GitHub user: xenos1984; OS project: NOS
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

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

Post by turdus »

This is your lucky day. I had to reboot a machine with 64G RAM, so here's the E820 part of dmesg:

Code: Select all

BIOS-provided physical RAM map:
 BIOS-e820: 0000000000010000 - 0000000000098c00 (usable)
 BIOS-e820: 0000000000098c00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e6000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000dffa0000 (usable)
 BIOS-e820: 00000000dffae000 - 00000000dffb0000 type 9
 BIOS-e820: 00000000dffb0000 - 00000000dffbe000 (ACPI data)
 BIOS-e820: 00000000dffbe000 - 00000000dfff0000 (ACPI NVS)
 BIOS-e820: 00000000dfff0000 - 00000000dfffe000 (reserved)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000ff700000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 0000001020000000 (usable)
Wonder what type 9 could be? iomem lists it as simply reserved.

Edit: found in ACPI spec 4.0a
9 EfiACPIReclainMemory
The memory is to be preserved by the loader and OS until ACPI in enabled. Once ACPI is enabled, the memory in this range is available for general use.
AddressRangeACPI
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

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

Post by Brendan »

Hi,
turdus wrote:Wonder what type 9 could be? iomem lists it as simply reserved.

Edit: found in ACPI spec 4.0a
9 EfiACPIReclainMemory
The memory is to be preserved by the loader and OS until ACPI in enabled. Once ACPI is enabled, the memory in this range is available for general use.
AddressRangeACPI
Looks like the UEFI support in Linux is dodgy:
  • Convert UEFI's memory map into something that looks like what you would've got from "int 0x15, eax=0xE820" (which makes sense);
  • but fail to convert "UEFI type 9" into "BIOS type 3",
  • then fail to reclaim the area,
  • then misreport the memory map as "BIOS-provided" and "BIOS-e820".
:D


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Post Reply