Projekt nasazení Windows 7 - díl druhý - kompatibilita aplikací

Autor: Ondřej Výšek

V předchozím díle tohoto seriálu jsme připravili projekt pro nasazení Windows 7 a zajistili, které počítače mohou pracovat s novým operačním systémem.
V této části bych se rád věnoval další, velice důležité, dalo by se i říci nejproblematičtější části - kompatibilitě aplikací. Úspěšná migrace či nasazení operačního systému se dá označit takové nasazení, kde v organizacích nedochází k výpadkům z důvodů nefunkčních aplikací či problémům s uživatelskými profily, které byly migrovány z předchozí verze operačního systému.

Pro to, abychom správně porozuměli, co řeší oblast kompatibility aplikací, je nutné porozumět změnám, které mají přímý vliv na fungování aplikací v posledních dvou generacích operačních systémů - Windows Vista a Windows 7.

Nejčastější problémy s kompatibilitou

Tato oblast se týká především nechvalně známého User Account Control (UAC - řízení uživatelských účtů) z Windows Vista. Při zapnutém UAC je každý uživatel považovaný za standardního uživatele, tedy uživatele bez administrátorského oprávnění, i přesto, že je uživatel administrátorem na počítači. Díky této technologii je zvýšeno zabezpečení počítače a potažmo i celého IT prostředí, kde je počítač provozován. Součásti operačního systému Windows 7 došlo k zásadnímu přepracování UAC, kde jsou uživateli nabízeny celkem 4 možnosti: 

Image01.jpg

Každý uživatel je “standardní uživatel”.Tato oblast se týká především nechvalně známého User Account Control (UAC - řízení uživatelských účtů) z Windows Vista. Při zapnutém UAC je každý uživatel považovaný za standardního uživatele, tedy uživatele bez administrátorského oprávnění, i přesto, že je uživatel administrátorem na počítači. Díky této technologii je zvýšeno zabezpečení počítače a potažmo i celého IT prostředí, kde je počítač provozován. Součásti operačního systému Windows 7 došlo k zásadnímu přepracování UAC, kde jsou uživateli nabízeny celkem 4 možnosti:

  • Vysoké zabezpečení - ekvivalent Windows Vista, kde se každý program, který vyžaduje administrátorský přístup, dotazuje na povýšení oprávnění. 
  • Střední zabezpečení - výchozí nastavení Windows 7, kde uživatel není dotazovaný na povýšení oprávnění, pokud je program součástí operačního systému a je podepsaný Windows certifikátem. Mezi tyto nástroje patří například správa počítače, ovládací panely,… 
  • Nízké zabezpečení - UAC je stále zapnuté, obdoba předchozího nastavení, nicméně uživateli není měněna obrazovka na černou a je zobrazeno pouze dialogové okno. 
  • UAC vypnuté - tuto variantu z osobní zkušenosti doporučuji nevolit, pokud to není nevyhnutelně nutné pro zajištění chodu aplikací. Je důležité vědět, že při vypnutém UAC není prováděna virtualizace registry a souborového systému a Internet Explorer není provozovaný v tzv. “Protected módu” 

Image02.jpg

Provoz interaktivních služeb a ovladačů - tzv. Session 0. U Windows XP bylo možné provozovat služby a aplikace, které mohly zasílat informace do prostředí přihlášeného uživatele - služby a ovladače běžely ve stejné session. U Windows 7 jsou provozovány služby a aplikaci v naprosto oddělené relaci a není tedy možné přímo zasílat informace na uživatelský desktop. Tuto funkcionalitu využívají například některé služby, které sledují hardware a v případě problémů informují uživatele. Podobným aplikací se vyskytuje celá řada a jedná se především o aplikace vyvinuté uvnitř firem, vlastními vývojáři.

Změna verze operačního systému. Windows 7 má verzi operačního systému 6.1. Kupodivu toto vede k lepší spolupráci především s aplikacemi, které kontrolují přítomnost Windows XP (verze 5.1). Aplikace kontrolují “MajorVersion” a “MinorVersion”, kde u Windows Vista byly způsobeny problémy verzí (6.0). 

