Reorganizing UNIX for reliability

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

  • Affiliations:
  • Computer Science Dept., Vrije Universiteit Amsterdam, Amsterdam, HV, The Netherlands;Computer Science Dept., Vrije Universiteit Amsterdam, Amsterdam, HV, The Netherlands;Computer Science Dept., Vrije Universiteit Amsterdam, Amsterdam, HV, The Netherlands;Computer Science Dept., Vrije Universiteit Amsterdam, Amsterdam, HV, The Netherlands;Computer Science Dept., Vrije Universiteit Amsterdam, Amsterdam, HV, The Netherlands

  • Venue:
  • ACSAC'06 Proceedings of the 11th Asia-Pacific conference on Advances in Computer Systems Architecture
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we discuss the architecture of a modular UNIX-compatible operating system, MINIX3, that provides reliability beyond that of most other systems. With nearly the entire operating system running as a set of user-mode servers and drivers atop a minimal kernel, the system is fully compartmentalized. By moving most of the code to unprivileged user-mode processes and restricting the powers of each one, we gain proper fault isolation and limit the damage bugs can do. Moreover, the system has been designed to survive and automatically recover from failures in critical modules, such as device drivers, transparent to applications and without user intervention. We used this new design to develop a highly reliable, open-source, POSIX-conformant member of the UNIX family. The resulting system is freely available and has been downloaded over 75,000 times since its release.