如何以编程方式清除Windows中的缓冲区和缓存

Hashim Aziz |

我需要bash在Cygwin环境中对某些命令的速度进行基准测试,并确保我正在运行的测试不会影响Windows缓冲区或缓存。尽管我正在bash环境中进行基准测试,但我怀疑所有缓存都是由Windows本身而不是Cygwin完成的。

在基于Unix的系统上,您可以执行以下操作清除所有缓存和缓冲区:

echo 3 > /proc/sys/vm/drop_caches

在Windows上等效于此命令?

Hashim Aziz |

Twisty是正确的,因为Windows中没有本机工具可以执行此操作。

但是,在进行一些进一步的研究和测试时,似乎SysInternals的Sync工具实际上也没有清除Windows用来缓存文件和数据的内存(也称为文件系统缓存),而Windows将其称为备用内存这可以通过使用RAMMap来演示,RAMMap是另一个SysInternals工具,用于监视Windows中的所有内存分配。

在运行该Sync工具之前和之后检查RAMMap的“备用内存”列,表明Windows的备用内存在运行之前和之后实际上保持不变Sync实际上,Sync似乎对内存根本没有任何明显的影响,据我所知,这对于性能测试而言实际上是毫无用处的。

我确实发现了一种有效的编程方法来清除Windows的待机列表,但是,它以EmptyStandbyList.exe的形式出现,它是来自Wen Jia Liu的简单命令行程序:

EmptyStandbyList.exe是Windows(Vista及更高版本)的命令行工具,可以清空:

  • 处理工作集
  • 修改后的页面列表
  • 备用列表(优先级0到7)
  • 仅优先级为0的备用列表

要使用它,您需要确保EmptyStandbyList.exe文件位于系统的PATH环境变量内的某个位置,然后EmptyStandbyList.exe在需要刷新内存时从Shell或从脚本内调用

CMD

EmptyStandbyList.exe

并在bash

cmd \/c EmptyStandbyList.exe

要确认执行后已成功清除Windows的备用内存,可以再次使用RAMMap。

跑步前 EmptyStandbyList.exe

在此处输入图片说明

跑步后 EmptyStandbyList.exe

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以编程方式更改MATLAB命令窗口滚动缓冲区?

来自分类Dev

如何以编程方式更改MATLAB命令窗口滚动缓冲区?

来自分类Dev

缓冲区和缓存之间有什么区别?

来自分类Dev

如何在Django中以编程方式呈现和缓存视图?

来自分类Dev

如何在Linux系统上清空缓冲区和缓存?

来自分类Dev

如何以编程方式清除本机应用程序中的API缓存

来自分类Dev

在金属中如何清除深度缓冲区或模板缓冲区?

来自分类Dev

如何从bash清除konsole中的回滚缓冲区?

来自分类Dev

读取c中的输入后如何清除缓冲区?

来自分类Dev

如何在 ALSA 中设置周期和缓冲区大小?

来自分类Dev

TCP中的垃圾值和缓冲区差异

来自分类Dev

如何清除ReplaySubject上的缓冲区?

来自分类Dev

如何清除Neovim缓冲区

来自分类Dev

Python中的Memset(),清除缓冲区

来自分类Dev

强制在scanf中清除缓冲区

来自分类Dev

Python中的Memset(),清除缓冲区

来自分类Dev

如何减少缓冲区\缓存

来自分类Dev

如何以编程方式清除Windows 8.1中的SearchBox控件历史记录?

来自分类Dev

清除缓冲区/缓存的脚本仍然说权限被拒绝

来自分类Dev

boost :: asio如何以正确的方式读取完整缓冲区?

来自分类Dev

如何以交互方式发送原始字节以进行缓冲区溢出漏洞利用?

来自分类Dev

Python,Macports和缓冲区问题

来自分类Dev

Signalr LongPollDelay和缓冲区

来自分类Dev

了解文件指针和缓冲区

来自分类Dev

流和缓冲区的关系?

来自分类Dev

流程的RES和USED是否包括流程的缓存和缓冲区?

来自分类Dev

如何以编程方式管理应用缓存?(退出应用程序时清除它)

来自分类Dev

有关数据包和缓冲区大小的TCP套接字编程

来自分类Dev

在Android中以编程方式读取帧缓冲区/ dev / graphics / fb0

Related 相关文章

  1. 1

    如何以编程方式更改MATLAB命令窗口滚动缓冲区?

  2. 2

    如何以编程方式更改MATLAB命令窗口滚动缓冲区?

  3. 3

    缓冲区和缓存之间有什么区别?

  4. 4

    如何在Django中以编程方式呈现和缓存视图?

  5. 5

    如何在Linux系统上清空缓冲区和缓存?

  6. 6

    如何以编程方式清除本机应用程序中的API缓存

  7. 7

    在金属中如何清除深度缓冲区或模板缓冲区?

  8. 8

    如何从bash清除konsole中的回滚缓冲区?

  9. 9

    读取c中的输入后如何清除缓冲区?

  10. 10

    如何在 ALSA 中设置周期和缓冲区大小?

  11. 11

    TCP中的垃圾值和缓冲区差异

  12. 12

    如何清除ReplaySubject上的缓冲区?

  13. 13

    如何清除Neovim缓冲区

  14. 14

    Python中的Memset(),清除缓冲区

  15. 15

    强制在scanf中清除缓冲区

  16. 16

    Python中的Memset(),清除缓冲区

  17. 17

    如何减少缓冲区\缓存

  18. 18

    如何以编程方式清除Windows 8.1中的SearchBox控件历史记录?

  19. 19

    清除缓冲区/缓存的脚本仍然说权限被拒绝

  20. 20

    boost :: asio如何以正确的方式读取完整缓冲区?

  21. 21

    如何以交互方式发送原始字节以进行缓冲区溢出漏洞利用?

  22. 22

    Python,Macports和缓冲区问题

  23. 23

    Signalr LongPollDelay和缓冲区

  24. 24

    了解文件指针和缓冲区

  25. 25

    流和缓冲区的关系?

  26. 26

    流程的RES和USED是否包括流程的缓存和缓冲区?

  27. 27

    如何以编程方式管理应用缓存?(退出应用程序时清除它)

  28. 28

    有关数据包和缓冲区大小的TCP套接字编程

  29. 29

    在Android中以编程方式读取帧缓冲区/ dev / graphics / fb0

热门标签

归档