没有合适的资源?快使用搜索试试~ 我知道了~
首页RivieraWaves 笔记.pdf
RivieraWaves 笔记.pdf

RivieraWaves 笔记.pdf 大概《RW-BT-KERNEL-SW-FS》的中文翻译版本
资源详情
资源评论
资源推荐

QQ 群:177341833 公众号:Bluetooth-BLE 论坛:bbs.codertown.cn
RivieraWaves 内核笔记
1、 概括
1.1、特征
RW 内核是一个很小和高效实时操作系统,有如下特征:
消息交换机制
消息保存
时钟管理函数
内核提供一个事件处理函数用于某些定义了的行为
1.2、源文件结构
文件
描述
ke_config.h
文件中定义了所有用来裁剪内核而改变的常量。
ke_env.c, .h
文件包含了内核环境定义。
ke_event.c; .h
包含事件处理基元。
ke_mem.c; .h
堆管理模块的实现。
ke_msg.c, .h
文件中包含创建和删除一个任务的调度,也包含调
度机制。
ke_queue.c; .h
包含不同队列的处理函数。
ke_task.c; .h
包含内核任务管理的实现。
ke_timer.c, .h
包含创建和删除一个定时任务的调度,也包括定时
器调度机制。
1.3、头文件
为了使用内核提供的服务,需要包含以下两个头文件:
ke_task.h
ke_timer.h
1.4、内核环境
内核环境结构包含事件、定时器和消息管理的队列:
evt_field:发送信息队列,但还没有递送到接收器;
queue_sent:发送消息队列,但还没有递送到接收器;
queue_saved:递送消息队列,但是没有被接收器处理;
queue_timer:定时器队列
mblock_first:指向第一个连接列表元素的指针。
如果使能内核设定,则一下内容会被加入:
max_heap_used:内核使用的最大堆内存;
queue_timer:递送消息队列,但是没有被接收器处理。
2、 消息
2.1 概述
消息队列提供向任务发送一个或多个消息的机制,两个队列被定义如下:
queue_sent:发送消息队列,但是还没有递送给接收器;
queue_saved:递送消息队列,但是还没有被接收器处理。
完成消息发送有三个步骤:
发送任务分配一个消息结构空间;
填充消息参数;
消息结构压栈至内核。
消息是通过一个唯一 ID 识别的,该 ID 包含任务类型和一个增长的数。以














安全验证
文档复制为VIP权益,开通VIP直接复制

评论1