Platforma x64. Při volbě operačního systému, který se bude nasazovat, je nutné také zvážit, jakou bitovou architekturu zvolit. Platforma x64 bezesporu přináší velké množství výhod, ale je nutné mít na zřeteli, že není možné provozovat 32bit ovladače a není možné provozovat 16bit aplikace. Situace kolem hardware je v dnešní době mnohem lepší, nežli tomu bylo v době příchodu x64 verzí Windows Vista a téměř všechny moderní produkty (od roku 2007) obsahují také ovladače pro x64 platformu. Provoz 16bit aplikací je možné zajistit například pomocí Windows XP mód. Další potenciální komplikace s x64 platformou je rozdílné umístění informací v registry a zápisu do větve HKLM\Software. Pokud je aplikace nativní x64, zapisuje informace přímo do větvě HKLM\Software, kdežto aplikace, která je x86 a je spuštěna na x64 systému (pomocí WoW64), zapisuje informace do HKLM\Wow6432node. Pokud aplikace následně potřebuje informace vyčíst, může nastat problém s přístupem do registry (aplikace se pokouší číst přímo z HKLM\Software a nikoliv z HKLM\Software\Wow6432node). Toto dělení se týká také uživatelské části registry - HKCU. 

Změna výchozího barevného schématu. Windows XP obsahovaly výchozí barevné schéma označované jako “Luna theme”. Toto barevné schéma není jako výchozí ve Windows Vista a Windows 7, proto některé aplikace nemusí zobrazovat informace tak jak by měly. 

Image03.jpgImage04.jpg

Změna cesty k uživatelskému profilu. Již Windows Vista obsahovala jiné umístění uživatelských profilů a to “:\users” (Windows XP “:\Documents and Settings”). Pokud aplikace využívá přístupu k uživatelskému profilu bez použití systémových proměnných, bude tato aplikace vykazovat chyby s tím, že soubor nebyl nalezen. Uživatelské profily jsou u Windows 7 dále ještě děleny na části Local, Local Low a Roaming.

  • Local - obsahuje klasický uživatelský profil, nejsou zde ukládány informace, které by měly být součástí roamingového profilu a informace, které jsou přesměrovány ze složek, kam uživatel nemá přístup, aniž by byl administrátorem 
  • Roaming - je část uživatelského profilu, která se přenáší na server, pokud se používají roamingové profily. Do této části se neukládají informace, které by neměly opustit počítač, jako např. mezipaměť Internet Exploreru, datové soubory Outlook,… Díky tomuto oddělení došlo k podstatnému zmenšení přenášených informací na server při použití roamingových profilů. 
  • Local Low - obsahuje informace z přesměrovaných složek - viz virtualizace souborového systému. 

Windows Resource Protecion (WRP) zajišťuje zachování integrity operačního systému, pokud aplikaci pokouší provést změnu systémových souborů nebo registry. Chráněny jsou všechny komponenty, které jsou instalovány součástí operačního systému nebo instalovány podporovanou cestou pomocí TrustedInstaller. Pokud se tedy aplikace pokusí modifikovat soubory, které jsou chráněny pomocí WRP, je změna ukončena chybou nebo je změna provedena, nicméně systém “vrátí” soubor na původní verzi. 

Protected mód Internet Exploreru - ve spolupráci s User Account Control je Internet Explorer provozován v chráněném modu, kde je spuštěný s ještě nižšími oprávněními, nežli má běžný uživatel. V takovém případě může Internet Explorer zapisovat pouze do adresářů s mezipamětí a soubry cookies. Pokud se Internet Explorer pokouší provést zápis kamkoliv jinam, je vyvolán dialog UAC a je nutné potvrdit akci.
Potenciálních problémů s kompatibilitou aplikací je větší počet, výše jsou uvedeny nejčastější. Seznam možných dopadů na aplikace díky změnám ve Windows Vista a Windows 7 je uveden zde. Stránky jsou věnované Windows Vista, nicméně Windows 7 používá stejné technologie.

Jak řeší kompatibilitu aplikací operační systém Windows 7

Jak bylo zmíněno výše, systémy Windows Vista a Windows 7 doznaly z pohledu provozu aplikací značných změn. Microsoft také udělal velký kus práce pro usnadnění chodu aplikací, aniž by se musela provádět změna aplikací jako takových. První důležitou funkcí je virtualizace souborového systému a registry, další důležitou funkcí je zajištění kompatibility aplikací zachycením problematického volání funkcí v DLL knihovnách a jeho přesměrování - tato přesměrování se nazývají shims.

Virtualizace souborového systému a registry

