8000 Add a vm allocator · Issue #523 · torokernel/torokernel · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Add a vm allocator #523

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

Open
1 of 6 tasks
MatiasVara opened this issue Apr 12, 2023 · 0 comments
Open
1 of 6 tasks

Add a vm allocator #523

MatiasVara opened this issue Apr 12, 2023 · 0 comments
Assignees
Labels
enhancement feature This label identifies items that need work on. They should go to Backlog.

Comments

@MatiasVara
Copy link
Collaborator
MatiasVara commented Apr 12, 2023

A vm allocator shall enable to create continuous memory regions by relying on paging. Currently, paging is only used to have a flat memory space, i.e., virtual memory and physical memory is mapped 1-to-1. The vma region may be at a high address region. The page directory is shared among all cores. It is set during booting time and it never touched again.

  • To check if current allocator returns page-aligned memory when asking for a PAGE_SIZE
    - Current allocator does not return page-aligned chunks when asking for a PAGE_SIZE
  • To add a page allocator that works only on PAGE_SIZE chunks
  • To build a simple POC to check paging is working as expected
  • The chunks that are initiated for each must be aligned to PAGE_SIZE
  • To review how ToroOS allocates pages.
    - ToroOS uses an stack to keep free pages. The stack is stored in the page itself. When a free page is required, we
    invoke pop_free_page(), then, push_free_page() is used to push a free page on top of the stack.
  • To add make current kernel heap to work on the page allocator.
@MatiasVara MatiasVara self-assigned this Apr 12, 2023
@MatiasVara MatiasVara added 5390 enhancement feature This label identifies items that need work on. They should go to Backlog. labels Apr 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement feature This label identifies items that need work on. They should go to Backlog.
Projects
None yet
Development

No branches or pull requests

1 participant
0