主要内容

什么是任务执行?

任务是软件应用程序中的执行单元或工作单元。通常,嵌入式处理器中的任务执行由操作系统(OS)管理。当部署到嵌入式处理器时,任务对应于操作系统线程。SoC块集™ 定义执行生命周期以及与OS线程的关系,如下所示。

任务执行生命周期

任务的生命周期可分为五种状态:

  • 创建–系统在应用程序启动时创建所有任务,并立即将其移动到等待状态。

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

  • 跑步–任务执行其代码。当代码完成执行时,任务立即进入等待状态。如果发生更高优先级任务的触发器,则正在运行的任务将移动到抢占状态。

  • 先发制人–任务被抢占并等待运行。任务基于任务优先级和任务输入顺序的组合运行先发制人国家。假设任务优先级与中的所有其他任务相同准备好恢复了吗状态,任务根据先进先出(FIFO)顺序运行。

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

此图显示了使用OS的应用程序的任务执行生命周期的状态图。为简单起见,未显示终止状态,但任务可以从任何其他状态到达终止状态。

任务和线程

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

另见

相关话题

外部网站