This chapter will examine how to o?¬?er a page to another domain, and how to
map an o?¬?ered page. It will discuss brie?¬‚y how split device drivers, discussed in
more detail in Part II, use shared pages to communicate.
4.1 Sharing Memory
Shared memory is the easiest mechanism for interprocess communication (IPC)
to implement on a single machine. Because each process??™s address space is simply
a subset of a common memory pool, memory can be shared simply by creating
overlapping address spaces.
Due to this simplicity, it is a good choice for Xen. The hypervisor provides a
mechanism for sharing memory pages, and cooperating domains can implement
a policy built on top of this. This mechanism can be used to provide interdomain
communication, a way for guests to communicate analogous to IPC between
userspace processes.
Xen has a lot in common with several microkernel operating systems. Most
microkernels, however, implement message passing rather than shared memory as
their basic IPC mechanism. This is because message passing is a slightly higherlevel
abstraction, and can easily be made network-transparent for systems that do
not have a common physical memory architecture.
Pages:
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153