25.7. Summary

This chapter has highlighted the key APIs and implementation techniques that have allowed classical UNIX to develop from a uniprocessor background into a flexible multiprocessor operating system. We have seen how the kernel can be restructured into a modular design, supporting increased concurrency and the dynamic introduction of new facilities. We have seen how the scheduler can operate in a multiprocessor environment and the new IPC abstractions that have been introduced for efficient communication between concurrent tasks on a single machine, or with some transparency between tasks running on separate computers.

The abstractions introduced in Chapter 24 still underpin the modern design: resources are generally named within the ...

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.