Reference project repository#
The main repository of Phoenix-RTOS is the phoenix-rtos-project. The project consists of the following GitHub submodule repositories.
-
Standard C library. Written from scratch for Phoenix-RTOS.
-
Building scripts, makefile templates, rules, flags definitions, target selection and toolchain.
-
Libraries for use in user space.
-
Hardware drivers.
-
Documentation.
-
Filesystem drivers.
-
Utilities for development PC (e.g. a tool for transferring system binary image to the target).
-
Microkernel repository.
-
LwIP network stack.
-
Linux (and potentially other OSes) applications ported to Phoenix-RTOS.
-
POSIX server; user space server that is providing additional POSIX features not provided by the kernel itself (e.g. pipes).
-
Tests based on our own framework.
-
USB stack (both host and device).
-
System utilities (e.g. native shell psh).
-
Phoenix-RTOS bootloader.
There are other directories and files directly in phoenix-rtos-project
.
_fs/
- rootfs template,_targets/
- rules for building the system for each hardware target,_user/
- user applications are placed here. Some demos are available from the box - e.g. hello world, voxeldemo,mtd-utils
- outside tool for creating jffs2 partitions,riscv
- bootloader for RISC-V CPU,scripts
- bash scripts for running Phoenix-RTOS on simulators (e.g. QEMU),build.project
- bash include file, defines how to build the whole system, it is included by phoenix-rtos-build/build.sh,busybox-config
- configuration for busybox (baseline Linux based toolkit and shell),docker-build.sh
- script for building using docker (docker allows user to not have toolchain on his or her development PC).