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."
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.
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"
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
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."
Not exactly, they were designed for multiple users, but not multiple mouse/keyboard/screen. Actually, I'm not even sure UNIX/MULTICS were even designed to have a keyboard or a screen, let alone a mouse.
Opus: the Swiss army knife of audio codec
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.