Byť je v názvu pojem virtualizace, nedochází k virtualizaci jako takové, ale řekněme, že dochází k automatickému přesměrování v případě, kdy aplikace, která nemá administrátorská oprávnění, se pokouší zapisovat do částí systému, kam nemá přístup (systémové soubory, program files či větev registry HKey Local Machine). V případě, že je na počítači s Windows 7 zapnuté UAC, dochází k automatickému přesměrování zápisu a následně i čtení z oblastí kam aplikace nemá přidělená oprávnění do oblastí, kam aplikace zapisovat může.

Registry - pokud aplikace provádí zápis do části systémového registru (HKLM\software), je zápis automaticky přesměrován do části uživatelské - HKEY_USERS\_Classes\VirtualStore\Machine\Software. Tento zápis je z pohledu aplikace naprosto transparentní a nedochází k žádnému přerušení chodu aplikace. Obecně by se dalo říci, že aplikace může zapsat do systémové části pouze při instalaci a všechny následující zápisy se týkají nastavení uživatele. Tyto zápisy pak lze považovat za informace, které se týkají uživatelova profilu a správně by měly být uloženy v uživatelské části registry. Díky tomu jsou také ochráněny systémové registry před neoprávněnou změnou uživatelem, který není administrátor.

Registry, kde je aplikovaná virtualizace 

  • 32bit interaktivní procesy 
  • klíče v HKEY_LOCAL_MACHINE\Software 
  • Klíče, kam může administrátor zapisovat (nastavené oprávnění) 

Registry, kde virtualizace není aplikovaná 

  • 64bit procesy 
  • procesy, které nejsou interaktivní, např. služby 
  • Kernel-mod procesy, jako například ovladače 
  • Procesy, které v manifestu aplikace obsahují requestedExecutionLevel 
  • Klíče a podklíče HKEY_LOCAL_MACHINE\Software\Classes, HKEY_LOCAL_MACHINE\Software\Microsoft\Windows, a HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT

Souborový systém - situace je obdobná jako u registrů. Pokud se aplikace pokouší zapisovat do oblastí, kam nemá přímý přístup, je zápis a následně čtení přesměrováno do složky C:\Users\%username%\AppData\Local\VirtualStore. Obvykle tato situace nastává, kdy se aplikace snaží uložit své nastavení či jiné informace do adresářů \Windows, \Program Files či \Program Files (x86). Jedná se o stejnou situaci jako v případě registry, aplikace by měla upravovat soubory v těchto oblastech pouze při své instalaci. Ostatní informace při běžném provozu aplikace se týkají nastavení či práce uživatele a tato nastavení by měla být součástí uživatelského profilu.
 
Je nutné podotknout, že v případě, že je aplikace vyvinuta přímo pro Windows Vista či Windows 7, tak obsahuje přímo v manifestu aplikace informaci o tom, zda bude potřebovat zvýšená oprávnění pro práci se systémovými registry či soubory. V takovém případě je virtualizace vypnuta a aplikace obdrží od operačního systému informaci “přístup odepřen”. Schéma virtualizace souborového systému a registry je na následujících obrázcích. Další možností, která napomáhá zachování kompatibility jsou tzv. junction points - jedná se o odkazy v rámci souborového systému, které nejsou adresářem jako takovým a odkazují na nové umístění (viz obrázek). Pokud provedete příkaz dir /a v kořenovém adresáři operačního systému, je například zobrazen adresář Documents and Settings, který však ukazuje to adresáře users.

Image05.jpg Image06.jpgImage07.jpgImage08.jpg

 

Operační systém, který lže

Image09.jpgJak jsem zmínil výše, již operační systém obsahuje modifikace aplikací, které se nazývají shims. Dalo by se říci, že se jedná o jakési lži, či podvrhy informací. Technicky řečeno, jedná se o DLL knihovnu, která modifikuje API volání, které aplikace provádí vůči operačnímu systému. Modifikace volání je prováděna naprosto transparentně, bez dopadu na aplikaci. DLL knihovna je nahrávána společně s aplikací za použití vrstvy operačního systému zajišťující aplikační kompatibilitu, pak tato DLL knihovna funguje jako prostředník mezi aplikací a API operačního systému, kde jsou zachytávány jednotlivá volání API a pokud je součástí DLL knihovny odpovídající API modifikace, je použita.

