Виртуальные файловые системы
02.04.2010Виртуальные файловые системы (которые ранее назывались псевдофайловьши системами — pseudo file systems) являются файловыми системами, размещенными в памяти. Такие файловые системы, как правило, используются для обеспечения доступа к специальной информации ядра и внутренним механизмам ядра. Большая часть виртуальных файловых систем не требует расходования дискового пространства. Однако некоторые виртуальные файловые системы (например, временная файловая система) могут использовать дисковое пространство для временного хранения данных. Кэширующая файловая система использует дисковую файловую систему для хранения кэша.
Cache File System (CacheFS)
Кэширующая файловая система (Cache File System, CacheFS) используется для повышения производительности удаленных файловых систем или файловых систем, размещенных на медленных устройствах, таких как устройства чтения CD-ROM. Если некоторая файловая система кэшируется, данные, читаемые из этой файловой системы или с компакт-диска CD-ROM, сохраняются в кэше, расположенном на локальной системе.
Temporary File System (TMPFS)
Временная файловая система TMPFS использует для хранения данных локальную память. Когда пользователь или программа осуществляет чтение или запись данных, на самом деле данные читаются из памяти или записываются в память
Обращение к файлам, хранящимся в TMPFS, как правило, осуществляется значительно быстрее, чем обращение к файлам, хранящимся в файловой системе и Файлы, хранящиеся в TMPFS, не пригодны для долгосрочного хранения Данных
Когда файловая система TMPFS демонтируется, хранящиеся в ней файлы мсчезают. То же самое происходит в случае, если операционная система завершает свою работу или перезагружается.
В операционной среде Solaris файловая система TMPFS является файловой системой по умолчанию для каталога /tmp. Вы можете копировать или перемещать файлы в каталог /tmp и из каталога /tmp точно так же, как вы делаете в отношении любого другого каталога файловой системы UFS.
При помощи механизма TMPFS можно существенно повысить производительность системы, экономя время, которое тратится на чтение и запись временных файлов на локальном диске или через сеть. Например, временные файлы создаются компиляторами в процессе компиляции программы. Манипулируя этими файлами, система создает значительную нагрузку на диск и сетевые каналы связи. Если для хранения этих файлов вы будете использовать TMPFS, вы существенно ускорите процедуры создания и удаления этих файлов, а также другие операции, связанные с ними.
Файловая система TMPFS использует дисковое пространство виртуальной памяти в качестве места временного хранения данных. Если система с TMPFS не обладает достаточным пространством виртуальной памяти, могут возникнуть две проблемы:
* файловая система TMPFS может испытать недостаток пространства для хранения данных, как и любая другая файловая система, на которой кончилось свободное пространство;
* так как система TMPFS (в случае необходимости) занимает определенный объем виртуальной памяти для хранения своих данных, некоторые программы могут прекратить корректное функционирование из-за недостатка виртуальной памяти.
Loopback File System (LOFS)
Файловая система обратной связи LOFS позволяет вам создать новую виртуальную файловую систему. Благодаря этому вы получаете возможность обращаться к файлам при помощи альтернативного полного имени. Например, вы можете создать для корневого каталога / альтернативную точку монтирования /tmp/ newroot. В результате вся иерархия каталогов файловой системы, включая все ^оптированные системы NFS, будет продублирована в каталоге /tmp/newroot. К любому из файлов можно будет обратиться как по имени, начинающемуся с /, так и по имени, начинающемуся с /tmp/newroot. Ситуация изменится тогда, когда вы Монтируете в точке /tmp/newroot или в любом из ее подкаталогов другую файловую систему.
Дополнительные виртуальные файловые системы
Следует упомянуть также о других дополнительных типах виртуальных файловых систем. Все эти системы не нуждаются в каком-либо администрировании
FIFO (Firts-In Firts-Out) - файлы именованных каналов, которые предоставляют процессам общий доступ к данным;
FDFS (File Descriptors) - обеспечивает явные имена для открытия файлов с использованием файловых дескрипторов;
NAMEFS - используется в основном механизмом STREAMS для динамического монтирования файловых дескрипторов поверх файлов;
