用于流程/任务调度的简单离散事件仿真库(C ++)?

时间:2012-07-01 02:45:59

标签: c++ events simulation scheduler des

简单问题: 我构建了一个准处理器模拟器,它采用优先级图,确定优先级(和“就绪”指令),在可用功能单元上安排任务等。几乎是一个非常基本的模拟器。

但我意识到我应该在DES引擎上构建它,因为我没有容量(除了设置标志并检查每个“时钟滴答”上的每个节点),因为它说“在10个周期内,做这“(即在预定时间提高信号并处理将来发生或已满足预定标准的事件)。

我显然可以自己实现;建立一个“事件”类,将它们放在队列中,并在每个周期的结束(或开始),检查队列,看看那里有什么,但我认为重新发明轮子是没有意义的。

如此复杂的网络模拟器显然是过度杀伤。我不需要花哨的建模,排队等等。我需要的只是一个内置时钟,能够设置事件发生,在事情发生时引发标志等,如上所述。

免费软件和C ++会很棒。

有人有什么想法吗? (我最接近的 - 感谢其他一些相关的问题 - 就是所谓的SIMLIB。)

非常感谢你!

2 个答案:

答案 0 :(得分:0)

您可以尝试开放虚拟平台(OVP)。它似乎提供了您正在寻找的模拟器类型。

答案 1 :(得分:0)

尝试SystemC,它是一个免费软件库。我警告说它不是“开源”,因为许可证不是FOSS兼容的。