home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!haven.umd.edu!umd5!bill.ab.umd.edu!bill
- From: bill@bill.ab.umd.edu (Bill Bame)
- Newsgroups: vmsnet.networks.tcp-ip.ucx
- Subject: Re: Multithreading and subprocesses in UCX
- Message-ID: <17791@umd5.umd.edu>
- Date: 5 Jan 93 21:22:58 GMT
- References: <1992Dec24.100456.1@hfrd.dsto.gov.au> <1993Jan5.081451.30@iwsd01.itwol.bhp.com.au>
- Sender: news@umd5.umd.edu
- Reply-To: bill@office.ab.umd.edu
- Organization: M.I.E.M.S.S.
- Lines: 44
-
- >I may be overlooking something in your question here, but it should be fairly
- >easy to create a sub/det process to handle a connection. UCX creates a device
- >socket to listen on the designated port, and when you actually want to accept
- >a connection, it creates another device socket for each connection (hence
- >allowing multithreaded servers because you can have a QIO outstanding on
- >each device with an AST to handle completion).
-
- This works nicely. Anybody tried it with DECThreads yet?
-
- >There are a couple of options then for handling a connection. If you have
- >a standalone process listening for the incoming connection, you just accept
- >the connection and spawn/create another process passing the device UCX gives
- >you as the input/output channel for the process. I think this is how the
- >REXEC/TELNET/etc type servers do it.
-
- I don't know about UCX 2.0 - after reading tons of bug reports I decided
- not to install it yet - but in UCX 1.3* you can't pass control of a BG
- (i.e. socket) device to a subprocess. If this is possible in UCX 2.0
- it may give me extra incentive to install it - has anyone actually
- tried it?
-
- >Alternatively, you can let UCX handle the connection initiation for you.
- >If you create a service (UCX command "CREATE SERVCE xxxxx") you can specify
- >a (.COM) file to execute to accept the connection. When the service is
- >enabled, UCX starts listening to the specified port and starts a new process
- >for each incoming connection. The process executes the .COM file to run the
- >appropriate server software. There is also a logical called SYS$NET defined
- >which is set to the name of the device UCX has created for the connection,
- >so you then access/read/write/deaccess that device. This is all fairly
- >similar to transparent DECnet.
-
- I tried this on a friend's machine (I set up a "SERVICE" for netrek :-))
- and it worked fine. I got very used to inetd on u*x - it's nice to
- _finally_ have the same sort of ability on VMS!
-
- --
- --------------------------------------------------------------------------------
- William P. Bame | sneakernet: William P. Bame
- internet: bill@bill.ab.umd.edu | M.I.E.M.S.S.
- bbame@achi1.ab.umd.edu | 22 South Greene Street
- AT&T : [Work] (410) 328-3062 | Baltimore, MD 21201
- CIS : 71620,425 | Room: T1R55
- --------------------------------------------------------------------------------
-
-