保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

嵌入式实时系统中断管理技术研究


2,V_D3,…,V_Dn,在实现中分别取值:0x2000、0x2100、0x2200等,即每个虚向量号间距256个字节。在Delta OS内核中声明了一个全局虚向量表_ISR_VECTOR_TABLE,通过系统调用delta_interrupt_catch,将用户的中断服务程序安装到指定的虚向量号处。Delta OS 用统一的中断接口函数_ISR_Handler 来处理外部中断。在模型实现中有两个重要的功能模块:用户中断安装模块和中断处理模块。下面分别用伪代码描述这两个模块的功能。

  用户中断安装模块delta_interrupt_catch 的伪代码实现如下:

delta_interrupt_catch(vector, new_isr_handler,old_isr_handler){

① 检查向量号的有效性

② 检查新中断服务程序的有效性

③ 保存旧的中断服务程序指针

④ 安装用户指定的新中断服务程序

_ISR_VECTOR_TALBE[vector]=new_isr_handler

}

外设中断触发时,中断处理模块_ISR_Handler的伪代码实现如下:

_ISR_Handler(void){

① 中断现场的

保护

② 中断屏蔽位的设置

③ 外设中断标志的检测

switch ( 标志) {

case PPC_D1:

F1=_ISR_VECTOR_TABLE[V_D1]且执行F1的功能

case PPC_D2:

F2=_ISR_VECTOR_TABLE[V_D2]且执行F2的功能

case PPC_D3:

F3=_ISR_VECTOR_TABLE[V_D3]且执行F3的功能

.

.

.

case PPC_Dn:

Fn=_ISR_VECTOR_TABLE[V_Dn]且执行Fn的功能

default:

执行系统默认的中断处理程序

}

④ 中断屏蔽位的恢复

⑤ 根据调度标志进行调度

⑥ 中断现场的恢复

}

图5

  此技术已成功解决了PowerPC MPC860中单向量多中断处理的问题,而且其实现并不影响嵌入式内核的体系,具有较好的移植性。

3 小 结

  本文主要研究了嵌入式实时系统中断管理技术,从硬件体系和系统管理两方面阐述了影响中断性能的因素,着重分析了嵌入式内核中断管理模式。在嵌入式内核中断管理中,归结出“中断前-后段处理”模型,并针对一些处理器的多中断共用一个向量的问题,引入了单向量多中断处理的映射技术,并给以实现,对提高嵌入式实时系统的实时性提供了一定的参考价值。

《嵌入式实时系统中断管理技术研究(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/164987.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。