Saturday, March 28, 2009

Improving I/O performance in Windows XP virtual machines

This article applies to Windows XP running on VMware Workstation 6.5.1 but the information can be applied to other guest operating system such as Windows 2000 and other the other products in VMware family.

About VMware Workstation

VMware Workstation provides an ideal solution for testing new applications or operating systems at work or even home.

When a software company releases a new application, it tests it against all supported operating systems. In the past they used to have at least one physical computer for each operating system or combination of operating system and other software (Windows 2000, Windows XP Home with IE6, Windows XP Home with IE7, Windows XP Professional, etc). Resetting all these computers to the original configuration for a new set of tests was difficult and required many IT resources. Nowadays, in almost all software fields, the testing computers where replaced with virtual machines. Virtual machines are easier to deploy and maintain.

Home users usually take advantage of virtualization technology in various ways. Geeks use it for testing or running different OS simultaneous (eg. running Linux on top of Windows) without doing any change or interfering in any way with the host operating system. Other users use virtualization for setting up a secure environment in which they can browse unsafe sites or test new software without trashing the host OS. Since VMware Workstation virtualizes the hardware itself, the guest OS is completely isolated of the host OS without any interaction whatsoever.

Windows XP in VMware Workstation

VMware Workstation provides 2 major disk types that can be used by guest virtual machines: IDE and SCSI. If you choose SCSI, you’ll have to decide between LSI Logic and BusLogic. A detailed comparation of these 2 SCSI devices is found on VMware website. Please note that this is independent of your host hardware. You don’t need to have SCSI on your host to select SCSI for virtual machines.

VMware implementation for SCSI offers better I/O performance with less CPU resources utilized. In regard to SCSI, usually people prefer LSI Logic over BusLogic.
Anyway, if you try to create a new machine for hosting Windows XP, you’ll notice that VMware workstation wizard recommends you to use an IDE virtual harddrive for installing the guest operating system. The recommendation is not the same if you try to install Windows 2003 server as a guest. The reason is that, even if LSI Logic SCSI virtual harddrive offers better performance, Windows XP doesn’t has drivers for this type of device.


Updating an existing Windows XP virtual machine to use LSI Logic

Usually people that read this article, they already have existing Windows XP virtual machines. They just want to improve the I/O performance without spending too much time required by a full guest OS reinstallation.

First check using VMware VM configuration tool if you virtual machine uses IDE harddrives. If this is the case then follow the next instructions. If you already have SCSI devices, but Bus Logic, then you can still use these instructions but you can skip the step with cloning the harddrive.

Add a new hardware to the virtual machine: a SCSI drive of size at least equal to the IDE drive you want to replace. Do not remove the older drive.

Using notepad, edit the .vmx file and look for a line that looks like: scsi0.virtualDev = "vmxlsilogic" (you may have a different number instead of 0). If you don’t find that line, then add it (eg. after scsi0.present = "TRUE").

Power the virtual machine and log into guest Windows OS. Windows will tell you that a new device was detected and prompts you to install drivers for it.

Go to http://www.lsilogic.com and look for the LSI20320 SCSI adapter driver for Windows XP. Make sure you download the drivers for Windows, and not the drivers that you use during Windows installation (eg the WHQL 1.20.18.00 package should be fine).

Extract the drivers somewhere in the guest OS and install them.
If everything was correctly done, the guest Windows XP OS should be able to see the SCSI disk in Disk Manager tool.

Power off the machine.

Download Clonezilla live CD image. If you prefer you can use other cloning tools (eg. Ghost).

Edit virtual machine properties and make the virtual CDROM use the the Clonezilla CD image.

Boot the virtual machine and quickly press Esc or F2 in order to access the boot menu of the virtual system. Select from here the CD as the first boot device.

Once Clonezilla is loaded, go and issue a disk – to – disk clone operation: from the older IDE drive to the newly attached SCSI. Wait until cloning is finished.

Power off the machine and edit the configuration. Remove the IDE drive, leaving only the SCSI one and also dissociate the Clonezilla ISO from the virtual CDROM.

Boot the virtual machine.

Installing Windows XP with LSI Logic SCSI drives

Create a new virtual machine with LSI Logic controller and SCSI drives. Make sure you attach also a virtual floppy drive.

Download LSI Logic drivers from http://www.lsilogic.com (look for the LSI20320 SCSI adapter driver for Windows XP). Make sure you download the drivers that are used during Windows XP installation.

If the physical computer has a floppy drive or you have an USB one, just extract the drivers on a blank floppy, otherwise use a program such as WinImage to create a floppy image (.flp) where you’ll inject the unzipped downloaded drivers. If you don’t have WinImage, you can put the drivers on a .flp image from other virtual machine.

