1.一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,包括任务上下文初始化和任务上下文切换两个步骤:(1)任务上下文初始化按照TriCore架构处理器的寄存器格式构建任务上下文结构体,将32个寄存器分为两组上下文,每组上下文存储16个寄存器数据;为每个任务分配两个上下文存储区,任务控制块的栈字段设置为第二个上下文存储区基地址;第二个上下文存储区的链接字指向第一个上下文存储区;任务初始化时,任务栈地址存储在第一组上下文中,返回地址存储在第二组上下文中;(2)执行当前任务和新任务的上下文切换,具体流程如下:(2.1)操作系统调用任务上下文切换函数时自动保存第一组上下文的寄存器数据到当前任务的第一个上下文存储区;(2.2)执行svlcx指令保存第二组上下文的寄存器数据到当前任务的第二个上下文存储区;(2.3)将PCXI寄存器数据写入当前任务的任务控制块栈字段;(2.4)将新任务的任务控制块栈字段数据写入PCXI寄存器;(2.5)执行rslcx指令从新任务的第二个上下文存储区中取出第二组上下文的寄存器数据,写入第二组上下文的对应寄存器中,PCXI寄存器值变为第一个上下文存储区基地址;(2.6)执行rfe指令从新任务的第一个上下文存储区中取出第一组上下文的寄存器数据,写入第一组上下文的对应寄存器中,读取返回地址寄存器,并跳转到返回地址处开始执行新任务。
2.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,在任务上下文切换过程中软件只需要修改PCXI寄存器数据,该寄存器存储任务上下文存储区基地址,其余任务运行所需的寄存器值由硬件快速完成更新。
3.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,第二组上下文的返回地址在任务上下文初始化过程中,设置为任务入口函数,在任务被抢占时,设置为存储任务的程序运行地址,在恢复任务上下文时,执行rfe指令跳转到该地址继续执行。
4.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,任务运行时两组上下文寄存器数据被写入对应的处理器寄存器中,两个上下文存储区会被释放,PCXI寄存器值失效。
5.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,任务被抢占时将重新分配两个上下文存储区分别存储任务的两组上下文,PCXI寄存器被设置为第二个上下文存储区基地址。
6.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,汇编指令svlcx、rslcx和rfe根据PCXI寄存器指向的任务上下文存储区完成任务上下文的保存和恢复。
7.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,任务的第一组上下文中还可以存储安全检查函数地址,安全检测函数在任务运行结束时自动跳转执行,该函数释放任务占用的系统资源并执行相应的安全检测。
8.根据权利要求1所述的一种基于TriCore架构处理器的操作系统任务上下文管理方法,其特征在于,任务第一组上下文寄存器中包含程序运行状态PSW寄存器,可以在任务切换时根据需要管理任务的处理器特权级别。