Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

knucles

macrumors regular
Original poster
Aug 8, 2006
125
0
Portugal
So imagine that i have 2 monitors, two keyboads and mice....

I have a Mac Pro and i want two workers working at the same time in the same machine.

That way i only have to buy 1 version of the software involved.....
 
Might be possible with some sort of software out there that lets you split OS X logins onto a second screen, but I don't know anything about doing that. There is definitely nothing you can do with the built in software.
 
not possible, as there is only one chipset in the computer it can not handle separate traffic
 
not possible, as there is only one chipset in the computer it can not handle separate traffic
It's the software where the limitation is. There's no reason why hardware that supports multiple monitors, multiple USB devices and multiple network cards couldn't separate out the user sessions, but the OS would need to tell the hardware how to separate them.

I'm just wondering whether you could actually do this in VMWare if one of the users didn't mind being on Windows or Linux. It would all depend on whether you could dedicate the second USB keyboard and mouse only to the guest OS whilst it ignored the first. Hmmm....
 
Actually yes, it is possible in a way.

1. Buy VMWare Fusion.
2. Buy Snow Leopard Server (or work out how to use standard Snow Leopard in VMWare Fusion).
3. Run Snow Leopard in VMWare, maximised on the second screen and connect a usb and keyboard mouse directly to the virtual machine.

However, since you'd be running two operating systems you'll need licenses for both OSs and both copies of the software you want to use.
 
But can you configure VMWare not to send the main keyboard and mouse I/O requests to the guest OS? That's key to the whole setup IMO.
 
But can you configure VMWare not to send the main keyboard and mouse I/O requests to the guest OS? That's key to the whole setup IMO.

Just don't have the VM active - if the main user doesn't click on the VM or move their mouse over it then the second user can work in peace.
 
not possible, as there is only one chipset in the computer it can not handle separate traffic

It is possible, the hardware has nothing to do with it. In fact today's computers are by far more powerful then the multiuser mini and mainframe computers if the 70s/80s and possibly the 90s at this stage.

the difference is the OS is not designed for multi-user, and so the products that exists try to get around this with varying degrees of success. Personally, given the low cost of computers, even the Mac Mini, I'd opt for just getting a cheap computer to be used along side the main one and set up some shares or a NFS to centralize the data.
 
Just don't have the VM active - if the main user doesn't click on the VM or move their mouse over it then the second user can work in peace.
I see. It would need the host OS user to be a bit disciplined with their mouse pointer but you're right in that it would work.
 
I see. It would need the host OS user to be a bit disciplined with their mouse pointer but you're right in that it would work.

The easiest thing would be to setup the second display so that it's positioned in an awkward location like so:

Screen shot 2010-09-15 at 12.44.54.png
 
The easiest thing would be to setup the second display so that it's positioned in an awkward location like so:

View attachment 251767
But I believe the displays must have a common pixel so the mouse can travel between them.

If your Mac display (upper right in this case) has any functions activated by moving to the lower left, you may end up on the other display. For example, if I drag my mouse to the bottom left I start my screen saver (with password).

So you would need to deconflict something like this with your display placement for both the Mac and PC.
 
It is possible, the hardware has nothing to do with it. In fact today's computers are by far more powerful then the multiuser mini and mainframe computers if the 70s/80s and possibly the 90s at this stage.

the difference is the OS is not designed for multi-user, and so the products that exists try to get around this with varying degrees of success. Personally, given the low cost of computers, even the Mac Mini, I'd opt for just getting a cheap computer to be used along side the main one and set up some shares or a NFS to centralize the data.

There is actually very little to be added to the OS. MacOS X _is_ designed for multiple users. If you use "Fast User Switching", you can have two or more users using the same Macintosh, and the software of one user keeps actively running and updates its own virtual screen while the other user controls the main screen. One thing I tried (and it worked) was starting to burn a DVD, switching to another user, and a while later the DVD was done.

