CPC G06F 9/542 (2013.01) [G06F 9/4887 (2013.01); G06F 9/546 (2013.01); G06F 11/3414 (2013.01); G06F 11/362 (2013.01); G06F 11/3636 (2013.01); G06F 3/0659 (2013.01); G06F 9/4875 (2013.01); G06F 11/3476 (2013.01); G06F 2209/548 (2013.01)] | 15 Claims |
1. A method comprising using at least one hardware processor to deterministically replay a recording of events, between a plurality of software entities within a sensor or control system of a vehicle or robot, in which the plurality of software entities represent nodes in a graph and events represent edges in the graph, by, for each of one or more events in the recording:
play the event;
enqueue any of the plurality of software entities, that are stimulated by the event, into a queue; and,
until the queue is empty,
remove and execute a software entity at a front of the queue,
play all events outputted by the executed software entity, and
enqueue any of the plurality of software entities, that are stimulated by the played events outputted by the executed software entity, into the queue,
wherein no events are played during execution of any of the plurality of software entities, and no software entity is executed during execution of any other one of the plurality of software entities.
|