Introduction to Collapse OS
Collapse OS is a minimal operating system created to preserve
the ability to program microcontrollers through civilizational
collapse. Its author expects the collapse of the global supply
chain means the loss of our computer production capability. Many
microcontrollers require a computer to program them.
Collapse OS innovates by self-hosting on extremely tight resour-
ces and is thus able to operate and be improved in a world
without modern computers.
This OS is a Forth. It doesn't adhere to any pre-collapse stand-
ard, but is pretty close to the Forth described in Starting
Forth by Leo Brodie. It is therefore the recommended introduct-
ory material to learn Forth in the context of Collapse OS.
If you don't have access to this book and don't know anything
about Forth, learning Collapse OS could be a rough ride, but
I'm sure you can do it. Begin with doc/usage.
Documentation and self-hosting
Collapse OS is self-hosting, its documentation is not, that is,
Collapse OS cannot read this document you're reading. Text
blocks could, of course, be part of Collapse OS' blocks, but
doing so needlessly uses blocks and make the system heavier than
This documentation is expected to be printed before the last
modern computer of your community dies.
When you explore the contents of Collapse OS' code, you'll
notice "Virgil's workspace" littered around. Those blocks are
of no importance to you directly, but they contain code that I
use myself while I work from within Collapse OS.
They can provide great insights as to how tools are supposed to
Where to begin?
If you're reading this and don't know where to begin, you're
likely to have access to a modern computer. The best place to
begin is to build the C VM of Collapse OS in /cvm. You can then
begin playing with it with the help of doc/usage and doc/impl.
When you're ready to move to real hardware, read doc/hw/intro.
Other topics in this documentation
* Dictionary of core Forth words (doc/dict)
* Understanding Collapse OS (doc/grok)
* Design considerations (doc/design)
* Editing text (doc/ed)
* Editing binary memory (doc/me)
* Assembling binaries (doc/asm/intro)
* Disassembling binaries (doc/dis)
* Emulators (doc/emul)
* Code conventions (doc/code/intro)
* Cross-compilation mechanisms (doc/cross)
* Architecture management (doc/arch)
* Bootstrap Collapse OS to a new system (doc/bootstrap)
* Hardware Drivers (doc/drivers)
* Self-hosting notes (doc/selfhost)
* Frequently asked questions (doc/faq)
There are other subjects, you are invited to browse the doc/
folder to discover them.
This page generated at 2023-12-05 21:05:04 from documentation in CollapseOS snapshot 20230427.