c - What's the purpose of _dl_sysinfo_int80? -


i mean, why not issue int instruction directly?

dump of assembler code function execve:    [omitted]    0x0806c282 <+18>:    call   *0x80e99f0    [omitted] end of assembler dump. (gdb) disas *0x80e99f0 dump of assembler code function _dl_sysinfo_int80:    0x0806ed70 <+0>: int    $0x80    0x0806ed72 <+2>: ret     end of assembler dump. 

from inexperienced point of view, _dl_sysinfo_int80 adds nothing overhead.

there various ways perform system call. oldest , slowest int 0x80. advantage works on systems. later, intel introduced sysenter , amd introduced syscall instruction. these unfortunately not compatible, , work on chips. best implementation can used, level of indirection has been added. kernel provides entry code mapped every process (part of vdso). far can tell, _dl_sysinfo_int80 used fallback when kernel provided code reason not available.


Comments

Popular posts from this blog

c++ - Difference between pre and post decrement in recursive function argument -

php - Nothing but 'run(); ' when browsing to my local project, how do I fix this? -

php - How can I echo out this array? -