[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: basic system call question
Hi Mike,
> : 8048439: cd 80 int $0x80
> :
> : eax contains the syscall number (42 in my case), ebx contains 5, ecx 6,
> : and the syscall is int 0x80.
>
> Why is the syscall "int 0x80"? Is this where the system is actually
> executed with the arguments previously listed? It is not the return
> value, and the system call number is already 42.
The `int 0x80' generates the interrupt that switches to the kernel
which in turn seems to examine the %eax register to see what system
call is required. I'd guess all system calls generate the same
interrupt, 0x80, and the only thing to distuinguish between them is the
value of %eax.
Ralph.
-
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/
IRC Channel: irc.openprojects.net / #kernelnewbies
Web Page: http://www.kernelnewbies.org/