[发明专利]一种星载软件多任务实现的管道导航计算方法有效
| 申请号: | 202010112769.8 | 申请日: | 2020-02-24 |
| 公开(公告)号: | CN111427671B | 公开(公告)日: | 2022-07-29 |
| 发明(设计)人: | 王禹;贾艳胜;王文妍;杜耀珂;杨盛庆;完备;朱郁婓;崔佳;何煜斌;王嘉轶 | 申请(专利权)人: | 上海航天控制技术研究所 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 中国航天科技专利中心 11009 | 代理人: | 张晓飞 |
| 地址: | 201109 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 软件 任务 实现 管道 导航 计算方法 | ||
1.一种星载软件多任务实现的管道导航计算方法,其特征在于包括如下步骤:
步骤1声明任务优先级,姿轨控任务管道导航任务背景任务,任务优先级均小于外部中断优先级;
步骤2姿轨控任务采用定时触发方式,触发周期为T0,使用板上定时器实现;
步骤3管道导航任务能自主挂起,并由姿轨控任务唤醒,唤醒周期为T1;
步骤4对于姿轨控任务和管道导航任务间的共享数据,设计“原子锁”进行保护,保证读写操作的“原子性”;
所述步骤3的具体过程为:在姿轨控任务任务声明中定义入口变量Response,并在其任务体中实现针对此入口的相关操作,使用选择等待和条件备选语句实现条件会和,其中相应接受备选开放前提为条件Condition;当Condition满足且入口Response被其它任务调用时,执行对应语句块1:将姿轨控任务输入变量通过此种方式写入共享内存;当Condition不满足时执行语句块2:空语句null。
2.根据权利要求1所述的一种星载软件多任务实现的管道导航计算方法,其特征在于:所述步骤1的具体过程为:星载软件在姿轨控任务和管道导航任务的任务声明中使用任务优先级预编译命令分别定义优先级,实时内核默认将背景任务优先级定义为63,任务使用优先级为0~127,中断优先级为128~255;则定义127姿轨控任务优先级管道导航任务优先级63。
3.根据权利要求1所述的一种星载软件多任务实现的管道导航计算方法,其特征在于:所述步骤2的具体过程为:声明变量T0为时间间隔类型、NextCtrT为时间类型,并在姿轨控任务任务体中使用延迟语句并将每次任务执行时刻点NextCtrT自加T0,实现任务的周期性定时触发。
4.根据权利要求1所述的一种星载软件多任务实现的管道导航计算方法,其特征在于:所述步骤4的具体过程为:共享数据的保护使用保护类型实现,声明保护类型对象:包括共享内存中的变量以及操作此类变量的读写子程序声明;并在保护类型对象体中定义:读写子程序的具体实现;某任务调用读写子程序时,实时内核会将此任务优先级暂调至127,调用结束后恢复原优先级,保证多任务间数据传递的完整性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海航天控制技术研究所,未经上海航天控制技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010112769.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:双面传导冷却多薄片激光头
- 下一篇:按摩设备及其应用





