memory - 交换空间上的缓存有什么意义?

标签 memory caching buffer swap

在主内存中缓存内容不是为了避免昂贵的磁盘 I/O 吗?

如果您在硬盘驱动器的交换空间中缓存内容,如何避免磁盘 I/O?

最佳答案

一般来说,缓存使用的内存不会被换出。 它将被标记为正在使用。

编辑 - 是的,虚拟内存是由于 RAM 已满而复制到磁盘的内存块。为了使用它,您必须将其复制回内存(这很慢)。
缓存将最近使用的文件的副本保留在内存中,因为这比返回到磁盘更快。这里存在一个冲突 - 用于缓存的 RAM 越多,则必须交换到磁盘的其他内存就越多(假设您没有剩余内存)。 这不一定是坏事,您的计算机上运行的许多东西只是偶尔运行,因此将它们推送到磁盘以为照片的缓存副本腾出空间可能是有意义的。

关于memory - 交换空间上的缓存有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/257951/

相关文章:

asp.net - 在非生产环境中复制与负载相关的崩溃

javascript - 如何确保 CSS/JS 文件不缓存在浏览器上?

java - @Cacheable 和 @CachePut 不同的返回类型

ios - AFNetworking 图像缓存在内存警告中未清空

使用 fgets 导致缓冲区溢出

ios - 附加到 NSString 时的正确内存管理

debugging - Windbg内存映射?

memory - redis内存增长infi

python - 如何解决按顺序将文件附加到另一个文件时的内存问题

java - BufferUtils 和 MemoryUtil 有什么区别? (LWJGL)