Using the Mach Communication Primitives in X11

Michael Ginsberg, Robert V. Baron, Brian N. Bershad · 1993

We have modified the X11 windowing system to use the native communication facilities of the Mach 3.0 microkernel. Our new implementation can rely on Mach's low-overhead IPC facility as a direct replacement for sockets, or it can use shared memory as a transport between X11 clients and the server. On conventional BSD Unix systems, X11 communication is done through sockets. Because a user-level process implements Unix functionality on top of Mach 3.0, a socket-based version of X11 performs substantially worse than when running a monolithic Unix kernel. Using Mach IPC as the transport between XI l clients and the server, X11 performance is slightly better than that of a monolithic system in which sockets am implemented inside the kernel as opposed to within a user level process. Using Mach's shared memory facilities as the transport, we have measured performance improvements of over 40%.

Read the paper · More papers on PaperTik