Just finished setting up basic paging, now what ?

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
Post Reply
User avatar
DeezRamChips
Member
Member
Posts: 132
Joined: Fri Apr 08, 2016 5:03 am
Location: atapio.cpp - why won't you work :(
Contact:

Just finished setting up basic paging, now what ?

Post by DeezRamChips »

So, I finally got around to adding paging to my OS, but now I'm not sure what to do :/

I kinda want to implement a memory manager but I don't know where to start and most importantly, I don't know whats
the best way to do it so I don't run into problems later.

I also wanted to implement multitasking, but isn't it more important to get a working memory management system first ?

Hope someone can point me in the right direction ^^
User avatar
nielsd
Member
Member
Posts: 31
Joined: Sun Apr 05, 2015 3:15 pm

Re: Just finished setting up basic paging, now what ?

Post by nielsd »

When you implement multitasking, you want to store the state of the tasks.
You'd want to dynamically allocate the memory for the task structures, so I'd implement a memory manager first.
For dynamically allocating memory, you might want to see the wiki article about Heap.
There are multiple ways to implement a heap.
I'd recommend checking if your heap implementation works correctly after you implemented it, otherwise you might run into annoying issues.
osdev project, goal is to run wasm as userspace: https://github.com/kwast-os/kwast
User avatar
DeezRamChips
Member
Member
Posts: 132
Joined: Fri Apr 08, 2016 5:03 am
Location: atapio.cpp - why won't you work :(
Contact:

Re: Just finished setting up basic paging, now what ?

Post by DeezRamChips »

Oh ok, I see :)

Thanks for the answer !
Post Reply