few questions[new questions]

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
User avatar
packet50071
Member
Member
Posts: 43
Joined: Sat Dec 22, 2007 2:27 pm
Location: canada

few questions[new questions]

Post by packet50071 »

In the wiki it said that I need to disable interrupts before I enter PM
How do I do that ??
CLI -- Just clears out table right ??or does it disable it ??
How do i enable it after ?

thx for future help
Last edited by packet50071 on Tue Dec 25, 2007 7:38 pm, edited 1 time in total.
Technology is here to make things easier not harder.
Craze Frog
Member
Member
Posts: 368
Joined: Sun Sep 23, 2007 4:52 am

Post by Craze Frog »

cli just clears the interrupt flag, which means interrupts are disabled.
sti sets the interrupt flag, which means you receive interrupts again.
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Post by lukem95 »

yeah

cli = CLear Interupts
sti = STart Interupts

(i think... this is how i remember it ;) )
~ Lukem95 [ Cake ]
Release: 0.08b
Image
Craze Frog
Member
Member
Posts: 368
Joined: Sun Sep 23, 2007 4:52 am

Post by Craze Frog »

lukem_95 wrote:yeah

cli = CLear Interupts
sti = STart Interupts

(i think... this is how i remember it ;) )
It's actually Clear Interrupt Flag and Set Interrupt Flag.
User avatar
packet50071
Member
Member
Posts: 43
Joined: Sat Dec 22, 2007 2:27 pm
Location: canada

Post by packet50071 »

thx For conforming :D

edit
http://www.osdev.org/wiki/IDT

How do i set this Up ?? [ IDT ]

Is there any other palce where i can find this kind of "Standard Codes" ?

and also Does GRUB give control to my code After entering pm ??
Technology is here to make things easier not harder.
User avatar
bewing
Member
Member
Posts: 1401
Joined: Wed Feb 07, 2007 1:45 pm
Location: Eugene, OR, US

Post by bewing »

It's easy just to set up the initial (stubbed) 256 interrupt handlers in the IDT as a predefined data table in your kernel. You can read the exact format of an IDT entry in one of the Intel manuals.

And your kernel should be compiled to expect that its base load address is 0x100000 (1M), and its entry point is also there -- that is how GRUB transfers control to you.
Post Reply