1. Understanding Application Incompatibilities
As part of the planning for a Windows 7 deployment project, you
must make sure that the applications your users rely on continue to
run on the new operating system. Windows 7 includes some new features
that can affect the performance of applications, including the
following:
-
User Account Control
(UAC). Although UAC is less intrusive in Windows 7 than it was in
Windows Vista, it still affects the way in which applications
access administrator privileges, even when using an
administrator account. Legacy applications not designed for this
behavior can therefore fail to obtain the privileges they
need.
-
Data execution prevention
(DEP). DEP is a security mechanism that prevents the computer
from executing code stored in a memory region that is flagged as
nonexecutable. This is a feature designed to protect against
attacks that deliberately attempt to store code in a buffer
overflow.
-
Mandatory integrity control
(MIC). MIC is a system security feature (also known as
Protected Mode in Internet Explorer) that defines four possible
integrity levels for running processes. The integrity level
assigned to a process determines what access the process
receives to system resources.
-
Session 0
isolation. In Windows versions prior to Windows Vista, system
services and the applications launched by the first logged-on
user all share the same session, called session 0. Starting in
Windows Vista, session 0 is dedicated exclusively to system
services; all applications and other user-mode processes run in
session 1 or higher. This can prevent legacy applications from
communicating with system services in the way they were
intended.
-
Folder names. Windows 7 uses different names than Windows XP for some of
its default folders. For example, the user profiles that are
stored in the Documents And Settings folder in Windows XP are
now found in the Users folder in Windows 7. A nonstandard
application that calls for specific Windows XP folder names
during its installation might fail when it cannot find those
folders.
These are just a few of the design changes that can affect the
application execution and performance. Because of features like these,
legacy applications—especially those designed for Windows XP or
earlier—might not run properly on Windows 7. To address these issues,
Microsoft provides a number of solutions, some of which are intended
for end users and others for enterprise administrators.
2. Creating an Application Inventory
In an enterprise environment, the most important compatibility
issue is identifying the applications that have problems long before
the workstation deployment occurs. In some cases, the only viable
solution to a compatibility problem is upgrading the application or
selecting an entirely different product. These are not solutions you
want to be forced to pursue after you have evaluated, purchased, and
deployed an application. Therefore, one of the early steps in your
deployment planning process should be to create an inventory of all
the applications running on your workstations, so you can test them
for compatibility issues with Windows 7.
-
SCCM 2007. Using its Software Inventory Client Agent and Software
Metering Client Agent, SCCM can gather software inventory
information from clients, compare the workstation configuration
to a database of application hardware requirements, and create
extensive, customized reports, as shown in Figure 1. As noted elsewhere,
SCCM requires an extensive infrastructure, possibly including
additional servers for a multisite enterprise.
-
Asset Inventory Service
(AIS). Available as part of the Microsoft Desktop
Optimization Pack (MDOP), AIS uses a Web-based database hosted
in the Microsoft datacenters. Client agents installed on each
workstation, anywhere in the enterprise, send their software
inventory information to the database at scheduled times using
their Internet connections. The Microsoft servers then compare
the incoming data with a dynamic software catalog and store the
resulting information in a SQL Server database. AIS
administrators can then access the database as needed to
generate reports on software usage.
-
MAP Toolkit
5.0. As part of its agentless inventory process, the MAP
Toolkit can identify up to 60,000 applications running on a
network’s computers and list their version numbers and the
number of installed copies it has detected, as shown in Figure 2.
These three options are listed in descending order of
their cost and their infrastructure requirements. Each one, however,
is capable of compiling an inventory of applications running on your
workstations. To this inventory, you must then add any new
applications that you are planning to deploy on your Windows 7
computers.