Figure 4: Implementing a kernel as a shared library