[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article

MINIX 3: a highly reliable, self-repairing operating system

Published: 01 July 2006 Publication History

Abstract

Different kinds of people use computers now than several decades ago, but operating systems have not fully kept pace with this change. It is true that we have point-and-click GUIs now instead of command line interfaces, but the expectation of the average user is different from what it used to be, because the user is different. Thirty or 40 years ago, when operating systems began to solidify into their current form, almost all computer users were programmers, scientists, engineers, or similar professionals doing heavy-duty computation, and they cared a great deal about speed. Few teenagers and even fewer grandmothers spent hours a day behind their terminal. Early users expected the computer to crash often; reboots came as naturally as waiting for the neighborhood TV repairman to come replace the picture tube on their home TVs. All that has changed and operating systems need to change with the times.

References

[1]
M. Accetta, R. Baron, W. Bolosky, D. Golub, R. Rashid, A. Tevanian, and M. Young. Mach: A New Kernel Foundation for UNIX Development. In Proc. of USENIX'86, pages 93--113, 1986.
[2]
P. T. Barham, B. Dragovic, K. Fraser, S. Hand, T. L. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the Art of Virtualization. In Proc. 19th ACM Symp. on Oper. Syst. Prin., pages 164--177, 2003.
[3]
V. Basili and B. Perricone. Software Errors and Complexity: An Empirical Investigation. Commun. of the ACM, 21(1):42--52, Jan. 1984.
[4]
B. N. Bershad, S. Savage, P. Pardyak, E. G. Sirer, M. E. Fiuczynski, D. Becker, C. Chambers, and S. J. Eggers. Extensibility, Safety and Performance in the SPIN Operating System. In Proc. 15th ACM Symp. on Oper. Syst. Prin., pages 267--284, 1995.
[5]
A. Bricker, M. Gien, M. Guillemont, J. Lipkis, D. Orr, and M. Rozier. A New Look at Microkernel-Based UNIX Operating Systems: Lessons in Performance and Compatibility. In Proc. EurOpen Spring 1991 Conf., pages 13--32, May 1991.
[6]
M. I. Bushnell. The HURD: Towards a New Strategy of OS Design. GNU's Bulletin.
[7]
D. Cheriton. The V Kernel: A Software Base for Distributed Systems. IEEE Software, 1(2):19--42, Apr. 1984.
[8]
A. Chou, J. Yang, B. Chelf, S. Hallem, and D. Engler. An Empirical Study of Operating System Errors. In Proc. 18th ACM Symp. on Oper. Syst. Prin., pages 73--88, 2001.
[9]
P. Chubb. Get More Device Drivers Out of the Kernel! In Proc. Linux Symp., pages 149--162, July 2004.
[10]
B. Clark, T. Deshane, E. Dow, S. Evanchik, M. Finlayson, J. Herne, and J. Matthews. Xen and the Art of Repeated Research. In Proc. Usenix Tech. Conf. (Freenix Track), pages 135--144, 2004.
[11]
D. Engler, M. Kaashoek, and J. J. O'Toole. Exokernel: an operating system architecture for application-level resource management. In Proc. 15th ACM Symp. on Oper. Syst. Prin., pages 251--266, 1995.
[12]
A. Forin, D. Golub, and B. Bershad. An I/O System for Mach 3.0. In Proc. Second USENIX Mach Symp., pages 163--176, 1991.
[13]
K. Fraser, S. Hand, I. Pratt, A. Warfield, R. Neugebauer, and M. Williamson. Safe Hardware Access with the Xen Virtual Machine Monitor. In Proc. 1st Workshop on Oper. Sys. and Arch. Supp. for the on demand IT Infrastructure (OASIS-2004), Oct. 2004.
[14]
A. Gefflaut, T. Jaeger, Y. Park, J. Liedtke, K. Elphinstone, V. Uhlig, J. Tidswell, L. Deller, and L. Reuther. The SawMill Multiserver Approach. In ACM SIGOPS European Workshop, pages 109--114, Sept. 2000.
[15]
S. M. Hand. Self-Paging in the Nemesis Operating System. In Proc. 3rd Symp. on Oper. Syst. Design and Impl., pages 73--86, 1999.
[16]
H. Härtig, R. Baumgartl, M. Borriss, C.-J. Hamann, M. Hohmuth, F. Mehnert, L. Reuther, S. Schonberg, and J. Wolter. DROPS OS Support for Distributed Multimedia Applications. In Proc. 8th ACM SIGOPS European Workshop, pages 203--209, Sept. 1998.
[17]
H. Härtig, M. Hohmuth, N. Feske, C. Helmuth, A. Lackorzynski, F. Mehnert, and M. Peter.
[18]
H. Härtig, M. Hohmuth, J. Liedtke, S. Schönberg, and J. Wolter. The Performance of -Kernel-Based Systems. In Proc. 6th Symp. on Oper. Syst. Prin., pages 66--77, Oct. 1997.
[19]
G. Heiser, K. Elphinstone, J. Vochteloo, S. Russell, and J. Liedtke. The Mungi Single-Address-Space Operating System. Software: Practice and Experience, 28(9):901--928, July 1998.
[20]
J. N. Herder, H. Bos, B. Gras, P. Homburg, and A. S. Tanenbaum. Modular System Programming in MINIX 3. USENIX; login:, 31(2):19--28, Apr. 2006.
[21]
D. Hildebrand. An Architectural Overview of QNX. In Proc. USENIX Workshop in Microkernels and Other Kernel Architectures, pages 113--126, Apr. 1992.
[22]
M. Hohmuth and H. Tews. The VFiasco Approach for a Verified Operating System. In Proc. 2nd ECOOP Workshop on Prog. Lang. and Oper. Sys., July 2005.
[23]
G. C. Hunt, J. R. Larus, M. Abadi, M. Aiken, P. Barham, M. Fahndrich, C. Hawblitzel, O. Hodson, S. Levi, N. Murphy, B. Steensgaard, D. Tarditi, T. Wobber, and B. Zill. An Overview of the Singularity Project. Technical Report MSR-TR-2005-135, Microsoft Research, Redmond, WA, USA, Oct. 2005.
[24]
B. Leslie, P. Chubb, N. Fitzroy-Dale, S. Gotz, C. Gray, L. Macpherson, Y.-T. S. Daniel Potts, K. Elphinstone, and G. Heiser. User-Level Device Drivers: Achieved Performance. Journal of Computer Science and Technology, 20(5), Sept. 2005.
[25]
J. LeVasseur and V. Uhlig. A Sledgehammer Approach to Reuse of Legacy Device Drivers. In Proc. 11th ACM SIGOPS European Workshop, pages 131--136, Sept. 2004.
[26]
J. LeVasseur, V. Uhlig, J. Stoess, and S. Gotz. Unmodified Device Driver Reuse and Improved System Dependability via Virtual Machines. In Proc. 6th Symp. on Oper. Syst. Design and Impl., pages 17--30, Dec. 2004.
[27]
J. Liedtke. On μ-Kernel Construction. In Proc. 15th ACM Symp. on Oper. Syst. Prin., pages 237--250, Dec. 1995.
[28]
S. Mullender, G. V. Rossum, A. Tanenbaum, R. V. Renesse, and H. V. Staveren. Amoeba: A Distributed Operating System for the 1990s. In IEEE Computer Magazine 23(5), pages 44--54, May 1990.
[29]
T. Ostrand, E. Weyuker, and R. Bell. Where the Bugs Are. In Proc. of the 2004 ACM SIGSOFT Int'l Symp. on Software Testing and Analysis, pages 86--96. ACM, 2004.
[30]
T. Ostrand and E. Weyuker. The Distribution of Faults in a Large Industrial Software System. In Proc. of the 2002 ACM SIGSOFT Int'l Symp. on Software Testing and Analysis, pages 55--64. ACM, 2002.
[31]
B. Pfitzmann and C. Stüble. Perseus: A Quick Open-source Path to Secure Signatures. In 2nd Workshop on Microkernel-based Systems, 2001.
[32]
T. Roscoe. The Structure of a MultiService Operating System. Ph.D. Dissertation, Cambridge University.
[33]
L. Seawright and R. MacKinnon. VM/370---A Study of Multiplicity and Usefulness. IBM Systems Journal, 18(1):4--17, 1979.
[34]
J. Shapiro, M. S. Doerrie, E. Northup, S. Sridhar, and M. Miller. Towards a Verified, General-Purpose Operating System Kernel. In 1st NICTA Workshop on Operating System Verification, Oct. 2004.
[35]
J. Sugerman, G. Venkitachalam, and B.-H. Lim. Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor. In Proc. 2001 USENIX Ann. Tech. Conf., pages 1--14, 2001.
[36]
M. Swift, M. Annamalai, B. Bershad, and H. Levy. Recovering Device Drivers. In Proc. 6th Symp. on Oper. Syst. Design and Impl., pages 1--15, 2004.
[37]
M. Swift, B. Bershad, and H. Levy. Improving the Reliability of Commodity Operating Systems. ACM Trans. on Comp. Syst., 23(1):77--110, 2005.
[38]
A. S. Tanenbaum, J. N. Herder, and H. Bos. Can We Make Operating Systems Reliable and Secure? IEEE Computer, 39(5):44--51, May 2006.
[39]
A. Weiss. Strange Bedfellows. NetWorker, 5(2):19--25, June 2001.
[40]
A. Whitaker, M. Shaw, and S. D. Gribble. Scale and Performance in the Denali Isolation Kernel. In Proc. 5th Symp. on Oper. Syst. Design and Impl., 2002.
[41]
M. Young, M. Accetta, R. Baron, W. Bolosky, D. Golub, R. Rashid, and A. Tevanian. Mach: A New Kernel Foundation for UNIX Development. In Proc. 1986 Summer USENIX conference, pages 93--113, June 1986.

Cited By

View all
  • (2024)rOOM: A Rust-Based Linux Out of Memory Kernel ComponentIEICE Transactions on Information and Systems10.1587/transinf.2023MPP0001E107.D:3(245-256)Online publication date: 1-Mar-2024
  • (2024)High-Configurability for Operating Systems2024 23rd RoEduNet Conference: Networking in Education and Research (RoEduNet)10.1109/RoEduNet64292.2024.10722499(1-11)Online publication date: 19-Sep-2024
  • (2024)Unishyper: A Rust-based unikernel enhancing reliability and efficiency of embedded systemsJournal of Systems Architecture10.1016/j.sysarc.2024.103199153(103199)Online publication date: Aug-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGOPS Operating Systems Review
ACM SIGOPS Operating Systems Review  Volume 40, Issue 3
July 2006
107 pages
ISSN:0163-5980
DOI:10.1145/1151374
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 July 2006
Published in SIGOPS Volume 40, Issue 3

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)61
  • Downloads (Last 6 weeks)14
