~/talk

Linux User/Kernel ABI: the realities of how C and C++ programs really talk to the OS

Talkat ACCU 2018 · 2018-04-11..04-14· [linux-and-operating-systems, c-and-cpp]
name:Greg Law
linkedin:gregthelaw
slides:none on file

Explains how Linux really moves between user and kernel space: syscalls via int 0x80, sysenter and the vdso/vsyscall page, error mapping as negated errno values, and how signals can cause syscalls to return -ERESTARTSYS or be auto‑restarted via restart blocks. Notes pthreads as clone-based thread groups, futexes as tricky fast paths, and ptrace unwinding syscalls so a stopped tracee is already back in user space. Demonstrates that getpid moved back into a syscall in glibc 2.26 and that KPTI for Meltdown roughly doubles syscall cost.

AI-written summary · about

  1. 0:00Start
  2. 0:28Linux Kernel User Api
  3. 2:38The Kernel Abi
  4. 3:36Hello World Program
  5. 12:20What Do We Mean by a Kernel
  6. 15:28Clear Interrupts
  7. 31:54Cache Invalidation
  8. 44:51Posix Threads
  9. 46:34Cloned Thread
  10. 47:32Futex System Call
  11. 53:35Signals
  12. 1:07:36Restart Block
  13. 1:09:30Restart System Call
  14. 1:17:51The P Trace Api
  15. 1:25:03Binary Compatibility
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.