File System

File System

FX-FS - Библиотека для реализации FAT-совместимой файловой системы. Файловая система FAT является стандартом де-факто для встраиваемых применений, благодаря ее поддержке абсолютным большинством ОС, как встраиваемых, так и настольных, что позволяет достичь прозрачности обмена данными между инструментальным компьютером и встраиваемой системой.

  • Возможности.
    • Поддержка FAT 12/16/32
    • Поддержка каталогов
    • Поддерживаются несколько физических носителей одновременно
    • Возможность работы с несколькими разделами
    • Потокобезопасная работа с файлами
  • Симулятор Возможно использование совместно с эмулируемой windows-версией FX-RTOS. Использование эмулятора позволяет начать работу над встраиваемым программным обеспечением на инструментальном компьютере до того, как изготовлен первый прототип реального устройства. Это позволяет разрабатывать аппаратное и программное обеспечение параллельно, что сокращает время вывода продукции на рынок. В качестве носителя может использоваться, например USB-диск или файл, находящийся на инструментальном компьютере.

Для встроенных систем большое значение имеет объем занимаемого кода и скорость работы программных компонентов. Вместе с тем, существенную долю реализации файловой системы занимают различные механизмы предотвращения ошибок, таких как запись в файл открытый для чтения, попытка удаления файла, открытого в другой программе и тому подобного.
Несмотря на важность этих проверок, они редко требуются во встроенных приложениях, где работа с файловой системой может производиться вообще только из одного выделенного для этого потока. Поэтому FX-FS следует общей концепции FX-RTOS и использует архитектуру основанную на слоях.
Слой, ответственный за низкоуровневую работу с носителем выделен в отдельный компонент, который может использоваться непосредственно, в тех системах, где контроль ошибок не требуется. В дополнение к этому, поверх этого слоя может работать реализация подсчета ссылок на открытые файлы, для исключения ошибок доступа, слой, реализующий кэширование и так далее.

FX-FS основана на open-source разработке сервера файловой системы для микроядерной ОСРВ Prex, которая отличается высоким качеством кода. Реализация была модифицирована с целью обеспечить должный уровень модульности и отвязать реализацию от виртуальной файловой системы, которая принята в UNIX-подобных ОС. FX-FS имеет встроенную интеграцию с FX-RTOS, при этом функции синхронизации выделены в отдельный модуль, что позволяет использовать FX-FS и с другими ОС, а также в системах без ОС. В последнем случае синхронизация доступа к файлам (недопущение параллельной работы функций ФС) возлагается на пользователя.

Функции

В состав библиотеки входит следующий набор функций:
Работа с разделами на физическом носителе: fs_volume_open, fs_volume_close
Поддержка каталогов: fs_dir_create, fs_dir_delete, fs_dir_open, fs_dir_close, fs_dir_read_first_entry, fs_dir_read_next_entry
Работа с файлами: fs_file_create, fs_file_delete, fs_file_open, fs_file_close, fs_file_read, fs_file_seek, fs_file_trunc, fs_file_write

Интерфейс драйвера

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

Симулятор

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


Будьте в курсе новостей и спецпредложений

Авторизация
Чтобы продолжить покупку, пожалуйста, авторизируйтесь на сайте.
Забыли пароль?