Знакомство с FUSE
Запись от Loafer размещена 30.09.2018 в 18:06
Показов 3069
Комментарии 2
|
FUSE - это свободный модуль для ядер UNIX-подобных операционных систем, позволяющий разработчикам создавать новые типы файловых систем, доступные для монтирования пользователями без привилегий (в первую очередь - создание виртуальных файловых систем). Более подробно можно почитать здесь и здесь. Сам я не стал очень глубоко погружаться в изучение данной темы. Просто стало интересно, как можно реализовывать собственные файловые системы, хоть и виртуальные. Ниже приведен код супер тривиальной файловой системы, чтобы в будущем я мог быстро вспомнить, как работать с FUSE.
| |||||||||||||||
Размещено в C++
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 2
Комментарии
-
Спасибо!
Симпатичный HelloWorld!
Не подскажете, для чего нужныst->st_nlink = 2;в корне? ( строка 23 )Запись от politoto размещена 02.10.2018 в 08:29
-
Благодарю за интерес!
Сообщение от politoto
Начнем с того, чтоst->st_nlink- это количество жестких ссылок на файл. В строке 23 обрабатывается тот случай, когда мы получаем информацию о директории. В UNIX-системах количество жестких ссылок на директорию всегда равно 2 + n, где n - количество поддиректорий. Так как поддиректорий в нашем случае нет, то число жестких ссылок равно просто 2. Число 2 берется потому, что директория указывает сама на себя (символ.), а также на директорию через символ..указывает родительский каталог. Более подробно можно прочитать тут.Запись от Loafer размещена 02.10.2018 в 15:10