The problem is that the OS assigns _all_ monitors to the same user, and _all_ keyboards and mice to the same users. And if you have two monitors attached, each user believes they have two monitors (even though the monitors of one user are invisible). All that would be needed is an interface that lets you assign each monitor to a specific user, and each keyboard to a specific user. The operating system itself will handle this without any problems.

As for the cost: Many people need lots of power _sometimes_. It would be great if four users could share a 12 core MacPro. When one of them does something that would bring a MacMini to its knees for an hour, that MacPro would handle it in a few minutes - with enough power to spare that the other three users wouldn't even notice. So if that 12 core MacPro saves _you_ an hour every day, it will save you and three colleagues four hours every day.
 
But I believe the displays must have a common pixel so the mouse can travel between them.

If your Mac display (upper right in this case) has any functions activated by moving to the lower left, you may end up on the other display. For example, if I drag my mouse to the bottom left I start my screen saver (with password).

So you would need to deconflict something like this with your display placement for both the Mac and PC.

Yeah you need a common pixel so you'd lose one hot spot. That's pretty easy to live with though.
 
Yeah you need a common pixel so you'd lose one hot spot. That's pretty easy to live with though.
Understand and agree.

However, someone like me who just drags down and to the left at the max would probably transition to the other screen. In my case I would need to set up the screens differently so that wouldn't happen. YMMV.

The 64 dollar question. Has anybody tried to do this with a Mac Pro?
 
The 64 dollar question. Has anybody tried to do this with a Mac Pro?
Technically you could even try it on a MacBook. All you need is an external screen, a copy of VMWare and a USB keyboard/mouse.
 
Understand and agree.

However, someone like me who just drags down and to the left at the max would probably transition to the other screen. In my case I would need to set up the screens differently so that wouldn't happen. YMMV.

The 64 dollar question. Has anybody tried to do this with a Mac Pro?

Great thread. It would be so awesome if 2 or more people are working from the same machine. Somebody should try it :)

Well, in the interests of the 'why not' sentiment, I've given it a try (I already had a Snow Leopard Server vm open on my desktop for testing some other things, I have a second display and I have a spare keyboard to hand). In this manner you could have as many clients as you wanted.

For anyone wanting to actually use this in the future, note that you have to open up the contents of your virtual machine (show package contents ~/Documents/Virtual Machines/Mac OS X....vmware), open up the vmx file in there in notepad and add the following line at the end:

usb.generic.allowHID = "TRUE"

That allows you to send USB mice and keyboards etc to the virtual machine.

It works just as expected. I've got my spare Apple keyboard and Microsoft mouse sent through to the virtual machine and I'm using my normal Apple keyboard and magic trackpad on my main machine. VMware is maximised in the second display.

I've edited the two screenshot files together here:

multiusersetup.jpg

Edit: You could even go another step further and use a usb to vga/dvi adapter too. You could attach a mouse, keyboard and vga adapter to a hub and then connect that hub to the VM. One cable to add a second user.
 
So imagine that i have 2 monitors, two keyboads and mice....

I have a Mac Pro and i want two workers working at the same time in the same machine.

That way i only have to buy 1 version of the software involved.....
I've done this using VNC and fast user switching. Vine (VNC) Server is running on the background users session. You have to configure it so it runs on a different port from the built-in VNC service (screen sharing).

From https://www.testplant.com/multidesktop.html:

* First download Vine Server (OSXvnc) on your computer. Vine Server (OSXvnc) is freely available in our download area.
* Once downloaded, just move the Vine Server (OSXvnc) application into your Applications folder to install it.
* You'll need to enable Fast User Switching if you haven't already done so. It can be found under System Preferences -> Accounts. Choose "Login Options" near the bottom and check the box to "Enable Fast User Switching".
* The following process should be repeated for EACH USER that wants access to the machine through VNC:
o Log in via Fast User Switching (if not already logged in).
o Launch Vine Server (OSXvnc) from inside the Applications folder.
o You should see the message "Server Running" near the bottom of the configuration panel. If you get a message stating "Port In Use" try setting a different Display Number and hitting the "Start Server" button. Each user must be running on a different port.
o Now Ctrl-Click on Vine Server (OSXvnc) in the dock and choose "Open At Login"; this will set it to launch whenever this user logs in.
o Launch a VNC viewer on another machine and enter the connection information for the machine that you just configured. If you are using Chicken of The VNC you should see each screen via Bonjour. Otherwise, each user has an associated Display Number which corresponds to the port number 5900.

