Я решил провести эксперимент с драйвером файловой системы HPFS (файловая система OS/2). Мне интересно проверить как будет работать HPFS в ReactOS после установки драйвера (он в своё время существовал для Windows NT). Я на виртуалке использовал OS/2 Extended Edition 1.2

Почему такая версия OS/2

OS/2 Extended Edition 1.2 является первой с файловой системой HPFS. Данная версия вышла в 1989 году. Файловая система HPFS в Windows NT вплоть до версии 3.51 (вышедшей в 1995 году) была встроена посредством драйвера. До начала 1990-х Microsoft и IBM сотрудничали в сфере софта.

Начнём с OS/2

Обратите внимание на название файла образа виртуальной машины
Обратите внимание на название файла образа виртуальной машины

Вначале я установил на виртуальной машине OS/2 (версию выше я указывал). При установке есть выбор файловой системы: либо FAT либо HPFS. Я выбрал HPFS - иначе эксперимент лишился бы смысла, потому что ReactOS поддерживает первые версии OS/2 с FAT.

Сам выбор файловой системы при установке OS/2
Сам выбор файловой системы при установке OS/2
Интерфейс OS/2 1.2
Интерфейс OS/2 1.2
Показывает версию OS/2
Показывает версию OS/2

ReactOS + HPFS = ?

Посмотрите на vdi-файлы в ReactOS
Посмотрите на vdi-файлы в ReactOS

Я подключил к ReactOS (тоже на VirtualBox) диск с OS/2. ReactOS полноценно не видит и не работает с OS/2 (с HPFS).

Обратите внимание на время в правом нижнем углу
Обратите внимание на время в правом нижнем углу

Для эксперимента в ReactOS я скачал драйвер HPFS (файлы драйвера взяты из Windows NT 3.x). Перед установкой драйвера я перенёс файлы (посмотрите схему ниже):

  • pinball.sys в директорию C:\ReactOS\system32\drivers

  • uhpfs.dll и cuhpfs.dll в директорию C:\ReactOS\system32

Схема расположения файлов, отвечающих за драйвер HPFS в Windows NT
Схема расположения файлов, отвечающих за драйвер HPFS в Windows NT

Далее либо запустить файл HPFS_NT.exe (этот файл входит в вышеописанный дистрибутив драйвера), либо вносить изменения в реестр вручную. Я выбрал первый вариант, так как я боялся ковыряться в реестре Windows (риск нарушить работоспособность Windows посредством косяка в реестрах есть).

Сам HPFS_NT.exe
Сам HPFS_NT.exe

Итого

Снова взгляните на время в том же углу
Снова взгляните на время в том же углу

После этих манипуляций ReactOS по прежнему не видит раздел OS/2 с файловой системой HPFS. Причина скорее всего в завязанности драйвера HPFS на древние Windows NT - ведь на Windows 2000 и поздние версии такой фокус также не удался. Ядро ReactOS и все ключевые компоненты типа совместимы (на момент написания статьи) с Windows версии 5.x

При этом, я почему-то ожидал, что после этого ReactOS будет видеть HPFS-разделы.

Как вы думаете, нужна ли поддержка HPFS в ReactOS?

Комментарии (8)


  1. IDDQDesnik
    11.06.2022 17:00
    +12

    Как вы думаете, нужна ли поддержка HPFS в ReactOS?

    Вот прямо сейчас? Нет. Есть более нужные вещи, например поддержка NTFS.


    1. ConLenov Автор
      11.06.2022 20:24
      +5

      На мой взгляд в ReactOS помимо NTFS нужна поддержка exFAT


  1. ereinion
    12.06.2022 01:40

    А вот на вин2000 в свое время доводилось пользоваться этим драйвером - и весьма успешно. Так что продолжайте изыскания - шанс есть. Возможно, кстати, в неудаче повинна слишком старая HPFS. Она тоже за свою жизнь эволюционировала и драйвер из NT соответствует уже зрелой версии, которая использовалась в OS/2 Warp - 3.0/4.0


  1. Siemargl
    12.06.2022 09:20

    Ставил такой драйвер с 3.51 на NT4. Очень быстрая файловая система, сравнима с NWFS.

    Впрочем смотреть сейчас лучше на JFS


    1. strvv
      13.06.2022 20:07

      конечно, там всё на полосы по 8мб заложено, если не засирать диск - сейчас, на современном железе, оно наверное из кэша диска не вылезет, очень компактная, продуманная система для 80-90х.

      но там, последний раз с ней работал лет 15 назад, имхо накопились к ней вопросы.
      jfs использовал, а кпсс только на буте, минимальный набор системы скинул на ide-dom 64мб (предок этих ваших ssd) и закрыл от записи. летало. всё остальное вынесено было на обычные винты под jfs и еxt2/3

      а так как логики там было с гулькин нос, в базовой форме bootfs вполне можно реализовать, взяв например сырцы с линуховых, но зачем, чисто ради фана?


  1. BarakAdama
    12.06.2022 11:49
    +1

    Пожалуйста, не используйте хаб Habr для постов не про Habr.


  1. lazyest
    13.06.2022 10:10

    В принципе HPFS для своего времени была чрезвычайно эффективной ФС. Актуальна ли она на сегодняшнем железе? Думаю что вполне, ибо эффективность не бывает напрасной. Если вопрос её поддержки не будет лежать в полном переписывании с нуля, а нахождении нужной комбинации костылей для существующего кода - думаю, это было бы полезно.


  1. ABOMETP
    14.06.2022 11:40

    ЕМНИП микрохвост приармянился к айбиэм при создании полуоси, а потом просто нагло спёр хпфс и развил её далее в нтфс, нт 3.51 всеми дискедиторами определялась как хпфс по дефолту