Where is LVT when there is less than 4Gio of memory ?
-
- Posts: 17
- Joined: Wed Feb 15, 2017 8:29 am
- Libera.chat IRC: DridriLaBastos
Where is LVT when there is less than 4Gio of memory ?
I am trying to set the APIC but there is something I misunderstand : according to the intel manual, "APIC registers are memory-mapped to a 4-KByte region of the processor’s physical address space with an initial starting address of FEE00000H" but what if I only have 32MB of memory (which is the default setting on bochs)? The address 0xFEE0_000 is not reachable so what's happening? Where the LVT goes when there is less tan 4Gib of memory in the computer ?
- max
- Member
- Posts: 616
- Joined: Mon Mar 05, 2012 11:23 am
- Libera.chat IRC: maxdev
- Location: Germany
- Contact:
Re: Where is LVT when there is less than 4Gio of memory ?
Hey,
the APIC registers are mapped to these physical addresses, so they are accessible on those. When the processor accesses these addresses, it will be read/written to the APIC registers instead of the physically available RAM. In the physical address space there could also be other devices mapped.
After all, you can't be sure that when you have 32MB of memory they will be physically available from 0x00000000 to 0x02000000. It could be mapped in different parts to different locations. See this nice page: http://wiki.osdev.org/Detecting_Memory_(x86)
Greets
the APIC registers are mapped to these physical addresses, so they are accessible on those. When the processor accesses these addresses, it will be read/written to the APIC registers instead of the physically available RAM. In the physical address space there could also be other devices mapped.
After all, you can't be sure that when you have 32MB of memory they will be physically available from 0x00000000 to 0x02000000. It could be mapped in different parts to different locations. See this nice page: http://wiki.osdev.org/Detecting_Memory_(x86)
Greets
-
- Posts: 17
- Joined: Wed Feb 15, 2017 8:29 am
- Libera.chat IRC: DridriLaBastos
Re: Where is LVT when there is less than 4Gio of memory ?
thank you for the quick answer