thox, a simple multi-tasking OS for ComputerCraft

thox is a simple operating system for ComputerCraft providing pre-emptive multitasking, secure thread sandboxing and simple IPC.

The source repository is available on my forge.

The documentation is organized as suggested by Daniele Procida in his conference “What nobody tells you about documentation” (watch), which was filmed at PyCon Australia 2017; watching this conference is recommended for contributing to this wiki. It uses a specific vocabulary; see Vocabulary employed in this documentation.

Any question? Any issue? Any security flaw, such as a sandbox escape? You can either contact me by mail at thomas@touhey.fr or on the Computer Mods Discord Server (@cake).

Warning

This project is in early alpha and documentation-driven, which means the documentation will very probably be in advance on the code. This is because I strongly believe that while the code might disappear, what will stay is the concepts and the user experience attempted at in this project, and the notions covered in the documentation (including protocols’ and file formats descriptions).

Onboarding

You’re a ComputerCraft player looking to try thox out? Welcome on board! These tutorials are made for you.

Howtos

In this section, you will be able to find tutorials for doing specific actions using thox.

Environment

Understanding thox’s inner workings depend on understanding general concepts of computers in the ComputerCraft Minecraft mod, and their interactions between them and with their environment.

In this section, you will find explanations about these.

System design

The thox approach is that of a microkernel one, which is to separate as much as possible distinct software components in order for the newcomer to be able to understand them one by one without requiring two pages to be opened at once.

In this section, you’ll be able to find explanations, usage instructions, API reference and internal mechanisms descriptions for each of the thox components.