Associate the virtual floppy drive with either physical drive or the .flp image.

Power on the virtual machine and proceed to install Windows XP from the CD. Make sure the virtual machine boots from the CD and not from the attached floppy.

On the initial blue setup screens, when prompted, press F6 to select additional SCSI drivers.

Select the LSI Logic driver and continue installation normally.

Thursday, September 13, 2007

10 useful Windows command-line commands

This list includes some of the most useful and less known commands that you can run at Windows command prompt.



1. Quickly create an empty file of an arbitrary size

This command is useful if you quickly need a file of a certain size. The command execution is instantaneous (no matter what you put for length), but the file contains only zeros.

fsutil file createnew filename length


2. Create a hardlink

A hardlink is useful when you want to make the same file appear in different folders. Even if you can see it in many places on your drive, the hard drive space is allocated for only one instance.

The file is physically deleted when the last hardlink is removed.

fsutil hardlink create new_filename existing_filename


3. Associate a path with a drive letter

The command is very useful for testing installation kits or running a CD from a folder. It basically creates a new drive letter that points to the indicated folder.

subst [drive1: [drive2:]path]


4. Compares two binary files

This command is useful to check if two files are identical. Checking only the file sizes is not enough since the content may be different.

The fc command, with /b switch, compares the files in binary mode and tells if they are identical or not.

fc /B [drive1:][path1]filename1 [drive2:][path2]filename2


5. Create a list with all files in a given folder

dir *.doc /b > documents.txt

If you want to search also in the subfolders, add the /s switch in the above command line.

dir /s *.doc /b > documents.txt


6. Concatenate two files

This command can be used to concatenate both text and binary files.

copy /b a.txt + b.txt c.txt


7. Check if a server is up

When a machine (internal server, web site, etc) doesn’t respond from the regular application, try to open a command prompt and ping that machine.

Ping can be also used to find the IP behind a web address.

ping itobserver.blogspot.com


8. Display network configuration and IP addresses

If you are using a DHCP server in your network, then you can use this command to check the IP address leased to your computer.

ipconfig /all


9. Lock workstation

You can lock your workstation by running this command.

rundll32.exe user32.dll,LockWorkStation


10. Shutdown local computer

You can use this command to automate the process of computer shutdown. Some prefer to put it as a link on the desktop.

shutdown -s -f -t 00

Monday, September 10, 2007

Cell phones for kids

Kids and elderly people are two categories of cell phones users that are not getting too much support from cell phone manufacturers or service providers. Fortunately, for those living in US there are two promising services for kids.

FireFly cellphone

FireFly is a cell phone specially designed for kids. It is supposed to offer kids a way to make emergency calls to 911, their parents or other few persons.
The phone lacks the regular keypad, so the calls are limited only to those people in the predefined list. More than that, parents may setup it is such way that only the calls from the people in the address book will ring the phone.




Kajeet

Kajeet targets bigger kids. Kajeet offer kids modern cell phones with wallpapers, ring tones, games, etc., while the parents enjoy prepaid like benefits.
Parents can define the time schedule when the phone can or can’t be used or decide who can call and who cannot call the kid.

While the above are nice, the most interesting feature is the wallets concept: a wallet for parents and a wallet for the kid. Parents decide whose wallet pays for what calls. For instance parent’s wallet pays when the kid calls them, while kid’s wallet pays when the kid calls his friends. In this way there is no risk that you’ll not be able to contact your kid because he consumed all the credit on text messages with his buddies.

Saturday, September 08, 2007

Advertise for free on VMA IT Observer

For a limited time only you have the chance to advertise your products and services for free on VMA IT Observer. Only IT/Communication (software, hardware, VoIP/Skype, IT services, etc.) related advertisements allowed.

Review your product or service

Write yourself a review/ presentation of your product or service. This will be published like a regular post of VMA IT Observer.

Since this is an advertisement, it’s understandable that you’ll be subjective in your review and you’ll highlight your product/service’s features. This is OK with VMA IT Observer as long as the writing appeals to a large number of people.

VMA IT Observer will check each review/presentation before publish and reserves the right to accept or deny posting. From case to case, VMA IT Observer may include a small note in each advertisement post to inform the readers that the post is an advertisement.

Place a free advertisement

You can now place your own advertisement/ banner on VMA IT Observer for free. Only text and image advertisements are allowed. For image advertisements you should take care yourself of image hosting. For image advertisements you may include a link that drives customers to your site.

At this moment advertisements are allowed only on the right side of the page. These may appear only on the first page or on all site pages.

VMA IT Observer must approve advertisements prior to publishing.

If you are interested in this exceptional offer please contact VMA IT Observer by email at vmasoft @ yahoo.com Please mention IT Observer in the email subject.

