Monthly Archives: October 2008

Windows Disk Management

It can be frustrating when the right information is not available.  In Windows there are tools designed to help determining disk configuration but for whatever reason, they are fairly hidden.  Perhaps this is intentional to protect the system from the user.  It would not be hard to make a mistake that could potentially disrupt the entire machine.  For those that are more curious than wanting to change things, it really does not need to be so hidden.

This post is going to take you on a quick tour of the “Disk Management” tool present in Vista.  You can get to the tool through the Control Panel if you really pay attention.  To make it easier, there are screen captures of the decision points.

Continue reading

QVT – Query Intel VT Feature Program

Things are rolling along today.  After determining that the Intel program was a bit heavy for just figuring out whether or not Intel VT is there, it was discovered that the CPUID instruction could be used.  Intel has documentation about CPUID that makes it fairly easy to use.

Hidden inside the documentation is a flag that shows that the processor can handle Intel VT.

In this document are several other features.  It is a good map between the internal technical names and the eventual product feature names.  The summary is that if you can examine this flag, the program will know which way the VT support goes.

So, here is a program that does just that:

QVT source

The program was tested against older and newer machines and it appears to work fine.  The only catch is that it will not work against AMD or other processors.  This program could be used as a framework to build other programs to determine Intel feature set.  For example, it could be determined if the system supports TXT or 64-bit support.  There is a commented out wprintf that could be used to show the flags and with this information it would be possible to map against the CPUID documentation.

Eventually it will be possible to store the executables somewhere to allow for download.  So far that kind of solution has not been obvious yet.

If you are interested in learning more, please read the CPUID page at Wikipedia.

Intel Processor Identification Utility

There is a common problem where it is difficult to determine what your CPU can really do.  Given the widespread addition of features in the last few years, it is often a mystery what your system can really accomplish.  One area of huge importance is whether or not the Intel CPU can support VT (Virtualization Technology).  Many programs (like XenServer) depend on this new feature to be able to virtualize Windows.

Today brought the discovery that Intel provides a program called “Processor Identification Utility” on their web site for download.  As part of this program it identifies the processor as well as features like VT.  Given that they created the cores and are updating the PIU (Processor Identification Utility) to match, it should be a good place to start.

After having downloaded and installed the program (which seemed a bit complex for a query program), the execution was easy.  From here the main features are identified.  To show my ignorance, I had no idea that my work system was a quad (thought it was a dual).  It also showed that VT was there.

Now, this presents a problem.  Either my copy of VirtualPC 2007 is wrong (which tried to use VT) or the BIOS had it disabled.  Most likely VT has been disabled on the board by the configuration.

Regardless, the tool is useful enough to recommend using for determining Intel processor features.

Determining Volume Cluster Size

On Monday there was a need to determine the cluster size of a NTFS volume.  Searching the web led to the discovery of a few different techniques but nothing that could be absorbed easily into a program.  One technique called for creating a very small file and then looking at the file properties for the space used on disk.  The second technique used the FSUTIL tool (built into Windows).  There was even a third technique which allowed for capturing the output of FSUTIL into Visual Basic to use the cluster size.

Why worry about cluster size in the first place?  Well, normally, you wouldn’t.  It is something that is for those of you that like to fine tune your performance and storage space.  The quick analysis is that having bigger clusters is more efficient for larger files (less fragmentation and faster load with less overhead) but small files can waste heaps of space.  Basically files that do not use the full cluster are going to take up space that other files could have used.  It’s a delicate balance of wants.  Most likely it would be difficult to prove what the optimal cluster size is.  But, before we go to far, it is currently difficult to determine cluster size from a program.

After learning of this problem, the search began for a magic FSCTL Ioctl to the file system to figure this out.  It did not look very promising until my co-worker Anil pointed out that maybe the Win32 GetDiskFreeSpace function might do the trick.

To my surprise, GetDiskFreeSpace did exactly what was needed.  It does not return explicitly the cluster size but it does return (sectors per cluster) and (bytes per sector).  A simple multiplication and the answer is there.  The funny thing is that this function is considered deprecated since it cannot support greater than 2GB volumes.  However, in this case it was extremely useful and not affected by the limit.

The next step was to build a simple command line tool that would exploit GetDiskFreeSpace.  The new tools is called ClusterSize (how creative is that?) and can be run against any volume in the system.  The default (no parameters) is to figure out the C: drive cluster size.  You can specify any other drive on the command line.

For example:

clustersize

clustersize d:\ 

Because it is not possible to post executables from WordPress, here is the source instead.  It is fairly easy and should build under Visual Studio without too much trouble.

ClusterSize source 

Here’s an example of the output from trying it against a USB Flash Drive on my system:

Determining cluster size for volume f:
Volume(f:) ClusterSize(32768) SectorsPerCluster(64) BytesPerSector(512)

