Предоставить данные для отдельного процесса в виде файла без записи на диск?

Возможно ли в Linux создать файл полностью в памяти? Как этого достичь, используя сценарии оболочки?

Например: сценарий оболочки A создает файл, записывает в него и сохраняет его, а сценарий оболочки B получает доступ и читает этот файл - все это время, пока этот файл не записан на диск, а находится только в памяти.


Цель этого состоит в том, чтобы применить метод с низкой задержкой и независимый от языка метод для гетерогенной межпроцессной коммуникации. При этом метод должен быть максимально технологически простым, а вариант использования - это один запрос и один ответ, в то время как объем данных потенциально очень большой.

2 ответа

Решение

Обычно вы бы использовали tempfs для этого. tempfs это временная файловая система, в которой файлы хранятся в виртуальной памяти, а не на диске. Это означает, что все файлы в такой файловой системе будут потеряны при перезагрузке.

Существует также ramfs, См. http://www.jamescoyle.net/knowledge/951-the-difference-between-a-tmpfs-and-ramfs-ram-disk для получения информации о различиях между tempfs а также ramfs,

Другие вопросы по тегам