05-31-2008
9,
0
Join Date: May 2008
Last Activity: 3 November 2008, 9:05 AM EST
Posts: 9
Thanks Given: 0
Thanked 0 Times in 0 Posts
linux-gate - x86 - a few questions
I'm aware of the linux-gate VDSO used to implement the sysenter mechanism for system calls. On older kernels this was mapped to a static location in the address space of each process. Newer kernels allow this to be dynamically located (though I don't think it's used by any distribution yet).
How do you detect, at runtime, where this is located so I can make system calls from assembly language? There's some mention of the ELF auxiliary vector but I have no idea how to access this.
Also AFAIK the sysenter instruction does not exist on AMD processors. Do AMD processors still use the linux-gate mechanism?
Does a statically linked application still have access to the linux-gate? ldd gives me 'not a dynamic executable'.