Construction of a Highly Dependable Operating System

  • Authors:
  • Jorrit N. Herder;Herbert Bos;Ben Gras;Philip Homburg;Andrew S. Tanenbaum

  • Affiliations:
  • Vrije Universiteit, The Netherlands;Vrije Universiteit, The Netherlands;Vrije Universiteit, The Netherlands;Vrije Universiteit, The Netherlands;Vrije Universiteit, The Netherlands

  • Venue:
  • EDCC '06 Proceedings of the Sixth European Dependable Computing Conference
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

It has been well established that most operating system crashes are due to bugs in device drivers. Because drivers are normally linked into the kernel address space, a buggy driver can wipe out kernel tables and bring the system crashing to a grinding halt. We have greatly mitigated this problem by reducing the kernel to an absolute minimum and running each driver as a separate, unprivileged user-mode process. In addition, we implemented a POSIX-conformant operating system, MINIX 3, as multiple user-mode servers. In this design, a server or driver failure no longer is fatal and does not require rebooting the computer. This paper discusses how we designed and implemented the system, which problems we encountered, and how we solved these problems. We also discuss the performance effects of our changes and evaluate how our multiserver design improves operating system dependability over monolithic designs.