Typickým příkladem může být třeba případ, kdy aplikace nepoužívá systémových proměnných pro přístup do uživatelského profilu, ale přistupuje přímo na \Document and Settings\. Jak bylo již napsáno, tento adresář na Windows Vista a Windows 7 neexistuje, aplikace by pravděpodobně ukončila chod chybou. Je možné vytvořit shim, který provede přesměrování z \Documents and Settings\ do \Users\.

Operační systémy již obsahují celou řadu připravených oprav pro nefunkční aplikace. Tyto opravy připravuje Microsoft a jsou distribuovány jako součást operačního systému nebo pomocí aktualizace, kde například pro Windows 7 je dostupná aktualizace KB974333 (součást Windows Update), která právě aktualizuje soubor pro kompatibilitu aplikací. V současné době operační systém obsahuje opravy pro více jak 6500 různých aplikací a to například včetně msiexec atd. Blíže se budeme věnovat probletice shims později v tomto článku.

Soubory - DLL knihovny - které definují tyto shims, tedy opravy pro aplikace jsou umístěny v adresáři \Windows\AppPatch.

Image10.jpg

První krok v analýze kompatibility před migrací

Pokud řešíte upgrade na Windows 7 na jednom či několika málo počítačích nemusíte ihned sahat po složitých nástrojích. Microsoft připravil možnosti, které je schopný použít i zkušenější domácí uživatel.

Prvním krokem před migrací je analýza původního počítače, operačního systému, ovladačů a nainstalovaných aplikací. Pro tyto účely připravil Microsoft nástroj “Poradce pro upgrade na systém Windows 7”, bližší informace a stažení nástroje je možné zde - http://windows.microsoft.com/cs-CZ/windows/downloads/upgrade-advisor. Tento nástroj analyzuje počítač a jeho jednotlivé komponenty, ovladače pro hardware a nakonec i instalované aplikace. Nástroj se synchronizuje s databází na internetu, aby pokryl co možná nejširší záběr jednotlivých oblastí (z testovaného počítače nejsou odesílány žádné informace).
 

Image11.jpgImage25.jpg

Po provedené kontrole dostává uživatel detailní report, zdali bude možné počítač přeinstalovat na Windows 7 a případně, které aplikace mohou mít problémy s provozem na Windows 7.

Další možností přímo v operačním systému je tzv. “compatibility mode” nebo “mód kompatibility”. Zde je možné jednoduše nastavit, jaký operační systém se má aplikaci “emulovat”. K dispozici je nastavení od Windows 95, přes Windows 2000, Windows XP a Windows Vista a to včetně různých úrovní service pack. Nastavení kompatibility je možné ve vlastnostech exe souboru aplikace, která je spouštěna. V případě, kdy mód kompatibility není nastaven a dojde k pádu aplikace, sám operační systém detekuje důvod pádu aplikace a doporučí nastavení odpovídajícího módu kompatibility. Další možností je analýza nekompatibilního programu pomocí průvodce, který je součástí operačního systému. Po spuštění tohoto průvodce zvolíte aplikaci, která má problémy se spouštěním. První možností je pak nastavení módu kompatibility, který je možné nastavit ve vlastnostech jednotlivých exe souborů, případně provést analýzu aplikace, pokud již někdy zaznamenala pád. Logové soubory, které jsou zaznamenány při pádu aplikace, jsou následně analyzovány a pokud je to možné, je nastaven odpovídající mód kompatibility případně provedena úprava v databázi patchů pro aplikace (viz předchozí kapitola).
 

Image13.jpg Image14.jpgImage15.jpg Image16.jpg

Pokud prostředky Windows 7 nestačí

Pokud se migrace na Windows 7 týká firemního nebo síťového prostředí, je možné s výhodou použít nástroje, které detekují a řeší kompatibilitu aplikací centrálně. Společnost Microsoft nabízí několik nástrojů, jenž jsou shrnuty pod názvem Application Compatibility Toolkit (ACT), kde pro Windows 7 je určena verze 5.5).

ACT se skládá z několika komponent, které zajišťují sběr informací na koncových počítačích, předání informací na server, zpracování do databáze a nakonec rozhraní pro práci s nasbíranými daty.

