Mail Archives: djgpp-workers/2004/07/06/16:23:41
Hello.
SET SET wrote:
[snip]
> IPC what?
>
> Inter-Process Communication is quite simple on POSIX
> systems but for djgpp ... Well, you can use a
> networking protocol, but again isn't that simple.
> For TCP/IP you have:
>
> a) libsocket, it looks like it doesn't work very well
> with VSOCK 2. I tried it on Windows 98 SE and it
> failed.
There are two ways of making it work:
* Patch WSOCK2.VXD, to work around its broken interface to DOS programs.
That has to be done on every system. That clearly won't work.
* Write a VxD to talk to WSOCK2.VXD. The new VxD would have an interface
usable from DOS. This has been done and it's called WSOCKXS. See the
dossock home page for more details:
<http://homepages.nildram.co.uk/~phekda/richdawe/dossock/>.
> b) Watt-32, it needs a special NDIS driver for
> Windows.
>
> Another option could be using mslot library. It seems
> to work (at least for Windows). It uses the "Mail
> Slot" mechanism. One problem I found in this library
> is that it implements the "read" FSEXT in a
> "non-blocking" way and doesn't honor the O_NONBLOCKING
> flag. The changes to fix it are really simple.
> According to mslot docs they are available for plain
> DOS.
[snip]
You need MS LAN Manager to use mailslots under DOS. I don't know where
you can get that these days.
Another problem with mailslots is that they are not reliable. If you
send several hundred messages, some of them will get dropped. I can't
remember if I made the libmslot work around that or not.
I used mailslots, because they were the only form of IPC available to
DOS programs under Windows '9x. Under NT and later you can create and
use named pipes. Windows '9x won't let you create named pipes, but you
can talk to them.
One more thing: I don't maintain libsocket or libmslot anymore. If
anyone's interested in maintaining them, please let me know.
Bye, Rich =]
--
Richard Dawe [ http://homepages.nildram.co.uk/~phekda/richdawe/ ]
"You can't evaluate a man by logic alone."
-- McCoy, "I, Mudd", Star Trek
- Raw text -