vDSO

vDSOs (virtual dynamically linked shared objects) are a way to export kernel space routines to user space applications, using standard mechanisms for linking and loading i.e. standard Executable and Linkable Format (ELF) format.[1][2]

It helps to reduce the calling overhead on simple kernel routines, and also can work as a way to select the best system call method on some architectures.

An advantage over other methods is that such exported routines can provide proper DWARF (debug with attributed record format) debugging information.

Implementation generally implies hooks in the dynamic linker to find the vDSOs.

See also

References

  1. "Creating a vDSO: the Colonel's Other Chicken". Linuxjournal.com. Retrieved 16 February 2015.
  2. "On vsyscalls and the vDSO". Lwn.net. Retrieved 16 February 2015.