FourHead: One PC, Four Users
LoganGD writes "A reseach group from UFPR university in Brazil, C3SL has managed to make one Linux box run four terminals at the same time. That means four mice, keyboards, displays and users with just one CPU. The way they managed to do that can be found at the FourHead project webpage. The fact that one computer science laboratory can suport up to 60 users whit only 15 PCs is really attractive for low-resource groups and countries."
Wasn't this what Unix (and/or its predecessor, Multics) was designed for?
~ Aero
This has been done a long time ago...i user/
http://cambuca.ldhs.cetuc.puc-rio.br/mult
But if one uses XGGI, its easy to get eight or more users on a single PC.
- A.C.
Hi there,
1975 called. They want their computer headlines back.
Best regards,
Chairboy
Also, you don't need 4 cards, You could do it with two. NVidia's twinview allows you to run two seperate X-servers off of one card (provided of course that it has two outputs).
Initially it is necessary to catch the code source of kernel 2.4.25. Makes it sound like an adventure.
-- The morphemes of your disquisition are ascertainable, but they have eschewed an ambit of transpicuous exposition.
Heh, there was once a time where I had three mice (only 1 cursor though) - I had a normal PS2 mouse plugged in, an old COM port (I think.. never been too sure what port it was) mouse and a wireless USB mouse all plugged in at the same time, and they could all control the cursor.
Hehe, it was good for playing tricks on my parents when they were sitting at the desk with the PS2 mouse and I'm sitting a few feet behind them with the handy wireless USB mouse.
*evillaugh*
It's not like the graphics cards are going to be pushed to the limit - I mean, the CPU wouldn't cope with them all playing ut2004 at the same time. :-) So they shouldn't be generating all that much heat, couple of case fans should cope with it no problems.
As for the noise, it'll still be quieter than 4 separate boxes.
I don't think anyone could argue that these create massive amounts of heat. What heat they do create can easily be exhausted by a case fan.
This is definitely a setup for an environment where people are literally running on a shoestring budget. This is a really nice ability, and I'm glad someone has done it.
Man, this is old news. We did this few years ago with five or more people on one machine. All we needed was a really small computer class, some free chairs, one PC, one keyboard, one mouse and one display.
Fastest (or strongest) got the best seats and the one with specs got the keyboard.
Talking about multi-tasking...
it doesn't involve a mainframe?
Ranging from:
'xterminals are cheaper' -- anyone care to back that up?
to:
'Windows terminal services can do this' -- don't know where to start on that one, suffice it to say: it can't.
to:
'This is just serial terminals' -- it isn't. RTFA.
I'm sure I missed a few...
"I assumed blithely that there were no elves out there in the darkness"
That's not completely true. Since I'm not a Linux user, I'm not sure what kind of power a box would require to run something like this, but CRTs are only $100-150. Correct me if I am misspeaking, but I don't think you can buy a tower for anywhere near this price. The keyboard and mouse are pretty inexpensive. Would the video card have to push a lot of processing power? If so, maybe that's where the cost would even out, since there's so many video cards out that cost nearly as much as whole systems.
Mainframes used dumb terminals (that is, effectively a seperate machine connected to the mainframe via serial).
This is a standard computer handling several video outputs, keyboards and mice by itself. Just the same as any one person system, but handling multiple persons instead.
Or something.
And what if one person writes an important document and another wants to press reset?
;)
I suggest 4 CD-ROM drives and correct permissions set in fstab so everyone can use -their own- drive only
45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
These guys aren't using 21-inch flat panel monitors. A 17-inch monitor costs around $100 or so. Mice, keyboards, etc. are cheap. If the boxes are $300, plus $150 for a monitor, keyboard, and mouse, they're reducing the cost of 4 computers from $1800 to $900. This would mean they could support twice as many users without increasing the budget.
Also, boxes need replacing more often than monitors, so you get even more cost savings later on.
Rank Presidents by th
Ok, so by the time you spend all of the time and effort to do all of this, you could deploy a fully self contained thin client in what, 10 minutes?
The only way I see this as a good idea for any low budget organization is if they get donated lots and lots of monitors, keyboards, mice and computers with graphics cards for this project.
This sounds like a multiplayer gamer configuration. Unlike most shared-CPU systems, everybody has a 3D video card, although they have to be PCI boards. With everybody on the same CPU, latency is a non-issue. Fast FPS games should synchronize perfectly. That tightly synchronized feel will make for much better head to head gameplay.
Observations that "this has been done before" are really missing an important point, that it's being done in a new way. When there are hundreds of software solutions for everything, all for free, then there will cease to be a market for overpriced proprietary solutions. Not only that, but instead of thinking "where can I buy ___," the first thought to come to mind will be "where can I get this in Open Source."
TCO depends a lot on wages vs. hardware/software costs. If the wages are high, it can make sense to spend more money on hardware/software if that causes less downtime and less work for the adminstration. But if the wages are low, work-intensive solutions with slightly more downtime can become acceptable and have a lower TCO in the end. In countries like brazil I wouldn't be so sure if the TCO of a LTSP is really lower.
Not unlikely hardware is more expensive than in the US and the wages are a lot lower for sure. And students are working on these PCs, so downtime is almost free. I believe such a four head solution also provides better response than a LTSP installation. Video playback and similiar stuff should be possible on a four head installation.
Jan
Most of the time, your PC sits idle while it waits
for you. Every now and then, you sit idle while you
wait for the PC.
Now get a 4x faster PC, and share it 4 ways.
Very seldom will all 4 users need the CPU at once.
So, nearly all of the time, you'll get better
performance. When you need the CPU, most likely
the other 3 users are reading, thinking, chatting,
drinking, picking their nose, or whatever. The
fast hardware is all yours.
Could it be that windows doesn't support multiple monitors? No.
Or that it can't support 4 different users on them (as opposed to 1 user getting a big display)? Probably not, at the very least, it would be hackable.
Maybe it can't support multiple keyboards, or mice? Again, the most it would need is some hacking.
Or maybe, just maybe, if you posted a webpage, telling someone how to use a single windows license for 4 users, M$ legal would go apeshit on you, and stomp you into a tiny, tiny greasestain?
BINGO!!
This is a standard computer handling several video outputs, keyboards and mice by itself. Just the same as any one person system, but handling multiple persons instead.
and has way more overhead and cost than using old P-I233 computers or dirt cheap x terminals on a network.
I can support 10 users on one machine using Linux Terminal server for 1/4th the cost of their supporting 4 people on one machine.
and I have a overall lower processor load.
It's neat, but nothing more than that right now.
Until the supply of free Pentium I class laptops and desktops dry up or the sources for dirt cheap xterminals dry up, it's nothing more than a expensive wy of doing things.
Do not look at laser with remaining good eye.
Just here to let you know, this 4-user setup defined in this forum's topic is using four nVidia TNT2 graphics accelerators! These are better than GeForce graphics accelerators for driver-related reasons. Way back in the maturation of XFree86, with version 3.3.6, it is possible then and a throughout the 3.x XFree86 branch to configure XFree86Config to "Load """ Utah-GLX's nvidia driver to attain hardware-accelerated openGL. This is a completly different driver approach than DRI's openGL SAL. Utah-GLX provides X Server modules rather than its various competitors providing a /usr/lib/libGL.so.* and any non-standard patch cludged into the X Server. DRI project's openGL acceleration architecture at the moment may also allow mutliple local X Servers, albeit that of the various non-XFree86 such as the capable technology at DirectFB project (which allows accelerated openGL without a X Server; directly using the DRI without an X Server).
Backtracking to Utah-GLX's driver (project page here, this will allow many complex openGL-phile programs to run at the same time given its architecture. I, however, doubt that older XFree86 3.3.6 will scale to this feat; I simply don't know. Yet, the Utah-GLX driver system has been ported to XFree86-4.x; it is a openGL GLX driver package in the form of dynamically loaded X Server modules/extensions and can be manipulated into and without the X Server without having to restart the X Server. It's somwhat parallel to the DRI driver, to provide an alternative, but it is not being maintaned anymore; Utah-GLX is dead and someone needs to commandeer!
I am using three Athlon Thunderbid 700MHz computers with a total 9 nVidia TNT2 adaptors total (three per computer), S-Video composite output to NTSC televisions, and quad-bonded 100BaseTX ZNYX LAN adaptors for verry low-latency threaded shared openGL rendering; I use as Chromium 3D videowalls, by using XFree86 4.3 and Utah-GLX's nVidia openGLX driver.
And yes, Quake3 looks hot!
Has computing gone forwards or backwards when it takes thousands of times the compute power to support fewer users, doing dumber things. We used to run whole research departments developing mathematical modelling, computational physics programmes on a single DEC VAX 11/750 with 8 MB of main memory and like 80 MB of hard disk space. It was so underutilised that astrophysics would rent out time on the darn thing to geophysics and chemistry.
This was on 4.2 BSD, the mother of all open source operating systems. And we had access to supercomputers at Argonne, NCAR, LANL, LBL and Cornell over the ARPAnet. in the freaking early 1980's.
AND we produced beautifully typeset scholarly papers and theses, full of equations using TeX. Try doing that with Office. Hnf.
Personally, I used to use maple to do the algebraic manipulations, and export to either fortran (to run a numerical simulation to get the results that formed my thesis) or to TeX (in order to publish it). Sure as hell can't do that with the stupid Office (open or MS) programmes you need 15 64MB computers to support only 60 users on in this model. Even if you insist on running a pointy-clicky GUI, with X10 we used to run dozens of graphics terminals off of one VAX
This article just proves that the net progress of computing is actually backwards because the computers certainly are getting bigger/faster/better more slowly than the intelligence and creativity of the users -- now they all need a GUI just to edit text and compile programs. To the point that it's a miracle when you can have more than one person using a computer at a time now. Sheesh!
If you go back some 30-35 years, you find some HUGE mainframe installations, supporting dozens or hundreds of online users simultaneously.
Do a bit more research, and you find that those mainframe installations had processors that ran at clock rates somewhere between 1 and 20 MHz, with typically a few megabytes (equivalent) of RAM, and a few hundred megabytes of hard disk. (And a few tape drives, but the tapes were not really used that much, by comparison.)
As a convenient example, consider the Control Data 6600 supercomputer at UT Austin in 1970. The CPU clock was 10 MHz, and it had just 131,072 words of main core memory, at 60 bits/word (which works out to about 1 Megabyte). It had two disk subsystems, one of which stored 168 million characters, the other storing 241 million characters.
Compare this with a 486/33, with 4 megabytes of RAM, a 200 Mb and a 340 Mb hard drive. 4 times as much RAM, probably comparable CPU throughput (the 6600 CPU was a master of parallel execution: it could be running as many as 10 instructions simultaneously).
The 6600 was heavily time-shared.
Late in the 1970s, things started getting interesting. The magic point was called "3M", which stood for "1 MIP, 1 Megabyte, 1 million pixels", and the price on that was JUST BARELY within reach of an individual.
Now look today. Our LOW END personal computers come with HUNDREDS of megabytes of RAM, hundreds of MIPS, tens or hundreds of gigabytes of disk storage, and several million pixels. (The limit on pixels is what you can get onto a display and refresh at a reasonable rate.)
What limited these guys to "only" four users per PC wasn't processing power or video bandwidth. It was the number of PCI video cards they could physically stuff into a PC motherboard.
Can you literally run something on a shoe-string budget? What, exactly, can you get in exchange for a shoestring? Or did you mean a budget literally equal to the value of a shoestring?
Drives me nuts every time someone says 'literally' to modify a phrase that it is literally impossible to construe in any way but figuratively.
~Sub
-1 Troll
-1 Flamebait
+1 Linguistic Merit
+1 Crankiness