It's pretty much agreed that if you are going to develop for embedded Linux, you should do it in Linux. The problem is many have some form of Windows OS installed. Here are step by step instructions on how to install a virtual machine running Ubuntu Linux on your Windows box.

Tab RAM: 1024M (Make this as big as possible, but no more than 1/2 your laptop's RAM)

Tab Hard Disk: Unselect "Allocate all disk space now" We'll make the hard drive bigger in a moment. This is working around a small bug that requires all the disk space to be present when you create the machine, even if you don't allocate it all at the beginning.

Keep Selected "Split into 2GB files"

Tab Ethernet: Ethernet 0, NAT, Ethernet 1 Bridged

Tab Adapters: Select USB, COM1 COM2 and Sound Adapter

Tab Finish: Click "Ok" pick a file name. It should quickly say it is finished.

Hint 1: You may have to hit ctrl-G to get the VM to listen to your keyboard.

Hint 2: It won't see your mouse at first, so use the keyboard.

Hint 3: Ctrl-Alt will release the mouse for outside the VM.

Answer questions for your location.

Select "Erase and use the entire disk"

Answer the rest of the questions.

Select install and wait a while. My install took about half an hour.

Restart the system when asked to. You may be asked about ejecting the CD-ROM. I clicked No.

Once Ubuntu is running you can right-click on the CD-ROM image and unmount it.

Go to the CD-ROM icon on the bottom right and disconnect from the iso image.

The Update Manager may appear. Go ahead and have it update everything. It took 15 minutes on my system.

Downloading VMWare Appliance

Caution: If you have downloaded the Ubuntu disk and installed it, these directions do not apply to you.

VMPlanet provides premade virtual hard disks that can simply be imported into vmware player. This will simply save the install, but probably will use more internet bandwidth then downloading and installing the iso.

Installing VMWare Tools

Now that you have your Ubuntu image loaded and updated, it is important to install VMWare Tools. This will allow for much more natural mouse synchronization, speed improvements, and copy/paste support between host and guest OS's.