Market Gap: VMware for OS X

49 Comments

Throughout the course of my life I’ve had cause to have more than one machine available to me for my work. Not because I have more than one set of arms and eyes and amazing multi-tasking capabilities, but because vast quantities of my work generally involve setting up temporary environments, and even entire networks. I don’t want to set these up on the machines I use for everyday work. If I’m trying out a particularly nasty piece of beta software it could take me hours – even with regular backups – to get back online. Quite aside from the fact that sometimes I need my main machine available to write up and make notes on the temporary environment I’ve just created.

All this has meant that I’ve had to have multiple machines available to enable me to do my work. My home network contains more computers and computing power than many of my clients have spread among 10-15 people, but there’s just me in this office. Aside from the management perspective of a 20 machine network, the electricity costs are astronomical compared to just running a few desktops.

Then I discovered VMware on Linux. For those not familiar, VMware (which is available on Linux and Windows) is the same basic principle as VirtualPC (available for Mac OS/X and Windows) – it enables you to create virtual machines, including hard disks, networking and even audio and other device access – through which you can run another operating system.

For me it means that I can create a three machine network – one running Windows Server 2003, another Windows XP and another Linux for example – all within a single machine. Each virtual machine has its own entire environment; if the Windows XP machine needs to reboot, I can do so without affecting the others. Similarly crashes and other problems don’t affect the other virtual machines.

Now that’s great. I actually now use VMware, VirtualPC and Microsoft Virtual Server (a server specific version of VirtualPC) according to my needs and environment. All of them, conveniently, support the same target platform – Intel x86.

But what if I need to achieve the same on my Mac?

OK, 75% of you will have chimed in and said ‘VirtualPC is available for the Mac’. And you’d be right. 5 points.

For the 25% that see where I’m going with this, 10 points.

You see, as a Mac developer and system manager I’ve often had to create environments, test software and evaluate the results on the Mac platform. VirtualPC isn’t going to help me – it’s designed to emulate the Intel x86 platform and support x86 operating systems like Windows. In fact, VirtualPC – by its very name – is designed to emulate a PC on your Mac.

What’s surprising is how under-supported this kind of facility really is. I mean, VirtualPC and VMware have been around for years, why isn’t there an equivalent for the Mac/PowerPC platform?

It’s not technology that is the problem, in many ways the PowerPC platform should be easier to produce an equivalent for than a PowerPC environment. Instead, I suspect the problem is more to do with market forces.

Well PearPC does actually allow you to run PowerPC software on Macs, but it’s a relatively recent capability only made possible by the introduction of Mac OS X and an X server. Originally, PearPC was designed for Unix and Windows PCs run Mac software, it’s by pure coincidence that we’ve now got a working virtual machine emulator on the Mac that is capable of running Mac software. At the moment, PearPC is less than ideal on the Mac platform. The keyboard interface doesn’t seem to work right, and I haven’t yet been able to run a LinuxPPC installer (although booting works fine), but I’m sure these will be fixed in time. Performance is also an issue, although again that could be alleviated with more intensive work on the PowerPC platform.

Hopefully, we’ll see more interest the PowerPC virtual machine arena when the new dual-core PowerPC chips come on line. With the right software it would be possible make a really good virtual machine environment that could use the second core on the processor as the main CPU for the virtual machine. With a dual-CPU platform we could run two virtual machines.

Until then, if you have the time, why not devote some of it to PearPC?

Note: Dual-booting, by the way, isn’t a solution. With dual-booting I can only run one version of one operating system at a time. I can’t run OS X and LinuxPPC on the same machine simultaneously.

49 Comments

Mark

Hi,
I’m very interested in a VMWare-like programme for OS X.
Is there some news since April?

Peter da Silva

Providing that (a) they develop only for Mac OS X, (b) only develop for one Mac OS X version at a time and no other and (c) only develop simple standalone applications.

That’s the majority of the developers right there. The ones who develop for more than one Power PC OS, who develop for anything but whatever is currently out there, and who develop applications that require write access to system files (remember, “simple standalone applications” can still install Cocoa components in ~/Library…) are a small part of the total.

I’m not ignoring other situations, I just don’t think there’s a huge market there. I am a system administrator, and I have used VMware on occasions… but I hate using it. I set up a whole new Red Hat system for VMware testing, and loaded it up with RAM and CPU, and with more than one concurrent system its performance is too low for it to be useful for anything BUT testing… and if I could maintain properly segregated users on Windows I wouldn’t use it at all… EVERYTHING I use it for on Windows I can do without it on FreeBSD and Tru64 (the main UNIX environments we use).