Notes and Caveats

* Each user MUST be logged in using Fast User Switching. If you reboot the computer you will need to go and log-in each user with Fast User Switching to enable access via VNC.
* It's still a single machine. If lots of people are doing lots of things at once you will notice a slowdown.
* This doesn't duplicate your hardware. Two people can't try to play music out the speakers at the same time, you can't have different people each copying files from the same USB camera, things like that.
* We have seen inconsistencies when different users try changing the desktop size/color depth. Sometimes this will have an impact on other users or cause things to behave strangely.
* Trying to Fast User Swtich from a user who is already "off-screen" will be ignored.
* There is currently a bug in Apple's keyboarding routines which causes some keyboard states to persist across sessions. If the user at the Mac's keyboard is holding down a modifier key (like Command) when you hit another key (like A), you will get their modifier in addition to your key.
* If you have difficulties getting the server to run (or stay running) we recommend verifying these settings in Vine Server (OSXvnc):
o Set a UNIQUE Display Number (or choose "Auto") on the General Panel.
o Set a UNIQUE Desktop Name on the General Panel.
o ENABLE "Start Server when Application Launches" on the Startup Panel.
o DISABLE "Terminate Server on a Fast User Switch" on the Startup Panel.
o ENABLE "Restart Server when it terminates unexpectedly" on the Startup Panel.
 
I've done this using VNC and fast user switching. Vine (VNC) Server is running on the background users session. You have to configure it so it runs on a different port from the built-in VNC service (screen sharing).

From https://www.testplant.com/multidesktop.html:

Interesting. So, in theory, the OP could do exactly what he wanted by using a combination of the VNC and the VMware method.

Setup Windows/OSX/Linux in the VMware, maximise to secondary display and send a mouse and keyboard to it as I described above. Then setup the fast user switching + vnc server method on the main machine and then use the OS in the VM machine to VNC in to the main machine. This will then allow the second user to use the same apps that are installed on the main machine.

Both parts have been proven to work separately so there's no reason to think that they couldn't work together. Doing so would mean you wouldn't need a second physical computer at all to do this.
 
Mac is so complicated...

That is what happens when you don't use the standard Unix windowing mechanisms.
 
Man, this is amazing. i never thought it would be possible. It actually work seamless?

This can very well revamp my small 3 ppl company, i can have 1 employer doing 3d modelling while another do Pages work and i respond to some e-mails.....in my Hex Mac Pro and avoid the hole let me use your computer thing
 
Mac is so complicated...

That is what happens when you don't use the standard Unix windowing mechanisms.

Most Macintosh users are very, very, very happy that Apple doesn't use the standard Unix windowing mechanisms.
 
Most Macintosh users are very, very, very happy that Apple doesn't use the standard Unix windowing mechanisms.

You can use X Window and have a nice toolkit on it. Happy Mac users have nothing to do with it.
 
Well, in the interests of the 'why not' sentiment, I've given it a try
Thanks! That's really cool.

I've got my spare Apple keyboard.
Is your spare keyboard the same as your main keyboard?

Man, this is amazing. i never thought it would be possible. It actually work seamless?

This can very well revamp my small 3 ppl company, i can have 1 employer doing 3d modelling while another do Pages work and i respond to some e-mails.....in my Hex Mac Pro and avoid the hole let me use your computer thing
Now that would be interesting. :)
 
Everyone gets a cheap computer for emails and since only one person will be doing 3D modeling at a time they can use the specialized Mac Pro.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.