PILNE: 4*286/10=486/100

Autor: Gregorio Kus (Grego_at_RMnet.IT)
Data: Wed 14 Feb 1996 - 02:31:29 MET


Jak sie zapewne wszyscy domyslaja :-))) chodzi mi o zasymulowanie
czterech AT 286/10MHz z DOS na jednym 486DX4/100MHz pod OS/2.

Tzn. mam przerobic oprogramowanie symulatora wiezy kontroli lotow
i sali radarow dla szkoly areonatycznej w Rzymie. To ustrojstwo
ma wbudowane wlasnie te cztery stare AT. Komunikuja sie miedzy soba
za pomoca RS232 z oszalamiajaca predkoscia 2400 (ale im to wystarcza),
w dodatku zmienic sie tego nie da, bo klawiatury uczniow sa zbudowane
na jakims 6802/1MHz czy czyms w tym rodzaju, z software'owym RSem -
szybciej toto nie wydoli.

Problem polega na tym, ze ja bardzo lubie pracowac w domu,
[nie chodzi tylko o to co lubie, ale tam trwaja zajecia, a na noc
szkola jest zamykana] a nie przyciagne tu calej auli :-) wiec chce
odpalac cztery sesje DOSa pod OS/2. To nie problem, te cztery sesje,
i z szybkoscia tez nie mam problemow,, ale... jak tu zmusic te sesje
do komunikowania sie ze soba?

Po ciezkiej, dlugiej i wyczerpujacej walce - zrezygnowalem (zmusilo mnie)
z idei zostawienia programow tak ja sa - tzn. zapewnienia im komunikacji
przez porty szeregowe.

Idee mam 2 (kto ma jakies inne?):
  1. Zmusic je do komunikowania sie za pomoca mechanizmow interprocess
     communication wlasciwych OSowi (np. named pipes)
  2. Zmusic je do komunikowania sie poprzez TCP/IP standalone.

Ad1.
  Nie mam pojecia jak dostac sie z DOSa do OSowych named pipes

Ad2.
  Sa dwie podidee:

  A. Wykorzystanie programiku ktory znajduje sie w tcpip\dos\bin
     i nazywa sie comtcp.exe. Teoretycznie ('comtcp -?') powinien
     on przechwytywac COMy i podstawiac im sockets TCP/IP. W parametrach
     podaje sie numer COMa i portu TCPIP.

  B. Wykorzystanie DOS device SOCKET$ poprzez IOCTL

Ad.A - To by bylo najlepsze, bo nie musialbym w programach DOSowych nic
zmieniac na czas testow. Niestety w zaden sposob nie udaje mi sie zmusic
comtcp zeby posunal sie poza ustanowienie connection.
(Dla uproszczenia nie probuje od razu zmusic do wspolpracy dwoch
programow DOS'owych. Zapuszczam program OS/2, taki miniserver,
ktory robi bind i listen, zostawiam go na nasluchu, potem odpalam
sesje DOSa i comtcp. Program OS/2 sygnalizuje ze OK - connected
i na tym koniec - wisi wszystko ani czytac ani pisac sie nie da)

Ad.B - Nie mam zadnych materialow n/t SOCKET$. Z cala pewnoscia (struktura
IBM TCP/IP) symuluja one typowe w unixie operacje na sockets, tylko jakiez-to
parametry trzeba dawac temu SOCKET$ (device ma ustawione bity IOCTL, czyli
sie da)

Grego

P.S. Po raz pierwszy watpie czy znajdzie sie na PECETcie ktos kto mi moze
pomoc. Problem jest dosc szczegolny.

--
/------------------------------------------------------------------
Gregorio Kus    Grego_at_RMnet.it                 Grego_at_cyberspace.org
ROMA, Italy     http://www.RMnet.it/~grego     Grego_at_FreeNet.hut.fi


To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 12:39:03 MET DST