If the technology wasn’t useful then it wouldn’t exist on any platform

I didn’t say it wasn’t useful. If you’re using Windows its very useful indeed… but that’s because of the nature of Windows. If you’re not using Windows, it falls in the “occasionally convenient” department. It’s like blade servers: if Windows didn’t suck so badly there wouldn’t be enough market to justify their existence.

mcslp

because Mac OS X is a UNIX system and most of the reasons that most developers would need a virtual machine during development simply don’t apply.

Providing that (a) they develop only for Mac OS X, (b) only develop for one Mac OS X version at a time and no other and (c) only develop simple standalone applications.

You conveniently ignore other issues and situations where using virtual machine technology would be useful to developers – including testing software for new versions of the operating system, beta versions and after system updates, none of which can be achieved within the isolation of a single user. None of these situations are specific to the type of application you are developing, and none of them are effectively handled through the warnings in Xcode.

Virtual machine technology would also be useful to people other than developers, including system administrators and IT departments for testing and deployment. I said that in the original article, and I’ve repeated it a number of times in the comments.

The market is therefore much larger than the simple application developers that you keep quoting as ‘people who don’t need the technology’.

If the technology wasn’t useful then it wouldn’t exist on any platform, and yet you have three commercial products on the x86 environment (Windows and Linux).

Peter da Silva

Gareth: In the SCO litigation’s heyday, much was made of the fact that Linux isn’t UNIX. It’s UNIX-like, but it isn’t UNIX.

Linux is UNIX. Not “UNIX-like”, it’s UNIX. So is OS X. I understand that claiming that something isn’t “UNIX” if it doesn’t have the anointed holy code in it has a long and fashionable history, but I maintain, and I have maintained since long before there *was* such a thing as Linux, that this argument is pure and unadulterated horse exhaust. Being an old codger doesn’t mean my brain has fossilized to the point where anything that hasn’t been blessed by Dennis Ritchie’s fingers makes me go “Oooh, that’s got Linux cooties, it’s not REAL UNIX”.

UNIX is a family of operating systems that share a common core API and a common approach to API design, based around the use of opaque objects (file descriptors) to mediate communication between components, and a common namespace (the file system and the UNIX shell) to locate and create these objects. There are very few, if any, “pure” UNIX systems any more (System V IPC, an abomination before the kernel if eve I saw one, is now universal… for just one example)… but there is nothing in Linux that makes it less a member of this family than FreeBSD, OSX, SCO Unixware, Solaris, or Tru64.

Yes, a typical Linux installation normally has a lot of configuration and design features I find annoying, but there is far too much variety in Linux distributions for me to be able to discern any common thread that I would call “the Linux way”.

as a Brit I can – nay, have a duty to – out-cynic you

Blow that for a joke, I’m Australian.

Peter da Silva

Which is meaningless for anything but running basic applications. Testing a software installation issue – especially if you are testing the installation of software, services or extensions that requires installing system components – isn’t going to be possible in the situation you describe for every type of application. It’s not even possible for some of the most basic applications supplied with or available on OS X.

99% of software for Mac OS (any version) and at least 95% of the software that comes with an “installer” on Mac OS (any version) doesn’t need or even want an installer. Installers are only necessary if you’re installing genuinely system-level components (and there, too, far too much software on Mac OS X forces you into installing components at the system level instead of letting you install them locally), and I’ve already acknowledged that’s an exception so why do you keep bringing it up as if it’s a new point?

What I’m getting at here is that there is a FAR smaller market (see that bit up there at the top of the page, “The Market Gap”?) for this kind of capability than you’re making out, because Mac OS X is a UNIX system and most of the reasons that most developers would need a virtual machine during development simply don’t apply.

Since the majority of software is installed in the main Applications folder it makes sense to test it in that environment.

“/Applications” is not an “environment”, it’s a read-only-to-normal-users directory. That’s the only difference between “/Applications” and “/anythingelse/Applications”.

The only reason I can see that being an issue for software that doesn’t contain system-level components is if you’re trying to write to your own Resources directory (and, yes, I’ve found software that won’t run from a CD because of that), or you’re otherwise storing information in places you shouldn’t be. Unless the basic design is appalingly broken you can test this by running it from a read-only DMG.

