Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Описания, советы, ремонт, эксплуатация старых IBM PC-совместимых ПК
Аватара пользователя
ATauenis
Advanced Member
Сообщения: 5853
Зарегистрирован: 30.04.2015,21:30
Откуда: Москва
Благодарил (а): 1 раз
Поблагодарили: 27 раз
Контактная информация:

Вклад в сообщество

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение ATauenis » 04.04.2020,20:28

Jason писал(а): 04.04.2020,18:21 Ходить в ДОС каждый раз неудобно.
Как вариант можно сделать ярлык с режимом эпиляции эмуляции. На 486 не причиняет неудобств, кроме закрывания всех виндовых программ. Впрочем, много ли можно открыть окон на 486? А проводник сам восстанавливает (если не отучить) всё при загрузке, тоже довольно шустро. Это не 98, думающая по 5 минут на каждую папку.

mfa
Advanced Member
Сообщения: 346
Зарегистрирован: 05.01.2017,23:37
Откуда: Ленинград

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение mfa » 04.04.2020,21:09

Takedasun писал(а): 24.02.2020,12:24 производительности работы дисковой подсистемы 486 компьютера.
может что-нибудь БСДёвое поможет?

Jason
Advanced Member
Сообщения: 309
Зарегистрирован: 22.03.2018,03:17
Откуда: Москва

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Jason » 05.04.2020,04:44

ATauenis писал(а): 04.04.2020,20:28 Как вариант можно сделать ярлык с режимом эпиляции эмуляции. На 486 не причиняет неудобств, кроме закрывания всех виндовых программ.
Надо измерить скорость именно под виндой, при использовании конкретного драйвера.
Таки заставил работать ATTO benchmark (своп побольше, буфер поменьше).
PCI IDE контроллер WB769, вместо HDD использую CF флешку Transcend на 512 МБ.
Под досом, без драйвера = 1,7 МБ/с.
Под досом, драйвер wbide.exe = 7 МБ/с. PIO3, время цикла 180 нс (драйвер сообщает при загрузке).
Под виндой, родной драйвер от Winbond = 1,9 МБ/с.
Набортный VL контроллер (SiS 496/7) везде выдаёт одинаково = 3,3 МБ/с. Хотя биос включает ему PIO4.
Есть ощущение, что под виндой контроллер работает в PIO0... А посмотреть так ли это - нечем.
Сам контроллер WB769 тянет до 11,1 МБ/с, старенькая флешка не умеет быстрее 7 МБ/с. Завтра подсуну ему флешку поновее.
Инфа из википедии:
► Показать
ZX-Spectrum 128k

Аватара пользователя
Takedasun
Advanced Member
Сообщения: 4205
Зарегистрирован: 16.10.2013,18:07
Откуда: Керчь
Благодарил (а): 13 раз
Поблагодарили: 24 раза

Вклад в сообщество

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Takedasun » 05.04.2020,07:36

Jason писал(а): 05.04.2020,04:44 Надо измерить скорость именно под виндой, при использовании конкретного драйвера.
Попробуйте DiskGraf
hdd.png
ATTO_p75.png
diskgraf.zip
(323.49 КБ) 187 скачиваний
Jason писал(а): 05.04.2020,04:44 Есть ощущение, что под виндой контроллер работает в PIO0... А посмотреть так ли это - нечем.
hdd_info.png
HDDUT25R.ZIP
(2.93 МБ) 175 скачиваний

Jason
Advanced Member
Сообщения: 309
Зарегистрирован: 22.03.2018,03:17
Откуда: Москва

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Jason » 05.04.2020,18:03

Jason писал(а): 05.04.2020,04:44 Под виндой, родной драйвер от Winbond = 1,9 МБ/с.
Похоже, этот "родной драйвер" - всего лишь обёртка вокруг Int 13h.
Вот не ожидал...

Код: Выделить всё

PCOD:C0002A72                 mov     eax, [edi+54h]
PCOD:C0002A75                 VxDCall VPICD_Set_Auto_Masking
PCOD:C0002A7B                 mov     eax, 13h
PCOD:C0002A80                 VMMCall Exec_Int        ; !!! using int 13h
PCOD:C0002A86                 VMMCall End_Nest_Exec
PCOD:C0002A8C                 mov     eax, [edi+54h]
PCOD:C0002A8F                 VxDCall VPICD_Physically_Unmask
Вероятно, этот "32-битный драйвер" является минипортом биоса, т.е. сам ничего не делает, всю работу вместо него делает прерывание биоса Int 13h. А на нём у меня сидит досовый wbide.exe, згруженый через config.sys.
В настройках контроллера стоит галка "Использовать Int 13h" и снять её нельзя.
Команд INSW и OUTSW внутри wb769.pdr обнаружены, там всё путано и громоздко, похоже чтение/запись данных выполняют не они. Буду ковырять дальше.
ZX-Spectrum 128k

Jason
Advanced Member
Сообщения: 309
Зарегистрирован: 22.03.2018,03:17
Откуда: Москва

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Jason » 05.04.2020,18:24

Takedasun писал(а): 05.04.2020,07:36 Есть ощущение, что под виндой контроллер работает в PIO0... А посмотреть так ли это - нечем.
HDDUT25R.ZIP
Это чудо я пробовал. Показывает MW DMA2 на контроллере, который вообще DMA не умеет, только PIO.
Собсно, режимы и статус PIO/DMA оно берёт из W63-W68 паспорта диска, стандарт которого с 1994 года менялся более одного раза.
ZX-Spectrum 128k

