从备用位置读取文件


0

我有一个文件(data.abc)位于我的主文件夹中。我将它的副本复制到另一个位置(例如,“/ mnt / ramtemp /”)。

每当我的主文件夹中的文件被任何进程访问时,我希望它不是从主文件夹读取,而是从“/ mnt / ramtemp /”读取。正如您可能从后者的路径中猜到的那样,这是我安装ramfs的地方。所以,基本上,我想要一个进程来访问我的HDD上的文件(速度较慢),但是它在ramfs上的副本(这样更快)。同时,我希望文件data.abc保留在该名称下的我的主文件夹中,我不想重命名或删除它。有没有什么方法可以引导系统重定向进程,以便在尝试从主文件夹中读取文件时从备用位置读取文件?


1
只是想知道你到目前为止尝试了什么?是否已锁定进程以从主文件夹访问它?如果是这样,简单的符号链接会起作用吗?
sgtbeano

Answers:


2

别烦心!任何有价值的现代操作系统(当然还有Linux)已经自动完成了你所描述的内容,甚至没有创建ramdisk。

对磁盘的任何访问都会自动缓存在内存中,这样对文件的所有后续访问都不需要从磁盘重新读取。但是,它 可以 如果内存供应非常短缺,请停止这样做。

实际上,创建大型ramdisk最有可能使它工作SLOWER,而不是更快,因为虚拟内存子系统可以比ramdisk更有效地利用这些宝贵的内存。


自动缓存通常会从缓存中删除文件,特别是如果我使用大量的ram,它必须从HDD重新读取它。无论我使用多少RAM以及其他文件和使用频率,我都希望确保文件保留在RAM中
Highstaker

1
Linux缓存算法比您想象的要聪明得多。如果使用标准Linux缓存与ramdisk缓存来衡量实际的长期性能,则最有可能失去整体性能。是的,如果内存非常短,它可能会从缓存中逐出文件,但将它们保存在ramdisk中可能会使整体性能更慢。
mvp

我想我将不得不使用一些缓存技术。就像一个经常访问所需文件的脚本,让系统将它们留在缓存中
Highstaker
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.