摘要

The trends of exponential growing core counts incur new requirements on operating systems. The contemporary monolithic OSs protect shared kernel data by locking in multicore environment. However, the lock contention of OS functions may lead to overall performance degradation. This paper adopts microkernel architecture for scalability concerns, since it has flexibilities for the management of computing resources and explicit data layout to avoid locking. We present a scalable Memory management service (MMS) based on microkernel OS. The physical memory is distributed into servers to remove the lock contention over page pools. Then we discuss the new problems, including load balance and "distributed memory fragmentation". MMS is divided into one master and multiple slaves. The master is a coordinator for adjusting loads and routing requests with a global memory view, while the slaves are responsible for the management of distributed page zones and virtual memory areas. The experimental results show that MMS achieves better scalability than Linux on a 32-core machine.