Sběr na koncových počítačích zajišťuje tzv. Data Collection Provider (DCP), který je připravený jako .msi balíček a je možné jej instalovat mnoha různými metodami na počítače. DCP je na počítači automaticky spuštěn a monitoruje běh aplikací na původním operačním systému před migrací (např. Windows XP). Dle konfigurace DCP předává informace na síťové sdílení ve formátu XML v pravidelných intervalech. Informace, které jsou na počítačích, se týkají především problémů s provozem aplikací jako standardní uživatel - tedy následně UAC problémy a také mohou být například zpracovány informace týkající se kompatibility Internet Exploreru atd. DCP získává informace o dostupných aplikacích z těchto umístění: 

  • WMI pro získání informací o hardware 
  • MSI databáze 
    • MsiEnumComponents API
  • Přidat/Odebrat programy 
    • Registry entries
  • Windows Shell
    • HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
    • HKU\...\Software\Microsoft\Windows\CurrentVerison\Explorer\Shell Folders
  • App paths
    • HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths
  • Cesty v systémových proměnných
    • ExpandEnvironmentStrings API
    • HKU\...\Environment
  • File extension handlers
    • HKLM\Software\Classes\.*\Shell\Open\Command
    • HKCU\...\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts
  • Run / RunOnce
    • HKLM\Software\Microsoft\Windows\CurrentVersion\Run
    • HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
    • HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
  • Služby
    • EnumServiceStatus API, následováno
    • QueryServiceConfig API
  • Komponenty Windows
    • Queries sysocmgr.inf (v %windir%\inf)
    • Zjištění nainstalovaných volitelných komponent

Zpracování informací a zařazení do databáze zajišťuje na straně serveru Log Processing Service (LPS), která detekuje přítomnost nových XML souborů na síťovém sdílení, soubory zpracuje a zařadí do databáze. V případě, kdy prostředí neobsahuje tisíce počítačů a stovky aplikací, je možné využít pro ukládání SQL 2008 Express, který je zdarma, případně je možné využít stávající instalaci SQL v organizaci.

Následné zpracování informací administrátory probíhá pomocí Application Compatibility Manager (ACM). Jedná se o běžnou aplikaci, která se připojuje k databázi, kde jsou uloženy informace z koncových počítačů. V rámci ACM je možné provést různé klasifikace podle druhu aplikace, její důležitosti pro provoz organizace atd. Také je možné provést synchronizaci informací s databází kompatibility Microsoftu, kde uživatelé z celého světa umisťují informace o tom, která aplikace je či není kompatibilní a jakým způsobem je možné aplikaci zprovoznit. 

Image17.jpg
 
Před nasazením ACT do prostředí organizace je nutné dobře zvážit, které počítače mají být sledovány a jak dlouho. Není nutné provádět instalaci na všechny počítače, ale plně dostačuje instalace na vhodný reprezentativní vzorek uživatelů, kteří aplikace používají. Délka sledování je také velice důležitá, některé aplikace jsou spouštěny například pouze jednou za delší časový úsek, je tedy nutné zajistit, aby všechny aplikace v organizaci byly spuštěny a pracovalo se s nimi jako obvykle v době, kdy je monitorování pomocí DCP aktivní. Tento časový úsek obvykle bývá 15-30 dní, v některých případech i podstatně déle.

Výstupem práce s těmito nástroji je seznam aplikací, možných dopadů na migraci na Windows 7. V případě, že je aplikace identifikována jako problematická s ohledem na UAC, je nutné provést její přetestování pomocí Standard User Analyzer (SUA). Standard User Analyzer je také součástí ACT a jedná se o nástroj, který je spuštěný na původním operačním systému a v tomto nástroji je spuštěna aplikace, která je detekována jako problematická. Po ukončení aplikace následně SUA analyzuje volání aplikace a identifikuje problematická volání (zápisy do registry, souborového systému, práce se službami, vše co vyžaduje administrátorské oprávnění). Po analýze dostupných informací SUA dokáže připravit shim DLL knihovnu, která provede nápravu, aby aplikace byla schopna fungovat pod standardním uživatelem a nevyžadovala administrátorské oprávnění.

Před kompletním přechodem na Windows 7 je samozřejmě nutné všechny aplikace, u kterých není garantovaná podpora chodu na Windows 7, přetestovat, zdali nevykazují chyby při chodu. Pro toto testování je možné využít nástroj LUA Buglight, který je podobný na Standard User Analyzer, nicméně nesleduje všechna (i potenciální) volání aplikací vůči operačnímu systému, ale pouze ta reálná. Díky tomu je chod aplikace mnohem rychlejší a výstup informací relevantnější. Výstupem LUA Buglight je opět návrh opravných opatření, která pomohou s provozem aplikace na Windows 7.

