April 2005
Intermediate to advanced
344 pages
11h 59m
English
The
Linux kernel maintains a
system call table
, which is simply a set of
pointers to functions that implement the system calls. To see the
list of system calls implemented by your kernel, see
/usr/include/bits/syscall.h. The kernel stores
the system call table under a structure called
sys_call_table, which you can find in the
arch/i386/kernel/entry.S file.
Linux kernels 2.5 or greater no longer export the
sys_call_table structure. Prior to the 2.5
kernels, an LKM could instantly access the
sys_call_table structure by declaring it as an
extern variable:
extern void *sys_call_table[];
For more details, see the Section 7.2.5 later in this chapter.
Read now
Unlock full access