Memory Manager preliminar Design
Me and Ponniah has started the coding for memory manager preliminary code few weeks ago. The sequence of events after memory manager starts are:
1. Counts the number of pages in the Main Memory:
This is done by writing a value to a start of a page and then reading it again. If the written and read value are the same then the page exists else page doesnot exsits. A counter is incremented if page exists. The value of counter is the number of pages.
2. Create a bit map for the Occupied Pages:
Initally grub loads some modules in the memory those pages are to be found from the Kernel's command line arguments and those pages are marked as used. A page is allocated for creating this bit map.
3. Allocating a Page and Deallocating a Page are to be coded.
1. Counts the number of pages in the Main Memory:
This is done by writing a value to a start of a page and then reading it again. If the written and read value are the same then the page exists else page doesnot exsits. A counter is incremented if page exists. The value of counter is the number of pages.
2. Create a bit map for the Occupied Pages:
Initally grub loads some modules in the memory those pages are to be found from the Kernel's command line arguments and those pages are marked as used. A page is allocated for creating this bit map.
3. Allocating a Page and Deallocating a Page are to be coded.