嵌入式系统中的操作系统与定时理论
1. 操作系统概述
在系统设计中,首先会遇到无需操作系统管理的系统。之后,以 OSEK/VDX 操作系统作为实时操作系统(RTOS)的经典代表进行介绍。
关于协作式和抢占式多任务处理的内容,建议在系统设计时至少考虑协作式多任务处理。这种方法有诸多优点,唯一的缺点是会限制可运行对象或直接从任务调用的函数的执行时间,但这对于许多系统来说是可以接受的限制。而且,协作式多任务处理的固有实现实际上可以防止上文中讨论的绝大多数数据不一致问题。
最后,还简要介绍了 POSIX 相关内容,整体明显聚焦于基于经典实时操作系统的嵌入式系统。
2. 定时理论基础
“定时理论”这个术语可能会让这个主题听起来比实际更学术化,实际上它更侧重于基础知识以及与日常实践相关的术语解释。
例如,不同的项目经理对“CPU 利用率”或“CPU 负载”的理解可能不同,这种对同一术语的不同解释也会影响定时工具的结果。曾经在定时研究项目中发现,很多基本的定时参数没有统一的定义和术语。后来,给出了定时参数的定义,并更新到了 AUTOSAR 标准中。
定时理论还涵盖了当前和未来的一些方面,如“逻辑执行时间(LET)”已被纳入 AUTOSAR 标准,但目前只有少数项目使用它,尽管它能让系统更具可预测性和可靠性。在 POSIX 操作系统中,定时参数的定义还有待完善,特别是周期性事件所需的参数缺失,而周期性事件在嵌入式软件环境中非常重要。
3. 定时参数定义
定时参数的定义中,任务、中断或线程的一次出现被定义为“实例”,这里的实例是指时间轴上的一次出现,而非面向对象编程中类的