alex@hpgnd.grenoble.hp.com (Alexis MERMET-GRANDFILLES) (04/09/91)
Hello, 1/ I am looking for the latest Inter Client Communication Conventions document. I have got the O'reily books which say that it should appear in the Appendix L of the volume 0 : X protocol Reference Manual. Unfortunately, my volume 0 book ends at appendix K. too bad... Does anybody know where to find this text or this document ? 2/ I am trying to find out what is the best way to transfer quite a big amount of Data ( Several KBytes ) between 2 X clients. In fact, I am thinking of a X11 client which acts as a server for many other clients. On the request of those clients, this 'server' would send somehow some kind of data, from a few bytes to several KBytes to the requesting client. I was thinking of writing the complete buffer into a pre-defined root window property, and then , sending a ClientMessage to the waiting client to tell him the data is ready and where it is. Does this sound feasable ? Any performance concerns ? Any better ideas ? What is the limitted amount of data that a X11-server may store in a single property ? Thank very much for any help ! -------------------------------------------------------------------------- Alexis MERMET-GRANDFILLES HEWLETT-PACKARD Tel: 76 62 12 11 Grenoble Network Division Fax: 76 62 52 00 5 avenue Raymond Chanas - EYBENS alex@hpgndxo.hp.com 38053 GRENOBLE CEDEX 9 -------------------------------------------------------------------------
clgreen@nsslsun.gcn.uoknor.edu (Cliff Green) (04/12/91)
In article <2140001@hpgnd.grenoble.hp.com> alex@hpgnd.grenoble.hp.com (Alexis MERMET-GRANDFILLES) writes: >I am trying to find out what is the best way to transfer quite a big >amount of Data ( Several KBytes ) between 2 X clients. > >In fact, I am thinking of a X11 client which acts as a server for many >other clients. On the request of those clients, this 'server' >would send somehow some kind of data, from a few bytes to several KBytes >to the requesting client. > >I was thinking of writing the complete buffer into a pre-defined root >window property, and then , sending a ClientMessage to the waiting client >to tell him the data is ready and where it is. > I'm a little unclear on some of the details (the usual confusion between X client/servers and general client/servers as well as not knowing what kind of data needs to be passed and in what fashion) but I wanted to pass along my experiences in a project here at the lab. We're working on a system to display/edit Doppler radar images and algorithm overlay output using X window and Motif. The amount of data being passed around is huge - 3 or more radar images each greater than 500,000 bytes along with associated housekeeping and overlay data. I designed a server process (in the network server/client sense of the word) which takes requests from one or more clients (which are also X clients), reads/writes data to/from disk, and passes the response back to the client. I used standard TCP/IP socket programming and have not had any problems running on both Sun and VAX systems. Unless there are special considerations this is a good method to use - it is reasonably portable, fairly easy to program (there are many good books on the subject), and very flexible - we are able to access data from heterogeneous systems and/or spread the processing load between systems. There are details to be careful with, but many advantages, some of which we have yet to take advantage of (such as anticipatory I/O handling). E-mail me if you need details and/or source. Good Luck! ---- Cliff Green clgreen@nsslsun.gcn.uoknor.edu (405) 366-0470
adri@dutncp8.tudelft.nl (A.B. van Woerkom) (04/24/91)
alex@hpgnd.grenoble.hp.com (Alexis MERMET-GRANDFILLES) writes: >2/ >I am trying to find out what is the best way to transfer quite a big >amount of Data ( Several KBytes ) between 2 X clients. >In fact, I am thinking of a X11 client which acts as a server for many >other clients. On the request of those clients, this 'server' >would send somehow some kind of data, from a few bytes to several KBytes >to the requesting client. >I was thinking of writing the complete buffer into a pre-defined root >window property, and then , sending a ClientMessage to the waiting client >to tell him the data is ready and where it is. >Does this sound feasable ? Sounds like reinventing the wheel. The Xt-intrinsics offer a set of functions that implement the so-called selection mechanism. Using this mechanism it is quite easy to transfer large amounts of data from one client to the other; when the amount meets a limit the intrinsics will handle the chopping in chunks for you. So, have a look at XtOwnSelection and friends. -- A.B. van Woerkom, adri@dutncp6.tudelft.nl Delft University of Technology, Faculty of Applied Physics, Physics Informatics Group, section Computational Physics, Lorentzweg 1, 2628 CJ DELFT, The Netherlands ________________________________________________________________________ "Unfortunately, the current generation of mail programs do not have checkers to see if the sender knows what he is talking about" (A.S. Tanenbaum)