主要内容

任务执行是什么?

一个任务是一个执行单元或工作单元在一个软件应用程序。一般来说,任务执行在嵌入式处理器是由操作系统(OS)。当部署到嵌入式处理器,一个任务对应于一个OS线程。的SoC Blockset™定义了执行生命周期和OS线程关系如下。

任务执行生命周期

一个任务的生命周期可以分为五个州:

  • 创建——系统在应用程序启动时创建的所有任务,立即移动他们到等待状态。

  • 等待——任务等待相关的触发信号,如操作系统的定时器或I / O设备。接收到触发信号后,任务开始运行。如果任务优先级最高,进入运行状态。否则,继续等待,直到它变成最高优先级任务,触发任务。

  • 运行——任务执行其代码。当代码执行完成,任务立即移动到等待状态。如果发生触发一个高优先级的任务,正在运行的任务抢占移状态。

  • 抢占——任务抢占和等待运行。一个任务运行基于任务优先级的组合和订单任务进入抢占状态。假设所有其他任务的任务优先级相等准备好简历状态、任务运行基于先进先出(FIFO)排序。

  • 终止——任务终止应用程序结束时。

这个图显示了一个任务执行的状态图使用一个操作系统为应用程序的生命周期。为简单起见,终止状态没有显示,但一个任务可以达到从任何其他州的终止状态。

任务和线程

一个任务是一个概念性的工作单元在一个算法。在一个应用程序在设备上执行,任务执行的一段代码在一个线程在一个操作系统(OS)。操作系统线程确定任务的执行状态。在SoC Blockset,任务具体指的是模型的一部分金宝app®模型中包含一个率或函数调用子系统。来自一个触发信号的子系统任务管理器块。当部署到硬件,操作系统线程使用任务属性。线程执行的代码产生的子系统。从概念上讲,一个任务在模拟相当于线程在生成的代码。

另请参阅

相关的话题

外部网站