Sign In

Communications of the ACM


Operating Systems as Possible Worlds

In modern philosophy, some chains of reasoning depend on the invocation of possible worlds. A proposition true in all possible worlds is a necessarily true proposition, to wit, "The circumference of a circle is its diameter times π." A contingent proposition, such as "Iceland won the European football championship in 2016," is true in some possible worlds. (Those are possible worlds different from ours.) Possible worlds are very intuitive; they are vivid, they make sense, they provide habitable situations. They require only a minimal investment in counterfactual disruption; by definition, everything except a single contingency is held identical to our world, bringing attention to focus on the consequences of that contingency. We might want to—and they allow us to—explore what would have happened if Iceland had won the football championship.

Possible worlds offer philosophy a testbed for theories, because the mere conception of a full-fledged realm of existence can support or discredit a claim via close inspection of the realm in which such a claim holds. What sorts of things in computer science embody a intricate mesh of developing circumstances?—operating systems. The operating system, as the complex software in continuous execution that handles resources and manages user applications, can be seen as either a possible world or as a generator of possible worlds via different execution paths. (We restrict the notion of operating system to single-thread processing—one CPU on a single instruction counter.)

What kinds of possible worlds are these? Can operating system worlds shed any light on possible worlds in general, or can operating systems shed light on the issues bearing on the use of possible worlds as a philosophical tool? We must first define the unit of investigation. Is an operating-system world the system as a whole, including the totality of parameters, running indefinitely, like our world? Is an operating-system world a snapshot, the state at a given instant? Is an operating-system world a path through a graph of nodes, rooted at the first value affected by the boot sequence? Or is some other level of abstraction more appropriate?

This question does not seem to be an issue in philosophical possible worlds. Firmly and comfortably grounded in the actual world, which does not require a declaration of its type, we can equivocate on the scope and extension and material assumed when we talk about other possible worlds. That equivocation presents one of the most interesting suggestion posed by this analogy—that possible worlds in philosophy need to be scoped and typed somehow, so that results do not depend on a possible world interpreted as static at one point and as dynamic at another. Here's another consideration that shows itself. In an operating system, there is no privileged actual world, or state, in the same sense. The actual state is determined by input. Does a possible world, like ours and its peers, take input?

In the philosophical inquiries of metaphysics, ethics, and epistemology, possible worlds are invoked in different ways [SEP, Menzel]. To view a possible world as concrete makes it extant, in full (somewhere), disjoint from other possible worlds; individuals have counterparts. An abstract possible world is a hypothetical, a way that things could be, with individuals preserved across worlds in different states of affairs. Either of these could be construed as a reflection of some aspects of the operating system, with the possbility of rich and tantalizing results. The combinatorial possible world is made up of the tiniest units, atomic exemplifications, which quite suitably correspond to the values of variables or contents of memory cells (where the former can be decomposed into the latter) handled by operating systems. Under any of these three choices of the nature of possible worlds as an analog of the operating system, we still face questions of identity between the possible worlds of operating systems and whether non-actual possible worlds can contain fewer things, more things, or different things, as well as questions of properties, their ontology and granularity.

The notion of possible worlds is instrumental in philosophy, furnishing a court of inquiry that could not otherwise be held on such an intuitive basis. We can play with ideas of consequence. We can ask, ``In a possible world where plants are conscious, may we eat them?'' The notion of execution paths is instrumental in computer systems, arising when a system design is scrutinized for details of its potential states. We can get serious with consequences. We can ask, ``In an operating system where a program addresses out of bounds, how far does the error propogate?'' Both activities are speculation for a purpose. That speculation may be compared to the relation between fiction and model theory, explored in an earlier entry in this blog [Hill 2016]. Studying such conditions in the closed world of an operating system can illuminate the application of those questions to the possible worlds of philosophy.


[Hill 2016] Hill, Robin. 2016. Fiction as Model Theory. Blog@CACM. December 30, 2016.

[Menzel SEP] Menzel, Christopher. 2016. Possible Worlds. The Stanford Encyclopedia of Philosophy (Winter 2016 Edition), Edward N. Zalta (ed.).


No entries found

Sign In for Full Access
» Forgot Password? » Create an ACM Web Account
ACM Resources