Skip to content
/ ezos Public

co-operate OS with pure C lang. Support multitasks, priority, IPC, HSM, dynamic mem.

License

Notifications You must be signed in to change notification settings

draapho/ezos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  • 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 根据实际的需求调整相关配置, 设定任务名称和任务.
  • 更多用法见任务范例.

About

co-operate OS with pure C lang. Support multitasks, priority, IPC, HSM, dynamic mem.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages