View Code? Open in Web Editor
NEW
co-operate OS with pure C lang. Support multitasks, priority, IPC, HSM, dynamic mem.
License: BSD 3-Clause "New" or "Revised" License
C 99.73%
Assembly 0.26%
Python 0.01%
ezos's Introduction
- BSD 3 许可证.
- 协作式OS, 纯C语言编写, 使用方便, 便于移植.
- 可动态添加或删除任务, 易于使用和理解的任务延时方案.
- 支持优先级, 支持信号量, 支持多任务及任务动态内存
- 任务支持HSM, 多层状态机
- 极低的硬件需求, 以GCC无优化(o0), 默认的8个任务为例:
EZOS模块 |
FLASH (Bytes) |
RAM (Bytes) |
核心模块 |
1000 |
200 |
IPC 功能 |
100 |
50 |
MEM 功能 |
450 |
50 |
ASSERT 功能 (调试用) |
200 |
0 |
TEST 功能 (调试用) |
250 |
50 |
LOG 功能 (调试用) |
3000 (调用 printf 引起的) |
100 |
- 移植注意事项:
- 将
ezos_tick_irq()
放入系统定时中断内
- main 函数内, 先禁止中断, 在调用
ezos_init()
后再打开中断.
- 完成所有的初始化工作后, 使用
task_add()
添加一个任务.
- 最后调用
ezos_schedule()
, 这是一个死循函数, 会自动执行就绪态的任务.
- 进入
ezos_cfg.h
根据实际的需求调整相关配置, 设定任务名称和任务.
- 更多用法见任务范例.
ezos's People
Contributors
Stargazers
Watchers