At first it did not include the ability to report on the sectors and sector size.  It seemed kind of dull not to report them after the initial runs.

This certainly is not the most exciting topic but it is fun to share new minor discoveries.  This is the first time that Citrixblogger has source using PDF straight from VisualStudio using PDFCreator.  It is much more accurate than trying to post straight into the blog directly.  It even keeps all the pretty colours as well.

Easy Sysinternals Tools

This is a tip for those of you that have to figure out what is not working on a given system.  It has been known for a number of years that Sysinternal tools are the best at determining problems.  A couple of years ago Microsoft bought the company.  There was some concern that Microsoft would either charge for the tools or hide them away.  Both of these worries turned out to be unfounded.

It is even possible to use the original domain www.sysinternals.com to find the tools on Microsoft sites.  What is not as widely known is that it is possible to directly execute the tools from the web.  Microsoft has set up a web site that allows direct execution of the most popular Sysinternal tools.  It might seem a bit obscure but once you try it, you’ll understand the value.  By downloading and running the executables, the process of installing is skipped.  If you know what you want, this would be much faster and easier way to run a specific tool against the machine that you are currently at.  In theory, it would even allow for the possibility of writing scripts that would use the Live Sysinternals tools directly.  It is both simple and clever.

Just today I needed to run WinObj to track down some objects.  This turned out to be a nicer option, especially since I only need it from time to time.

I remember when Sysinternals used to be called NTInternals.  It had caused a bit of a stink with Microsoft which had insisted that they change the name.  Now it does not matter but the NT name died quite some years ago.

Here is the brief documentation from the new web site:

What is this?

This is a file share allowing access to all Sysinternals utilities. We have developed this to test an alternate distribution mechanism for our utilities. This will allow you to run these tools from any computer connected to the Internet without having to navigate to a webpage, download and extract the zip file. If you are unfamiliar with Microsoft Windows Sysinternals, it is highly recommended that you visit the website at http://technet.microsoft.com/sysinternals before using these tools. If you have any questions or comments on this file share, please email syssite@microsoft.com

Regards, The Microsoft Windows Sysinternals Team

Citrix Video Tips

It is difficult to find decent concentrated information sometimes.  Usually bits are found but no collection.  Even though the “Citrix Video Tips” at uTIPu is not as extensive as it could be, it has the beginnings of a very interesting collection.  Perhaps the most interesting ones for me is related to XenDesktop tips.

Here’s a screen capture as of October 20, 2008 of the XenDesktop items:

This site has been used extensively by Citrix bloggers.  However, I do not think that to Citrix bloggers only.  For example, AppSense has an item listed here.

Click on the different topics to home in on the areas that you are most interested in.

Vista Snipping Tool

Sometimes tools that come with the operating system pleasantly surprise you.  Vista comes with a tool called the “Snipping Tool”.  It basically makes the PrintScrn key obsolete in Windows.  Typically people will use the PrintScrn key to capture the screen or window into the clipboard.  Once there, it can be pasted into MSPAINT or similar graphics editor.  Once edited, then it can be used in other documents or even saved as an image.

Until a few months ago, that was the only way I did screen image captures.  It was very useful for capturing relevant screen shots for reports and of course blog posts.  The problem with PrintScrn is that it usually captures too much.  Even with limiting it to only one window, it is usually more than needed.  Secondly, not every user is even going to know about the PrintScrn trick.  It certainly is not a beginner kind of thing.

Enter the Snipping Tool.  It is part of the Accessories in Vista and it picks up where PrintScrn left off.  Unlike PrintScrn, it actually has an interface.  It also can isolate parts of the screen in four different ways.

  1. Free-form
  2. Rectangle
  3. Window
  4. Full Screen

These methods can be selected when the Snipping Tool is started from the New drop down menu.  Free-form is used to trace around the area with the mouse (much like a pair of scissors).  Rectangle cuts sections out based on a sized box.  Window takes a snapshot of the entire window.  Obviously Full Screen captures everything.  

Once captured, the tool switches mode to allow you to make small additions (pen and highlight).  Then the result can either be saved to a file, copied to the clipboard, or sent in an email.  It’s a pretty handy tool.  It has sped up the process of doing partial screen captures greatly.

Microsoft has put together a great introduction video for the Snipping Tool.  The basics are covered and it always helps to see these kind of tools in action.

This tool would be most handy for people needing to document anything related to computers (including training manuals and research reports) but would also be great for bloggers as well.  Essentially whenever you would like to share information that you can see on your screen, it would be perhaps the easiest way to do it.

This probably does not fall under the category of being Citrix related but it does seem worthwhile to pass on useful tips from time to time.

Sumit Dhawan Speaks About VDI

 