V případě, kdy selhaly nástroje uvedené výše, je nutné použít ProcMon a sledovat chování aplikace ručně a na základě toho připravit odpovídají opravy aplikací - shims.

Shims je možné připravovat v aplikaci Application Compatibility Administrator, který je nainstalovaný společně s ACT. V této aplikaci si také můžete prohlédnout, jaké všechny aplikace jsou již upraveny přímo Microsoftem, jaké opravy pro kompatibilitu je možné použít (v této chvíli 365) a jaké módy kompatibility jsou přítomny v operačním systému (nyní 62). Módy kompatibility v podstatě seskupují jednotlivé shimy.

Jakmile je připravený soubor, který obsahuje odpovídající shimy, je možné tento soubor instalovat pomocí nástroje sdbinst.exe, který je přímo součástí operačního systému. Sdbinst se také používá ve firemních prostředích pro hromadnou distribuci existujících sdb souborů na počítače. Sdb soubory je také možné přímo umístit do image, který se instaluje na koncové počítače.
   
Dalším nástrojem, který umožňuje detekci a opravu nekompatibilních aplikací je například App-DNA, jedná se však o komerční nástroj. App-DNA umožňuje detekci kompatibility ještě před tím, nežli je aplikace instalována. Tato detekce je zajištěna přímou analýzou instalačních souborů (exe i msi), kde jsou detekovány jednotlivá API volání,… Výstupem je pak seznam aplikací a úroveň jejich kompatibility (kompatibilní, vyžadována oprava a pravděpodobně nekompatibilní). Pro aplikace označené jako “oranžové” - vyžadována oprava - může App-DNA přímo vygenerovat opravný soubor sdb a přidat jej do instalace. Aplikace označené “červená” - pravděpodobně nekompatibilní je nutné přetestovat a ručně připravit opravné sdb soubory.

Image18.jpg

Když selhala možná opravná opatření

Je jasné, že pomocí aplikační kompatibility, ať obsažené přímo v operačním systému nebo v dalších nástrojích, není možné zajistit chod 100% aplikací. Důvody, které vedou k prohlášení aplikace za nekompatibilní s Windows 7, mohou být různé. Je nutné pečlivě zvážit, které aplikace jsou kritické pro chod organizace a dopad provozu těchto aplikací. V mnoha případech je možné se obrátit na výrobce aplikace, zdali nemá verzi, která funguje na Windows 7. Také je možné uvažovat o výměně aplikace za takovou, která podporuje Windows 7, případně ukončení provozu aplikace jako takové, pokud je zjištěno, že aplikace není používána,…

Pokud však selhala všechna možná opravná opatření - kontakt na výrobce aplikace, nová verze aplikace, oprava pomocí shims - a není možné aplikaci vyřadit z provozu, stále je možnost jak zajistit chod aplikace pod operačním systémem Windows 7.

Windows XP mód a Enterprise Desktop Virtualization

Pro uživatele / organizace, které provozují Windows 7 v edici Professional, Enterprise či Ultimate je zdarma dostupná technologie Windows XP mód. Tato technologie vychází z nástrojů, které byly již dříve dostupné v rámci sady nástrojů Microsoft Desktop Optimization Pack (MDOP) pod názvem Microsoft Enterprise Desktop Virtualization (MED-V). Tato technologie byla přenesena do prostředí, kde jsou provozovány jednotky či malé množství počítačů a je nabízena pod názvem Windows XP mód.

Image19.jpg

Windows XP mód je možné zdarma stáhnout ze stránek společnosti Microsoft a instalovat na Windows 7. Po nainstalování virtualizační platformy Windows Virtual PC a následně Windows XP módu je možné do virtualizovaných Windows XP nainstalovat aplikace, které nejsou kompatibilní s operačním systémem Windows 7. Jakmile je aplikace instalována do Windows XP a umístěn zástupce do nabídky start ve virtuálním operačním systému, je automaticky umístěný také zástupce do fyzického operačního systému. Po spuštění aplikace pomocí zástupce ve Windows 7 je na pozadí nastartován virtuální počítač, spuštěna aplikace a uživateli je přenášeno rozhraní pouze té aplikace, kterou spustil, nikoliv celý virtuální počítač.

