Что такое хороший ресурс для начала разработки драйверов файловой системы Windows? - PullRequest
8 голосов
/ 19 октября 2008

Что такое хороший ресурс для начала разработки драйвера файловой системы Windows для новичка?

Ответы [ 6 ]

12 голосов
/ 19 октября 2008

Внутренние компоненты файловой системы Windows NT от Раджива Нагара.

Страница ресурсов файловой системы OSR Online (и OSR Online в целом):

Список рассылки NTFSD / форум (также размещенный на OSR):

И начиная с Vista, комплект драйверов Windows (WDK), который раньше назывался DDK, теперь включает в себя комплект устанавливаемых файловых систем (IFS):

Просто наперед - разработка файловой системы Windows чрезвычайно сложна, поскольку файловая система тесно интегрирована с диспетчером памяти Windows. Это та вещь, которой люди посвящают карьеру. Просто у вас есть представление, во что вы можете попасть.

5 голосов
/ 19 октября 2008

Вы можете попробовать Windows Hardware Developer Central , в котором есть ссылки на блоги, группы новостей, книги и другие полезные ресурсы для авторов драйверов.

Я также рекомендую загрузить и установить Windows DDK и изучить некоторые из включенных примеров. Там должны быть различные драйверы скелета, которые могут быть использованы в качестве отправной точки для вашей пользовательской работы.

1 голос
/ 23 июня 2016

Чтобы добавить пользовательский режим опции разработки драйвера файловой системы:

  • Dokan - с открытым исходным кодом, с интерфейсами для C, .NET, Java, Ruby, FUSE.
  • CBFS (Файловая система обратного вызова) - коммерческая, с хорошей документацией.

Эти решения работают как FUSE (Файловая система в программном режиме пользователя для Linux). Они выполняют всю сложную работу в ядре и передают адаптированные запросы вашему приложению пользовательского режима.

Dokan не хватает некоторых функций, как в текущей версии, но я думаю, что проще внести в него и добавить необходимые функции, чем сделать драйвер файловой системы с нуля.

Dokan также является хорошим примером кода драйвера в режиме ядра.

1 голос
/ 06 июля 2009

Эта книга: http://www.amazon.com/Windows-2000-Device-Driver-Book/dp/0130204315/ref=sr_1_1?ie=UTF8&s=books&qid=1246856381&sr=8-1

или любую новую книгу, которую вы можете найти в Art Baker. Я прочитал его книгу драйверов устройств NT около 10 лет назад, и в конце концов все прояснилось.

Кстати, книги 10 лет назад или более / менее остаются в силе. Вы не можете использовать примеры, но модель в основном не изменилась - просто стала более сложной в типичной манере M $. Материал IRP все еще действует.

Материал OSR хорош - но дорогой ... Я думаю, что для полного понимания всего дизайна Бейкер не может быть побежден. Кроме того, любой, кто читает это, просто пытается изучить драйверы Windows - я бы избегал вещей NTFS ... это очень сложно, и не имеет ничего общего с тем, что вам нужно для создания простого драйвера USB или даже устройства DMA.

1 голос
/ 19 октября 2008

Исходный код реализации Windows файловой системы ext2 может быть полезен.
Но поскольку Mike B правильно упомянул, что это чрезвычайно сложная область для ввода, я настоятельно рекомендую изучить некоторые базовые концепции разработки драйверов и написать несколько не драйверов файловой системы, прежде чем запускать драйвер файловой системы. развитие.
Если вы делаете это для коммерческого использования, а не для обучения, я бы предложил эту работу на аутсорсинг. Это будет наиболее экономически эффективный способ.

1 голос
/ 19 октября 2008

Для драйверов Windows также смотрите этот блог: http://blogs.msdn.com/doronh/

При разработке на основе Linux на ум приходят две хорошие книги: Драйверы устройств Linux и Разработка ядра Linux . Книга Linux Device Drivers может быть немного устрашающей, поэтому хорошее введение в ядро ​​- полезная отправная точка.

...