Slashdot Mirror


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."

23 of 496 comments (clear)

  1. The heat! The heat! by foidulus · · Score: 2, Insightful

    I wonder what, if any, heat issues would come from running 4 video cards, and the cpu at relatively full power, in a seemingly normal sized case. I would imagine it would get pretty toasty(or very loud with all the fans running, think of the poor power supply!)
    I would be interested to see how they handle it!

  2. Economy? by Anonymous Coward · · Score: 2, Insightful

    Where's the economy in this? The "box" (cpu/ps/hdd) is relatively cheap compared to the display. I guess every dollar/peso/dinar counts.

    1. Re:Economy? by Texas+Rose+on+Lava+L · · Score: 3, Insightful

      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.

  3. This is new? by Aero+Leviathan · · Score: 3, Insightful

    Wasn't this what Unix (and/or its predecessor, Multics) was designed for?

    --
    ~ Aero
    1. Re:This is new? by Anonymous Coward · · Score: 3, Insightful

      Nope this is not new at all.

      However running multiple instances of X on a single computer is pretty new. Before you had seperate machines that acted as X terminals that had their own low-power proccessor and video card for driving the gui and their own keyboard and mouse. Then those plugged in thru the network and into the computer that way.

      With this method you simply attatch the monitors and keyboards to a single machine and share the resources that way.

      More direct and a bigger pain in the arse. PC's were disigned for single user only, putting multiple keyboards and mice and assigning them to specific users is quite a hack. To most people they have old PC's laying around that make great X terms without having to go thru that effort.

      X terminals is the way to go in office and especially school enviroments. You have a single computer serve multiple people so it may seem that is going to be slow, but realise that the majority of the time the CPU is near-idle most of the time on a single machine. Also by investing in higher performing disks like scsi array you can even increase performance because it's cheaper to do that then buy a have dozen new machines with a single low end IDE harddrive on it.

      Also you remove the need for complex network setups like Active directory. It's much more secure and easier to simply setup a multiuser setup on a single Linux machine. It's already setu p like that by default, and X terminals is a nice extension on that.

      Centralize administration, make backup easiers. Reduce network problems, reuse obsolete PCs without pissing anybody off, higher reliability, higher disk performance, cheaper. etc etc etc.

      By centralizing your reasources you can spend big bucks on a few fast machines, then spreading them out on error prone low-end machines that require a lot of admin time to upkeep.

    2. Re:This is new? by djcapelis · · Score: 2, Insightful

      > However running multiple instances of X on a single computer is pretty new.

      Is it? My computer is running 3 right now... I use them to allow me to keep my work as one user while graphically logging in as another, or allowing others to login to the computer without me having to disturb my desktop environments.

      --
      I touch computers in naughty places
    3. Re:This is new? by isj · · Score: 2, Insightful
      However running multiple instances of X on a single computer is pretty new.

      No it isn't. The first server listens at port 6000, the second server listens on port 6001, and so on. You specify which server to use with the DISPLAY variable (or the -display parameter) x.x.x.x:y.z where y is the server number. Multiple displays has been supported by X for a long time. Multiple input devices have been at bit less supported, but I guess that some of the CAD engineers early in the '90 have used it.

      Virtual displays (ctrl-alt-F1...F6 in xfree86) are newer (middle '90 ?)

  4. Re:Hello and welcome to last week by Anonymous Coward · · Score: 2, Insightful

    For terminal services server to work, you'd need one computer for the TS server, and four computers each with their own operating system for this to work. So to get the same result with Terminal Services, you'd need atleast 4 (one of the computers in use is also the terminal services server) and ideally 5 computers.

  5. Re:The heat! The heat! by Arathrael · · Score: 4, Insightful

    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.

  6. Hate to burst your bubble... by Anonymous Coward · · Score: 5, Insightful
    But not everyone runs top of the line NVIDIA cards. I imagine the cards in this box are probably low budget Geforce 2's. Probably MX 200's. Might even be lower cards then that, since why do they need hardware 3d?

    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.

  7. Dont get it by mboverload · · Score: 1, Insightful
    This wasn't meant to be cost effective.

    Its just damn plain cool.

  8. Benefit? by div_2n · · Score: 3, Insightful

    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.

  9. Re:Mainframe? by tonyr60 · · Score: 2, Insightful

    " Mainframes used dumb terminals"

    Not always. The IBM 3270 architecture (I think it had another name as well) could use graphics terminals with high resolution rendering, mouse etc. Quite a bit of local processing could be done.

    Actually just a monitor, mouse and keyboard would have to rate as a dumb terminal. Even acsii terminals had some intelligence for cursor positioning etc.

  10. Re:Great gamer machine. No latency! by zackeller · · Score: 2, Insightful

    Also known as a console.

  11. Re:LTSP still a better option by tempmpi · · Score: 3, Insightful

    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
  12. it does workstation stuff very well by r00t · · Score: 3, Insightful

    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.

    1. Re:it does workstation stuff very well by dasmegabyte · · Score: 2, Insightful

      Very wise. Except that a PC with four times the processor speed, four times the bus speed and four times the memory bus, along with four video outputs, would be quite a bit more expensive than four individual computers, thanks to the commodity hardware market.

      Which is why we moved away from the mainframe in the first place.

      The benefit of this technology, if there is one, is that four users with bare minimum needs can share one commodity computer. Control four web terminals at your coffee house from a single PC. That's kind of useful.

      --
      Hey freaks: now you're ju
    2. Re:it does workstation stuff very well by r00t · · Score: 2, Insightful

      Sure, you wouldn't go all the way to 4x.
      That simplifies the explanation though.

      You might go to 2x or 1.5x instead. The end
      result is still faster most of the time, because
      the PC spends nearly every moment being idle.
      My load average is 0.14 right now, and I'm not
      even using a modern system. (old 450 MHz Mac)
      Despite the low usage, there are times when I
      must wait.

      With the 4-user box, you also save on electrical
      power, noise, air conditioning, and physical space.

  13. Re:Great gamer machine. No latency! by josath · · Score: 2, Insightful

    dude, there's like 5ms max latency over a lan. if you double that, that still gives you 100 frames per second. I don't think you need any more accuracy than that...

    --
    sig? uhh, umm, ok
  14. And the reason this can't be done with Windows... by NoMoreNicksLeft · · Score: 3, Insightful

    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!!

  15. Re:The heat! The heat! by Alexis+de+Torquemada · · Score: 2, Insightful

    I figure that buses would be a bottle-neck. PCI is far less than ideal for 3D gaming, and with four cards, the problems get much worse still.

  16. Re:60 users on 15 PC's - try 60 users on an 8MB VA by bokmann · · Score: 2, Insightful

    Well, this would be comparable today to giving a bunch of users accounts and allowing them to use telnet or ssh to get to a shell account. In a setting like that, I bet your average computer today would support hundreds if not thousands of simultaneous users. With X terminals, I bet you could have a bunch of gui interfaces too.

    This is a lot different than that - this is about taking an interface that has been designed assuming there is one user in front of it, and hacking it to support multiple users. Multiple keyboards, mice, and displays on one box, don't normally work this way.

    Cool? yes... Practical? probably for someone... but in a world where people hack web servers onto commodore 64s and overclock their Sega Genesis, rank this toward the top of the list.

  17. Whats there to maintain? by torpor · · Score: 2, Insightful

    While the Linux system might be difficult to maintain, it can be done.

    Every user gets their own session, their own homedir, their own .dotfiles, and it Just Works.

    Once this is set up, and X is running, its done. No maintenance. Multi-head is actually "X" and Unix at its greatest.

    Put OpenOffice.org on there and you've got what you need to run the average office, for whatever business.

    All that time you're wasting now, in the "difficult to maintain" department, you know ... re-formatting every PC in the office, re-installing c:\winnt32\, removing IE, 'fixing the e-mail system', installing new Virus patches, etc. will now be free time you can apply to actually customizing your -one computer office system- to the task of your business, easily, and maybe learn a few Open Source skills on the side, as well.

    An Apache/PHP/MySQL-based business app being developed by an enthusiastic software hacker (it could be the whole group, with their own PHP scripts ...) focused on computerizing his/their business process, paired to a single cheap PC that 4 people can be using at the same time, is good Starter Business Manna ... put a smart business app on a Single PC which is dead-easy to maintain (hint: it just runs), make sure Single PC is cheap, and it works, and you've got a 3rd world economic power-station.

    Think of the rows and rows and rows of low- to middle-class businesses you can see in any average big-city, and now add a small, affordable computing system that -4 people can play with at once- in each box in the row.

    Most people buy multiple-PC's for the office just so that they can have access to a 'broader computing system' that they then try to tie together with all kinds of other bone-dead 'systems' like 'shared Access databases' and whatnot, over some network (which requires even more hardware and maintenance) ... whereas having everything 'local', on a single system with sufficient power (RAM) to cater to the needs of busy people, is entirely feasible, and cuts out a -lot- of the reasons for most modern PC maintenance ...

    Its gotta get easier to multi-head PC's. It just does. The single-user hardware paradigm needs to be shifted. Microsoft -need- new licenses from new 'complete system' hardware to propel their buggy OS, whereas Linux only -needs- you to use it.

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --