Multiple Users and Multiple Inputs on One Machine?
BozoForPresident asks: "Not long after seeing a dual monitor setup for the first time I thought how useful it'd be to plug in another keyboard and mouse for a second user. That $4000 dual headed laptop (reported on Slashdot on Sunday March 16) becomes a more viable purchase when you add a couple of USB keyboards and mice for an additional user. Microsoft will never do it but how difficult would it be to make Linux handle 2 (or more) streams of input and direct them to their respective windows?"
You have just invented the serial terminal. Maybe you should apply for a patent.
Programming can be fun again. Film at 11.
For second serving:
Add video card. Sift in mouse port and keyboard device (USB recommended when serving more than one). Let blend in x11 conf file. Bind X11. Serve.
Don't forget audio. Can be nice to have multiple
audio out as well.
Hilarity ensues as multiple X desktops compete for such things as CD Drives.
Incidentally, you may want to check out this review of a product that does something similar in Windows, again using multiple video cards.
Alternately, you may want to cruise Ebay for some secondhand X terminals. While they tend to be ridiculously expensive new (on the order of a whole new PC), you may be able to find someone with a few they just want to get rid of. Of course, check out the specs before hand and cruise Google to make sure that they'll work under Linux without any special hardware or software. X may be an open protocol, but it never hurts to be sure.
That's it. I'm no longer part of Team Sanity.
BTW did you know that you can also run multiple virtual X sessions (similar to the virtual terminals but graphical) on the same display/keyboard/mouse? I have 2 sessions running on my machine at home.
Every bloody emperor has his hand up history's skirt [Peter Hammill/VdGG]
The sticky problems are still with the Linux Console code, in that it doesn't really believe in more than one console with keyboard. However, USB keyboards are easier than PS/2 keyboards (easier to not route through the console), and mice are a non-issue (again, do not route through GPM).
As an alt to an X terminal, try a diskless fanless thin-client box. Motium make those with some really special features, but I don't know if the whizz-bang ones are ready for sale yet.
Got time? Spend some of it coding or testing
A company called thinsoft has a product called BeTwin which does exactly what you're asking.
Hook up to four additional USB keyboards and mice, and a monitor for each station (obviously you'd need more video cards if you want more than two stations) and it treats them all as seperate computers.
I found out about it because MSI bundles a two station version with the geforce 4x00 cards. I haven't tried it, though.
It works for windows.
-Adam
While I haven't done this with Linux PCs, I have seen it done with some of our SGIs at work. The big Onyx systems can be easily configured (just a few tweaks to the X server setup files) to support mutliple users, each with their own keyboard/mouse and one or more gfx subsystems. It's even easier on the Onyx 300 and 3000 series, as all the keys and mice can be run off one USB channel.
This can also be done on the Octane, but requires a PS/2 keys/mouse interface PCI card.
I would suggest looking at the XFree86 config files for some pointers. You may also want to seek out ways to address different sets of USB keys and mice.
The xfree86 server can do this as-is. When I was trying to setup my dual video card I remember a guy that has posted his xfree86 config for 2 keyboards, 2 mice and 2 monitors.
You just play with the input and output methods and create two screens.
Could someone please clarify why 2 people on one bastard PC would be better than 2 people on two normal PC's with some Cat-5 between them ? Here we actually have two _interactive_ users running amok on the same system, twice as likely to crash something. Or have we invented a PC that can reboot one-half at a time ? This isn't like high-end citrix servers which actually run everything remotely, but those machines usually have a truckload of ram and diskspace. THAT system is suited to concurrent interactive sessions, because the hardware itself is a limited resource that can't be replicated on each desk like you would a common PC.
Now if you're being spacewise, then just get those neato super-slim PC's build inside the base of an LCD screen. Eurocom has them in Canada, don't know about USA/foreign. Not to mention, the money saved by cramming more people into the same office space will more than pay for the equipment in no time at all, and they'll like the new slim desktops.
-Billco, Fnarg.com
"Microsoft will never do it but how..."
Whats up with the ask slashdot trolls as of late... come on!
Last time i checked Windows already supported -
Fast User Switching
Multiple Mice
Multiple Keyboard
Multiple Monitors
Try windows XP for the fast user switching,
Multiple monitors have been there since win98.
And just try plugging a USB keyboard/mouse into your laptop and you'll see that the orginals and usb ones work at the same time!
So it isn't like they're that far from already having it.
Linux is great, but no one likes zealots...
Back in early 1999, a couple of jobs ago, I saw a strange device to do this under windows.
A manager had been somewhere in southeast asia, and had picked up a few sets of a very strange device. They were pci cards that packed a low end video card, and some logic into a single package. Each one had a RJ-45 jack on the back, that connected to a little pod which hooked to a keyboard, monitor, etc to allow a second (third, etc...) user to have their own workspace and desktop on the host machine.
They only worked under Windows 98 (not NT) and were rather unstable - machines would crash often, the picture quality on the pods was rather bad, and the little suckers kept burning out. I think all of the samples died on me over a couple of days when I was testing them out.
I can't remember the name - I don't remember there being much english on the packaging.
XP: $300
Office XP std: $480
Monitor, KB, mouse: $200
Cost of HW for extra kb, mouse and monitor?
Plus the convienance of something freezing for one person and then having more than one person wait on a reboot.
That is $980. A new PC is $1000. Where are your savings? The $1000 is a new dell with a refurb monitor with XP pro and Office Standard. Plus 256MB of mem.
This question was asked quite awhile ago here.
There was a tutorial mentioned in the comments.
You can start multiple X Servers, so start another server for the second monitor using a separate XF86config file. In the XF86config file, you configure the input from the other keyboard and mouse. You must start the second X server by hand, because the USB keyboard and mouse won't be connected all time. If it's a PC and mouse/kbd are connected always, you can add the X server startup to the appropriate config file for your xdm. But for a laptop, I would suggest to write a short script to start the X server on the second screen by hand.
Would be nice if a distribution could do this for you, but I do not know any. Perhaps somebody can write a nice setup tool (if it doesn't exist already).
This question was asked on the Linux kernel mailing list a while ago. The response was (from memory):
Yes, you can have 2 keyboards, mice and video cards in a single PC. And you can run 2 instances of X on different virtual consoles. But, there can be only one active VC at any time, and it's hard to change that limit.
The conclusion was that it would probably be easier and cheaper to set up an X terminal.
WWTTD?
True, as long as you don't want to run anything serious locally (like an MP3 decoder or 3D app). Or at a serious res (like 2000x1600x24-or-x32 for a large monitor).
Got time? Spend some of it coding or testing
sorry to shoot down the trollish anti-ms nature of this post, but this has been available on microsoft platforms as far back as NT 3.51. the first terminal server/citrix platform utilized this technology (multi video/key/mouse, not terminal sessions over ipx/ip). it's now called "ultra thin client" technology.
check here, here, or here.
The idea seemed cool to me, at first. But the inconveniences didn't seem to balance the cost-savings.
And with powerful new computers so cheap now, I think it makes even less sense today. How much did an ethernet card cost back then? A couple of hundred bucks? And now, $10.
Besides, aren't USB mice terrible resource hogs? If your computer is so powerful that it can handle a second user, and all the overhead of this system, why they heck didn't you buy a slower, less capable one for a fraction of the price? If you have two people who want to use the computer, why hte heck didn't you just buy two in the first place?
Isn't Windows already unstable enough, without this extra layer? If the system crashes, it crashes for both of you. Will running two computers make the inevitable windows crashes come twice as often? Will this layer add more crashes?
I think what the poster wants to do is be able to use something like the dual-display laptop with two users. The suggestion of thin clients doesn't seem to really answer what the poster wants. That would make for a very useful mobile computer. Instead of each person lugging around a computer, getting their computers connected, and then starting to work, the second person plugs in a keyboard and a mouse and they both can begin working. For projects that require a lot of co-operation, this would be great. Also, if you have to do a presentation on the road with another person, having two displays independently controlled can give you a lot more flexibility. There are numerous benifits. Personally, I'm not sure how one would go about doing this, although it seems like some people are on to something with dual X servers.
I use this setup for ~1 year now - two VGA cards (one AGP, one PCI), two keyboards (PS2 and USB), two mice (PS2 and USB). You need to patch the XFree86 server. More info here.
-Yenya
--
While Linux is larger than Emacs, at least Linux has the excuse that it has to be. --Linus
A while ago my organization had this setting: a bunch of tiny little boxes that are designed to run only X, and have everything run on the power horse servers.
This centralized computing model saved some HP-UX licenses. It later became obsolete when we started adapting linux.
anothe roption I would probably look into is Xvnc. (Real VNC) Unlike it's Windows counter part, it allows you to set up multiple independent desktops.
I've considered this. However I can't figgure out how to make sound work. X11 assumes you have a DISPLAY variable set, and sends data to that, so you can have as many different screens as you wish. (Up to some limit). There is no standard way to do sound in that manor. Many different things are trying, but none are universial, so even if you get something to work, it won't work with much.
I understand that X11 now has a sound extnetion, which could solve this problem and is standard enough that it is likely to be used. But only if it is used, right now it isn't implimented.
No.
Are you just making your name up as you go along? (-:
Got time? Spend some of it coding or testing
Aiming at siamese brothers, huh? Smart kiddo!
No, we have invented operating systems which aren't easy to crash and rebooting is not an issue. Has someone been using only Microsoft products?
Haven't tried it, but sounds like its worth a try for the windows side...
How about getting input from "other" devices? How can input from a serial mag stripe reader be fed to X11 as if it had been typed on the keyboard? I'd like to feed external data sources to various X programs. I know X has hooks for stuff like this, but it looks like that is for programs which are written to request such data.
You can then either boot the machine from an Linux Terminal Server floppy or CD, or from something like a Knoppix CD, or you can netboot them; you don't even have to bother installing anything locally. You wire everything together with a small Ethernet hub. Since nothing is installed on the local machines, it's easy to set up. Applications are run remotely through terminal emulators, X11, or VNC. All you need to do on the server is set up a DHCP server and xdm (if they aren't already set up).
That kind of setup is not going to be a lot more expensive than plugging in multiple graphics cards, but it's a whole lot easier to set up, scales better, lets you add more servers easily, will perform better, and your users will probably be happier, too.
There are certain advantages. Firstly, you pay for the cost of an additonal monitor, keyboard, and mouse. You are left with several hundred dollars, which if you wanted could be used to improve the specification of the host PC.
Now if both users were continually running CPU intensive tasks, then there wouldnt be that much of an advantage. But in many cases such as web surfing, word proccessing, programming, etc, there is a lot of CPU cycles which are simply wasted - CPU usage is NOT constantly at 100%. In a sense contending this and investing in a single more powerful computer rather than a new pc with a lot of redundant hardware seems to make a lot more sense. On average each user will have the benefits of much higher peak performance when they need it, rather than being capped to 1/2 the potential speed of the system.
As to stabillity, I doubt it would be a major problem. I have been using Win 2000 server for a long time, and now I am using Windows.NET 2003 (release candidate). Whilst on occasions individual software becomes unstable, I have not had one occasion in which it brought the entire system down with it - and I run a small terminal services server allowing remote logins. The only time the entire system is down is when I mess up with device drivers, or when I need to add new hardware.
on a RS6000 or somthing like that, three monitors and two keyboards.
http://pxes.sourceforge.mot.com/
1 server and N diskless PXE enabled machines. You can do it for about $150 per machine.
Government of the people, by corporate executives, for corporate profits.
Latest linux Journal has article on synergy which allows you to use the same mouse and keyboard on multiple machines. I easily scoot my mouse pointer off the screen and the mouse pointer on the other machine moves.now mouse and keyboard events are sent to the second macine. There's no limit to the number of machines you can hook up this way. I have two linux boxes and my laptop all in a row using the same keyboard and mouse. The best part is that each machine's keyboard and mouse still work. So two people can type on the same machine (not at same time). For pair programming this would be ideal. Other bebbies include cut & past support and it also works with windows