MINIX 3 (original) (raw)
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.
Information & Contributors
Information
Published In
ACM SIGOPS Operating Systems Review Volume 40, Issue 3
July 2006
107 pages
Copyright © 2006 Authors.
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
- View Citations
- Downloads (Last 12 months)62
- Downloads (Last 6 weeks)13
Reflects downloads up to 23 Dec 2024
Other Metrics
Citations
- LI LZHANG QXU ZZHAO SSHI ZGUAN Y(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
- Deak TDeaconescu RKröning MMonti A(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
- Hu KHuang WWang LMo CWang RChen YRen JJiang B(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
- Gomez JKfoury ECrichigno JSrivastava G(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
- Logan LGarcia JLofstead JSun XKougkas AWolf FShende SCulhane CAlam SJagode H(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
- Lefeuvre HBădoiu VJung ATeodorescu SRauch SHuici FRaiciu COlivier PFalsafi BFerdman MLu SWenisch T(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
- Asmussen NHaas SWeinhold CMiemietz TRoitzsch MFalsafi BFerdman MLu SWenisch T(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
- Logan LGarcia JLofstead JSun XKougkas A(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
- Lefeuvre HZhang KGherbi AVenkatasubramanian NVeiga L(2021)FlexOSProceedings of the 22nd International Middleware Conference: Doctoral Symposium10.1145/3491087.3493683(29-32)Online publication date: 6-Dec-2021
- Lefeuvre HBădoiu VTeodorescu ŞOlivier PMosnoi TDeaconescu RHuici FRaiciu CAngel SKasikci BKohler E(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
Check if you have access through your login credentials or your institution to get full access on this article.
Full Access
View options
View or Download as a PDF file.
eReader
View online with eReader.
Media
Figures
Other
Tables
Affiliations
Jorrit N. Herder
Vrije Universiteit Amsterdam, The Netherlands
Herbert Bos
Vrije Universiteit Amsterdam, The Netherlands
Ben Gras
Vrije Universiteit Amsterdam, The Netherlands
Philip Homburg
Vrije Universiteit Amsterdam, The Netherlands
Andrew S. Tanenbaum
Vrije Universiteit Amsterdam, The Netherlands