GDT, paging question

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
proxy

GDT, paging question

Post by proxy »

hey everyone,

I have a project OS going on and I think that it's progressing nicely.

It is written in as much C++ as possible with a little bit of assembly to glue things together.

I have kernel space threading (longjmp technique), a basic heap (chunks taken from a constant size byte array), lots of syncronization logic primitives such as semaphores and monitors, keyboard input, and loaded through grub.

Firstly, I have no code in my OS yet to setup a GDT, to be honest I am a little unclear of how this functions (i suppose it is similar in setup ti IDT entries). What I really want is to not use segments at all and simply use paging.

Is there any solid examples/explainations of how these things work. I have not toys much with the DS, CS registers, I've just been preserving how they are set in the grub multiboot example.

any advice would be much appreciated.

Also, I am planning on purchases Tanenbaums Implementation of Minux book for a good reference of things, any others recomended?

proxy
Post Reply