[发明专利]一种控制方法和装置有效
申请号: | 202010073947.0 | 申请日: | 2020-01-22 |
公开(公告)号: | CN111258684B | 公开(公告)日: | 2023-09-29 |
发明(设计)人: | 董广谱;李蒙 | 申请(专利权)人: | 北京和利时控制技术有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F9/54 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 王康;栗若木 |
地址: | 100176 北京市大兴区北京经*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 控制 方法 装置 | ||
本发明公开了一种控制方法,包括:接收被调用的接口函数发送的进程间通信IPC消息;其中,所述IPC消息包括消息类型;根据所述消息类型调用与所述消息类型对应的处理函数,被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数。本发明还公开了一种控制装置。本发明提供的方法和装置能够简化了PLC控制器软件的开发难度和开发工作量。
技术领域
本发明涉及控制领域,尤其涉及控制领域中一种控制方法和装置。
背景技术
基于龙芯LS2K1000双核处理器研发了高安全的微内核操作系统内核(简称微内核),该微内核运行在CPU的内核空间。基于该微内核还开发了PLC控制器软件,该PLC控制器软件运行在CPU的用户空间。
该微内核只提供线程管理、进程间通信(IPC)、虚拟内存空间、句柄空间、设备基础单元(中断对象)五项功能,这些功能十分有限且非常原始,使得直接使用这些功能开发PLC控制器软件不仅工作难度大,而且工作量大。
发明内容
本发明要解决的技术问题是提供一种控制方法和装置,简化了PLC控制器软件的开发难度和开发工作量。
为了解决上述技术问题,本发明实施例提供了一种控制方法,包括:
接收被调用的接口函数发送的进程间通信IPC消息;其中,所述IPC消息包括消息类型;
根据所述消息类型调用与所述消息类型对应的处理函数,被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数。
一种示例性的实施例中,上述方法还具有下面特点:
所述消息类型为任务创建;所述被调用的接口函数为用于创建任务的接口函数;所述IPC消息还包括任务的任务栈大小、任务入口地址;
所述消息类型对应的处理函数为用于创建任务的处理函数;所述被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数包括:
所述用于创建任务的处理函数申请一个空闲的任务描述符;其中,所述任务描述符包括线程关键信息、线程通知句柄、线程入口地址;所述线程关键信息包括线程任务控制块TCB句柄、线程栈指针和IPC内存指针;
向内核申请任务控制块TCB内存,将返回的句柄赋给线程TCB句柄;
向内核申请IPC内存,将返回的内核中该任务的IPC内存地址赋给IPC内存指针;
根据所述任务栈大小向内核申请栈内存,将返回的栈地址赋给线程栈指针;
记录所述任务入口地址,将所述任务入口地址赋值给线程入口地址;
生成的包含所述线程TCB句柄的IPC应答消息,返回给所述用于创建任务的接口函数。
一种示例性的实施例中,上述方法还具有下面特点:
所述消息类型为激活任务;所述被调用的接口函数为用于激活任务的接口函数;所述IPC消息还包括线程TCB句柄、任务栈大小和任务优先级;
所述消息类型对应的处理函数为用于激活任务的处理函数;所述被调用的处理函数执行相应处理后,构建IPC应答消息返回给所述被调用的接口函数包括:
所述用于激活任务的处理函数根据从所述IPC消息中解析出线程TCB句柄获取该线程TCB句柄对应的任务描述符;
将任务描述符中的线程入口地址、栈地址、IPC内存地址以及所述IPC消息中的任务优先级、任务栈大小写入相应的寄存器;
若写入成功,则生成包含任务激活成功的IPC应答消息,返回给所述用于激活任务的接口函数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京和利时控制技术有限公司,未经北京和利时控制技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010073947.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:注氢储氢罐
- 下一篇:天线封装模组和电子设备