非屏蔽中断服务机制与uC/OS-II操作系统示例

需积分: 50 40 下载量 161 浏览量 更新于2024-08-07 收藏 2.52MB PDF 举报
"非屏蔽中断的禁止-数字信号处理第二版陈后金主编" 本文主要讨论的是非屏蔽中断(Non-Maskable Interrupt, NMI)的处理机制,特别是在数字信号处理的背景下。非屏蔽中断是一种高优先级的中断类型,其特点是无法通过软件中断屏蔽,即使在处理其他中断的过程中也会被立即响应。 在描述中提到,非屏蔽中断服务子程序平均每40次执行中会有一次需要向任务发送信号,这个过程不能直接通过内核服务完成。为了实现这一点,采用了一种机制,即通过非屏蔽中断生成一个普通可屏蔽中断。具体来说,非屏蔽中断通过一个输出口触发硬件中断,将输出口设置为有效电平。由于非屏蔽中断的优先级高,它不允许中断嵌套,即在处理非屏蔽中断的过程中,其他中断会被挂起。 当非屏蔽中断服务子程序执行完毕后,微处理器才会开始响应之前由非屏蔽中断触发的硬件中断。在这个硬件中断的服务子程序中,首要任务是清除中断源,即恢复输出口为无效电平,然后利用信号量唤醒需要被通知的任务。这种方式确保了任务的正确调度和中断处理的有序性。 标签提及的"uCOS"可能是指uC/OS-II,这是一个实时操作系统内核,常用于嵌入式系统。在提供的部分内容中,提到了使用uC/OS-II的示例,以及如何在基于Intel 80x86架构的PC上安装和运行这个操作系统。书中给出了使用Borland C/C++编译器创建和测试代码的步骤,并强调了选择PC作为目标系统的便利性,因为这样可以避免频繁的编程和下载操作。 安装过程包括在DOS或Windows 95环境下运行安装脚本,创建所需的目录结构,并将示例代码放置在指定位置。安装完成后,用户可以在\SOFTWARE\uCOS-II\EX1_x86L目录下找到第一个示例。 文章内容涉及非屏蔽中断的处理策略,以及在嵌入式实时操作系统uC/OS-II中的应用,而提供的部分文件内容则介绍了如何在Intel x86平台上准备和运行相关的示例代码。