Even simple applications sometimes need more than to be copied to ~/Applications. and You are concentrating on testing a completely standalone application that has everything it needs right there in it’s installation folder.

Yes. That is the normal case. I can’t think of any good reasons for simple applications to need more than that. If your software is not a system component (and, again, I’ve already agreed that special case requires multiple real or virtual systems to test on) there is absolutely no reason why it should require anything installed outside its appdir. Even Microsoft gets that right: you can install Office X by dragging it to the Applications folder, and you can move it to a diferent folder at any time and it keeps on working.

If you say there’s a big market for VMware because it makes it easier for people to write badly behaved software (like, say, those beggars at Unsanity who force-install their stuff in /Library), than I for one am all for making it harder for people like that. There’s WAY WAY too much software like that already.

including making sure that some past software or driver that you installed on your machine isn’t what makes your application work.

This is another good reason for installing stuff in ~/Applications routinely so that your test user can’t see them. For system software and drivers, yes, that’s a problem. You need different physical or simulated hardware (including different KINDS of hardware) to cover this.

mcslp

Gareth: I agree the OS may not have been able to handle it – but OS X isn’t the only OS for the PowerPC.

There isn’t a VMware-like app under AIX, nor under any LinuxPPC environment, and yet these have been available for significantly longer than OS X on PowerPC.

Market forces and available customers explains why there is no commercial version, but I’m surprised that a FOSS version hasn’t surfaced either.

Gareth Potter

To Peter:
I should think that what I mean by a “Linux way of doing things” is obvious and barely merits a response, especially to a developer of your seniority.

In the SCO litigation’s heyday, much was made of the fact that Linux isn’t UNIX. It’s UNIX-like, but it isn’t UNIX. Certainly as an OS X user and as someone who prefers *BSD, I find some of Linux’s configuration idiosyncracies (layouts, etc.) utterly maddening – I would go so far as to label it a higgledy-piggledy mess at times, albeit one which I have finally got used to. The opposite is also true – there are many Linux devotees who bitch and whine when Apple deviates from their “norm”. Indeed, to placate these types, Apple made much of their adding numerous Linux APIs to Panther, as well as new code from FreeBSD.

As to the point about testing, the cynicism is not particularly relevant (although I cannot resist adding, with tongue inserted firmly in cheek, that as a Brit I can – nay, have a duty to – out-cynic you). Whilst I feel it might not be entirely necessary to test applications on different versions of OS X, given that Xcode does try to alert you to compatibility issues, notwithstanding the fact that fundamentally I believe it to be a bad idea not to do so, the suggestion that you can develop on OS X/X11 for any version of Darwin/X11, Linux/X11, *BSD/X11 without testing on those platforms is utterly ridiculous.

To MCslp:
Your point about the need having been there is interesting and wholly valid, but it does meet with one major issue – the host operating system.

VMware only runs on NT/2000/XP and Linux for reasons that should be relatively obvious – it needs a modern, multitasking host operating system to work properly and safely. My relatively brief experiences with OS 9 (mostly involving trying to browse more than one web site at a time) have taught me that cooperative “multitasking” is not really up to much. That Virtual PC runs is probably more out of the absolute necessity of it – it is more marketable than “a tool that a subset of Mac developers will use.” Having never used it on the Classic Mac OS, I have no idea what effect it had on the system, but I should imagine that were I to venture a guess, I wouldn’t be far off the mark.

So whilst it is accepted that the demand was there, I just don’t think the technology could necessarily handle it particularly well. Now that we have OS X, of course, there is no excuse.

mcslp

That’s why you install local software in ~/Applications and not /Applications.

Which is meaningless for anything but running basic applications. Testing a software installation issue – especially if you are testing the installation of software, services or extensions that requires installing system components – isn’t going to be possible in the situation you describe for every type of application. It’s not even possible for some of the most basic applications supplied with or available on OS X.

That’s why you run it under a different and non-privileged user ID.

Which limits your testing to a specific environment which may very well be untypical for the environment in which the application will be deployed.

Since the majority of software is installed in the main Applications folder it makes sense to test it in that environment. ~/Applications will not be good enough.

Sounds like your requirements and habits are about three or four standard deviations from the typical developer.

No – I may do more extensive things than the typical developer, but that doesn’t mean I want any less or more control over my environment.

If you are going to test an application then testing it within the confines of a privileged user and a localized Applications folder is only going to validate your application within those environments.

If I want to test a full installation into a live environment, potentially placing things into areas which need security access and validation then the limits of a standard user account are a problem.

