
TL;DR
This paper critically examines the historical and technical aspects of UNIX design, highlighting deviations from original simplicity principles, analyzing shared library usage, and comparing microkernel and monolithic architectures through statistical tests.
Contribution
It provides a statistical analysis of shared libraries in UNIX systems and questions assumptions about microkernel complexity versus monolithic designs.
Findings
Shared libraries often exist without clear necessity.
Microkernels do not necessarily have fewer context switches than monolithic kernels.
Historical practices have diverged from original UNIX simplicity principles.
Abstract
In this paper we show that the initial philosophy used in designing and developing UNIX in early times has been forgotten due to "fast practices". We question the leitmotif that microkernels, though being by design adherent to the KISS principle, have a number of context switches higher than their monolithic counterparts, running a test suite and verify the results with standard statistical validation tests. We advocate a wiser distribution of shared libraries by statistically analyzing the weight of each shared object in a typical UNIX system, showing that the majority of shared libraries exist in a common space for no real evidence of need. Finally we examine the UNIX heritage with an historical point of view, noticing how habits swiftly replaced the intents of the original authors, moving the focus from the earliest purpose of is avoiding complications, keeping a system simple to use…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Data Storage Technologies · Scientific Computing and Data Management · Software Engineering Research
