НОВОЕ: OS/2 GURU - Вопросы и ответы ru · en · de · es · it · pt · cz · pl · fr

OS/2.GURU Library

Reviews / articles about OS/2 eComStation ArcaOS

Operating systems
ArcaOS, eComStation, IBM OS/2 Warp
eComStation myths 

Latest  
 
 
Blonde Guy

Reformat Утилита для форматирования USB флешек, USB винчестеров (для совместимости с OS/2)

 

(promo)

Unsorted

 

 

AD: ArcaOS 5.1 Russian LIP
Russian ARCAOS exists and it's available since the middle of 2017. All versions are supported: 5.1, 5.1.1.

eCo Software is able to maintain OS/2 LIP packages for any other language (German, Dutch, Brazilian Portuguese, Spanish, Sweden, etc)

A way to Plug'n'Play


TITLE: A way to Plug'n'Play

DATE: 2001-09-10 18:24:22

AUTHOR: Дмитрий Поляков
Please use online translator
go to http://translate.google.com
and request the translation of http://ru.ecomstation./projects/reviews/index.php?id=19
to your language

С OS/2 я познакомился в 1998 году, чему поспособствовал сисоп BBS LimeLight station, который записал мне компакт диск с кучей осевого софта. Видимо, если бы ни это событие, OS/2 до сих пор являлась бы для меня просто ещё одной операционной системой как BeOS, Linux, QNX и т.п. В то время меня сильно привлекло качество программного обеспечения, сделанного для этой системы, такого как ZOC или к примеру, Lotus SmartSuite. Как оказалось, ситуация с драйверами была куда хуже чем с просто приложениями. В первую очередь, я начал устанавливать драйвер для своей звуковой карты (в то время это была Gravis Ultrasound PnP Pro), что не явилось для меня тривиальной задачей. Только после прочтения документации, я наконец-то выяснил, что оказывается необходимо запустить какую то программу под названием minstall. Догадаться до этого было сложно. Слово PnP в названии звуковой карты на её работу в OS/2 не повлияло никак, чего нельзя сказать о работе карты в MS Windows. В Windows карточка сразу же определялась при запуске системы. Всё это говорило мне, что в OS/2 с драйверами дела плохи. С тех пор накопилось достаточно много опыта, да и проблемы с драйверами сами по себе пропали, например взять тот же SDD. Если ранее приходилось искать драйвер на сайте производителя, версии которого под OS/2 могло не оказаться (как часто и происходило), то с появлением SDD нехватка драйверов для видеоадаптеров исчезла. Наверное, всем понятно, что с драйверами в Windows проблем вообще нет и, наверное теперь уже не будет. Нет сложностей, как в установке, так и в поиске. На фоне таких статей как "Стратегия развития OS/2" ко мне пришла мысль реализовать такую же систему определения устройств, как это сделано в Windows, но отсутствие знаний API OS/2, документации и времени всё погубило. Далее я расскажу мои мысли по поводу того, как можно реализовать Plug'n'Play в OS/2 и если кто то сможет это реализовать - пускай попробует. Я думаю, что многие люди будут благодарны этому человеку.

Путь к Plug'n'Play

Драйверы, как правило, устанавливаются для устройств, которые подключены к шинам ISA и PCI. Для получения списка и ресурсов устройств на этих шинах существуют различные способы. При поиске устройств мы получаем его идентификатор. Существует постоянно обновляемая база данных соответствия идентификаторов устройств самим устройствам. С получением списка для шины PCI особенных проблем нет. В OS/2 для этого всё есть. В файле pddref.inf из DDK (раздел Generic IOCtl Commands \ Category 80h OEMHLP IOCtls) описаны функции для работы с PCI, в том числе и поиск устройств на шине. Также список можно получить с помощью прерывания BIOS 1Ah, которое в OS/2 непонятно как выполнить (разве что в VDM, но это не путь), и можно ещё таким образом:

  PCItype:=0;
  outp($CF8,0);
  outp($CFA,0);
  if (inp($CF8)=0) and (inp($CFA)=0) then PCItype:=2
  else begin
    tmp:=inpl($CF8);
    outpl($CF8,$80000000);
    if inpl($CF8)=$80000000 then PCItype:=1;
    outpl($CF8,tmp);
  end;
  case PCItype of
    1:begin   {PCI type 1}
        for i:=0 to 511 do
        begin
          outpl($CF8,$80000000+i*longint(2048));
          tmp:=inpl($CFC);
          if ((tmp and $FFFF)<>$FFFF) and ((tmp shr 16)<>$FFFF) then
            {_PCI Device: Vendor: (l and $FFFF)  Device: (l shr 16)_}
        end;
      end;
    2:begin   {PCI type 2}
        outp($CF8,$80);
        outp($CFA,0);   {Bus select?}
        for i:=0 to 15 do
        begin
          tmp:=inpl(i*256 +$C000);
          if ((tmp and $FFFF)<>$FFFF) and ((tmp shr 16)<>$FFFF) then
            {_PCI Device: Vendor: (l and $FFFF)  Device: (l shr 16)_}
        end;
        outp($CF8,0);
      end;
  end;

