K42
From Wikipedia, the free encyclopedia
K42 is an open-source research operating system currently being developed primarily at IBM TJ Watson Research Center for cache-coherent 64-bit multiprocessor systems. The main focus of this OS is to address performance and scalability issues of system software on large-scale, shared memory, NUMA multiprocessor computers.
K42 utilizes a microkernel architecture rather than the traditional monolithic kernel design. K42 consists of a small exception-handling component that serves as the microkernel, a fast IPC mechanism called protected procedure call (PPC), and servers for all other components of the operating system. These servers exist in separate address spaces and rely upon the fast IPC mechanism for communication with the microkernel and other servers.
[edit] History
The core of K42 is based on the University of Toronto's Tornado Operating System. K42 is the university's third generation of research on scalable operating systems. Tornado OS / NUMAchine Multiprocessor was the second generation and Hurricane OS / Hector Multiprocessor was the first generation.
[edit] Features
K42 currently fully supports Linux's API and ABI, so Linux binaries can run on K42 without modification. Furthermore, K42 can use (and does use) Linux devices drivers, file systems and other modules.
Another goal of the K42 design is to achieve a customizable and maintainable system. Being built with an object-oriented design, it allows applications to customize and thus optimize the OS services required, by hot swapping kernel object implementations, on-the-fly. This is particularly important for applications, such as databases and web servers, where the ability to control physical resources can improve performance.