Note here I’m completely ignoring more complex situations like kernel drivers. Even simple applications sometimes need more than to be copied to ~/Applications.

It also makes sense to test your software in environments that differ from your current one – including making sure that some past software or driver that you installed on your machine isn’t what makes your application work. Those applications, services, libraries and drivers on which your application relies may be System, not user based, so testing within a non-privileged user account is not going to highlight the problems.

You are concentrating on testing a completely standalone application that has everything it needs right there in it’s installation folder. That isn’t a typical deployment environment, nor is it the right way to test and deploy software that will be used anywhere outside of a very tightly controlled environment.

You don’t test cars by only driving them only within the tightly controlled environment of a test track.

Peter da Silva

I don’t want to test applications on my system because I don’t want to run the risk that some software, service, or configuration difference on my machine is going to affect the execution, operation or installation of the application I’m testing.

That’s why you install local software in ~/Applications and not /Applications.

Equally, I don’t want that application to affect my machine either. If the application starts deleting files off the machine when it runs (and it happens), the last thing I want is for the machine to be the one I use for email, net access and everything else.

That’s why you run it under a different and non-privileged user ID.

I’ve been testing software on the machine I use for everything else since that was a PDP-11 at Berkeley in the ’70s. This is a non-issue.

Also, some of my work does involve working with kernel modules, device drivers and extensions and sometimes these cause panics.

Third time’s the charm? “I’m not talking about kernel development here, that’s obviously a special case with special requirements”. Which brings me to…

One of the things I specialize in is making software run on multiple platforms – including porting the code if necessary. and Testing software is more than just running the application on your system and seeing if it works. and I’ve been an OS and application beta tester for Microsoft, Sun and Apple for the last 12 years.

Sounds like your requirements and habits are about three or four standard deviations from the typical developer.

mcslp

Peter:

1) It’s not about testing within a Unix or even an OS X environment. It’s about testing in a environment over which you have control.

I don’t want to test applications on my system because I don’t want to run the risk that some software, service, or configuration difference on my machine is going to affect the execution, operation or installation of the application I’m testing.

Equally, I don’t want that application to affect my machine either. If the application starts deleting files off the machine when it runs (and it happens), the last thing I want is for the machine to be the one I use for email, net access and everything else. Even worse, I certainly don’t want the application to delete the source code of the software I’ve just created either – and that happens too.

2) It’s not just about testing OS X or even Unix applications, that was merely an example. I was developing on OS 6, 7 8 and 9 before that, none of which were Unix based. It’s also not about testing Mac-centric software, there are other OS out there that some of use.

Also, some of my work does involve working with kernel modules, device drivers and extensions and sometimes these cause panics. Unix is a resilient operating system, but once you start messing around with code at the kernel level most of the safeguards that apply to applications just aren’t applicable any more.

I really don’t want kernel panics on the same machine I use for the development. More to the point, some of these drivers and extensions only work when you reboot the OS. Over the course of a day I might expect to produce 20-30 versions. I don’t want to be restarting my machine 20-30 times a day; that would be one to two hours at least of valuable work time I’d miss. Not helpful.

3) If I had just one machine but I needed to test in multiple environments (and I do sometimes), then trying to organize simple things like email becomes a real PITA. If I had multi-boot I’d have to install and configure email on each system, not to mention also setting up connections to the servers, my internet access and making sure I have any applications and files that I might need during the process.

4) One of the things I specialize in is making software run on multiple platforms – including porting the code if necessary. I *CANNOT* run OS X *AND* a.n.other PowerPC based operating system on the same machine at the same time. I’m not going to waste 10 minutes each time I make a revision – even if that is only 3 or 4 times a day – saving the project to the server, shutting down, rebooting into another PowerPC OS on the same machine, resyncing the files, recompiling and then testing.

5) Testing software is more than just running the application on your system and seeing if it works. You may need to test other versions of the same OS (which I do, and I did with Tiger and all previous OS X revisions), or indeed other operating systems. Also popular in this office is testing updates to software and systems and making sure those updates don’t affect the operating system.

I don’t run alpha or beta software on my machine because I don’t want to waste hours picking up the pieces if anything goes wrong.

6) Sometimes what you want to do is test out your applications and installation on a completely plain, vanilla, OS installation. That would be virtually impossible if I only had one machine available. With two machines, nuking the hard drive and starting again wont affect my machine, and I wont waste my time waiting for the process to complete.