i8088
Advanced Member
Сообщения: 4865
Зарегистрирован: 30.01.2015,17:06
Откуда: г. Баку, Азербайджан
Поблагодарили: 48 раз

Конкурсы

Вклад в сообщество

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение i8088 » 05.04.2020,18:32

Jason писал(а): 05.04.2020,18:03 Вероятно, этот "32-битный драйвер" является минипортом биоса, т.е. сам ничего не делает, всю работу вместо него делает прерывание биоса Int 13h.
Для W95 вполне возможно, если нет спец драйвера (те так сделан универсальный). В таком случае
режим должен быть ровно таким, каким его выставил BIOS контроллера. Впрочем также будет
и в других OS, если только специальную поддержку этого winbond не делали. Для OS он просто
стандартный PCI IDE (или ISA IDE, для встроенного SiS496/497 контроллера), а реальная скорость
обмена определится таймингами, выставленными BIOS для регистров контроллера и команде
SET_FEATURES в HDD. В терминологии FreeBSD это называется BIOSPIO/BIOSDMA, те используем
работаем в PIO/DMA, но не знаем, в каком именно. Просто в нормальной OS не будет постоянных
переключений из защищенного режима в реальный и вызова int13 и обратно при обращении к диску.
Возможно, поэтому и скорость сильно меньше теоретически возможной.

Jason
Advanced Member
Сообщения: 309
Зарегистрирован: 22.03.2018,03:17
Откуда: Москва

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Jason » 06.04.2020,04:25

i8088 писал(а): 05.04.2020,18:32 В таком случае режим должен быть ровно таким, каким его выставил BIOS контроллера.
Контроллер без биоса, в том то и дело. Вот такой. Даташит здесь.
Для работы требует маппиннга PCI прерываний на шину ISA, или проводами или через чипсет (если поддерживает). Я сделал через чипсет.
Вместо биоса у него необязательный device=wbide.exe. Без него тоже работает, втрое медленнее.
В чистом досе всё работает прекрасно, 7 МБ/с (похоже на PIO2). А под виндой - как в досе без wbide.exe, т.е. втрое медленнее.
Пробовал быструю флешку - ничего не изменилось, вероятно процессор (486DX-100) не тянет быстрее.
Надо будет попробовать с 80-жильным шлейфом, чем чёрт не шутит...
Последний раз редактировалось Jason 31.07.2021,16:59, всего редактировалось 1 раз.
ZX-Spectrum 128k

Roman555
Full Member
Сообщения: 220
Зарегистрирован: 26.04.2018,13:19
Откуда: Харьков

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Roman555 » 06.04.2020,11:29

Jason писал(а): 04.04.2020,18:21 ...
Был когда-то у меня измеритель всего и вся, hdd_tools или как-то так. Работал везде и ничего не требовал...
HD Tach 2.7 хорошая программка для тестирования скорости работы HDD в Windows

i8088
Advanced Member
Сообщения: 4865
Зарегистрирован: 30.01.2015,17:06
Откуда: г. Баку, Азербайджан
Поблагодарили: 48 раз

Конкурсы

Вклад в сообщество

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение i8088 » 06.04.2020,12:34

Jason писал(а): 06.04.2020,04:25 Вместо биоса у него необязательный device=wbide.exe. Без него тоже работает, втрое медленнее.
Если встроенный IDE Вы отключили (или его нет?), то контроллер работает в
compatible mode, по тем же адресам, что и стандартный ATA (конфигурируется
BIOS-ом платы программированием PCI регистров), и тогда может поддерживаться
стандартным int13 от BIOS платы. Но при отсутствии инициализации от wbide.exe,
медленнее, тк тайминги не настроены

Jason
Advanced Member
Сообщения: 309
Зарегистрирован: 22.03.2018,03:17
Откуда: Москва

Максимально достижимая скорость работы дисковой подсистемы 486 компьютера.

Сообщение Jason » 06.04.2020,16:03

i8088 писал(а): 06.04.2020,12:34 Если встроенный IDE Вы отключили (или его нет?),
Мать Zida 4DPS ver 2.11 вот такая. Набортный IDE отключен.
Кстати их там два, один в южном мосту (SiS 497) второй в мультике (SuperIO W83787F). Тот что в мультике - однопортовый, с восьмибитной трижды мультиплексированной шиной, не реализован. И правильно.
и тогда может поддерживаться стандартным int13 от BIOS платы.
Это само собой.
Но при отсутствии инициализации от wbide.exe, медленнее, тк тайминги не настроены
Загружаю ДОС, скорость нормальная. Запускаю винду, скорость падает втрое. Из винды запускаю эмуляцию ДОС - скорость опять нормальная. Непонятка в том, что и ДОС и винда - работают через Int13h, но реальная скорость отличается в три раза. Это переключение в реальный режим так тормозит? Не верю.
Утилита CTATBUS - это парадокс. Прямое чтение через INSW - 2 МБ/с, через Int13h - 7 МБ/с. Как это понимать? Там интерфейс немецкий, не всё понятно.
ZX-Spectrum 128k

Ответить