But I have not understood the following sentence:
Here he is talking about a structure which holds the page directory and the kernel stack top.Once you've created an initial data structure for keeping track of a task's information; create an "initialise_multitasking()" function. The idea here (initially) is that there's already a task that has been running since boot, and you only need to create the information for it by allocating some memory for the task's information structure that you just created and setting the fields in that structure as appropriate.
I have a question for both of them:
- I'm using recursive paging so as Page Directory should I use 0xFFFFF000 or the address pointed by it?
- In the case of the first process (the one running from boot) do I have to use the ESP value or I have to allocate another 4K block as the other processes?