REX(Real Time Executive)是一个面向嵌入式应用的,简单高效的,抢先式,多任务实时操作系统,支持基于优先级的任务调度算法(支持优先级反转)。它提供了任务控制,任务同步,互斥,定时器和终端控制等API。

  REX所有的函数都在任务上下文环境里执行。

  REX只需要少于5k的ROM控件,需要的RAM空间取决于运行的任务数目加上几k字节的状态数据和堆栈空间。

  REX处理了IRQ中断。

 

1. APC&DPC

? APC (Asynchronous Procedure Calls)是一种异步的程序调用机制,任务可以将一个函数调用及其参数放入另一目标任务的APC队列中,等待该目标任务恢复运行时,就会执行该函数调用。

? DPC (Deferred Procedure Calls)是一种延迟的程序调用机制,REX默认创建一个DPC任务,该任务会维护一个DPC队列,其工作就是循环读取队列中的数据,完成相应的调用工作。在这里,APC机制最终是通过DPC排队来实现的。