Re: Need help in understanding x86 syscall

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 11 Aug 2005, Steven Rostedt wrote:

> On Thu, 2005-08-11 at 13:46 -0400, linux-os (Dick Johnson) wrote:
> 
> > 
> > I was talking about the one who had the glibc support to use
> > the newer system-call entry (who's name can confuse).
> > 
> > You are looking at code that uses int 0x80. It's an interrupt,
> > therefore, in the kernel, once the stack is set up, interrupts
> > need to be (re)enabled.
> 
> int is a call to either an interrupt or exception procedure. 0x80 is
> setup in Linux to be a trap and not an interrupt vector. So it does
> _not_ turn off interrupts.

It's actually a vector, that's all you can install in the IDT. Also a trap 
doesn't advance the instruction pointer, so you resume at the trapping 
instruction (e.g. vector 14/page fault), 0x80 is an interrupt gate. One 
of the distinguishing differences is that 0x80 may be entered via int 
0x80 from all ring levels. The reason why int 0x80 doesn't disable 
interrupts is because issuing int 0x80 directly is similar to doing a far 
call and therefore doesn't have the same effect as a real interrupt being 
issued.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux