<< Quotes come from several messages on this thread.

> The way I see is providing multiple event queues, one for each user
> (=screen, or even set of screens), and attach one keyboard and one
> mouse to each queue. And make one mouse cursor for each queue. I'm
> probably missing something important, but on first view, that seems
> to be it. Any insight?

This is very bad. Each user should have their own server. It's just easier, 
more elegant, more secure, and more stable that way. What if one user logs 
out? this kills the X-Server. Or were you planning on re-writing the XDM 
protocol too? What if one user's app listens to events for the other's screen 
while the other user is typing in a passphrase? What if one user starts 
running a GL-intensive app? 

I think the way to go is to modify the X-Server so that grabbing a VT is 
optional, and the default keyboard device is configureable and modular (thus 
allowing many types of device). This solves all your problems. Then all you 
have to do is set up several configurations and tell it which to run on the 
command line (or XDM config file). Everything but setting the VT grabbing 
optional and modularizing the keyboard input is already done. 

> I think a better way would be to use only one instance of XFree, have
> it handle multiple monitors (that already works just fine!) WITHOUT
> Xinerama, and add more event queues, each for one screen/user. And of
> course, add support for multiple (USB) keyboards (at least two
> solutions exist) and multiple mice with one cursor each.

There is a one to one relationship between users and XServers for good 
reason. Without seperation of servers, events of one user could affect the 
other. How does a program know that :0.0 is it's user's and :0.1 is not? With 
seperate Servers, either with no VT code or with the new linuxconsole kernel 
patches, the two servers are completely seperate, thus greatly reducing the 
changes to X that are nescesary and eliminated the need for changes to the X 
protocol and client applications.

> > 2) You could not go through the kernel and instead attempt to access the
> > video card manually or through the frame buffer or something smart - and
> > some has done this, and posted various patches..  although that still
> > only allows a max of two heads.

Or you could use the LinuxConsole kernel patches 
(linuxconsole.sourceforge.net) to set up multiple consoles. You may need to 
modify X to do it this way, I've only read the linuxconsole web pages; I 
haven't tried it.

> I don't quite understand what you mean by this, but again - I don't
> think this is the problem, multi-head support is already working.
> (Maybe not for all cards, though.)

Multi-head on one server is a completely different thing from having multiple 
users. 

> I don't think the X protocol has anything to do with it. Isn't the
> multi-screen support much like two independent X servers already? How
> closely coupled are screens :0.0 and :0.1?

They run on the same server, and are therefore are owned by the same user, 
and are associated with the same socket (usu. 6000). It would Be WAY more 
work to get one server to support two sessions at the same time than to just 
run two seperate servers, decoupled from the VT system.

> > 5) It is hard getting many monitors on a machine simply because the
> > cables aren't that long!  The longer you make the cable, the worse the
> > image gets on the monitor.  I think you can get round this by using LCD
> > screens - but can't remember for sure.
>
> This may be a practical problem in some cases, and no problem at all
> in other. Think classrooms, internet cafe's... Many monitors (and
> computers, needlessly) stacked one right by the other, very close.

Monitor cables are often four feet long. If you put the computer at desktop 
height instead of on the floor, Two users could be up to 8 feet apart.


> > 6) A nicer way of doing all of this is simply to have lots of very cheap
> > nasty machines with nothing but a mobo, CPU, ethernet card and monitor -
> > then get one big server to control them all.  See the linux terminal
> > server project.

One cheap nasty machine with nothing but a mobo, CPU, ethernet card and 
monitor, plus 3 video cards (plus one onboard) and monitors is bound to be 
cheaper. Plus imagine how much easier it would be for a VAR to sell Linux (or 
other free *NIX) if someone could come into their shop expecting to buy a new 
computer and walk out with a video card, monitor, keyboard, and mouse.

> There's more to it than that, albiet in little ways.  Who gets sound?  Who
> Gets floppy/cdrom?  I'll admit that I don't hang out in internet cafes, so
> those may not be available anyways normally.  Plus, you mention VGA and
> monitor which you'll need anyways.

Sound? For office settings, sound cards are often disabled, removed, or 
declared off limits anyways, to avoid annoying co-workers. In an internet 
cafe you could install multiple sound cards just like the video cards.

floppy/cdrom? With central backups and access to the internet people should 
rarely need to use these.  floppies and cdroms are not normally available in 
an X-Terminal/Thin-Client/Network-Computer/whatever environment anyways.

> ... I'd save myself the hassle and either build a low-grade PC, or buy a 
> network computer (about $700-$1000).

But would you buy 250 network computers if you could build 64 quad-user 
stations for close to the same cost per unit? (not including cost of the 
monitors)



_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to