前言

  • 熟悉实时的操作系统RTOS,需要深入理解【任务调度器】的原理与实现方法
  • 大部分的实时操作系统RTOS,任务调度器算法都是【抢占式的】(可剥夺方式)

介绍

  • 任务是实时操作系统RTOS的最重要的管理与操作对象,或者称为【资源】,每个任务在RTOS的调度器的安排下,由CPU分时执行

调度方式

  • 时间分片式,也就是按时间片轮转调度
  • 轮流查询时:轮流执行
  • 优先级抢占式:每次运行最高优先级的任务

实时性

  • 为了保证任务的【时间约束】,RTOS基本上都是基于优先级抢占式的调度方法,保证及时响应

非实时性

  • 并不是所有的操作系统都是实时的,如Linux、Windows等属于非实时的操作系统,调度器采用多种调度策略,目的为缩短系统平均的响应时间,提高资源的利用率

小结

  • 任务频繁的切换,不代表就是好的设计,也为任务切换频繁,造成CPU的额外开销大,CPU的有效利用率降低了
  • 为了保证实时性,需要合理的配置各个任务的优先级,并且【谨慎】使用任务间的【互斥】与【同步】机制,如信号量、互斥量,防止系统调度的优先级翻转,降低系统的实时性约束
Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