[发明专利]一种ThreadX操作系统在ARM处理器上的运行方法有效
申请号: | 201610784549.3 | 申请日: | 2016-08-30 |
公开(公告)号: | CN106406991B | 公开(公告)日: | 2019-12-17 |
发明(设计)人: | 王大鹏 | 申请(专利权)人: | 西安航天华迅科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 61219 陕西增瑞律师事务所 | 代理人: | 孙卫增 |
地址: | 710075 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种ThreadX操作系统在ARM处理器上的运行方法,包括以下步骤:步骤一、初始化ARM处理器的运行环境并切换至特权模式;步骤二、初始化ARM处理器的底层任务;步骤三、创建中断上下文线程堆栈框架,并初始化中断上下文线程堆栈框架及创建线程;步骤四、将执行线程的中断上下文加载到ARM寄存器中,并对执行线程开始处理,此时执行线程变为当前线程,在当前线程运行过程中进行响应同步事件处理和异步事件处理,同步事件处理为主动线程切换过程,而异步事件处理为被动中断响应过程;基于本方法所构建的系统平台实时性强,可靠性高,且中断响应速度非常快;本发明支持ThreadX操作系统的内核剥夺及基于时间片的轮转调度功能,实现了中断嵌套功能。 | ||
搜索关键词: | 一种 threadx 操作系统 arm 处理器 运行 方法 | ||
【主权项】:
1.一种ThreadX操作系统在ARM处理器上的运行方法,其特征在于,包括以下步骤:/n步骤一、初始化ARM处理器的运行环境并切换至特权模式;/n步骤二、初始化ARM处理器的底层任务;/n步骤三、创建中断上下文线程堆栈框架,并初始化所述中断上下文线程堆栈框架及创建线程;/n步骤四、将执行线程的中断上下文加载到ARM寄存器中,并对所述执行线程开始处理,此时所述执行线程变为当前线程,在当前线程运行过程中进行响应同步事件处理和异步事件处理,同步事件处理为主动线程切换过程,而异步事件处理为被动中断响应过程;/n所述步骤四中异步事件处理过程如下:/n当所述当前线程运行过程中发生异步事件时,通过调用中断处理函数保存当前线程执行现场,然后开始执行中断服务例程,待中断服务例程执行完成后,根据被中断的所述当前线程中断点位置及执行线程和所述当前线程的状态信息,恢复执行现场或进行内核剥夺操作;/n所述异步事件处理过程中,所述保存当前线程执行现场的方法为:/na、在中断模式中,调用中断处理函数执行中断模式跳转指令,所述跳转指令分为无线程执行时的空循环指令区域、正在运行的线程指令区域、中断例程指令区域,所述中断处理函数将根据中断点落入的区域进行保存当前线程执行现场:/n当保存中断点位于无线程执行时的空循环指令区域时,不保存任何寄存器;/n当保存中断点位于正在运行的线程指令区域和中断例程指令区域时将SPSR寄存器保存到当前中断模式的堆栈中;然后递增系统状态变量的计数,所述系统状态变量的计数表示当前中断嵌套层数,也表示当前位于中断模式中;/nb、通过系统自动跳转到中断入口函数执行中断请求,首先将处理器的模式切换为系统模式,将系统模式下的lr寄存器压入堆栈中,之后调用中断服务例程,进行异步事件处理;/nc、所述异步事件处理完成后,恢复系统模式下的lr寄存器,然后将系统的模式切换回中断模式,进行恢复执行现场或进行内核剥夺操作。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安航天华迅科技有限公司,未经西安航天华迅科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610784549.3/,转载请声明来源钻瓜专利网。