如何将可执行文件加载到 RAM 中以进行定期调用?

如何将可执行文件加载到 RAM 中以进行定期调用?

在长时间运行的 Bash 脚本中,我调用自定义可执行文件(getIdle) 返回系统的空闲时间。

由于我必须定期调用这个可执行文件,我想从长远来看它会给我的硬盘带来巨大的读取负担。

作为解决方案,我首先将 exe 复制到/dev/shm/然后从那里运行它。但是,我不确定这是一个便携式解决方案,所以我的问题是:

如何在 RAM 中缓存可执行文件,以便定期调用不会成为问题?

答案1

我想从长远来看,这会对我的硬盘造成巨大的读取负担。

不,除非您从磁盘读取或向磁盘写入大量数据,否则不会。 Linux 对所有读/写操作使用缓存,因此一旦(已经)运行,您的二进制文件将被缓存,随后内核将使用缓存中的映像,并且不会从磁盘读取文件。

答案2

您可以创建临时文件系统并将您的可执行文件复制到其中

$ sudo mount -t tmpfs -o size=10M tmpfs /mnt/mytmpfs

相关内容