bills@isi.UUCP (Bill Stratton) (05/06/89)
Hi there - Does anyone know of an X.11 server implementation that supports prioritized multiple threads of execution? Specifically, I'm looking for a server that: 1) allows you to associate a priority with a connection, 2) services high priority connections before lower priority connections, and 3) preempts request servicing from a low priority connection when a complete request is received from a higher priority connection. I am currently trying to integrate X.11 displays into real- time systems for NASA; these displays will include graphical simulations of strip chart recorders which must be updated synchronous to satellite telemetry. More importantly, user input must be given priority over display updates; it is unacceptable to make the user wait in satellite control applications. Any information would be greatly appreciated. Bill Stratton Integral Systems, Inc. 5000A Philadelphia Way Lanham, MD 20706 301-497-2414
jg@max.crl.dec.com (Jim Gettys) (05/08/89)
Input is normally sent to clients as soon as possible; good X implementations check for input with great frequency (poor ones may not, so your milage may vary), by use of shared memory to make the input check cheap. Of course, you may not see this for a while if other clients are keeping your server busy, as the client who gets the input has to do something about it and it may be a while before its output is displayed. But a quality implementation will process input between each request from any client (i.e. as fast as possible). As to your first request, it would require a server extension to express the priority, and a more complex (read slower) dispatcher to implement it. No one to my knowledge has done what you are asking for. Why don't you help define an extension? Note that you may have to think about what happens when things are grabbed, to prevent possible deadlock situtations. Note that finer than single request grain scheduling cannot be done in X; otherwise graphics output cannot be guaranteed to be correct. (and I shudder even thinking about implementing such a system). - Jim Gettys