Несколько вопросов про Fuse

Модератор: Модераторы разделов

Аватара пользователя
Zeus
Сообщения: 694

Несколько вопросов про Fuse

Сообщение Zeus »

Начинаю изучать - ещё до конца не въехал (только скомпилил и примеры позапускал): хотелось бы "заранее узнать" насколько мне будет удобна эта технология.
Итак:
1. В тестовых примерах я скармливаю программе каталог-точку монтирования и прога начинает там "хозяйничать".
А есть ли возможность как-то другой проге подсунуть под такое же "хозяйничание" - подкаталог этой точки монтирования?
Подозреваю, что опытным fuse'рам вопрос покажется диким, но всё же...?

2. Выдержит ли FUSE если открыть и сидеть "слушать" ну, скажем, несколько тысяч файлов? Тысячи 4-5? А 10000?

Пока всё.

Вообще-то интересная технология.
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: Несколько вопросов про Fuse

Сообщение v04bvs »

Zeus писал(а):
01.08.2007 00:17
1. В тестовых примерах я скармливаю программе каталог-точку монтирования и прога начинает там "хозяйничать".
А есть ли возможность как-то другой проге подсунуть под такое же "хозяйничание" - подкаталог этой точки монтирования?

Вроде да. Монтируется же в смонтированный / например /home, как раз подобный случай.

2. Выдержит ли FUSE если открыть и сидеть "слушать" ну, скажем, несколько тысяч файлов? Тысячи 4-5? А 10000?

Не совсем понял, что здесь подразумевается.. Во-первых в ядре где то есть лимит на количество открытых файлов, и по-моему он около 1000. Во-вторых FUSE все низкоуровневые функции будет слать библиотеке, и всё зависит от того, как она будет тормозить.

Я вообще с FUSE разбирался, когда у меня в голове переклинило чего то. Мне оказывается нужно было inotify. По словам "слушать файлы" на всякий случай предложу проверить, не оно нужно?
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Несколько вопросов про Fuse

Сообщение Zeus »

v04bvs писал(а):
01.08.2007 00:50
Я вообще с FUSE разбирался, когда у меня в голове переклинило чего то. Мне оказывается нужно было inotify. По словам "слушать файлы" на всякий случай предложу проверить, не оно нужно?

Мне понравилась идея mrcache:
SCADA под Linux
Хочу обкатать её на конторском проекте, чтобы, возможно, потом применить в вымучиваемой мною scada.
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Несколько вопросов про Fuse

Сообщение Zeus »

FUSE допускает открытие файла несколькими процессами (или потоками) сразу?
А "драйвер" этого файла сможет различить их при чтении (в функции read)?

И ещё такой вопрос:
у "драйвера" ещё не готовы данные - он, например, на семафоре, усыпляет процесс, вызывающий функцию read.
По готовности (семафор взводится - поток просыпается) - данные сливаются вызывающему процессу.
А как реализовать это в случае чтения файла несколькими потоками(процессами)?
Заводить кучку семафоров - по одному для каждой "сессии"? Или во FUSE есть какой-нибудь другой механизм?
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Несколько вопросов про Fuse

Сообщение Zeus »

У меня тут подозрение возникло:
ведь каждое чтение/запись в/из файла, в т.ч. и FUSE'овского - это переключение контекста потока из пользовательского в ядерный и обратно?
Активная работа с файлами будет тормозить работу SCADA - гораздо быстрее будет взаимодействовать внутри одного процесса...
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: Несколько вопросов про Fuse

Сообщение v04bvs »

Zeus писал(а):
02.08.2007 21:50
У меня тут подозрение возникло:
ведь каждое чтение/запись в/из файла, в т.ч. и FUSE'овского - это переключение контекста потока из пользовательского в ядерный и обратно?
Активная работа с файлами будет тормозить работу SCADA - гораздо быстрее будет взаимодействовать внутри одного процесса...

А не слишком рано оптимизацией заниматься? ))
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Несколько вопросов про Fuse

Сообщение Zeus »

v04bvs писал(а):
03.08.2007 00:13
А не слишком рано оптимизацией заниматься? ))

Так потом поздно будет!
Спасибо сказали:
Serik
Сообщения: 149
ОС: SuSE Linux

Re: Несколько вопросов про Fuse

Сообщение Serik »

Zeus писал(а):
01.08.2007 00:17
2. Выдержит ли FUSE если открыть и сидеть "слушать" ну, скажем, несколько тысяч файлов? Тысячи 4-5? А 10000?

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