Betriebssysteme · Institut für Systemarchitektur · Fakultät Informatik · TU Dresden



23. 05. 2006

A Model for Reliable Asynchronous IPC


Neal Walfield

Hurd Team


Although synchronous unbuffered IPC can be made fast, it is not universally appropriate. Using this model in the implementation of a multi-threaded server with a single entry point requires connection handoff thereby increasing the number of IPCs and potentially causing unnecessary CPU migration in the case of SMP systems. Similarly, reliable asynchronous message receipt requires a new thread to be spawned to guarantee message delivery. This is particularly resource costly for functions like poll where a task may wait on hundreds of file descriptors.

These issues resulted in an extended discussion between Marcus Brinkmann, Jonathan Shapiro and myself and resulted in some fundamental changes to the Coyotos IPC model. Namely, the introduction of first class receive buffers thereby divorcing the message buffer from the thread and activations, allowing for asynchronous event notification.

In my talk, I will detail the motivation of these mechanisms, some of the policy imposed and provide some design patterns using these constructs.
Julian Stecklina, http://os.inf.tu-dresden.de/~jsteckli/
12. Jul 2013
· Copyright © 2001-2022 Operating Systems Group, TU Dresden | Impressum ·