С шиной ISA ситуация несколько сложнее. Каких либо специальных функций в OS/2 я к сожалению не нашел. По поводу ISA/PnP есть документация от Microsoft, найти котрую можно по адресу ftp://ftp.microsoft.com/developr/drg/Plug-and-Play/Pnpspecs. Второй способ - это использовать PnP BIOS. Но тут возникает небольшая проблема - код 16-и битный и находится ниже первого мегабайта. На вопрос, как его выполнить, мне ответить никто не смог. Так что остаётся надеяться на документацию от Microsoft.

Вообще, о том, каким образом организуется Plug'n'Play можно прочитать по следующему адресу: http://members.hyperlink.net.au/~chart. Там же есть и исходники, правда под DOS.

Как это реализовать в OS/2

Можно написать объект для Presentation Manager, который при загрузки самого PM будет опрашивать драйвер (который, разумеется тоже нужно написать), на предмет списка устройств и сверять его с результатом предыдущей загрузки системы. Если он (список) не совпадает, то смотрим, какие новые устройства у нас появились. В соответствии с этим начинаем устанавливать те или иные драйверы. Можно не использовать никакой драйвер, а просто взять с этой странички уже готовые программы, несколько изменить, да и всё. Единственное что смущает - это то, что они будут работать в VDM. Где и как хранить драйверы - нужно ещё подумать. А можно пойти по примеру Windows и взять за основу идентификации устройства .inf-файл.

P.S. Вообще, всё это уже должен был кто-то реализовать. Вот например в eComStation почему бы не сделать? Удобно ведь.

Автор: Поляков Дмитрий

Test the program:

Buy DVD/CD Toys (burn DVD and CD disks) and get free access to eCS FAQ database!

Comentarios:

Alex G.
2001-09-10 19:06:08

. ....? iSA ... .. ...... .... ..... ..... ........ USB support . ... - ..... ..... ..........

Yuri Prokushev
2001-09-11 10:24:02

.... .... ......... - .... ......... ........... ......... - ... ....... .., ..... .. .... . ...... ... ......?


2001-09-11 11:28:02

... ...... ?

1. ..... . ............. ... ......... ..........
2. ......... ....... . URL'.. .........

....... .. .......
2001-09-11 16:05:46

1. Int1A ".......". Intel'... "....... ................ ........ ........". ... .. (Intel'.) .............
2. "rmview /da". ...., ........, ... . OS/2? ............ ".......... ..... .........."? ". ..." (c).
3. . ..... PnP nonPnP-aware ....... ....... .... ........ ... ..... ...... ".........." ........?

.....
2001-09-11 16:18:21

.... .... .. .... . ........ ... .. rmview ... .... .. ........., . ..... .... .. ......... .........
.......... .. ...... ..... ..... ... .. rmview,
.......

....... .. .......
2001-09-11 18:47:42

"....... ......... ........." ........... . ............ device/basedev . CONFIG.SYS.
.... .. ....... "...... ..." ....... - .... DDINSTALL.
...... . ...... - ... ..... PnP-aware ........?

GA
2002-02-23 14:10:53

For Plug and Play one needs

(1.)Plug and Play bios, P&P OS, and P&P Hardware

(2.)Hardware Tree: Built by BUS enumerators. RAM record of all devices on system

(3.)Bus Enumerator: Driver based on BUS (i.e. SCSI, IDE). Allows unique and constant ID of each device on system

(4.)An auto-detection which BUS enumerators are in effect

(5.)Hardware tree is displayed as the device manager (stored in hkey_local_machine)

(6.)Plug and Play OS requires: Configuration Mgr., Hardware Tree, BUS Enumerator, Resource Arbitrators

(7.)Plug and Play Device drivers must: Register with configuration mgr., wait for resources (device) before becoming active, and respond to dynamic config (not jumper-laden)

(8.)P&P finds legacy cards by checking specific I/O ports and memory addresses.

(9.)Legacy cards can only be found by setup and "Add New Hardware"

This should be a model for development...

GA
2002-02-23 14:22:18

Updating ESCD...About Plug n Pray

see: [url]

with some detailed advices

GA
2002-02-23 15:00:30

A tool for PCI hardware recognition:

PCI044VK.ZIP 300K 2-22-02

A PCI & AGP bus sniffer v0.44.vk with recognition of hardware types. PCI.EXE and CHKPCI.EXE are command line

programs with VIO output(Jan., 5th 2002)

One can download it from [url]

If one has no registration one can download free with telnet

See the direct call for a telnet session on the site

eComStation 2.0 contains fixes for many old problems a) no troubles with 16 driveletters on JFS, b) WPS associations work now, .. + ~ 1000 bugs were fixed. eCS 2.0 what's new

 

Siberian OS/2

 


 

 

ArcaOS 5.1.1 - DOS works again

DOS virtual machine works again (it was working on Core 2 Duo, and didn't for i5). Install ArcaOS in UEFI mode to use DOS VM.

"SVISTA a-la Vista"

We have released SVISTA/2 virtual machine in 2004,

Eugene Gorbunoff have combined "Serenity Virtual Station" to spanish "Vista".

2004, 2005, there were several announcements on all major computer web-sites.
later Microsoft released OS named Vista

// надо на ENG!!

 
Every conference is important.

Warpstock Europe 2016

Interview with Lars Erdmann
talking about USB drivers development

What was happening at that conference? The work on ArcaOS was starting..

 

(C) OS2.GURU 2001 -- 2025