Operating Systems and Middleware
Supporting Controlled Interaction



Book Details
Author | Max Hailperin |
Publisher | Gustavus Adolphus College |
Published | 2019 |
Edition | 1 |
Paperback | 559 pages |
Language | English |
License | Creative Commons Attribution-ShareAlike |
Book Description
The scenario describes a user sitting down at a computer to check email. One of the messages includes an attached document to be edited. The user clicks the attachment, and it opens in another window. After starting to edit the document, the user realizes they need to leave for a trip. They save the document in its partially edited state and shut down the computer to save energy. Upon returning, the user boots the computer back up, opens the document, and continues editing.
This scenario illustrates that computations interact. In fact, it demonstrates at least three kinds of interactions between computations. In each case, one computation provides data to another. First, the email program retrieves new mail from the server, using the Internet to bridge space. Second, the email program provides the attachment to the word processor, using the operating system's services to couple the two application programs. Third, the invocation of the word processor that was running before the trip provides the partially edited document to the invocation running after the return, using disk storage to bridge time.
In all three cases, interesting software techniques are needed to bring the computations into contact while keeping them sufficiently isolated so they do not compromise each other's reliability. The exciting challenge, therefore, is supporting controlled interaction. This includes support for computations that share a single computer and interact with one another, as the email and word processing programs do. It also includes support for data storage and network communication. The book describes how all these kinds of support are provided both by operating systems and by additional software layered on top of operating systems, which is known as middleware.
This book is available under a Creative Commons Attribution-ShareAlike license (CC BY-SA), which means that you are free to copy, distribute, and modify it, as long as you credit the original author and license any derivative works under the same terms.
If you enjoyed the book and would like to support the author, you can purchase a printed copy (hardcover or paperback) from official retailers.