User level IPC and device management in the Raven kernel

  • Authors:
  • D. Stuart Ritchie;Gerald W. Neufeld

  • Affiliations:
  • Department of Computer Science, University of British Columbia, Vancouver, B.C., Canada;Department of Computer Science, University of British Columbia, Vancouver, B.C., Canada

  • Venue:
  • moas'93 USENIX Symposium on USENIX Microkernels and Other Kernel Architectures Symposium - Volume 4
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

The increasing bandwidth of networks and storage devices in recent years has placed greater emphasis on the performance of low level operating system services. Data must be delivered between hardware devices and user applications in an efficient matter. Motivated by the need for low overhead operating system services, the Raven kernel utilizes user level implementation techniques to reduce kernel intervention for many common services. In particular, our user level send/receive/reply communication implementation generates no kernel interactions per iteration in the best case, and two kernel interactions in the worst case. In more general cases, we observe approximately one kernel interaction for every two send/receive/reply iterations. Device driver support is also done entirely at the user level reducing copy costs and context switching.