CloudABI is a POSIX-like pure capability-based runtime environment, similar to capsicum(4). It can be
used to develop applications that are cross-platform, easier to test, and hardened against security
exploits.
Support for CloudABI on FreeBSD consists of three separate kernel modules. The cloudabi kernel module
implements all of the system calls that do not depend on data structures that differ between hardware
architectures.
The cloudabi32 and cloudabi64 kernel modules provide implementations of all of the machine-dependent
system calls, assuming that pointers stored in data structures are either 32 bits or 64 bits in size.
These modules also provide the image activators that load and start ELF executables.
Though the cloudabi module can be loaded on any architecture supported by FreeBSD, the cloudabi32 module
is only available on amd64, arm64, armv6, armv7 and i386. The same holds for the cloudabi64 module,
which is only available for amd64 and arm64.
A full cross compilation toolchain for CloudABI is available in the devel/cloudabi-toolchain port.
The sysutils/cloudabi-utils port provides the cloudabi-run(1) utility. cloudabi-run(1) can be used to
safely execute CloudABI processes with access to a restricted set of resources.