排队和服务
先进先出队列,后进先出队列,优先级队列,延迟建模,实体存储,缓冲
在离散事件模拟中,排队块存储实体的时间长度无法预先确定。排队块在可能的情况下尝试输出实体,但其输出取决于下游块是否接受新实体。队列的一个日常例子是人们排队等待商店登记。购物者无法事先确定他们要等多久才能完成购买。的实体队列block是SimEvents中提供的队列块之一®库,可以根据排序策略对队列中的实体进行排序。您可以建模FIFO队列,LIFO队列和优先级队列。有关更多信息,请参见基本排队系统模型.
您可以使用SimEvents库中提供的队列和服务器块来建模基本或复杂的队列服务器系统。服务器块存储和延迟实体到指定的时间长度,然后尝试输出实体。服务器的一个日常示例是在工厂装配线上处理一段时间的部件。在这种情况下,服务器延迟可以表示热过程的持续时间。的实体服务器Block是服务器块之一,用于存储和服务实体,然后尝试输出它们。
您还可以使用离散事件系统对象™和创建更高级的排队系统离散事件图块。
块
主题
基本排队系统
- 离散事件模拟中的队列和服务器概述
使用队列和服务器建模存储,使用串行或并行队列-服务器对。 - 基本排队系统模型
使用FIFO队列、LIFO队列、优先队列和服务器来建模队列系统。 - 使用实体组播广播实体
以无线方式发送、接收、传输和多播实体。
基本排队系统的应用
- 使用队列事件动作建模储罐
这个例子展示了如何使用实体队列块事件动作、一个Simulink函数块和一个实体门块来建模容量有限的瓶子存储系统。 - 服务高优先级的客户,根据优先级对实体进行排序
这个例子展示了如何通过使用优先级队列、实体输入开关和实体输出开关块来最小化服务高优先级客户所需的时间。 - 将交通交叉口建模为排队网络
本示例展示了如何创建SimEvents®模型来表示车辆交通网络,并在网络处于稳态时调查车辆的平均等待时间。
模型抢占和服务器故障
- 服务器故障
使用Stateflow®图表用于对需要维护的服务器的行为进行建模。 - 多任务处理器中的任务抢占
为低优先级任务建模服务器任务抢占。
用自定义行为建模高级排队系统
- 使用MATLAB离散事件系统块创建自定义块
通过定义实体类型、端口、存储和事件来创建离散事件系统对象。 - 从队列服务器刷新实体
此示例展示了如何使用离散事件图块来建模队列服务器,该队列服务器在“FlushCmd”端口上接收到消息时可以刷新实体。