软件架构
XWOS的目录结构
Categories:
少于1分钟
XWOS在设计时就充分考虑了代码的复用性、移植性以及与第三方软件的兼容性, 代码被架构成多层结构:构建系统、BSP、操作系统内核、中间件和应用。

XWOS架构图
Photo: xwos.tech / CC-BY-SA-4.0
构建系统
xwbs
: 构建系统
BSP
xwcd
: 编译器、CPU、SOC、外设驱动相关的代码xwcd/ds
: 玄武设备栈,XWOS的驱动框架xwcd/perpheral
: 基于玄武设备栈,实现的各种外设驱动,代码可被不同SOC共享xwcd/soc
: 不同SOC的XWOS移植实现层的代码
xwbd
: 不同电路板的工程配置、调试脚本、链接脚本、驱动与应用。电路板目录还可以放在其他位置。
操作系统内核
xwos
: 内核xwos/osal
: 操作系统抽象层,统一的内核API,不区分操作系统的具体实现xwos/ospl
: 操作系统移植层,其中定义了内核提供给BSP的回调函数以及BSP需要提供给内核的函数xwos/lib
: 基本C函数库,包括原子操作库、位操作库、数据结构等xwos/mm
: 内存管理xwos/mp
: 多核(mp)内核xwos/up
: 单核(up)内核
中间件
xwmd
: 中间件xwmd/isc
: 系统间的通讯机制xwmd/isc/xwcq
: 线程间的循环队列xwmd/isc/xwmq
: 线程间的消息队列xwmd/isc/xwssc
: SOC与SOC间的点对点通讯协议xwmd/libc
: 标准C库的适配代码xwmd/xwrust
: XWOS RUST框架
xwem
: 第三方开源软件xwem/fs
: 各种开源的文件系统xwem/serializing
: 序列化与反序列化xwem/serializing/nanopb
: protocol-buffer
xwem/vm
: 虚拟机xwem/vm/lua
: Lua语言虚拟机
应用
xwam
: 参考代码以及应用代码
文档
xwxr
: API文档生成配置
最后修改 September 22, 2021: chore: :tada: 创建工程 —— 玄武操作系统网站 (8c48765)