From: Alexander G Balikov (alexgb_at_u.washington.edu)
Date: Wed Jan 14 2004 - 15:42:59 PST
This paper describes the design and implementation of Opal - a single (large) address space operating system. Unlike the traditional operating systems where each process operates in its own virtual address space, in Opan there is one global address space. Protection is achieved through capabilities. Processes operate in protection domains and access resources through the capabilities they posess. Since pointers are global, no marshalling is needed to share information between protection domains (processes) - a sharing process just needs to share its capability (which internaly contains the shared resource id) and protect it with ACL so only the appropriate recepient can access it.
Because of the global address space memory segments (and pointers) can be persisted "as-is" no need for linearization, etc.
Cross protection domain calls are achieved through protected entry points - portals.
This paper was very interesting to me because I have never thought of the possibility for global address space. Till now the private virtual address space seemed like natural and good feature for inter process isolation. This paper made it clear that with reasonable tradeoffs, the global address space is a valuable alternative.
This archive was generated by hypermail 2.1.6 : Wed Jan 14 2004 - 15:43:00 PST