[发明专利]一种控制方法和装置有效
申请号: | 202010073947.0 | 申请日: | 2020-01-22 |
公开(公告)号: | CN111258684B | 公开(公告)日: | 2023-09-29 |
发明(设计)人: | 董广谱;李蒙 | 申请(专利权)人: | 北京和利时控制技术有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F9/54 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 王康;栗若木 |
地址: | 100176 北京市大兴区北京经*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 控制 方法 装置 | ||
1.一种控制方法,其特征在于,包括:
接收被调用的接口函数发送的进程间通信IPC消息;其中,所述IPC消息包括消息类型;
根据所述消息类型调用与所述消息类型对应的处理函数,被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数;
其中,所述消息类型为任务创建;所述被调用的接口函数为用于创建任务的接口函数;所述消息类型对应的处理函数为用于创建任务的处理函数;
所述消息类型为激活任务;所述被调用的接口函数为用于激活任务的接口函数;所述消息类型对应的处理函数为用于激活任务的处理函数;
所述消息类型为任务睡眠;所述被调用的接口函数为用于任务睡眠的接口函数;所述消息类型对应的处理函数为用于任务睡眠的处理函数;
所述消息类型为页面映射或DMA映射;所述被调用的接口函数为用于页面映射的接口函数或用于DMA映射的接口函数;所述消息类型对应的处理函数为用于页面映射的处理函数或用于DMA映射的处理函数;
所述接口函数是指基于龙芯处理器和微内核操作系统的PLC控制器的软件接口的接口函数。
2.如权利要求1所述的方法,其特征在于,包括:
所述IPC消息还包括任务的任务栈大小、任务入口地址;
所述被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数包括:
所述用于创建任务的处理函数申请一个空闲的任务描述符;其中,所述任务描述符包括线程关键信息、线程通知句柄、线程入口地址;所述线程关键信息包括线程任务控制块TCB句柄、线程栈指针和 IPC内存指针;
向内核申请任务控制块TCB内存,将返回的句柄赋给线程TCB句柄;
向内核申请IPC内存,将返回的内核中该任务的IPC内存地址赋给IPC内存指针;
根据所述任务栈大小向内核申请栈内存,将返回的栈地址赋给线程栈指针;
记录所述任务入口地址,将所述任务入口地址赋值给线程入口地址;
生成的包含所述线程TCB句柄的IPC应答消息,返回给所述用于创建任务的接口函数。
3.如权利要求1所述的方法,其特征在于,包括:
所述IPC消息还包括线程TCB句柄、任务栈大小和任务优先级;
所述被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数包括:
所述用于激活任务的处理函数根据从所述IPC消息中解析出线程TCB句柄获取该线程TCB句柄对应的任务描述符;
将任务描述符中的线程入口地址、栈地址、IPC内存地址以及所述IPC消息中的任务优先级、任务栈大小写入相应的寄存器;
若写入成功,则生成包含任务激活成功的IPC应答消息,返回给所述用于激活任务的接口函数;
若写入失败,则生成包含任务激活失败的IPC应答消息,返回给所述用于激活任务的接口函数。
4.如权利要求1所述的方法,其特征在于,包括:
所述IPC消息还包括睡眠时间和IPC内存地址;
所述被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数包括:
所述用于任务睡眠的处理函数根据从所述IPC消息中解析出的IPC内存地址查找相应的任务描述符;所述任务描述符包括线程睡眠时间、线程通知句柄;
将所述睡眠时间赋值给线程睡眠时间;
获取任务描述符的线程通知句柄;
生成包括所述线程通知句柄的IPC应答消息,返回给所述用于任务睡眠的接口函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京和利时控制技术有限公司,未经北京和利时控制技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010073947.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:注氢储氢罐
- 下一篇:天线封装模组和电子设备