vix.ing · top · new · best · stats · spec

What is an OS?

2011/12/19 by Abhijat Vichare, Vichare, Abhijat · 1 citation
Computer Science · #D.4.7 #Distributed and Parallel Computing Systems #Distributed systems and fault tolerance #FOS: Computer and information sciences #Operating Systems (cs.OS) #Parallel Computing and Optimization Techniques #cs.OS

paper · pdf · doi:10.48550/arxiv.1112.4451

Major changes: Improvised the discussion of the implicit assumptions, added a sketch of a theory of an OS, and added a figure. Comments welcome. 32 pages, 5 figures. Submitted

openalex publication_date 2011/12/19 · arxiv created 2012/02/17 · arxiv updated 2012/02/20 · openalex created_date 2024/04/11 · openalex updated_date 2026/07/28

Abstract

While the engineering of operating systems is well understood, their formal structure and properties are not. The latter needs a clear definition of the purpose of an OS and an identification of the core. In this paper I offer definitions of the OS, processes and files, and present a few useful principles. The principles allow us to identify work like closure and continuation algorithms, in programming languages that is useful for the OS problem. The definitions and principles should yield a symbolic, albeit semiquantitative, framework that encompasses practice. Towards that end I specialise the definitions to describe conventional OSes and identify the core operations for a single computer OS that can be used to express their algorithms. The assumptions underlying the algorithms offer the design space framework. The paging and segmentation algorithms for conventional OSes are extracted from the framework as a check. Among the insights the emerge is that an OS is a constructive proof of equivalence between models of computation. Clear and useful definitions and principles are the first step towards a fully quantitative structure of an OS.

Cited by

Related