ArticleslgStudy

computer science

Inferno (operating system)

Inferno (operating system) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Inferno (operating system) rather than just read about it. In short: Inferno is a MIT Licensed distributed operating system started at Bell Labs, is now held by Vita Nuova Holdings and maintained by Terzarima Systems. Inferno was based on the experience gained with Plan 9 from Bell Labs, and the further research of Bell Labs into operating systems, languages, on-the-fly compilers, graphics, security, networking and portability.

Inferno (operating system) — main illustration
Inferno (operating system) — illustration

Key takeaways

  • Inferno (operating system) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Inferno (operating system) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Inferno (operating system) from memory before moving on to harder problems.

Reference excerpt

Inferno is a MIT Licensed distributed operating system started at Bell Labs, is now held by Vita Nuova Holdings and maintained by Terzarima Systems. Inferno was based on the experience gained with Plan 9 from Bell Labs, and the further research of Bell Labs into operating systems, languages, on-the-fly compilers, graphics, security, networking and portability. The name of the operating system, many of its associated programs, and that of Vita Nuova were inspired by Dante Alighieri's Divine Comedy. In Italian, Inferno means "hell", of which there are nine circles in Dante's Divine Comedy. Inferno64 is a continuation of Inferno for 64-bit edge computing platforms.

Design principles Inferno was created in 1995 by members of the AT&T Bell Labs Computing Sciences Research Center to bring ideas derived from their previous operating system, Plan 9 from Bell Labs, to a wider range of devices and networks. Lucent would later shutdown the Bell Labs Computing Sciences Research Center in 2005. Inferno is a distributed operating system based on three basic principles:

Resources as files: all resources are represented as files within a hierarchical file system Namespaces: a program's view of the network is a single, coherent namespace that appears as a hierarchical file system but may represent physically separated (locally or remotely) resources; Derived from Plan 9 namespaces Standard communication protocol: a standard protocol, called Styx, is used to access all resources, both local and remote To handle the diversity of network environments it was intended to be used in, the designers decided a virtual machine (VM) was a necessary component of the system. This is the same conclusion of the Sun Microsystems Oak project that became Java, but arrived at independently. The Dis virtual machine is a register machine intended to closely match the architecture it runs on, in contrast to the stack machine of the Java virtual machine. An advantage of this approach is the relative simplicity of creating a just-in-time compiler for new architectures. This was inspired by AT&T's work on the CRISP processor. The virtual machine provides memory management designed to be efficient on devices with as little as 1 MiB of memory and without memory-mapping hardware. Its garbage collector is a hybrid of reference counting and a real-time coloring collector that gathers cyclic data. The Inferno kernel contains the virtual machine, on-the-fly compiler, scheduler, devices, protocol stacks, the name space evaluator for the file name space of each process, and the root of the file system hierarchy. The kernel also includes some built-in modules that provide interfaces of the virtual operating system, such as system calls, graphics, security, and POSIX compliant math modules.

Inferno Paper introducing the original Inferno release The Bell Labs Technical Journal paper introducing Inferno listed several dimensions of portability and versatility provided by the OS as of first public release in 1997:

Portability across processors: Inferno currently runs on Intel, Sun SPARC, ARM, SGI MIPS, HP PA-RISC, IBM PowerPC, and AMD 29k architectures and is readily portable to others. Portability across environments: it runs as a stand-alone operating system on small terminals, and also as a user application under Bell Labs Plan 9, Windows NT, Windows 95, and Unix. In all of these environments, Inferno programs see an identical interface. Distributed design: the identical environment is established at the user's terminal and at the server, and each may import the resources (for example, the attached I/O devices or networks) of the other. Aided by the communications facilities of the run-time system, programs may be split easily (and even dynamically) between client and server. Minimal hardware requirements: it runs useful applications stand-alone on machines with as little as 1 MiB of memory, and does not require memory-mapping hardware. Portable programs: Inferno programs are written in the type-safe language Limbo and compiled to Dis bytecode, which can be run without modifications on all Inferno platforms. Dynamic adaptability: programs may, depending on the hardware or other resources available, load different program modules to perform a specific function. For example, a video player might use any of several different decoder modules. These design choices were directed to provide standard interfaces that freed content and service providers from concern of the details of diverse hardware, software, and networks of the 1990s over which their content was delivered. The majority of IoT Hardware operating in 2024 used Linux in comparison to the hardware challenges that the Inferno designers faced.

Features

Application development and APIs To ensure memory safety, applications are written in the Limbo programming language, which provides static typing, garbage collection, and built-in concurrency features, this allows the operating system to safely run without a hardware MMU; only kernel modules and internal parts of the Dis virtual machine itself can be written in C. Limbo code is compiled into architecture-independent bytecode executed by the Dis virtual machine. The Dis VM can interpret the bytecode or compile it just-in-time into native instructions, allowing applications to run consistently across different platforms. Low level operating system functions such as process creation and inter-process communication are implemented within the Dis virtual machine itself; This means applications cannot access memory outside their allocated range and all resources such as file descriptors, network connections, and window manager objects are connected to the garbage collector; the garbage collector uses the very concurrent garbage collection algorithm. In hosted mode, kernel threads are handled by the host operating system.

… excerpt ends here. Continue reading the full article.

Illustrations

Inferno (operating system) illustration
Inferno (operating system): Lucent advertisement for Inferno in IEEE Internet Computing, Volume 1, Number 2, March–April 1997
Lucent advertisement for Inferno in IEEE Internet Computing, Volume 1, Number 2, March–April 1997

Worked examples

Example 1 — a first encounter with Inferno (operating system)

Start with the simplest possible case. Write down what Inferno (operating system) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Inferno (operating system) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Inferno (operating system) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Inferno (operating system)

In research
Inferno (operating system) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Inferno (operating system) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Inferno (operating system) is common in secondary-school and first-year university syllabi. It links to neighbouring topics 1996 software, ARM operating systems, Distributed operating systems, so understanding it makes those chapters shorter.
In everyday life
Look for Inferno (operating system) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Inferno (operating system) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Inferno (operating system) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Inferno (operating system) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Inferno (operating system) in simple terms?

Inferno is a MIT Licensed distributed operating system started at Bell Labs, is now held by Vita Nuova Holdings and maintained by Terzarima Systems. Inferno was based on the experience gained with Plan 9 from Bell Labs, and the further research of Bell Labs into operating systems, languages, on-the…

Why does Inferno (operating system) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Inferno (operating system)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Inferno (operating system).

Tags

  • 1996 software
  • ARM operating systems
  • Distributed operating systems
  • Embedded operating systems
  • Inferno (operating system)
  • MIPS operating systems
  • PowerPC operating systems
  • Real-time operating systems
  • X86 operating systems

Keep exploring