ReactOS → FastFAT_new
FastFAT_new — это новая реализация файловой системы FAT для
Недавно библиотека FullFAT была упомянута на форуме ReactOS и затем представлена вниманию разработчиков при помощи канала IRC. Эта платформо-независимая библиотека для доступа к разделам FAT12/16/32 написана Джеймсом Уолмсли (James Walmsley). Существует мнение, что новый драйвер IFS может быть написан с её использованием. Текущий драйвер FAT был создан для использования со старым, менее NT-совместимым ядром и изначально никогда тщательно не проверялся на Windows, что стало причиной многочисленных проблем со стабильностью работы операционной системы, по этой причине подыскивалась альтернатива данному драйверу. Джеймс принял и поддержал идею, но имел лишь небольшой опыт в написании драйверов NT IFS, поэтому Алексей Брагин решил помочь ему с драйвером. Потребовалось приблизительно два дня, чтобы получить опытный образец, способный смонтировать том и прочесть оттуда файлы.
В то время, как библиотека FULLFAT обеспечивает необходимые функции доступа к файлу, все функции учёта должны быть произведены драйвером. Одна из них включает в себя информационные запросы о файлах, такие, например, как длина файла. Другой функцией может быть захват файлов. Алексей в настоящее время реализует и тестирует их на Windows 2003, а не на ReactOS. Мы надеемся, что когда драйвер будет закончен, то он сможет послужить источником открытого кода для будущих изысканий в написании драйверов NT IFS для обеспечения ReactOS стабильной файловой системой FAT.
FullFAT — это высокопроизводительная и потоко-безопасная реализация файловой системы FAT (поддерживающая FAT12/16 и FAT32) для встраиваемых устройств. Также можно включить опциональную поддержку длинных имен файлов при помощи настроек компиляции. FullFAT очень хорошо оптимизирован, и может быть использован даже на устройствах с малым количеством оперативной памяти.
К сожалению FastFAT_new не будет готов к выходу ReactOS 0.3.11, так как не реализован необходимый функционал. Поэтому следует ожидать его в 0.4.
Интерестные ссылки:
- +9
- eReS
- 01 ноября 2009, 21:29
судя по всему, «потоко-безопасная»
«файлов»
Будьте любезны, поправьте опечатки.
Чую, проекту нужна более твёрдая организация, иначе так и будет лет через много версия 0.3.127
В первую очередь мне, как пользователю, нужна поддержка прочих существующих фс (в частности, NTFS), а не расширение функционала того, что уже и так работает. Вот когда будет хотя бы бета-версия, тогда и можно браться за добавление своего.
А с организацией — я, конечно, не в курсе отношений внутри сообщества разработчиков, но… Планы обычно пишут для того, чтобы их перегонять, а не отставать от них.
fog, да я добрый, я же хочу когда-нибудь этой системой пользоваться.
Кстати,
То, как сейчас ROS работает с FAT можно назвать «работой» с большой натяжкой. Драйвер был написан давно, с того времени очень много в ядре переписали и драйвер FAT нужно тоже переписывать. Поэтому FullFAT — это не расширение функционала, а замена «кривого велосипеда» на уже существущий открытый проект. А сколько ты патчей отослал? Нисколько? Вот и не гунди тогда на тех, кто хотя бы что-то делает.
Почитай вот
В винду практически не захожу, работаю исключительно под линуксом с несколькими терабайтами данных на ntfs и проблем никаких не имею, зато вот системный раздел на ext3 потерять удалось весьма успешно.
Кроме того, разработчики ROS коммитили код в проект
ответ себе же: не хватает программистов…
FAT тоже нежурналируемая, просто она поддерживается везде (без преувеличения). Поэтому она и взята за основу. NTFS тоже будет поддержана, как сказал фог через библиотеку NTFS-3g. Над этим проектом работает Ged Murphy.
Да и потребность работать с другими ФС никуда не исчезала, пусть даже саму систему на них поставить нельзя.
Кстати, умные люди сильно ругаются даже на ext3/4, поэтому не думаю, что изобретение очередного велосипеда принесет что-то хорошее.
А то, что ругаются на ext3/4 — да потому, что она такая же тупая, как FAT. Но FAT — поддерживается абсолютно всеми, а ext в данном случае велосипед.
2. В ext проблемы не только в архитектуре, но и в реализации.
3. Вот вы собираетесь накрутить на FAT журналирование, и что из этого выйдет? Загрузится какой-нибудь линукс или та же винда, радостно увидит FAT и поработает с ним на славу, журнал можно выкидывать на помойку. А если вы собираетесь проставить новой ФС новый маркер в таблице разделов, то нафиг она такая нужна кому-то, с таким же успехом можно сконвертировать FAT в любую другую ФС и назад, просто процесс будет немного более сложным (а часто ли пользователи меняют тип ФС, чтобы простота конвертации была так важна?!).
Бывает, что ext3 открывают как ext2 и работают с ней так — после этого разве все данные на помойку? Нет, просто отсутствует журналирование.
Вообще, это только предполагаемая экспериментальная фича. Которую просто интересно было бы сделать, и её будет делать Джеймс в качестве научного проекта в универе.
Необязательно же так всё просто и тупо предполагать — естественно обратно совместимо с обычным фатом! Иначе это нафиг ненужно.
Причина кроется в фразе «бывает, что ext3 открывают как ext2». Вот именно, что бывает, и очень редко, как правило в целях восстановления данных, и еще реже, когда какому-то очень старому линуксу нужно получить доступ к ext3. Причем пользователь сам знает, что он делает, и его чаще всего предупреждают о последствиях.
В вашем же случае вы продвигаете возможность работы с новым фатом из любых операционок как основную фишку, т.е. это будет происходить регулярно и без всяких предупреждений для пользователя.
P.S. В качестве научного проекта имеет право существовать что угодно, т.к. подавляющее большинство таких проектов не имеет никакого практического смысла. Жаль только затраченных на эти проекты сил, которые можно было направить на что-то более актуальное.
Дела идут, форум растет! Ты можеш организовать лучше?