ROS File Systems

Материал из Русский WINE
Перейти к: навигация, поиск

Файловые системы в ReactOS

Данная статья частично является переводом официальной вики.


Эта страница содержит информацию о файловых системах, которые будут поддерживаться ReactOS.

FAT32

FAT32 — файловая система, разработанная корпорацией Microsoft. Появилась в августе 1996 года, вместе с Windows 95 OSR2. Она проста и легка для понимания по сравнению с другими распространенными файловыми системами. FAT поддерживается различными операционными системами, в т.ч. GNU/Linux, FreeBSD, BeOS, Mac OS X, и FreeDOS. Это делает FAT32 эффективной файловой системой для обмена файлами между операционными системами. Также широко используется на флэш-носителях и внешних жестких дисках.

Статус

ReactOS в настоящее время имеет возможность форматирования и установки на FAT раздел. Драйвер файловой системы в значительной степени выполнен, но содержит много вопросов. В настоящее время он переписывается для использования библиотеки FastFAT.

  • с ревизии 63696 доступно полное форматирование HDD при установке ReactOS.
  • в ревизии 64836 исправлены все проблемы с переименованием файлов.

Разработка

NTFS

NTFS — еще одна файловая система, разработанная корпорацией Microsoft. Была введена в линейке операционных систем NT, заменив FAT в качестве предпочтительной файловой системы.

Статус

Должна появиться в ReactOS 0.5.0. Поддержка NTFS планируется, но не является приоритетной. Первой целью в этой области, является дать возможность использовать драйвер, включенный в Windows XP, который обеспечивал бы в ReactOS поддержку NTFS.

На текущий момент, Пьер Швейцер (Pierre Schweitzer) пытается добавить в ReactOS поддержку NTFS. Стоит подчеркнуть, что код NTFS-3G в этом деле не особо полезен из-за довольно значительных различий в архитектурах IFS-драйвера режима ядра и драйвера пользовательского режима. [1]

На 2 ноября 2014 реализована поддержка чтения NTFS.

Далее будет дорабатываться поддержка чтения и реализовываться поддержка записи.

Ext/2

Second Extended File System (дословно: «вторая расширенная файловая система»), сокращённо ext2 (иногда ext2fs) — файловая система ядра Linux. Была представлена в апреле 1992 года, в качестве замены для расширенной файловой системы (Ext). Т.к. Microsoft не предоставляет поддержку Ext/2, драйвер будет реализован сторонним разработчиком.

Статус

Уже реализована возможность форматирования раздела в ext2, на первой стадии установки, но в настоящее время отключена. Сам драйвер ext2 достаточно развит и может быть использован. Тем не менее, инфраструктура поддержки ФС (в частности, диспетчер кэша) нуждается в дальнейшем развитии, прежде чем ext2 можно будет использовать.

Переписывание

28 сентября 2015 года было решено переписать драйвер ext/2 с использованием драйвера ext2fsd.

  • 12 октября в ревизии 69509 драйвер был добавлен в транк.

Если у вас при загрузке livecd или RAM-образа из-за ext2 драйвера не загружается система (CORE-10402) измените iso образ, удалив файл reactos\system32\drivers\ext2fs.sys.

