angr simulation manager step函数
关于该函数的num_inst参数的具体含义是什么?
我查看了angr的源码,进行了如下解释。
对于angr的step,每次前进一个block,因此我认为不设置num_inst或者设置num_inst大于当前的块的语句个数的情况下都仅仅只是前进了一个block
假设当前的block含有两个语句,但我的实验结果却和我的想法不一致。
>>> simgr6 = project.factory.simulation_manager(thing=state)
>>> simgr7 = project.factory.simulation_manager(thing=state)
>>> simgr8 = project.factory.simulation_manager(thing=state)
>>> simgr6.step()
<SimulationManager with 1 active>
>>> simgr7.step(num_inst=2)
<SimulationManager with 1 active>
>>> simgr8.step(num_inst=10)
<SimulationManager with 1 active>
>>> simgr6.active
[<SimState @ 0x402880>]
>>> simgr7.active
[<SimState @ 0x40876c>]
>>> simgr8.active
[<SimState @ 0x402880>]
>>>
烦请大家帮忙看一下到底是哪里出现问题,谢谢大家