Subject: Re: Xbsd
To: None <current-users@NetBSD.ORG>
From: None <kpneal@unity.ncsu.edu>
List: current-users
Date: 02/29/1996 18:49:08
> >>>>> On Thu, 29 Feb 1996, kpneal@unity.ncsu.edu writes:
> 
> > So how about this: having a generic X server that
> > has no DDX layer, but instead dld's the ddx.o file for
> > the gfx card specified in some config file or argument?
> 
> > This seems like it would be the easiest. Xfree86 can write the DDX
> > layer for us, we take it and drop in different Makefiles, boom!
> > We have a machine independent Xserver with support for graphics
> > cards galore, and we don't even have to do alot of work to
> > make the cards work, it's done for us.
> 
> What I don't understand is why is this better than having a bunch of X servers, each for a different graphics card, and just running whichever one is appropriate in XDM (or whatever)?  If you want multi-head support, I think you can run 2 X servers simultaneously given different X ports (:0, :1, etc.)  [BTW, I don't actually know whether you can stick two graphic cards into a PC and have them both work...]

Because the non-DDX layer would be the same on ALL platforms. I mean, what if
there is a subtle change in Xamiga24 (for example) that is not in Xfree86?
It would be nice to have one server source that is the same everywhere, so
there would be less duplication of code on disk, and less duplication of
effort in getting new servers running on new platforms. 

It also means that we would have one server to optimize, instead of n.
We would have n DDX layers to optimize, but that is a smaller job.

> 
> My take on all this is that it would be nice for the NetBSD kernel to provide some sort of generic frame buffer support.  This would be incredibly time-consuming to write and memory-costly to run, at least on i386 where there are zillions of possible graphics devices.  Furthermore, the principal advantage of doing this would be to make it easy for people to write X servers (or other graphics apps).  But since we already have the X servers for all zillion different graphics cards (from XFree86) and this work is all done, then what's the benefit?  

The dld way bypasses the time involved in kernel support, bypasses the kernel
bloat, and bypasses the syscall overhead when drawing and stuff. Sounds like
a win to me.

> 
> Or are you thinking about non-i386 platforms?  Sorry if I missed something obvious; seems likely that I did...

I'm thinking all platforms. I am on an Amiga, sitting next to a Thinkpad, with
a Sun 3/60 at the other end of the table, and a 3/260 being installed from
backup tapes on the other side of my bedroom. I have no loyalty to any 
platform except the ones I run well. (Making a living would be a nice bonus
to have concerning Unix, but I can fall off of a horse and get a job
doing Winbloze, so I do that as well. Sucks, but true).

Cross platform solutions seem to be big here, why not code in that spirit?

XCOMM --------------------------------------------------------
XCOMM Kevin P. Neal, Sophomore CSC/CPE     kpneal@eos.ncsu.edu 
XCOMM North Carolina State University      kevinneal@bix.com
XCOMM --------------------------------------------------------