Recently inside Citrix we were notified of a podcast with Sumit Dhawan, Citrix vice president of product marketing.  This podcast is available to the public so it seems like a good idea to forward this information on.  It is worth listening to since Sumit is very open and honest about VDI and what needs to happen to broaden acceptance.

Listen to the podcast 

The Better Product Fallacy

From a previous post there was a summarization of “Trout On Strategy“.  This is the kind of book that stays with you even though it is fairly short.  One of the ideas that has been floating around since reading it is that having a better product does not mean that it will be successful.  In other words, just because your product is perceived as being better inside the company, does not mean that customers will perceive it that way.

Jack Trout points out the only reality of what makes a product better exists within the mind of the consumer.  It is wrong to assume that building a superior product to the competition will be enough.  It is a mistake to think that by only pointing out the “truth” through sales and marketing will provide a market win.  The truth is that most consumers already think they know what is the best and that even though the products they use may be “inferior” there is little chance that they will change their minds.

Just think about Coke and Pepsi.  Pepsi fought for decades to convince people that Pepsi tasted better.  Instead of getting market dominance, they only got second place to Coke.  Later they realized that their opportunity came from targetting the “Pepsi Generation”.  So, it is not so much about direct comparison with an existing product that wins but rather positioning the product into an area that the current competing product was a weakness with.

It seems to be a common mistake for companies to focus on building a “better” product.  In the distant past Citrix was convinced that multiuser OS/2 applications was where the action was.  The engineering team worked very hard to produce what was in many ways better than the original OS/2 implementation.  They truly believed they had a product that could take on Unix for multiuser terminal users and win.  Unfortunately both the OS/2 and Unix market did not think so.  It was very difficult to convince people and even more difficult to translate this into revenue.  It was not until Citrix embraced supporting NetWare, DOS, and Windows 3.1 with remote applications that things began to turn around (WinView).  The turn around was largely based on customer feedback and the weaknesses of anyone else being able to produce a multiuser DOS and Windows system (without being based on DOS or Windows).

It is a hard lesson to learn with any company and even any product.  Engineers (and even executives) tend to fall in love with certain technologies and products.  This love can translate into the belief that it is the best possible solution.  The trouble comes from thinking that the battle is based solely on merit and that everyone thinks like an engineer.  Obviously this is not true.  People need to see what makes it different with a focus on an obvious weakness of the currently leading product.  What a producer sees as a difference that is better might not perceived that way by the customer.  For example, just by making it slightly faster or slightly cheaper is not going to get anyone that excited.  The difference has to be shocking and obvious.  Most likely it has to be a difference where the competition does not do anything even close to the same.

We tend to be most impressed by things that act differently (but better) than previous products.  Once our mind has latched onto that new product, we tend to shut out the newcomers unless they repeat the same pattern of being impressed.  For example, most Google users would not switch to Live search simply because they see no real benefit in doing so.  On the surface, they basically look the same.  It really isn’t about “better” if someone already has the mind share of that particular product space.  It’s more about ignoring the product strengths of competitors and targeting the weak spots extensively.  With Google, a number of weaknesses could be pinpointed if someone really wanted to attack their market.  The same is true of any product.  The key is becoming best at something the competitors cannot do or will not do.

I will end with a brief quote from Jack Trout that shows how difficult the challenge is to change minds:

The single most wasteful thing you can do in marketing today is to try to change a human mind. Once a mind is made up, it’s almost impossible to change.

 

Bill Gates – Looking Back, Moving Ahead

 

Bill Gates - Looking Back, Moving Ahead

Bill Gates - Looking Back, Moving Ahead

Just today I was looking for some Microsoft videos related to MMS 2008 when I located some video gems about Bill Gates and his history at Microsoft.  The Microsoft web site is providing a collection of videos for use with the press.  The primary video revolves around Bill Gates.  It contains some very interesting new material and includes a number of interviews with very famous Microsoft employees and even some of Bill Gates’ family.  The video collection is of very high quality and shows a great deal of production work went into it.  If you have any interest in Microsoft or Bill Gates, I highly recommend watching them.

To get the full list of videos, go here.

There are a number of stories from the various interviews that you might find interesting.  For example, there is a video clip dedicated to the 1978 picture of the original 11 Microsoft employees in Albuquerque.

In a way, the Bill Gates video is a summation of his work until now.  It was built to acknowledge his accomplishments during his departure in June 2008.  Regardless of how you feel about him, it is clear that he succeeded even though he dropped out of Harvard.

His Dad has a great quote towards the beginning of the video.  He basically says that “we didn’t know that we have something world-class going on in our living room”.  Nothing like a parent to set you straight :) .  I’m sure it was a joke but it does indicate how proud his father is.

The main video is fifteen minutes long and is well worth it.  It is more like a documentary you would see on TV than a typical company promotional video.