Memory Manager - Where to Start?

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
TheChuckster

Memory Manager - Where to Start?

Post by TheChuckster »

I have finished the console driver of my OS. The keyboard handler works fine, along with the display output -- I even have a few internal commands. Now I would like to work on loading external files so I need to write a memory manager. However, I am entirely confused as to where to start. Are there any good web sites with tutorials? Apparently the ones I've been to require a lot of knowledge to be known beforehand about memory. Is there a good newbies' site? Also, I am wondering if anyone could reccomend me some good sites regarding OS theory (how modern OSes work). Thanks ahead.
Tim

Re:Memory Manager - Where to Start?

Post by Tim »

User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:Memory Manager - Where to Start?

Post by Pype.Clicker »

i would suggest you to get a good idea of what are the pieces that you'll need for your memory manager, and to make yourself more comfortable with the memory management unit (paging, especially). The following components are likely to be mandatory:

- a "physical memory allocator", keeps track of what physical memory page are used and which are not.
- a "virtual memory allocator", keeps track of which virtual addresses are used by the process and which aren't in order to define the "process' memory map"
- a "malloc-like" function, working atop of a memory region, will tell which area are in use and which have been freed by the system.

afaik, there are no site giving a whole approach of modern OS theory (at least, not as complete as some books like A. Tanenbaum one or "Operating System Concepts" by Schilberschatz & Galvin are).
Post Reply