From: quanstro@quanstro.net
To: 9fans@cse.psu.edu
Subject: Re: [9fans] [plan9port] graphics
Date: Wed, 28 Jun 2006 23:27:36 -0500 [thread overview]
Message-ID: <ea8273d90ebb08083f50ce5ccfca3afc@quanstro.net> (raw)
In-Reply-To: <ee9e417a0606281046u10a8a596t5875dbcf3e8e8546@mail.gmail.com>
when this came up a while ago, you suggested one devdraw
server per namespace. after some consideration i convinced
myself you were right. programs like rio could be much closer
to the plan 9 source. lately i've been considering writing an
X server extension implementing devdraw. (i realize this might
be problematic on osx.)
why did you choose to run 1 devdraw per graphical program?
- erik
(i haven't had X connection problems with nptl. i thought linuxthreads
was pretty much a thing of the past)
On Wed Jun 28 12:47:41 CDT 2006, rsc@swtch.com wrote:
[...]
>
> I tried to preserve this model in Plan 9 from User Space,
> using pthreads or explicitly-created shared-memory threads
> on systems where pthreads wasn't good enough (e.g., Linux
> pre-NPTL). I allocated multiple connections (Displays) to
> the underlying X server and gave one to each proc, though
> there were one or two places where I had to cheat, letting
> one proc send an asynchronous message to a Display that
> another proc was reading. I still don't know whether these
> cut corners are what caused the trouble or whether there are
> deeper problems with truly multithreaded X clients.
>
[...]
>
> Over the weekend I shuffled things around. Instead of
> linking X code into every program, there is now a single
> program, called devdraw, that contains X interface code.
> Graphical programs now fork and exec a devdraw and then
> speak a simple protocol to its standard input and standard
> output to read from the keyboard and mouse and draw on the
> screen. Devdraw is not a threaded program. It runs on the
> standard system stack and uses select(2) to manage its two
> inputs. It uses only a single connection to the X server.
> My hope is that doing things the Official Unix Way inside
> devdraw will eliminate the problems people have reported.
>
next prev parent reply other threads:[~2006-06-29 4:27 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-28 17:46 Russ Cox
2006-06-28 21:13 ` Jack Johnson
2006-06-28 21:42 ` Russ Cox
2006-06-29 2:04 ` Roman Shaposhnick
2006-06-29 3:59 ` David Leimbach
2006-06-29 4:27 ` quanstro [this message]
2006-06-29 15:36 ` Russ Cox
2006-06-29 18:59 ` Roman Shaposhnick
2006-07-12 15:36 ` andrey mirtchovski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ea8273d90ebb08083f50ce5ccfca3afc@quanstro.net \
--to=quanstro@quanstro.net \
--cc=9fans@cse.psu.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).