Home » Статьи OpenSolaris

Ускоряем работу FAT (PCFS) в OpenSolaris

[2 Янв 2010 | Комментариев: 4 | Просмотров: 241]

Всем пользователям OpenSolaris, кто работал с данными на флешках, известна проблема низкой производительности драйвера файловой системы PCFS (FAT). До недавнего времени запись данных на флеш и чтение с них выполнялись в разы медленнее, чем под другими ОС. Теперь у нас есть новогодний подарок от участника KirovOSUG, Руслана Увашева, – оптимизированный драйвер PCFS.


Имеется ограничение – оптимизация не работает и в будущем не планируется реализовывать для устройств с ФС FAT_X, имеющих размер кластера < 4КБ,  т.е. меньших размера страницы памяти. Данное ограничение подаляющего  большинства флешек не касается.
Оптимизация основана на механизме упреждающего чтения данных с диска в память. Причиной отказа от оптимизации с размером кластера меньших размера страницы является сильное усложнение алгоритма упреждающего чтения.

На данный момент доступна 32-битная версия нового драйвера PCFS.
Предлагаем всем скачать (не забудьте убрать разрешение файла  .txt) и протестировать. В случае выявления ошибок- писать об этом на форуме.

Файл драйвера следует располагать в /usr/kernel/fs/.
Получение информации о драйвере: modinfo | grep pcfs
Выгрузка драйвера: modunload –i <Id>

Загрузка драйвера: modload /usr/kernel/fs/pcfs
Сначала следует выгрузить старый драйвер, а потом – загрузить новый.


Результаты тестирования:

старый драйвер чтение – 3 МБ/с запись – 2.2 МБ/с
новый драйвер чтение – 9 МБ/с запись – 10 МБ/с
Кроме того, в драйвере пофикшен баг с определением фат в логических
разделах.

Скачать драйвер PCFS (не забудьте убрать разрешение файла  .txt)

12345
Loading ... Loading ...

4 Comments »

  • shifted said:

    Попробуйте, отпишитесь, затем я дополню результаты тестирования

  • ank1812 said:

    А исходник посмотреть можно? Очень интересно.

  • Melancholic said:

    Найдена ошибка при записи с размерами кластеров в 16 и 32 Кб для FAT и FAT32, в оптимизированной версии, в исходной же найдены отклонения в чтении по сравнению с виндовой версией при просмотре таблицы фат.
    Идет исправление…

Leave your response!

You must be logged in to post a comment.