当前位置: 首页 > news >正文

国外企业档案馆网站的特色自己建网站需要什么

国外企业档案馆网站的特色,自己建网站需要什么,ueditor如何上传wordpress,建设网站大全先参考 FreeRTOS的任务触发底层逻辑 简述RTOS任务调度底层逻辑 AUTOSAR-OS的调度机制-调度表(没理解透,继续更新) OSEK与FreeRTOS在任务调度上最大的区别在于,FreeRTOS是基于全抢占任务调度和时间片轮转调度机制,具有…

先参考 FreeRTOS的任务触发底层逻辑  简述RTOS任务调度底层逻辑 AUTOSAR-OS的调度机制-调度表(没理解透,继续更新)

OSEK与FreeRTOS在任务调度上最大的区别在于,FreeRTOS是基于全抢占任务调度和时间片轮转调度机制,具有并发和并行的能力。而OSEK主要以调度表机制和Alarm机制触发任务,不具备并行的能力。最大的相同点是都是根据优先级高低的全抢占调度机制(OSEK可选非全抢占)。

调度表:

调度表被称为任务控制块表(Task Control Block Table,TCB Table),它是一个静态定义的数组,用于存储系统中所有任务的信息。一个调度表被划分成多个到期点Expiry Points,每个到期点对应一个时间片,每张调度表中所有要执行的任务都放在一个静态数组里。当一个到期点到达时,调度器会检查该到期点对应数组里的就绪任务,之后根据任务的优先级进行全抢占任务调度。

每个任务在调度表中都有一个对应的任务控制块(TCB),包含了任务的相关信息,如任务的优先级、堆栈指针、状态等。调度表中的任务按照其优先级从高到低的顺序进行排列。优先级较高的任务的任务控制块位于调度表数组的较低索引位置,优先级较低的任务位于较高索引位置。 OSEK 中,任务切换不像 FreeRTOS 的就绪列表那样使用双向链表,而是通过遍历数组来选择下一个任务进行执行。OSEK中任务的优先级数值越小,优先级越高。

调度表中的任务按照任务的优先级放在一个静态数组里,要想区分在每个到期点执行什么任务,就要根据任务的状态信息来区分,每个到期点被执行的时候,会先将当前到期点将要执行的任务从原来的Suspended状态切换到Ready状态,这样一来,在调度器调度任务的时候,就只会执行Ready状态下的任务,之后再根据优先级高低进行任务的调度。

在OSEK的调度表机制中,调度表是一个静态数据结构,可以将调度表理解为固定时间片轮转调度,和FreeRTOS的时间片轮转调度机制相似,但又不同。

调度表中的到期点 Expiry Points 是通过调度表定义的系统时钟中断触发的,通过配置系统时钟中断的频率来控制到期点的触发频率。当系统时钟中断发生时,调度器会根据到期点的时间要求和任务的截止时间进行任务调度和切换。

OSEK和FreeRTOS在时间片轮转调度最大区别在于,FreeRTOS的时间片轮转调度机制是就绪列表中相同优先级任务根据滴答时钟触发的中断轮番获取CPU的控制权,而OSEK的调度表是基于调度表定义的每个到期点实现任务的切换,之后在每个到期点的时间片中,又按照全抢占调度机制调度任务。

除此之外,如果调度表中到期点前的任务没有执行完,到期点将要执行的任务优先级高于没有执行完的任务,则实施全抢占任务调度,没有执行完的任务会被堆栈保存上下文,在下一个任务周期执行完上次没有执行完的部分。

如果调度表中到期点将要执行的任务优先级低于还未执行完的任务,那么调度器会继续执行当前正在执行的任务。所以,在开发过程中就要注意如果遇到调度表中到期点将要执行的任务优先级低于还未执行完的任务,要在未执行完的任务最后面加一个 TerminateTask 的函数,这个函数可以执行切换任务的动作。

Alarm:

如果说调度表是基于时钟触发的中断,之后利用调度器执行和切换任务。Alarm是基于时钟触发的事件,之后利用调度器在特定的时间点触发与之关联的任务。

Alarm是一种定时机制,也就是在特定的时间点触发与之关联的任务的执行,他与FreeRTOS的全抢占调度的区别在于,FreeRTOS的全抢占调度是没有时间概念的,只要有高优先级来,那就去抢,任务的触发不会遵循一种时间精度上的调度,而Alarm是可以精确时间周期的触发任务,虽然任务之间是全抢占,但当高优先级任务执行完,会切回到没有执行完的任务。

而Alarm与调度表的区别在于,首先调度表是一种静态的任务调度方式,在调度表中,每个任务都被分配了一个固定的时间片来执行,如果你没有执行完,并且任务优先级低,很抱歉,等下一次轮到你再说吧。

Alarm触发的任务是直接由外部事件驱动的,可以理解为FreeRTOS中全抢占调度任务,对任务的抢占能力极强,对于任务的优先级要求比较高。而调度表是由一个固定的时间片触发调度器控制的,类似于时间片轮转调度,抢占能力比较弱,要求的是你只要在固定的时间执行了这个功能就可以了,即便没有执行完,下一个周期执行也可以,对于任务的优先级要求不需要很高

在 Rte_Start 开启时,启用alarm,

在Rte_Stop时,停止alarm

http://www.yayakq.cn/news/619162/

相关文章:

  • 河南建设教育协会网站电子商务与网站建设的报告
  • 网站网页怎么压缩网站的建设流程
  • 做ktv的网站光谷网站制作
  • 公路建设项目可行性研究报告编制办法哪个网站查最新版江门网站推广设计
  • 网站为什么做站外推广上海市建设厅网站查询
  • 建设银行网站安全性分析公司网站制作与维护
  • 南宁网站推广方案如何做重庆模板建站软件
  • 做一个能注册用户的网站东莞网络推广优化
  • 门户网站seo营销软件知名乐云seo品牌
  • 网页qq登录网站html5企业网站带后台
  • h5网站建设方案.docwordpress网站添加阅读全文
  • 网站切图大图网络建设解决方案
  • 网站后台修改内容看不见了网络优化这个行业怎么样
  • 东营城镇建设规划网站中国乐清网
  • 想找人做网站 要怎么选择wordpress 集群
  • 可以做别人的网站上挂一个网页吗内蒙古呼和浩特职业学院
  • 合肥网站建设首选 晨飞网络电子商务网站开发与建设
  • 人社局网站群建设工作方案网站模板免费下载云资源
  • vs进行网站建设网站代码怎么看
  • python h5网站开发wordpress更新定位插件
  • 南京网站建设招聘什么软件免费设计logo
  • 王店镇建设中学网站义乌外包加工网
  • 五屏网站建设app和网站开发人员工作职责
  • 佛山新网站建设怎么样一些简单的编程代码
  • 哈尔滨网站搜索优化公司北京好的网站制作
  • wordpress 网站搭建设计制作中国第一架飞机的人是
  • 如何建立和设计公司的网站传奇网站怎么制作教程
  • 理财网站免费建设镇江网站建设企业
  • 宿迁网站建设开发网站被屏蔽怎么访问
  • 营口规划建设局网站小组用jsp做的网站论文