Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

To do #9: Special cases for pages below and above 4-GiB #9

Closed
vercas opened this issue Apr 29, 2015 · 2 comments
Closed

To do #9: Special cases for pages below and above 4-GiB #9

vercas opened this issue Apr 29, 2015 · 2 comments
Assignees
Milestone

Comments

@vercas
Copy link
Owner

vercas commented Apr 29, 2015

The pages above 4-GiB won't work with hardware that uses 32-bit addresses.
Therefore, it will be useful if generic pages are allocated above 4-GiB if available, to maximize the number of pages usable by such hardware.

On IA-32 with PAE (and AMD64 before switching to long mode), CR3 is 32 bits wide so the relevant table must be located under 4-GiB as well.

I'd rather build this into the generic page allocator because it is a situation that can happen on more than one architecture. Also, it will allow for slightly more compact storage.
I should also move the map and the stack at the end of the allocation space.

@vercas vercas added the todo label Apr 29, 2015
@vercas vercas self-assigned this Apr 29, 2015
@vercas vercas added this to the Balance milestone Apr 29, 2015
@vercas
Copy link
Owner Author

vercas commented May 15, 2015

Note: VMWare seems to place most of the memory after the 4-GiB mark with my settings.
'Tis a rather handy feature.

@vercas
Copy link
Owner Author

vercas commented May 26, 2015

The page allocator currently handles this task, and the general memory allocator will just forward the option.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant