RetroBSD is a port of 2.11BSD Unix intended for embedded systems with fixed memory mapping. The current target is Microchip PIC32 microcontroller with 128 kbytes of RAM and 512 kbytes of Flash. PIC32 processor has MIPS M4K architecture, executable data memory and flexible RAM partitioning between user and kernel modes.
- Small resource requirements. RetroBSD needs only 128 kbytes of RAM to be up and running user applications.
- Memory protection. Kernel memory is fully protected from user application using hardware mechanisms.
- Open functionality. Usually, user application is fixed in Flash memory - but in case of RetroBSD, any number of applications could be placed into SD card, and run as required.
- Real multitasking. Standard POSIX API is implemented (fork, exec, wait4 etc).
- Development system on-board. It is possible to have C compiler in the system, and to recompile the user application (or the whole operating system) when needed.