Je nutné podotknout, že pro provoz Windows Virtual PC je nutná podpora HW virtualizace ze strany procesoru a BIOSu počítače. AMD v dnešní době nevyrábí procesory bez HW virtualizace, nicméně u Intelu je stále možné zakoupit procesory stejné řady s a bez HW virtualizace (rozdíl v ceně je v řádu stokorun). Pokud máte již počítač s nainstalovaným operačním systémem, můžete použít různých nástrojů pro zjištění podpory virtualizace na počítači.
Jedním z nástrojů je Hardware Assisted Virtualization detection tool dostupný na stránkách Microsoftu nebo dalším nástrojem je SecurAble.

Image20.jpg Image21.jpg
  
V případě, že problematiku virtualizace na desktopu řešíte v rámci organizace, Windows XP mód není tím nejlepším řešení. Důvodů pro toto konstatování je hned několik, nemožností centralizované správy aplikací a virtuálních strojů, až po složitě řešitelný proces distribuce virtuálních strojů, patch management,… V rámci podnikového prostředí je možné využít nástroj MED-V zmíněný výše, který řeší kompletní životní cyklus správy virtuálních strojů a přiřazování aplikací jednotlivým uživatelům.

Image22.jpg

Aplikační virtualizace

Aplikační virtualizace může být také částečným, nikoliv však univerzálním řešením kompatibility aplikací na různých operačních systémech. Aplikační virtualizace je primárně určena pro řešení kompatibility mezi aplikacemi. Z pohledu kompatibility aplikace a operačního systému přináší aplikační virtualizace právě možnost izolace aplikace od operačního systému a dalších aplikací. Virtuální aplikace je pak provozována v jakési bublině a to včetně virtuálního souborového systému a registry. S ohledem na to, že veškeré soubory a registry jsou součástí jednoho balíčku, nemusí tak aplikace řešit problémy s přístupem na zdroje, na které by za běžných okolností - tedy fyzicky nainstalovaná - neměla přístup. Pokud však virtualizovaná aplikace přistoupí do oblasti operačního systému, kde nemá oprávnění,… nastane stejný problém jako s aplikací fyzicky instalovanou.

Microsoft nabízí aplikační virtualizaci pod názvem Microsoft Application Virtualization (App-V) a je také součástí balíčku produktů MDOP. Aplikační virtualizace má své opodstatní v rámci IT prostředí. Díky tomu, že aplikace nejsou fyzicky instalovány na operační systém, je možné aplikace poskytovat “on demand” jako službu. Aplikace jsou také předkonfigurovány a uživatel při spuštění obdrží již nastavenou aplikaci, což snižuje náklady na poskytování podpory koncovým uživatelům. Bližší pohled na aplikační virtualizaci je v samostatném článku.

Image23.jpg Image24.jpg

Závěrem kapitoly aplikační kompatibilita

V této kapitole jsme se přenesli přes všechna úskalí spojená s aplikační kompatibilitou. Mé doporučení na závěr, nepodceňujte kompatibilitu aplikací. Na Českém trhu je pár (dalo by se říci doslova) certifikovaných partnerů, kteří poskytují služby spojené s analýzou a nápravou aplikací před započetím migrace na Windows 7. V případě, kdy se pouze spolehnete na konstatování “nějak ty aplikace uchodíme”, asi to není to nejlepší řešení, které může zásadním způsobem narušit chod firmy, práci zaměstnanců,…
2 Zajímavá videa - záznamy Springboard série s Markem Rusinovichem na téma aplikační kompatibility
Video is uploading... Video is uploading... 
V další kapitole se zaměříme na možné způsoby nasazení a migrace operačního systému Windows 7 a to včetně různých nástrojů, které jsou k dispozici zdarma či komerční.

Několik odkazů na závěr, které se nevešly do článku a týkají se aplikační kompatibility:
Application Compatibility CookBook - Kuchařka jak na kompatibilitu aplikací
Windows 7 Application Quality book
Managing shims in the enterprise - správa shim databáze v podnikovém prostředí
 
Seznam partnerů poskytující služby spojené s aplikační kompatibilitou
Stránky na Microsoft TechNet věnované aplikační kompatibilitě
Windows 7 Application Compatibility List for IT Professionals - seznam kompatibilní aplikací nahlášených výrobci software
Windows 7 compatibility center - online databáze kompatibility aplikací, ovladačů, hardware
Aplikační kompatibilita pro vývojáře aplikací
 

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Diskuze (2) Další článek: Facebook je nejnavštěvovanější stránkou v Americe, předběhl Google

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,