October 31 - November 1 - Co-Located Events
October 28-30 - Conference
Lyon Convention Centre - Lyon, France
More information for Open Source Summit + Embedded Linux Conference Europe 2019
Back To Schedule
Monday, October 28 • 17:10 - 17:45
Once upon an API - Michael Kerrisk, man7.org Training and Consulting

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Back in 1997, a new system call, prctl(), was added to the Linux kernel. By now that API does many (arguably, too many) different things to a process. But to begin with, it provided just one feature: to allow a child process to request that the kernel send it a signal when its parent dies. At first, the PR_SET_PDEATHSIG feature seems simple.

However, when one examines its interactions with various other UNIX and Linux API features, such as threads, signals, and exec, the semantics of this feature turn out to be at times both complex and surprising. Some of those semantics were certainly unintended, and are bizarre enough that, as the Linux man-pages
maintainer, I fear documenting them. By looking in detail at this specific example, I’ll explore various pitfalls and lessons we can learn when designing APIs, philosophize a little on the question of who "owns" an API when it comes to defining the semantics of that API, and consider some strategies for improving the API design process.


Michael Kerrisk

Trainer/writer/programmer, http://man7.org/
Michael Kerrisk is the author of the acclaimed book, "The Linux Programming Interface" (http://man7.org/tlpi/), a guide and reference for system programming on Linux and UNIX. He contributes to the Linux kernel primarily via documentation, review, and testing of new kernel-user-space... Read More →

Monday October 28, 2019 17:10 - 17:45
Salon Pasteur
  • Session Slides Included Yes