时间约束
描述任务执行、中断响应、调度决策与上下文切换所涉及的时间要求和时间开销。
系统边界用于描述内核、应用任务与硬件环境之间的职责分界, 并明确时间、资源和外部事件对系统执行行为的约束。 它为分析实时系统的可预测性、资源使用和验证范围提供统一的架构视角。
用一组约束维度描述系统运行所依赖的条件。
其中,T 表示时间约束,R 表示资源约束,I 表示外部事件与执行不确定性约束。 该表达式是用于组织系统边界分析的概念模型,并非 HRTOS 内核中的实际数据结构或可直接计算的数学保证。
系统边界不是简单地将 Kernel 与外部环境分开,而是明确: 哪些行为由内核控制,哪些条件由应用或硬件决定,以及这些条件如何影响系统的执行路径和实时响应。
时间、资源和外部事件共同决定系统行为的分析范围。
描述任务执行、中断响应、调度决策与上下文切换所涉及的时间要求和时间开销。
描述处理器、存储空间、任务栈和外设等有限资源的使用边界。
描述外部输入、硬件时序和异步事件如何影响系统执行,以及分析时需要明确哪些前提条件。
明确内核可以控制什么,以及哪些行为仍然依赖系统集成与硬件条件。
概念关系图:内核位于应用执行与硬件机制之间,依靠接口、调度和中断处理与两侧协作。
任务逻辑、资源请求、阻塞等待、数据处理和外部接口调用。
任务状态管理、调度决策、上下文切换、内核服务及相关执行约束。
CPU、定时器、中断控制、存储资源和外部设备行为。
Kernel 可以管理其实现范围内的调度规则、任务状态和执行现场,但不能仅凭内核自身就保证任意应用程序都满足截止时间, 也不能消除硬件故障、不可控外部输入或未受约束的中断行为。
因此,系统级实时性需要将内核机制与应用执行时间、驱动行为、中断负载和硬件条件一起分析。
从四个相互关联的领域,将抽象约束映射到工程实现。
关注任务的注册、状态、优先级及调度规则,分析任务在什么条件下能够获得执行机会。
主要问题:谁可以运行,何时获得执行权?关注任务执行时间、中断延迟、临界区长度和调度开销,并明确响应时间分析所依赖的前提。
主要问题:执行需要多久,响应是否满足要求?关注有限 RAM、程序空间、任务栈、CPU 时间和外设资源,明确资源容量与使用约束。
主要问题:资源是否充足,使用是否可控?关注中断来源、事件到达频率、通信负载和异步输入,确定外部事件对执行路径的影响。
主要问题:什么事件可能到达,最坏负载是什么?将架构约束转化为实现规则、运行时控制和可验证的测量结果。
通过明确的任务状态转换、优先级规则和调度路径,约束任务获得 CPU 执行权的方式。
明确中断优先级、允许的嵌套关系、临界区范围和中断退出行为,并测量关键路径的实际延迟。
结合目标芯片的 DATA、IDATA、XDATA 容量和实际调用深度,评估任务栈、中断栈及内核数据结构的空间开销。
为驱动执行时间、通信数据量和事件到达频率建立适用的约束,避免将不可控输入默认视为有界行为。
通过压力测试、时间测量和最坏情况分析检查关键执行路径,并记录目标硬件、编译配置和测试条件。
边界的价值不在于提出抽象口号,而在于明确分析范围与验证条件。
如果任务执行时间、中断负载、资源使用和外部输入都缺少明确约束, 就很难仅凭调度算法推导整个系统的响应上限。 系统边界的作用,是将这些条件显式化,让设计人员知道哪些行为可以由内核控制, 哪些需要应用与驱动配合,以及哪些必须通过测量或分析验证。
对资源受限的 8051 系统,这一点尤其重要:有限的 RAM、寄存器组、任务栈和中断处理路径, 都会影响系统可承受的任务规模、事件负载和执行开销。