带定时器系统调用的有限状态机一致性测试序列生成方法
1. 引言
如今,由两个或多个协作组件组成的复杂系统被广泛应用。在这类系统中,组件之间的交互通常无法从外部环境进行观察和控制。通信协议若使用操作系统提供的定时器功能,也可视为这样的复杂系统。
在对复杂系统的特定子系统进行一致性测试时,会将复杂系统分为两个部分:
- Spec :测试目标子系统。
- Context :复杂系统中除Spec之外的子系统,假定其实现正确。
由被测实现(IUT)和Context组成的系统称为被测系统(SUT),这种测试被称为嵌入式测试或灰盒测试。嵌入式测试需考虑复杂系统的以下特点:
- 即便IUT不符合其规格说明Spec,SUT的行为仍可能符合Spec·Context。
- IUT的单个故障可能导致SUT出现多个故障。
2. 带定时器系统调用的通信协议
通信实体由有限状态协议机和多个定时器组成,它们之间存在两种交互:
- 协议机向定时器发送定时器命令(启用或禁用定时器)。
- 定时器向协议机发送超时通知。
2.1 定时器
操作系统能够管理多个定时器,用户进程可通过系统调用启用或禁用单个定时器。从启用定时器到其超时的时间段称为定时器超时时间,该时间作为系统调用的参数指定。
定时器的相关定义如下:
- 每个定时器由定时器编号标识,其超时时间固定,用向量T表示定时器超时时间的规格。
- 引入定时器值向量τ来描述定时器状态,τ[i]表示定时器i的当前值,取值为整数(0
超级会员免费看
订阅专栏 解锁全文

589

被折叠的 条评论
为什么被折叠?



