在具有固定(较低)CPU 时钟速度(例如,runat 400mhz ./my-program --argument-of="my program"
为了获得该时钟速度)的 Linux 环境中运行特定程序对我来说非常有用。
我需要它来在我的程序的每个汇编指令之间产生延迟,如果延迟不准确(比如说,如果它取决于操作系统调度程序,因为它几乎肯定会),它不会杀死我。
目标是在学校编程不太繁重的应用程序时使算法效率非常明确(拥有 3GHz CPU 使得很难注意到运行时间很短并且可以真正优化的缓慢算法)。此外,它可能有助于实时发现竞争条件。
你知道任何这样的工具吗?有没有我可以破解的解释器来实现这一目标?gdb 能以相对简单的方式帮助我吗?我认为这是我所知道的最接近控制 Linux 程序执行的方法。
在 CPU 上限的 VM 中运行空洞系统可能是另一种选择,因为它给我提供了一种错觉——一个较低速度的 CPU——但是最好运行单个程序。