Questions I need answering?

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
beyondsociety

Questions I need answering?

Post by beyondsociety »

Should I implement paging before or after I enter protected mode?

Do I have to define paging by writing some code or do I not have to considering paging is set up in my GDt?

Where is the IVT located in the GDT?

What are the values for setting it for access to realmode?

Ex: 1 = The realmode value has been activated allowing you to enter realmode.
0 = The realmode value has not been activated which doesn't allow you access to realmode.

This is just an example, what are the real values for each situation?
Tim

Re:Questions I need answering?

Post by Tim »

beyondsociety wrote:Should I implement paging before or after I enter protected mode?
Better to do it after you have entered protected mode, although I think it's possible to set up paging beforehand.
Do I have to define paging by writing some code or do I not have to considering paging is set up in my GDt?
You have to set up the initial page tables and page directory, enable the CR0.PG bit.
Where is the IVT located in the GDT?
??? This makes no sense.
The IVT is the real-mode Interrupt Vector Table, an array of 256 segment:offset pairs located at physical address 0. The GDT is an array of protected mode segment descriptors. The GDT can't contain the IVT. :)
What are the values for setting it for access to realmode?

Ex: 1 = The realmode value has been activated allowing you to enter realmode.
0 = The realmode value has not been activated which doesn't allow you access to realmode.

This is just an example, what are the real values for each situation?
Real values of what?
beyondsociety

Re:Questions I need answering?

Post by beyondsociety »

I thought about what I said about the IVT after I posted the message. What I was asking didn't really make sense. I found I link that has all the 256 Vectors for the IVT so I now understand what I was asking.

So If the Gdt doesn't contain the IVT, would the IDT at least use it or is it mainly for the Interrupts, the interrupt handler and the interrupt service routine?
Tim

Re:Questions I need answering?

Post by Tim »

No, in pure protected mode (no V86), the IVT is completely unused. It is replaced by the IDT. In any case, the code that the IVT points to is useless because it (BIOS) is written with 16-bit real mode in mind. The IDT describes the handlers for all 256 interrupts.
Post Reply