(1)数据流设计
> 以流水线的形式设计“指令处理数据流”;
> 包括确定从新指令输入系统到执行器执行的整个过程中所涉及到的存储空间、存储结构、所需线程以及工作任务。
(2)类图设计
> 提取“指令处理数据流”中所有的对象(操作系统内核对象),设计出“系统类图”;
> 该图应包含系统中存在的所有线程,以及线程之间的同步/通信机制。
> 其中,线程的同步/通信机制包括但不限于:标志位、信号量、消息队列、共享内存、管道和套接字。
(3)线程状态机设计
> 根据“指令处理数据流”和“系统类图”来深入设计各个线程的“有限状态机”模型;
> 模型应涵盖线程所有可能的状态、各个状态的功能,以及所有状态之间的触发-转换事件。
(4)设计校验
> 检查(3)中设计出的所有线程“有限状态机”能否在“系统类图”所描述的架构中实现(1)中设计的“指令处理数据流”。
> 排查明显的死锁风险。