Другие файловые системы

  • Согласно реестру Windows NT почти все части сетевых служб, исполняющихся в режиме ядра, являются драйверами файловых систем, а именно:
    • MSFS — файловая система почтовых ящиков
    • NPFS — файловая система именованных каналов. Впервые введена ​​в 0.0.18. Это дало возможность полного чтения/записи именованных каналов в ReactOS 0.0.19
  • Файловые системы компакт-дисков
    • CDFS (ISO-9660)
    • UDF — (Universal Disk Format) формат записи CD-RW, который позволяет «отформатировать» диск и работать с ним как с обычной большой дискетой, позволяющей чтение/запись/удаление/изменение данных. Объём таких UDF-форматированных дисков равен примерно 530 Мбайт, в отличие от обычных 700 Мбайт при записи одной сессией на весь диск.
      • В ReactOS планировалось добавить поддержку UDF. На 17 июня 2015 года были исправлены проблемы, возникающие при сборке драйвера, однако он не работает. [2]
  • NFS (Network File System) — протокол сетевого доступа к файловым системам. Позволяет подключать (монтировать) удалённые файловые системы через сеть. Возможно будет поддерживается в будущем, в настоящее время отсутствует.
  • MUP
  • SMBFS — файловая система для использования Samba (доступ к разделяемым ресурсам Windows)
  • XFS — высокопроизводительная журналируемая файловая система, созданная компанией Silicon Graphics. Отличается от других файловых систем тем, что она изначально была рассчитана для использования на дисках большого объёма (более 2 терабайт). Выпущена под GPL.

Итог

  • В настоящее время ReactOS поддерживает файловые системы FAT(12/16/32), NTFS (только чтение), CDFS, NPFS, и MSFS.
  • После того, как диспетчер кэша будет переписан, появится возможность реализации Ext/2
  • Когда-нибудь, когда ядро ReactOS cможет с этим справиться, появится возможность использования драйвера NTFS из Windows, но ReactOS никогда не будет рекомендовать это по различным правовым причинам.
  • Когда-нибудь будут поддерживаться другие, менее распространенные файловые системы. Сейчас у проекта нет свободных разработчиков, чтобы написать драйвера на 20 файловых систем.
  • Наиболее приоритетными файловыми системами, на данный момент, являются FAT, NTFS и Ext2/Ext3.
ReactOS
Search.png
Доклады
О ReactOSARWINSSЧеЗа
Информация Новости Выпуски новостейПереводы блоговНовости проектаВидеоReactOS на ХабреUSB от Вадима Галянта
Разработка Руководство по программированиюОтсутствующая функциональностьВетви разработкиКомпоненты системыReactOS и WineПлан работRoadmap ядра by VgalРазработчикиСовместимость с dll WindowsНаиболее значимые изменения за годИспользуемые проектыGoogle Summer of CodeИзвестные проблемы
Порты AMD64ARMXboxPowerPC
Компоненты Файловые системыРежим совместимостиОтчеты об ошибкахПечатьUSBЯдро
Загрузчик Восстановление MBRЗагрузка из GRUBПараметры загрузки
Прочее ARWINSSПриложения в ReactOSОформление ReactOSКоординаторы"Пасхальные яйца"Монетизация
Другое Типы ядерFreeWin95
Помощь
RAM-диск ReactOS по PXEс жесткого диска
Разработка Стиль написания кодаСтандарты RC-файловРабота с документациейВенгерская нотацияGNU Indent • [ Subversion : ветвислияниеиспользование TortoiseSVN ] • Основы переводаОтправка патчей
Репорты Отладка в VirtualBoxОтладка на экранДобавление программы в менеджер приложенийОтправка отчетов
Отладка Com0comGDBKdbgRossym.gdbRoswin.gdbWinDBGРуководство по WinDBGВключение трассировки ядраКоды DPRINTУдалённый отладчик ReactOS
Сборка CMakeRBuildФайлы RBuildАвтоматическое копирование файловСборка MINGW-w64Сборка модулейСреда сборки
Тестирование VirtualBoxVMwareQEMUHyper-VНеобходимый объём дискаПеренос файлов на виртуальный дискУстановка ReactOSУстановка драйверов
Сеть Общие папкиSambaNFS
Игры Установка DirectPlay
Обновление ReactOSЗагрузочная флешкаЧем можно помочь проектуСоздание нового пользователяЗвук и сеть в VirtualBoxСъемка и публикация видеоIRC-каналСторонние компонентыFAQReactOS как рабочая станцияReactOS и UEFI
Обзоры ОболочкаNTVDMWOWCommunity EditionИстория сайтаReactOS ServerКриптографияПО времен XP