26.8. Summary

This chapter has introduced a wide range of schemes for providing various forms of extensibility, either at the OS level, or within a JVM, or in some combination of the two. Although the discussion has focused on OS implementation issues, it is worthwhile remembering that similar techniques can be useful when designing any other large system. For instance, separating functionality into different processes allowing, with careful design, for them to be replaced or configured dynamically, as in a microkernel. These topics have been the focus of substantial research over the past three decades; it is only recently that they are having a significant impact on commodity systems. For example, the kernel used in the MacOS X operating system ...

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.