Файловая система tmpfs разработана корпорацией Sun Microsystems и совмещает в себе возможности интерфейса vnode/vfs и архитектуры VM (виртуальной памяти, Virtual Memory) , предлагая эффективный механизм работы с временными файлами.
Также может иметь смысл заглянуть на сайт radioheart.ru, ведь именно там можно узнать много нового на тему http://radioheart.ru/services/constructor/. Тема сделать свое радио онлайн может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт radioheart.ru, и тема сделать свое радио онлайн начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема сделать свое радио онлайн очень подробно представлена на сайте radioheart.ru. Трудно найти более детальное освещение темы сделать свое радио онлайн чем это сделано на сайте radioheart.ru. Спасибо сайту radioheart.ru за такое доскональное преподнесение темы сделать свое радио онлайн.
Средства VM, упомянутые в этом разделе, будут более подробно описаны ранее.
Файловая система tmpfs полностью реализована на уровне ядра и не требует выделения для ее обслуживания отдельного серверного процесса. Все метаданные файлов хранятся в памяти, не разбиваемой на страницы, а выделяемой динамически из кучи ядра. Блоки данных располагаются постранично и представлены в ядре при помощи средства анонимных страниц (anonymous page) подсистемы VM. Данные о размещении каждой страницы хранятся в анонимном объекте (структуре anon), описывающей расположение страницы в физической памяти или области свопинга. Зависящий от файловой системы объект tmpnode содержит указатель на анонимную карту файла (структуру anon_map). Карта является массивом указателей на анонимные объекты каждой страницы файла. Связь между структурами показана ранее
Так как страницы сами по себе размещаются в страничной памяти, они могут быть перенесены в область свопинга страничной подсистемой и использованы как физическая память другими процессами, так же как и в файловой системе mfs.
Анонимные объекты и карты используются также подсистемой VM для описания страниц в адресном пространстве процесса. Это позволяет процессам отображать файл tmpfs в свое адресное пространство напрямую, востребуя для этой цели интерфейс системного вызова mmap. Такое отображение реализовано при помощи совместного использования структуры anon_map файлом и процессом. Соответственно процесс обладает прямым доступом к такому файлу без необходимости копирования его в собственное адресное пространство.
Файловая система tmpfs решила некоторые проблемы, имеющиеся в mfs. Система не использует выделенный сервер ввода-вывода, что помогает избавиться от необходимости лишних контекстных переключений. Хранение метаданных в куче дает возможность не производить операции копирования из одного участка памяти в другой, а также защищает от некоторого избытка дискового ввода-вывода. Поддержка карт памяти позволяет осуществлять быстрый прямой доступ к данным файла.
Еще одна разновидность временных файловых систем
Система поддерживает дополнительную опцию задержки delay вызова mount, устанавливающую соответствующий флаг в закрытом объекте vfs_data для ufs. Большинство процедур ufs, которые производят синхронные изменения на диске (обычно после изменения метаданных), были усовершенствованы. Теперь перед началом действий они проверяют наличие флага. Если флаг установлен, процедуры откладывают запись, маркируя при этом буфер как dirty («грязный»). Такой подход имеет несколько преимуществ. Система не использует отдельный RAM-диск, что экономит адресное пространство и не требует копирования блоков в память. Показатели производительности этого решения просто впечатляют. Его основным недостатком является необходимость переписывания процедур ufs, а не просто внесения добавлений в ядро без правки исходного кода. В системах, использующих несколько типов файловых систем, каждая реализация должна быть соответственно изменена для поддержки опции задержки.
Файловые системы для специальных целей
Изначальной целью интерфейса vnode/vfs была поддержка на одной машине сразу нескольких файловых систем, как локальных (например, s5fs или FFS), так и удаленных (например, RFS или NFS, ).
Через некоторое время после появления этого интерфейса было разработано несколько специализированных файловых систем, использующих его мощность и универсальность. Некоторые из этих систем стали частью стандартной версии SVR4, другие поставлялись отдельно как компоненты, добавляемые производителями. В следующих подразделах будут рассмотрены некоторые интересные примеры специализированных файловых систем.
Опубликовал katy
July 09 2015 09:56:25 ·
0 Комментариев ·
2778 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.