Multitasking

As a modern operating system, ACOS implements multitasking, a method where multiple tasks (processes) are performed during the same period of time. Since ComputerCraft Lua does not provide a way for true multitasking, ACOS can only achieve nonpreemptive multitasking. For this effect, coroutines are used.

Top Level Coroutine Override
Since LuaJ can only represent Lua coroutines as whole Java threads, coroutines themselves have a lot of overhead. Furthermore, ComputerCraft's default boot process (starting with ../bios.lua) automatically starts a coroutine for Rednet. A top level coroutine override (TLCO) is a technique that exploits the unsafe sandbox of the default ComputerCraft shell to kill the Rednet coroutine and replace the default os.shutdown function with custom code to achieve maximum optimisation.

ACOS performs a TLCO automatically during the boot sequence, therefore it does not run atop CraftOS (like other CC OSes and "OS"es) but rather instead of the os.shutdown call normally performed by bios.lua when the shell exits.

Scheduling
ACOS Scheduler is based off Linux's Completely Fair Scheduler. It tries to be as fair as possible to all running processes, giving each process CPU time according to the frequency at which it yields, to its priority and resources it utilizes. It also prefers processes that are interactive (i.e. need action from the user or communicate with surrounding environment, such as games or web browsers) and gives lower priority to daemons and background processes.