Source Tree Structure
The Zephyr source tree provides the following top-level directories, each of which may have one or more additional levels of subdirectories which are not described here.
arch
Architecture-specific nanokernel and platform code. Each supported architecture has its own subdirectory, which contains additional subdirectories for the following areas:
- architecture-specific nanokernel source files
- architecture-specific nanokernel include files for private APIs
- platform-specific code
boards
- Board related code and configuration files.
doc
- Zephyr documentation-related material and tools.
drivers
- Device driver code.
include
- Include files for all public APIs, except those defined under
lib
. kernel
- Microkernel code, and architecture-independent nanokernel code.
lib
- Library code, including the minimal standard C library.
misc
- Miscellaneous code.
net
- Networking code, including the Bluetooth stack and networking stacks.
samples
- Sample applications for the microkernel, nanokernel, Bluetooth stack, and networking stacks.
tests
- Test code and benchmarks for the various kernel features.
scripts
- Various programs and other files used to build and test Zephyr applications.