With virtual machine technology I can do this by simply unpacking a virtual hard disk I made earlier. It takes a couple of minutes (instead of 30-45) and it doesn’t matter if the OS update, driver, kernel module or application nuke the disk. All it does is nuke the virtual one, which I trash and start again with a new one.

Without virtual machines – and this is what I do on OS X – I build a number of firewire disks with a vanilla OS on them, then if I need to I boot off one of these and use that. It’s not very convenient, but it’s better than waiting while I re-install from scratch, especially if I also need to update to the latest OS updates.

7) I’m no young whippersnapper. I’ve been developing software for over twenty years, over 15 on Unix platforms. I specialize in Solaris, Linux and AIX, although I also do a lot of work in OS X and Windows. I’ve been an OS and application beta tester for Microsoft, Sun and Apple for the last 12 years.

Peter da Silva

Gareth: Virtual PPC does seem like a good idea for those who absolutely need of the Linux way of doing things

What’s the “Linux way of doing things”? I can come up with some nasty sarcastic suggestions about that, given my experience porting “all the world’s a Linux box” software to other platforms, but I’m actually curious… in your mind, what is this “Linux Way” that OS X doesn’t already do?

mcslp: As a developer I’ve always had to have two machines available for as long as I can remember for developing Mac software – one to develop on, and one to test on.

Unless you’re doing kernel-level work, or testing on different versions of the OS, that’s simply not true on any UNIX-based system. At work we have multiple developers concurrently developing and testing real-time control code on the same physical hardware. They each have their own webservers, database servers, whatever else they need… and the idea that routine testing would cock up the system badly enough to need a reboot is ludicrous.

And, well, my experience is that the number of developers who test on anything but the one OS version, whether that OS is Mac OS X, Linux, commercial UNIX, or Windows… is negligable. Hell, there’s an awful lot of them who don’t even make use of Apple’s xcode tools to check if THEY think their software will run on anything but their own system.

What, me, cynical? You bet. (old fogey wobbles off, waving cane at whippersnappers and their newfangled inventions)

mcslp

Gareth: What about all the developers for Macs that have needed this technology?

It’s not Unix hackers that suddenly need this technology.

As a developer I’ve always had to have two machines available for as long as I can remember for developing Mac software – one to develop on, and one to test on. Without it – particularly in Mac OS days (and 7.x and later specifically), a crash during testing could mean a 5-10 minute wait until I got my environment back again.

As an administrator the same was and still is true; I can’t afford to cock up my live systems for the sake of a bit of testing, so that means having multiple machines.

This isn’t *new* requirement, it’s one developers and system administrators have had on the Mac platform for decades.

Gareth Potter

Likely the main reason that there is no PPC-in-a-PPC version of VMware (or decent equivalent) is that until recently there simply wasn’t the demand. Obviously in recent years, Mac hardware has become more affordable and, with the release of Mac OS X, more desirable, but it is still a relatively recent thing that every UNIX hacker is carrying a PowerBook under his arm. Surely there are still only a very few who are using Macs in the scenario you describe.

In any case, as a large majority of Macs are bought because of OS X, alternative operating systems on PPC probably don’t get as much attention as they do on x86, where the dire state of Windows precipitates a desire to look elsewhere. As a result, they may be less mature.

That said, and with the idea in mind that many users wouldn’t want to give OS X up, a Virtual PPC does seem like a good idea for those who absolutely need of the Linux way of doing things, especially given the fact that PPC machines are in a position to do decent x86 emulation as well (the reverse, of course, is not true, because of architecture differences.)

Brock Gunter-Smith

Thank you for bringing this up, I was discussing this on the weekend with some co-workers as one of the largest deficiencies on the Mac platform. As a developer, I need to run multiple versions of the OS for testing purposes and it’s a pain to keep re-booting, when I should be able to run Tiger on one screen and 10.3 in another just like I do with Virtual PC.

Peter da Silva

