|
CooCox CoOS是专门针对于ARM Cortex-M系列设计和优化的一款可剪裁的多任务实时内核。CooCox CoOS支持时间片轮询和优先级抢占两种不同的任务调度机制,支持软件定时器,并提供多种同步通信方式,如:信号量、邮箱、队列、事件标志、互斥体等。它符合CMSIS(Cortex Microcontroller Software Interface Standard)。
CoOS特征
Ø
免费、开源的实时操作系统;
Ø
针对Cortex-M系列处理器设计;
Ø
高度可裁剪性,最小系统内核仅974Byte;
Ø
自适应任务调度算法;
Ø
支持优先级和时间片轮转两种调度算法;
Ø
零中断调度时间;
Ø
能进行堆栈溢出检查;
Ø
支持信号量,互斥体,事件标志,邮箱和队列五种同步与通信方式;
Ø
符合CMSIS规范;
Ø
支持多种编译器:ICCARM,ARMCC,GCC。
n
CoOS 的技术参数
CooCox CoOS的时间技术参数如表C-1所列,空间技术参数如表C-2所列。
表C-1 时间特性
功能
|
时间 (无时间片轮转/有时间片轮转)
| 创建已定义的任务(无任务切换)
|
5.3us / 5.8us
| 创建已定义的任务(有任务切换)
|
7.5us / 8.6us
| 删除任务 (退出任务)
|
4.8us / 5.2us
| 任务切换 (切换内容)
|
1.5us / 1.5 us
| 任务切换 (在设置事件标志的情况下)
|
7.5us / 8.1us
| 任务切换 (在发送信号量的情况下)
|
6.3us / 7.0us
| 任务切换 (在发送邮件的情况下)
|
6.1us / 7.1us
| 任务切换 (在发送队列的情况下)
|
7.0us / 7.6us
| 设置事件标志 (无任务切换)
|
1.3us / 1.3us
| 发送信号量 (无任务切换)
|
1.6us / 1.6us
| 发送邮件(无任务切换)
|
1.5us / 1.5us
| 发送队列(无任务切换)
|
1.8us / 1.8us
| IRQ 中断服务程序的最大中断延迟时间
|
0 / 0
|
注:表9-1中数据是基于以下条件:STM32F103RB处理器、处理器主频72 MHz、代码从内部flash中运行、Flash延迟为2个等待状态、预取缓存允许。
表C-2 空间特性
描述
|
空间
| 内核占RAM 空间
| 168 Bytes
| 内核占代码空间
| < 1K Bytes
| 一个任务占RAM 空间
| TaskStackSize + 24 Bytes(MIN)
| TaskStackSize + 48 Bytes(MAX)
| 一个邮箱占RAM 空间
| 16 Bytes
| 一个信号量占RAM 空间
| 16 Bytes
| 一个队列占RAM 空间
| 32 Bytes
| 一个互斥体占RAM 空间
| 8 Bytes
| 一个用户定时器占RAM 空间
| 24 Bytes
|
|
评分
-
查看全部评分
|