Notes:

- VMA IT Observer reserves the right to discontinue at any time this service, or to change publishing rules.
- VMA IT Observer reserves the right to inspect and deny advertisements.
- VMA IT Observer reserves the right to remove at any time, without any notification, published advertisements.
- Each advertiser is responsible of the published content. VMA IT Observer doesn’t endorse any advertisement review, or can be made responsible of published content.
- VMA IT Observer cannot be made responsible of reader’s comments.

Friday, September 07, 2007

Get Dr. Dobbs Journal and MSDN Magazine for Free

This is good news for software developers. You can not get both Dr. Dobbs Journal and MSDN Magazine (digital editions) for free.



Just follow this link to complete your subscription.

How to make a free 10 minutes call

Let’s suppose that you don’t have a long distance phone plan and you want to call a friend out of state…. This is as simple as visiting viatalkfree.com website and initiate the phone call.



Since the website requires entering two US numbers, both you and your fried have to be in US. Anyway, with a little effort you can call your friends in US even if you are living in Europe. All you have to do is to obtain a free US DID number ahead of time.

For alternatives ways of calling for free US numbers, check also this post.

Wednesday, September 05, 2007

Non-intrusive ways to send messages to T-Mobile users

Send an SMS

You can send short text messages (SMS) to any T-Mobile subscribers using:

  • your cell phone. You may be charged by your provider.
  • by using email to SMS. Read this post for more information.
  • by using T-Mobile’s online tool available at this address.

Send a voice mail

Most people don’t know that you can deliver a voice mail directly to the inbox of the other party, without making the phone ring. The recipient will usually be notified on the screen or through a short beep of any new received voice mail.

To send a voice mail you can use any landline/cell phone:

Step 1. Dial 1-805-MESSAGE. This is the same phone number that you can use to check your voice messages – as explained in this post.

Step 2. Dial the recipient 10 digits T-Mobile cell number

Step 3. At the prompt speak your message and then hang-up.

Check your T-Mobile voice mail from a landline

To check your T-Mobile voice mail from a landline (without consuming your airtime minutes) follow these steps:

Step 1. Dial 1-805-MESSAGE (1-805-637-7243) from any landline.

Step 2. Press * (Star) key

Step 3. Enter your 10-digit T-Mobile phone number

Step 4. When prompted, enter your password.

For a visual representation of T-Mobile VoiceMail shortcuts please refer to the following PDF diagram.

T-Mobile VoiceMail Shortcuts

This tip works with both postpaid and prepaid accounts.

Tuesday, September 04, 2007

Get visual voicemail for you cell phone

Most probably your cell phone provider offers you a pretty basic (dump) voicemail feature. To listen to your voicemails you have to dial a number and check all messages one by one.

Using this simple trick you can take your voicemail to the next level:

  • online access to your voicemails
  • download important messages to your computer
  • receive voicemails as by emails as mp3 attachments
  • SMS notifications
  • etc.



The trick consists in conditional forwarding (if you don’t answer, you’re busy or unreachable) your calls to a free GrandCentral number.

Step 1. Create a free GrandCentral account (GrandCentral was briefly presented in this post) and do basic settings. Do not define any phone numbers since you want the voicemail to handle all incoming calls.

Don’t worry! You don’t have to change your phone number! Your GrandCentral number will remain hidden behind the scene, while you’ll continue using your regular cell phone number. People will not even know about this little trick of yours.

Step 2. This step is optional but important if you wish to go back to your old voicemail system. Check with your cell phone provider the current status of conditional forwarding and voice mailbox number.

If you have a GSM phone the following codes, typed on your phone keypad, should give you this information:

*#61# [SEND] (forward on no answer)
*#62# [SEND] (forward on unreachable)
*#67# [SEND] (forward on busy)

Normally all three should be forwarded to the same number.

Step 3. Activate/Change conditional call forwarding feature for your cell phone.

Depending on the wireless carrier or network, the activation procedure may differ:

For GSM networks (T-Mobile, AT&T/Cingular), dial the following number sequence, as if you’re dialing someone: *004*YOUR_GC_NUMBER*11#

It’s also possible to specify the interval after which your calls are forwarded (on no answer). In this case the sequence is: *004*YOUR_GC_NUMBER*11*x#, where x is the amount of time from 5-30 seconds in increments of 5,

For CDMA networks (Verizon), dial any of these codes followed by your GC number: *71, *90, *92

For all other wireless carriers, is recommended to contact them to check this information.

Note: Using the same technique, you can even skip your company PBX voicemail system altogether and forward your business phone number to GrandCentral.

For an alternative solution, check callwave.com

Comments welcomed!