Dude, I already agreed that you have a point for when you want to do kernel work: and running a completely different operating system certainly qualifies… but that’s a very small part of what people use VMware for. And a lot of the things people use or want to use virtual machines (or even jails) for don’t really need them at all under UNIX (whether that UNIX is Linux, BSD, OS X, or whetever people are using on penguin farms these days…

Under Windows, of course, they have to use a virtual machine for just about anything… it still has huge gaps in its support for multiuser environments… but it’s amazing what people fire up a virtual machine for when they don’t have to. I’ve had people do it to get a “clean environment for Apache” or Postgres or something. It’s nuts.

Sorry about jumping to conclusions about what you were wanting to use it for… I’ve just had to lead too many people out of this cul-de-sac over the years that I automatically assume that’s what’s going on.

(though I still think I’m missing the point of LinuxPPC… but that’s a rant for another day)

mcslp

Peter: BSD Jail code will only work when I want to test OS X code and applications within another OS X.

None of the solutions you’ve suggested would allow me to simultaneously run OS X and LinuxPPC at the same time, or for me to run OS X Tiger betas within the safe environment of a virtual machine within OS X running a non-beta version of OS X.

No offence, but you seem to be missing the point and benefits of true virtual machine environments. It’s much more than simply providing a safe partition within an existing OS.

Peter da Silva

Peter: Using another user is fine for testing some software, on Mac OS X, but if the software installs global components, then it’s not a safe environment for testing.

It’s amazing how non-global a “global component” can be once you start looking at what it would take to build a testbed. I’ve been developing “global components” on UNIX systems for over a quarter of a century and it’s pretty rare that I’ve had to run a second system. Kernels and kernel drivers are about it, anything else and a little work with chroot and, well, Bob’s your uncle.

For us, porting the FreeBSD “jail” code to Darwin and OS X would be a more logical next step than building a Power PC analog of the x86 virtual machine.

niels

Something like VMWare would be very nice….
Being able to run AIX, NetBSD and MacOSX would be a _very_ good thing…
and now that we are at it…
How about a Alpha/VAX emulator ??

mcslp

Of course, I’m ignoring the fact that there’s a conspiracy surrouinding the Mac Mini and the absence of a VMware-like app for PowerPC ;)

Let’s face it, if I had the choice I’d rather than 4 Mac Minis than one and VMware software!

Erik

Oh yes – I agree that using X11 to view X86 VMWare instances from a Mac doesn’t solve the issue of an equivalent functionality capable of running an OS X environment. That was a side issue from my standpoint since I’ll be needing to do that fairly soon.

And I would love to see both an OS X thin client solution (for OS X as the environnment being accessed) and for a true VM solution for OS X as well.

Given that Apple controls the hardware layer of their PPC platform, it should be (reasonably) easy to be able to build the virtual hardware layer without too much trouble.

mcslp

PearPC compiles quite nicely, initially, but OS X takes about 15 minutes to get no further than loading kernel modules, and the keyboard issue means that installing YDL or Debian doesn’t work…

Kundvagn

Scott: If you look at the date of the latest news on molonlinux.org you will see that its over a year it got posted. So I believe “soon” has diffrent meaning for diffrent people. =)

But if you download the sourcecode snapshot it actually will both compile and install under Panther. But it wont run, I believe its because the missing kernelmodules.

We will just have to wait and see, maybe “soon”! =)

mcslp

Well, as you say, with VMware being a X11 app it’s actually possible to view VMware hosts when running X11 under OS X.

Alternatively you can RDC to a Windows host or use VNC on just about any host.

However, this still means you are accessing an x86 based virtual machine; it’s no help whatever if you want to run PowerPC OS like OS X, Darwin, or Yellow Dog Linux.

Erik

Out of curiosity, do you have any means of managing the VMWare environment from your Mac? Since there’s a Linux based version, it would make sense that it should be a fairly easy X11 port, but I haven’t been able to find anything on the subject. Otherwise, I guess it’s RDP to a VMWare host running Windows, but that’s not pretty since it would be better running off a Linux host OS.

And I’m with you 100% on this gap in the OS X Software lineup. It’s nice that I have the flexibility to install test environments on a separate drive or partition and boot from there, but it’s also a pain if you need to have multiple environments running concurrently or at least have your personal work environment at the sale time.

mcslp

Peter: Using another user is fine for testing some software, on Mac OS X, but if the software installs global components, then it’s not a safe environment for testing.

Also, creating another user wont let me test the latest Darwin release while I’m still running OS X. This is something I can do with VMware/VirtualPC.

Peter da Silva

“But what if I need to achieve the same on my Mac?”

You create a new account and run the test software on that.

You type “ifconfig en whatever” and start a new instance of a daemon on that port.

IT’S UNIX. IT’S MULTIUSER. IT DOESN”T NEED VIRTUAL MACHINE TECHNOLOGY.

Kundvagn

If you could compile the Mac on Linux app (maconlinux.org) in OS X. It would be very similar to Vmware.

Comments are closed.