Image problems are not constrained to celebrities. They affect us in the IT world too, except for us they revolve around PCs. In the first part of this blog series, we discussed the history of client virtualization and the motivation behind the development of XenClient. In this part, we will examine the PC image management problem.
Take a look around your office. How many different types of computers do you see? Four or five, maybe even ten – and that is just in your corner of the world. Now think about this across an entire enterprise – it would be commonplace to find 100 or more variations. What may not be obvious is each different type of computer will have a different software configuration, which creates an IT management nightmare.
Figure 1: The PC image management problem – each different endpoint needs a different image.
Now you can be forgive for thinking that this is an old problem that should have already been solved by the various layers in the modern PC. It begins with the BIOS (Basic Input/Output System), which provides a consistent but basic way of interacting with the fundamental hardware (e.g. keyboard and display).
As the types and number of hardware peripherals expanded, modern operating systems like Microsoft Windows evolved to take this a step further by providing a Hardware Abstraction layer (HAL). This makes it easier to run Windows on different hardware. The problem with HAL is that it does not involve abstracting the instruction set, which generally falls under the wider concept of portability. Abstracting the instruction set, when necessary (i.e. handling the several revisions to the x86 instruction set, or emulating a missing math co-processor), is typically achieved via virtualization.
Moreover, there is a wide range of inconsistency in PC hardware – even within the same models by the same manufacturers, which often contain different sub-components and devices. So for the IT admin, the variations in hardware lead to multiple drivers and an image management problem.
Figure 2: PC stack – Hardware, BIOS, drivers, HAL and OS.
It doesn’t stop there. Beyond the drivers are the variations in operating system configuration, applications, and data. Different networks and drive mappings coupled with personalized sets of corporate, departmental and user applications lead to an almost infinite set of combinations, further exacerbating the PC image management problem. This can be seen in Figure 1, which shows the entire PC stack.
Client virtualization is well suited to solving the problem of PC image management because it provides an abstraction layer between the varying PC hardware and the operating system, applications, and data that reside on top with a hypervisor. The hypervisor, which underpins client virtualization, abstracts the operating system from the underlying hardware, providing a consistent interface that eliminates the need for different PC images for different client hardware as seen in Figure 2. This allows the PC image to remain constant across multiple different hardware combinations.
Figure 3: PC stack with client virtualization.
In the next part of the blog series, we will discuss how XenClient has proven to be a great solution for the PC image management problem. In the meantime join the conversation by connecting with the Citrix XenClient team online!