The Raven Kernel: a Microkernel for Shared Memory Multiprocessors 1
Duncan Stuart Ritchie
Department of Computer Science
University of British Columbia
Vancouver, B.C., Canada V6T 1Z2
Technical Report TR 93-36
April 30, 1993
The Raven kernel is a small, lightweight operating system for shared memory multiprocessors. Raven is characterized by its movement of several traditional kernel abstractions into user space. The kernel itself implements tasks, virtual memory management, and low level exception dispatching. All thread management, device drivers, and message passing functions are implemented completely in user space. This movement of typical kernel-level abstractions into user space can drastically reduce the overall number of user/kernel interactions for fine-grained parallel applications.
1This work was made possible by grants from the Natural Sciences and Engineering Research Council of Canada.