Reflects downloads up to 14 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)rOOM: A Rust-Based Linux Out of Memory Kernel ComponentIEICE Transactions on Information and Systems10.1587/transinf.2023MPP0001E107.D:3(245-256)Online publication date: 1-Mar-2024
  • (2024)High-Configurability for Operating Systems2024 23rd RoEduNet Conference: Networking in Education and Research (RoEduNet)10.1109/RoEduNet64292.2024.10722499(1-11)Online publication date: 19-Sep-2024
  • (2024)Unishyper: A Rust-based unikernel enhancing reliability and efficiency of embedded systemsJournal of Systems Architecture10.1016/j.sysarc.2024.103199153(103199)Online publication date: Aug-2024
  • (2023)A survey on network simulators, emulators, and testbeds used for research and educationComputer Networks10.1016/j.comnet.2023.110054237(110054)Online publication date: Dec-2023
  • (2022)LabStorProceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis10.5555/3571885.3571915(1-15)Online publication date: 13-Nov-2022
  • (2022)FlexOS: towards flexible OS isolationProceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3503222.3507759(467-482)Online publication date: 28-Feb-2022
  • (2022)Efficient and scalable core multiplexing with M³vProceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3503222.3507741(452-466)Online publication date: 28-Feb-2022
  • (2022)LabStor: A Modular and Extensible Platform for Developing High-Performance, Customized I/O Stacks in UserspaceSC22: International Conference for High Performance Computing, Networking, Storage and Analysis10.1109/SC41404.2022.00028(1-15)Online publication date: Nov-2022
  • (2021)FlexOSProceedings of the 22nd International Middleware Conference: Doctoral Symposium10.1145/3491087.3493683(29-32)Online publication date: 6-Dec-2021
  • (2021)FlexOSProceedings of the Workshop on Hot Topics in Operating Systems10.1145/3458336.3465292(79-87)Online publication date: 1-Jun-2021
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media