EDA365电子论坛网

标题: 设计基于ARM的微型内核设计,求大佬指点??? [打印本页]

作者: cpupygu    时间: 2019-7-29 16:01
标题: 设计基于ARM的微型内核设计,求大佬指点???
实现任务调度,任务间通信IPC,内存管理API,具体哪些文件和函数需要自己来写,求指导
) d5 @  K# b. K9 [8 t7 M$ `1 J
作者: kinidrily    时间: 2019-7-29 17:48
虽然是微型内核,但RTOS的东西基本上也都要有,这里以ucos为参考,你实现也应该参考其中的代码。
/ o  C7 ?' U& p1 W, o' }  R" F2 w. x      任务调度主要实现就是数据的压栈,出栈,现场状态保存/恢复,最高优先级线程调度,任务切换,这些都是由os_cpu_a.asm、os_cpu_c.c, os_core.c,  os_task.c两个文件完成的,另外因为系统本身任务还需要时钟定时切换,所以os_time.c也是必须的
* n2 g5 [' I9 o- W# B( c- f9 s( Y      IPC通讯包含信号量,邮箱和消息队列等,因为你这是微型的,我建议只简化实现信号量就可以了,也就是参考os_sem.c
& B: C9 }% k; Z3 Z      内存管理主要提供数据块的内部管理机制,理论上和上面联系不大,参考os_mem.c,另外可以参考别人总结的<简易0S设计>文档,基本吃透了写个微型内核没啥问题。

+ U, m6 }# ^" h* \+ v8 P  X- Y& Y7 |5 C

% Z# Y, m6 @' L+ v 8. 简易0S设计.pdf (374.41 KB, 下载次数: 0) 1 M+ c8 p# D# j. X

作者: gaoxings    时间: 2019-7-29 18:13
kinidrily 发表于 2019-7-29 17:48
! F0 m8 t: ~1 a+ X3 q虽然是微型内核,但RTOS的东西基本上也都要有,这里以ucos为参考,你实现也应该参考其中的代码。
: f2 l$ r3 T! g       ...
, g# |9 r9 k% O9 t4 L/ @3 p* H
; P4 g: _, i6 p





欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2