Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

Переключи драйвер NTFS в режим read-write


Антон Ананич

Captive – это первая полнофункциональная Open Source-реализация NTFS-драйвера. С помощью Captive вы можете монтировать Windows NT/2k/XP/2k3-разделы и записывать на них данные без опасения потерять их.

FUSE (Filesystem in USErspace) – это драйвер для Linux и FreeBSD, который позволяет непривилегированным пользователям создавать их собственные драйверы файловых систем без написания кода, выполняемого в режиме ядра.

FUSE может быть особенно полезной для разработки драйверов виртуальных файловых систем (virtual file systems, VFS). Это файловые системы, которые не сериализуют данные непосредственно, а всего лишь выступают прослойкой (abstraction layer) или оберткой (wrapper) над существующими файловыми системами или специальными устройствами.

В нашем журнале уже была статья о FUSE [1]. С тех пор проект развился и сильно возмужал.

FUSE позволяет разрабатывать драйверы файловых систем не только на языке С. Так как эти драйверы выполняются в пользовательских процессах, то они могут быть реализованы практически на любом языке программирования. Официально поддерживаются C, C++, Java, C#, Haskell, TCL, Python, Perl, Sh (UNIX shell script), Ocaml, Pliant и Ruby.

Существует несколько десятков файловых систем (на сегодня более 50) на базе FUSE. Рассказать о всех в рамках этой статьи просто невозможно. Поэтому я перечислю некоторые задачи, которые могут быть решены с помощью FUSE:

n  шифрование и сжатие файлов «на лету»;

n  SMB (монтирование при первом обращении, кэширование);

n  FTP, SSh, WebDAV, Gmail и т. д.;

n  монтирование содержимого архивов (rar, zip, tar, bzip2, gzip и т. д.);

n  монтирование специфических устройств (iPod, мобильники Siemens, Apple iPhoto DPAP и т. д.);

n  монтирование NTFS в режиме read&write (полноценная запись в отличие от той, что содержится в ядре по умолчанию);

n  хранение файлов в реляционной БД.

FUSE работает на Linux 2.4, Linux 2.6 и FreeBSD [2]. Начиная с версии 2.6.14rc1 FUSE входит в ядро Linux. Изначально FUSE была частью проекта AFVS [3], но теперь является отдельным проектом на SourceForge [4].

Как работает FUSE?

Разработать драйвер файловой системы с использованием FUSE очень просто. В качестве доказательства создатели FUSE приводят на своем сайте пример драйвера файловой системы Hello world, написанный на языке С, исходный код которого занимает меньше 100 строк. Этот исходный код доступен по адресу: http://fuse.sourceforge.net/helloworld.html.

На рис. 1 показано, как происходит системный вызов (например, stat) в драйвере Hello world.

Рисунок 1. Файловая система Hello world


ОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100