При чтении файлов с определенного диска нужно подменить содержимое части файлов, оно фактически будет читаться из другого места. Какой самый простой по трудозатратам способ?
Здравствуйте, Tinker, Вы писали:
T>При чтении файлов с определенного диска нужно подменить содержимое части файлов, оно фактически будет читаться из другого места. Какой самый простой по трудозатратам способ?
T>Хучить придется каждый процесс, так ведь? Это не подойдет. T>В файловой системе разве нет такой возможности, плагины какие-нибудь?
file system filter driver (c) x64
Как много веселых ребят, и все делают велосипед...
Здравствуйте, ononim, Вы писали:
O>file system filter driver (c) x64
Забыл: "самый простой по трудозатратам способ" — аутсорс (его копирайт не ставлю, мой алгоритм случайно даёт тот же результат )
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Здравствуйте, gear nuke, Вы писали:
GN>Забыл: "самый простой по трудозатратам способ" — аутсорс (его копирайт не ставлю, мой алгоритм случайно даёт тот же результат )
Тогда подскажите, сколько будет стоить разработка такого драйвера?
Здравствуйте, Tinker, Вы писали:
T>Тогда подскажите, сколько будет стоить разработка такого драйвера?
Прошу прощения, что ввёл своим постом в заблуждение, хотел сострить, получилось что ступил
Ответ на этот вопрос x64 никогда не писал, ограничиваясь "стучи в асю, договоримся"
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Верно, потому что сам по себе файловый фильтр штука не сложная, цена и сроки зависят исключительно от полезной нагрузки. Мои контакты можно найти здесь, пишите, если интересно.
Здравствуйте, x64, Вы писали:
x64>Верно, потому что сам по себе файловый фильтр штука не сложная, цена и сроки зависят исключительно от полезной нагрузки.
А если считать функционал по минимуму, сколько это будет стоить? Например, простейший функционал — если имя файла начинается с буквы "A", то его содержимое подменить на набор нулей?
T>А если считать функционал по минимуму, сколько это будет стоить? Например, простейший функционал — если имя файла начинается с буквы "A", то его содержимое подменить на набор нулей?
А смысл спрашивать? Я не думаю, что ты готов выложить несколько штук USD.
Здравствуйте, Tinker, Вы писали:
T>Здравствуйте, ononim, Вы писали:
O>>file system filter driver (c) x64
T>Кажется, то что надо. T>minifilter достаточно, или нужен полноценный фильтр?
minifilter достаточно, так как он и есть полноценный. вопрос отличия фильтра от минифильтра лежит несколько в другой плоскости, не в функционале.
T>Это за "hello world"-драйвер такие расценки?
Hello world драйвер вообще бесплатный, прямо в wdk (ddk) найдете, но как только встает вопрос разработки-доработки, то это становится намного дороже.
Тут принцип такой: тот кто потратил годы на освоение этого вопроса дешево делать не станет, даже если разработка займет месяц. Дешевле можете сами попробовать освоить, если планируете и дальше этим заниматься, но вот незадача — это совсем не месяц и ничуть не дешевле. Просто возьмите готовый драйвер и попробуйте начать его модифицировать, тут исправьте, там добавьте и походу поймете о чем я говорю.
поинтересуйтесь ценами небезызвестной компании OSR на их продукты (это вспомогательные продукты для реализации различного рода функциональности, например ваша или намного сложнее)
Filter Driver Development Kit (FDDK)
File System Development Kit (FSDK)
Data Modification Kit (DMK)
а также ценами на индивидуальные заказы, я думаю если вы закажете не у них, а у менее известных специалистов и не в америке, а в россии, то все равно дешево не будет.
Даже если вы цену от OSR разделите на 3-4, то все равно это будет немало по стоимости. Точную цифру я вам не назову, но думаю дешевый вариант все равно обойдется в несколько тысяч
Я бы сказал 3-5, но просьба не опираться на эту цифру, я не слишком компетентен в ценообразовании
Здравствуйте, Евгений Музыченко, Вы писали:
T>>>А что, здесь по умолчанию подразумевают никсы? fk0>> Конечно. ЕМ>Не льстите себе.
Я -- подразумеваю.
Тривиальная вообще вещь (хорошо, fuse есть) в мире *nix в мире поделок "профессиональных программистов" превращается в профессиональное программистоване мозга (разглядывая тред).
x64>>>Меньше. T>>сколько?
x64>7 дней, 7 ночей, 5 часов, 24 минуты, 8 секунд и 371 миллисекунда.
у меня возникают смутные подозрения что за указанное время с АТ будут только-только определены требования к функционалу и попутно у АТ синхронизируется понимание того, что есть файловый фильтр, его положение в иерархии и т.п. вещи с потенциальным исполнителем
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
x64>>7 дней, 7 ночей, 5 часов, 24 минуты, 8 секунд и 371 миллисекунда.
Время написал от балды, на самом деле, лишь для того, чтобы показать автору, что он задаёт вопросы не первой степени важности.
VAB>у меня возникают смутные подозрения что за указанное время с АТ будут только-только определены требования к функционалу и попутно у АТ синхронизируется понимание того, что есть файловый фильтр, его положение в иерархии и т.п. вещи с потенциальным исполнителем
Конечно, но и преувеличивать сроки тоже не стоит, за пару недель вполне пишется такой фильтр, как автор указал здесь
. Другое дело, что это только при условии наличия наработок и при уловии ежедневной 8-часовой занятости над проектом. Новичок с такой задачей за приемлемое время, разумеется, не справится.
. Другое дело, что это только при условии наличия наработок и при уловии ежедневной 8-часовой занятости над проектом. Новичок с такой задачей за приемлемое время, разумеется, не справится.
Вообще я реализовал подобный функционал (хотя возможно не настолько полный как хочется автору) как-то за полдня..
Но я свои услуги не предлагаю, мне впадла
Как много веселых ребят, и все делают велосипед...
O>>Вообще я реализовал подобный функционал как-то за полдня.. x64>А у меня 20 см.
Крут
На самом деле в связи с определенными ограничениями в требованиях я позволил себе тогда сильно схалявить. Конкретнее мне надо было перенаправлять лишь открытие на чтение с определенного пути в другой путь на том же диске и запрещать запись. Обошелся патчем dispatch table драйвера FS диска и подменой пути и запретом всего что не read в IRP_MJ_CREATE. С имплементацией фильтра я бы провозился гораздо дольше конечно
Как много веселых ребят, и все делают велосипед...
AF>а также ценами на индивидуальные заказы, я думаю если вы закажете не у них, а у менее известных специалистов и не в америке, а в россии, то все равно дешево не будет.
У меня как то Системный Архитект был из Франции. Во Франции зарплаты как правило меньше чем в Штатах.Но он говорил что зарплата хорошего програмиста для Windows кернел не зависит от страны проживания.Наверное почуствовал это на собстенной шкуре Но зато он был создателем одного старт апа, который был успешно продан и где главная разработка была в Windows кернел.Скупой платит дважды.
AF>Даже если вы цену от OSR разделите на 3-4, то все равно это будет немало по стоимости. Точную цифру я вам не назову, но думаю дешевый вариант все равно обойдется в несколько тысяч AF>Я бы сказал 3-5, но просьба не опираться на эту цифру, я не слишком компетентен в ценообразовании
Где то проскальзовало сообщение что OSR берет 500 в час.Не знаю относится ли ко всем типов драйверов, но цены на ихнии тулзы говорят что наверное правда.
Здравствуйте, x64, Вы писали:
x64>>>7 дней, 7 ночей, 5 часов, 24 минуты, 8 секунд и 371 миллисекунда.
x64>Время написал от балды, на самом деле, лишь для того, чтобы показать автору, что он задаёт вопросы не первой степени важности.
неужели ты думаешь я не понял твоей иронии?
ответ мне понравился, надо отметить — но улыбнувшись, вспомнил как оно бывает дальше — и написал свой
VAB>>у меня возникают смутные подозрения что за указанное время с АТ будут только-только определены требования к функционалу и попутно у АТ синхронизируется понимание того, что есть файловый фильтр, его положение в иерархии и т.п. вещи с потенциальным исполнителем
x64>Конечно, но и преувеличивать сроки тоже не стоит, за пару недель вполне пишется такой фильтр, как автор указал здесь
. Другое дело, что это только при условии наличия наработок и при уловии ежедневной 8-часовой занятости над проектом. Новичок с такой задачей за приемлемое время, разумеется, не справится.
x64, разумеется, перед тем как отвечать — я внимательно ознакомился со всеми требованиями в ветке — и они мне не понравились.
тут, возможно, тот самый случай когда можно день выяснять и за 5 мин долететь, особенно если поставить условие (как делают в OSR) — работаю на своих материалах, то бишь фрйэмворках и т.п.
даже сходив по твоей ссылке, видим ТЗ 2.0 >>А если считать функционал по минимуму, сколько это будет стоить? Например, простейший функционал — если имя файла начинается с буквы "A", то его содержимое подменить на набор нулей?
сравним с требованиями на старте ветки >>При чтении файлов с определенного диска нужно подменить содержимое части файлов, оно фактически будет читаться из другого места. Какой самый простой по трудозатратам способ?
про какое место речь? нужно ли вовлекать другой файл, БД, Сеть, обмен с приложением...? вопросы, вопросы.
но уже то, что совершенно разные ТЗ висят в двух соседних сообщениях — это не очень хороший знак.
Только с именами на А вопросов нет — тут как раз все вполне определенно. Хотя поговорить про открытие по разным ID, про репарсинг и т.п. не мешает тоже, для профилактики.
А вот про подменить уже надо бы уточнить — для кого подменяем? для определенного пользователя, процесса? для всех, кто выше? как насчет доступа к файлу через редиректоры (видимость с других машин)?
Если речь все же о том, чтобы в ответ на все операции чтения обнулять буфер и отдавать наверх нули (простой вариант), встают вопросы что делать с операциями записи, изменения размера и других. Нужно ли их игнорировать или ...? Простое игнорирование может сломать логику приложений черных ящиков — и вся затей окажется ненужной.... вопросы, вопросы.
Все эти вопросы, разумеется, будут сопровождаться экскурсами в устройство и поведение ОС в различных ситуациях, о половине из которых, как водится, заказчики окажутся не в курсе и это не говоря уже о смежных вопросах по установке и т.п.
О том, что ОС до сих пор так и не указана лучше вообще не вспоминать — а что если речь о 2000й? отсюда и ответ выше.
Можно, конечно, начать в agile стиле и наколбасить некий прототип за неделю — а потом все эти требования и моменты прояснять в процессе постепенной эксплуатации... но не факт что время затраченное по итогу на просветительскую работу и работу с требованиями будет меньше, чем если сразу провести стадию формализации ТЗ на старте и работать уже четко понимая что делаем. Постоянные же переделки в свете перманентно проясняющихся и соответственно меняющихся требований — оставить лучше на совести тех, кто вовлечет клиента в сей agile процесс. Это в принципе может быть хорошо для тех кто работает по time and materials схемам — заказчик подсаживается на иглу качественно и надолго
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
Очень глубокомысленный и высокопрофессиональный постинг, только одна деталь все впечатление портит.
VAB>О том, что ОС до сих пор так и не указана лучше вообще не вспоминать — а что если речь о 2000й? отсюда и ответ выше.
Здравствуйте, Tinker, Вы писали:
T>Очень глубокомысленный и высокопрофессиональный постинг, только одна деталь все впечатление портит.
VAB>>О том, что ОС до сих пор так и не указана лучше вообще не вспоминать — а что если речь о 2000й? отсюда и ответ выше.
T>http://rsdn.ru/forum/asm/3721022.1.aspx
Но на самом деле требование XP ничего не меняет — минифильтры появились в XP SP1 поэтому с практической точки зрения при выборе технологии в такой форме требование (от WinXP и выше) не слишком проясняет картину.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
Здравствуйте, Valery A. Boronin, Вы писали:
VAB>Здравствуйте, Tinker, Вы писали:
T>>Очень глубокомысленный и высокопрофессиональный постинг, только одна деталь все впечатление портит.
VAB>>>О том, что ОС до сих пор так и не указана лучше вообще не вспоминать — а что если речь о 2000й? отсюда и ответ выше.
T>>http://rsdn.ru/forum/asm/3721022.1.aspx
VAB>ок, признаю, тут Вы правы с поправкой, спасибо.
VAB>Но на самом деле требование XP ничего не меняет — минифильтры появились в XP SP1 поэтому с практической точки зрения при выборе технологии в такой форме требование (от WinXP и выше) не слишком проясняет картину.
только если теперь я не ошибаюсь — 2003 server sp1, XP sp 2, w2k sp4 rollup 1
T>>>Очень глубокомысленный и высокопрофессиональный постинг, только одна деталь все впечатление портит.
VAB>>>>О том, что ОС до сих пор так и не указана лучше вообще не вспоминать — а что если речь о 2000й? отсюда и ответ выше.
T>>>http://rsdn.ru/forum/asm/3721022.1.aspx
VAB>>ок, признаю, тут Вы правы с поправкой, спасибо.
VAB>>Но на самом деле требование XP ничего не меняет — минифильтры появились в XP SP1 поэтому с практической точки зрения при выборе технологии в такой форме требование (от WinXP и выше) не слишком проясняет картину.
AF>только если теперь я не ошибаюсь — 2003 server sp1, XP sp 2, w2k sp4 rollup 1 совершенно верно, не ошибаетесь
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
Здравствуйте, fk0, Вы писали:
fk0>Тривиальная вообще вещь (хорошо, fuse есть) в мире *nix
И как FUSE решит задачу даже в формулировке «если имя файла начинается с буквы „A“, то его содержимое подменить на набор нулей»? Не будешь же ты монтировать корневую ФС с помощью FUSE? :-) Даже /home было бы как-то неразумно подключать через FUSE.
fk0>в мире поделок "профессиональных программистов" превращается в профессиональное программистоване мозга (разглядывая тред).
У них там в Windows есть специальные технологии именно для обсуждаемого. Другое дело, что в их мире не очень принято программам разных разработчиков взаимодействовать между собой, отчего и возникает нужда вклиниваться между другими программами и ОС так, чтобы те не заметили. Антивирусы, например, а то и какие-нибудь «шпиёнские» вещи. Вот зачем может понадобиться «подменить содержимое части файлов, оно фактически будет читаться из другого места»?
Здравствуйте, Евгений Музыченко, Вы писали:
T>>>А что, здесь по умолчанию подразумевают никсы? fk0>> Конечно. ЕМ>Не льстите себе. :)
Где-где, а здесь очень важно указывать ОС и ее версию. Я вот тоже иной раз выключаю телепатический модуль и угадываю не ту ОС, которую имел в виду автор (http://rsdn.ru/forum/asm/3716576.flat.aspx
Здравствуйте, Alexey Frolov, Вы писали:
AF>а также ценами на индивидуальные заказы, я думаю если вы закажете не у них, а у менее известных специалистов и не в америке, а в россии, то все равно дешево не будет.
Судя по краткому описанию задачи, стандартный сэмпл simrep делает ровно то, что ему нужно. Надо только немного доработать условия подмены.
Господа драйверисты не очень чисты на руку?
Совпадение задачи в simrep и у топикстартера существенным не считается?
Ему надо было подменять файлы, simrep именно это и делает — подменяет файлы по заданной маске.
Ты уверен, что ему надо было что-то другое? Или simrep не делает то, что заявлено в описании? Объясни.
Здравствуйте, x64, Вы писали:
x64>Ну раз по-твоему её нет, тем лучше.
Не прошло и года, получил наконец дельный совет simrep действительно делает почти всё, что мне нужно. Хотя, может у него есть проблемы совместимости. Или еще какие проблемы. Не знаю. В любом случае неважно. На рентакодере мне уже всё сделали за 500 USD. А тебе, 64-битный товарищ, надо машинку для закатывания губы повышенной мощности. И понтов немного поубавить.
Здравствуйте, Tinker, Вы писали:
T>Здравствуйте, x64, Вы писали:
x64>>Ну раз по-твоему её нет, тем лучше.
T>Не прошло и года, получил наконец дельный совет simrep действительно делает почти всё, что мне нужно. Хотя, может у него есть проблемы совместимости. Или еще какие проблемы. Не знаю. В любом случае неважно. На рентакодере мне уже всё сделали за 500 USD. А тебе, 64-битный товарищ, надо машинку для закатывания губы повышенной мощности. И понтов немного поубавить.
Протестируй это хорошо. Есть большая разница в таких драйверах между просто разработанным и разработанным и хорошо протестированным драйвером.Консультанты кто разрабатывают FS фильтры обычно имеют денюжку на поддержке разработанного продукта.
А>Консультанты кто разрабатывают FS фильтры обычно имеют денюжку на поддержке разработанного продукта.
Добавлю только, что иногда цена подобного сопровождения и консультаций может достигать $500/час. Скрестим пальцы и будем надеяться, что автору не придётся обращаться к ним за помощью.