Возможно ли в Windows использовать часть памяти в качестве виртуального файла? - PullRequest
1 голос
/ 14 апреля 2011

Я использую инструмент командной строки, чтобы выполнить некоторую обработку файла.Дело в том, что этот файл не должен храниться на диске (по соображениям безопасности).Поэтому мне было интересно, возможно ли в Windows использовать часть памяти в качестве виртуального файла, доступного для инструмента командной строки, как если бы это был настоящий физический файл.

Ответы [ 4 ]

1 голос
/ 14 апреля 2011

Вы написали инструмент командной строки самостоятельно? Если это так, вы можете просто выделить часть памяти для вашей программы и использовать ее при обработке. Есть небольшая причина заставить приложение думать, что оно использует файл на физическом диске. Особенности того, как это сделать, зависят от того, на каком языке написано ваше приложение.

Если нет, вам нужно создать RAM-диск и указать программе использовать его. Использование RAM-диска в Windows требует стороннего программного обеспечения; полный список опций доступен здесь, на Супер пользователя .

Обратите внимание, что ни использование диска RAM, ни хранение всех ваших данных в памяти не сделают его более безопасным. Информация, хранящаяся в оперативной памяти, так же доступна любопытным глазам и вредоносным программам, как и данные, хранящиеся на жестком диске. Вероятно, больше, чем данные, которые были удалены с жесткого диска.

1 голос
/ 14 апреля 2011

Да, это возможно с вещами, которые обычно называют "рамдисками". Какой виртуальный диск лучше для Windows? на сайте superuser.com содержит несколько ссылок.

0 голосов
/ 14 апреля 2011

Если вы используете .NET, вы можете взглянуть на MemoryStream .

Обратите внимание на ответ Коди Грея, который является слишком верным, поскольку наличие чего-либо в памяти не гарантирует, чтоэто не может быть скомпрометировано.Хотя мнения по этому вопросу расходятся.Большинство людей утверждают, что запись на диск еще менее безопасна, особенно в эпоху выравнивания износа, когда контролировать то, что удалено, а что нет, практически невозможно.
ОЗУ имеет свои недостатки, но с другой стороны,ушел ушел: -)

0 голосов
/ 14 апреля 2011

Если вам нужно готовое к использованию приложение, на рынке есть несколько приложений на ramdisk (включая бесплатные), и тогда ваш вопрос здесь не оффтоп.Если вам нужно сделать это в коде, то один из наших виртуальных хранилищ продуктов (SolFS, CallbackDisk, Callback File System) будет работать, и у Callback File System есть пример проекта, который хранит файлы в памяти.

...