how are pages initialized in IA-32 with 512MB physical memory?


I'm currently, studying segmentation and paging of IA-32 system.

but there's one thing i don't understand.

On initialization (of Kernel page Directory,page Entry, pages), what address should pages be mapped up to?

boot information says its size is 512MB, so it detects 512MB of physical memory and it can allocate up to only 130818 pages (4KB pages).

As far as i know, In IA-32, the virtual address starts from 0x80000000 and goes up to 0xFFFFFFFF.

And i think, 0x00000000~0xFFFFFFFF should be all mapped by pages (please, correct me if I'm wrong)

but if i map pages on 512MB size of physical memory, page allocation is not possible anymore (no more than 130813)

is it possible to map all those pages ( 0x00000000 ~ 0xFFFFFFFF )?

summaries of my questions are,

  1. what address should pages be mapped up to in IA-32 with 512MB size of physical memory?

  2. is it possible to map all addresses(0~4GB)?

asked on Stack Overflow May 11, 2021 by HH Kim

0 Answers

Nobody has answered this question yet.

User contributions licensed under CC BY-SA 3.0