Exkluzivní rozhovor s Čechem, který šéfuje vývoji Windows Vista

Velmi otevřený rozhovor s nejvýše postaveným Čechem v Microsoftu vám mimo jiné odpoví na otázku, proč nový operační systém uživatele neustále bombarduje kontrolními dotazy, proč si nerozumí s některým hardwarem a co na něm bude Microsoft ještě vylepšovat.

Aleš Holeček - vedoucí vývoje Windows Vista | foto: Václav Nývlt, Technet.cz

Rozhovor s Alešem Holečkem, který má na starosti vývoj shellu Windows Vista, se odehrál částečně v restauraci v Seattlu, částečně v jeho acuře, když nás vezl zpět do hotelu. Během rozhovoru působil vesele, uvolněně a bez váhání odpovídal i na nepříjemné otázky šťourající do slabin nového operačního systému.

Ani na okamžik nebylo možno pochybovat, že ho jeho práce baví. A i když se rozhovor protáhl do velmi pozdních nočních hodin, nedal nám nikdy najevo, že už bychom měli končit. 

Windows Vista a otravná bezpečnostní hlášení

Začnu trochu nepříjemně. Je již teď něco, o čem jste přesvědčeni, že je u Windows Vista špatně?

No určitě. Například UAC (User Acount Control - kontrola procesů a práv - pozn. redakce) je příliš upovídaná. Těch bezpečnostních hlášení a upozornění je tam zatím prostě moc. Máme změřené, že zhruba první tři měsíce užívání čerstvě instalovaného systému UAC povídá opravdu hodně. Potom se to uklidní a jde průměrně o dvě hlášení za týden – což je únosné. Aktivní uživatelé, kteří častěji něco instalují, tím trpí nejvíce.

Asi nejpalčivější je, že ty otázky, které systém pokládá, nejsou vždy optimální. Pokud vezmu normálního uživatele, třeba svojí mámu, tak ta na většinu z nich nedokáže s úplnou jistotou odpovědět. My se zeptáme "to a to se ti snaží nainstalovat na počítač – je to dobře, nebo špatně?" No - je to dobře, nebo špatně? Ona to přece neví! 

Pak ale nechápu, proč jste to takto udělali...

Je důležité si uvědomit, že UAC není takto upovídaná proto, že jsme to v Microsoftu nezvládli. To opravdu ne. Hlavní důvod je ten, že naprostá většina softwaru, který je na trhu, je špatně napsaná. Čímž ale nechci napadat jejich výrobce. Stačí se podívat do historie.

MS-DOS i Windows 95 byl v podstatě naprosto "single-user" operační systém. Nikdo nepředpokládal, že by v něm mělo pracovat více různých uživatelů. A to se částečně dědilo i do ostatních verzí Windows, tedy W98, W2k a především XP. A aby ta "user experience", tedy možnosti systému, které může uživatel využívat, byla co největší, tak všichni uživatelé běží jako root (uživatel s plnými právy, administrátor - pozn. redakce). Když se podíváte, jak jsou lidé u počítačů přihlášení, tak každý funguje jako administrátor…

Což je průšvih…

Jo, to je průšvih. No a teď je situace, že celý softwarový průmysl, který píše programy pro Windows, automaticky počítá s tím, že každý je jako root opravdu přihlášený. A to je ten problém u Vist - zde nikdo primárně nefiguruje jako root, ale jako lokální uživatel s omezenými právy, protože je to daleko bezpečnější řešení. A tím vznikají konflikty se softwarem. Když některý program potřebuje například něco zapsat do registrů, tak mu to systém nepovolí - a od toho jsou ty upovídané bezpečnostní dotazy.    

Takže to řešení u W98, W2k a XP, kde mají všichni administrátorská práva, byla spíše vaše chyba než záměr...

Ale ne, tenkrát to byl záměr. V té době byly cíle úplně jiný než dneska. Nikdo nevěděl, jak se internet vyvine, jaké problémy s bezpečností teď budeme mít a jak lidi budou s odpuštěním blbí a budou instalovat každou volovinu a klikat na cokoli bez rozmyslu. Dá se říci, že jsme tenkrát byli naivní. A to bez nadsázky.

Například když jsme dělali XPčka, tak pro nás bylo důležitý, aby software, který běhal na 95kách, běhal i na těch XP. A ten problém byl úplně ten samej – bylo nutné, aby uživatel figuroval jako administrátor, což je však z bezpečnostního hlediska nevyhovující.

A jak to bude dál? Snaží se výrobci svůj software psát tak, aby Visty nemusel pořád žádat o přístup k systémovým zdrojům?

Aby byla zachována funkčnost staršího softwaru a zároveň bezpečnost systému, vytvořili jsme rozsáhlou databázi, které říkáme "shimi". V ní jsou kousky kódu různých potenciálně konfliktních aplikací. Ty píšeme sami pro konkrétní aplikace nebo třídy aplikací. Ve Vistě je takzvaná databáze kompatibility, ve které jsou záznamy o obrovské spoustě různých programů. Pokud tedy spustíte nějakou aplikaci, tak se funkce "create process" podívá do databáze, zda tam program je. Pokud je odpověď "ano", pak se systém zapatchuje tak, aby měla aplikace pocit, že běží na OS, pro který byla napsána.

Funguje to tak, že když se pak tato aplikace snaží zavolat nějakou funkci, tak my jí, aniž by to poznala, podstrčíme jinou - vlastní - z databáze shimi. Tím se vyvarujeme konfliktů některých starších a současných aplikací s Win Vista.

Druhá cesta je taková, že spolupracujeme s výrobci softwaru, dáváme jim k dispozici informace a nabízíme školení, jakým způsobem software psát, aby s Windows Vista fungoval. A pak se budeme moci obejít bez těchto různých mezikroků, které jsou rozhodně špatné a otravné.

To znamená, že administrátorská práva pak vlastně nebude mít uživatel, ale konkrétní aplikace?

V UAC ve Vistách existuje takzvaný token, který popisuje, jaký práva tam máš jako přihlášený uživatel. Pokud je uživatel přihlášen jako administrátor, tak má token dvě části. Jedna pro funkci běžného uživatele, druhá pro administrátorskou. No a my v tuto chvíli utneme tu administrátorskou část a odstavíme ji. Takže i když ses v tu chvíli příhlásil jako administrátor, což je v současné době typické chování, tak jím ve Vistách ve skutečnosti nejsi.

Ale tu informaci, že ses přihlásil jako admin, schováme. A v případě, že nějaký proces vyžaduje administrátorská práva, tak se tě v dialogu zeptáme, zda opravdu chceš být administrátorem (a povolit chod programu), a pokud souhlasíš, tak ten token zase slepíme a získáš administrátorská práva. Předcházíme tím tomu, aby si v systému každá aplikace (včetně virů a spyware) mohla dělat, co je jí libo. Pokud budeš přihlášený jako normální uživatel, tak navíc musíš zadat administrátorské heslo.

Typický uživatel ale stejně varovný dialog bez čtení odsouhlasí, protože ho vidí každou chvíli a zdržuje ho od práce...

A to je právě ten problém. My teď potřebujeme především docílit toho, aby výrobci toho legálního – ve smyslu správného a neškodného – softwaru psali své aplikace tak, aby tyto varovné hlášky vůbec negenerovaly.

Počítáme, že zhruba za tři roky, až bude všechen tento software upravený, tak varovný dialog, to se zastavíte a řeknete si – sakra, co to je? A budeš z toho neklidný, protože to bude něco neobvyklého.  Všechen správný software se bude chovat korektně, z čehož vyplývá, že nekorektní chování vyvolá jen špatný, a tedy nebezpečný program. No a to je dnes nerozlišitelné.

Windows Vista a potíže s hardwarem

Visty měly zhruba rok zpoždění oproti původnímu ohlášení – proč tomu tak bylo, co se stalo?

Měli jsme obrovské investice do WinFS (souborový systém) a .NET Framework Manage Code (programovací jazyk) a ty investice se ne zcela úplně materializovaly. Systém byl hotový, ale situace kolem nového filesystému i programovacího jazyka byla natolik komplikovaná, že se nedařilo optimalizovat jednotlivé parametry systému.

Provedli jsme testy a výsledky byly tristní. Kompatibilita aplikací byla hrozná a výkon mizerný. Jako optimální postup se ukázalo začít znova načisto. Takže někdy v září 2004 jsme kompletně vymazali celý kód a začali jsme Visty psát úplně odznovu. Místo souborového systému WinFS jsme použili NTFS a místo .NET pak programovací jazyk C++. Koncepčně i vizuálně je systém úplně identický, ale je napsaný zcela jinak. Bylo to hodně náročný, ale ve všech parametrech se systém dramaticky vylepšil. 

A zrovna od nového filesystému se poměrně dost očekávalo, s čím byl problém? 

WinFS byl strukturovaný souborový systém, postavený na databázi. A bohužel se nepodařila vyřešit spolupráce staršího softwaru s novým filesystémem, což je však věc, kterou naši zákazníci po právu očekávají. A to byl tak složitej problém, že se nám ho nepodařilo vyřešit. A to na něm pracovalo přes 500 lidí.

Ve Vistách jsme chtěli především pokročilé funkce vyhledávání a indexování, který WinFS právě umožňoval. Takhle jsme ho museli obejít a vytvořit nástavbu NTFS, která pak tyto funkce umožnila. A to samozřejmě není optimální, ale je to plně funkční kompromis.

Současní uživatelé Windows Vista musí řešit problémy s kompatibilitou ovladačů hardwarových součástí. Asi nejznámější je neexistence kvalitních ovladačů pro některé zvukové karty Creative. Jak to řešíte?

Tohle je velký problém. My jsme museli změnit rozhraní, jakým se ovladače zapojují do činnosti systému. Hlavním důvodem bylo zvýšení stability systému. Historicky ty ovladače běhaly v takzvaném "kernel mode", tedy na úrovni jádra systému. A protože, když je ovladač zařízení špatně napsaný – a mohu říci, že prakticky v každém ovladači nějaká ta chyba je - tak když došlo z nějakého důvodu k pádu ovladače, strhlo to s sebou celý operační systém.

Potom se objevil takzvaný "bluescreen", tedy modrá smrt. Když jste viděli modrou obrazovku, tak to nebylo proto, že bychom v Microsoftu neuměli napsat dobrý kód, ale protože se ovladače zapojovaly přímo do jádra, a tak v případě jakéhokoli problému shodily i jeho chod.

V nové verzi jsme ovladače vytlačili o úroveň výš, do takzvaného "user mode". Kernel teď běží nezávisle na zbytku systému, každý přihlášený uživatel má svoji session a ovladače právě běží v každé té session. Takže v tuto chvíli, když ovladač spadne, tak jádro dokáže tento proces "zabít" a znovu spustit. A život jde dál. 

Na tuto změnu ale musí výrobci hardwaru reagovat. U nových zařízení s tím není žádný problém. Ale pokud jde o starý hardware, který se již moc neprodává, tak se výrobcům vůbec nevyplatí investovat do vývoje nových ovladačů. Spousta lidí má pět, šest let starý hardware, se kterým již jeho výrobci nic dělat nechtějí.

Kdo je Aleš Holeček ?

Je to ředitel vývoje shellu Windows Vista a jeden z nejvýše postavených Čechů v Microsoftu. Spolu se třemi partnery šéfuje týmu 1200 lidí.

Je mu 39 let, narodil se v Jeseníku a v USA žije od roku 1995. Vystudoval grafiku na ČVUT v Praze a díky tomu, že publikoval odborné články, si ho všimla firma MetaCreations ze Santa Barbary.

Pracovní nabídku přijal a postupně se stal vedoucím grafikem. MetaCreations se zabývala vylepšováním a vývojem GUI. Rozhodně není bez zajímavosti, že část lidí odešla do Apple, kde pracuje na vývoji GUI OSX.

Aleše poté "přetáhla" společnost Microsoft, kde v současné době šéfuje vývoji klientské části operačního systému Windows. Je ženatý a má dvě děti.


Jak bude vypadat další vývoj Windows? Budete pokračovat v trendech, které jste zahájili ve Vistách? Budou změny evoluční, nebo chystáte nějaké zásadní? 

Směr bude pokračovat, máme poměrně agresivní plány. Ve Vistách jsme se hodně zabývali bezpečností, řešili jsme ovladače, stabilitu a rigiditu systému. Na těchto třech pilířích se dá říci, že Visty nyní opravdu stojí a všechny ty diskutované technolgie, jako třeba Bitlocker, do toho zapadají. Ve Vistách jsme změnili hodně věcí a to jsou teď základy, ze kterých budeme vycházet a na kterých budeme dále pracovat. Samozřejmě taky uvidíme, co na to budou říkat uživatelé.

A jaké jsou teď ohlasy na Visty?

No já bych řekl, že poměrně dobrý. A prodeje jsou výborný, jen v prvním čtvrtletí, co byla Vista na trhu, jsme prodali více kopií než MacOS ve všech svých verzích dohromady.  

Windows Vista a inspirace u konkurence

Mnoho lidí vás kritizuje za silnou inspiraci u konkurence. Jak ve Vistách, tak v Internet Exploreru 7 lze vysledovat jasnou podobnost s konkurenčními produkty.

Tohle je ožehavé téma. Částečně jde o přirozený vývoj, částečně o požadavky trhu. Bylo by nesmyslné záměrně ignorovat již ověřené a fungující postupy a tvrdohlavě vyvíjet nové. 

Úpravy IE7 byly o dvou věcech. Jednak musel nový browser splnit požadavky webových standardů, a současně jsme nechtěli tolik zkomplikovat život webovým programátorům, kteří leckteré stránky upravili pro správnou funkci v ne úplně korektním IE5 a IE6. Druhou změnou bylo jeho rozdělení ve Vistách do dvou procesů - jeden s nízkými právy pro práci se zdrojovým kódem a vstupními daty a druhý, který vykresluje finální výsledek. Ten má práva vysoká. Díky tomu omezujeme možné útoky na systém prostřednictvím webového prohlížeče. A ty taby? Tlak trhu jasně řekl, že je chce. A tak v IE7 jsou.

  • Nejčtenější

Kam pro filmy bez Ulož.to? Přinášíme další várku streamovacích služeb do TV

v diskusi je 125 příspěvků

26. března 2024

S vhodnou aplikací na vás mohou v televizoru na stisk tlačítka čekat tisíce filmů, seriálů nebo...

Z jaderné triády zbyly Britům už jen ponorky. A ty musejí posílit

v diskusi je 76 příspěvků

27. března 2024

Jadernou triádu tvoří strategické bombardéry s jadernými zbraněmi, mezikontinentální balistické...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Hlučínsko patří nám. Před 100 lety byl podepsán definitivní protokol o hranici

v diskusi je 45 příspěvků

28. března 2024

Před 100 lety definitivně skončily tahanice o československo-německé hranice. 28. března 1924 byl...

Rusko zastavilo odlet na ISS s první Běloruskou, letět měla i Američanka

v diskusi je 50 příspěvků

21. března 2024  10:23,  aktualizováno  14:26

Ve čtvrtek 21. března se necelých deset minut před půl třetí odpoledne měla vydat na Mezinárodní...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Američané odepsali modul, který je vrátil po půl století na Měsíc

v diskusi je 23 příspěvků

28. března 2024,  aktualizováno  11:41

Od začátku letošního roku je na Měsíci a kolem něj poměrně rušno. Vedle řady sond, které zamířily...

Za vyhynutím dinosaurům mohla být i doba temna

v diskusi nejsou příspěvky

29. března 2024

Dopad planetky je nyní většinou odborníků považován za hlavní příčinu vyhynutí zhruba 73 až 76 %...

Podívejte se na Boeing C-17 Globemaster, který do Česka přivezl nové vrtulníky

v diskusi jsou 2 příspěvky

29. března 2024

V sobotu 23. března dosedl v Praze nákladní letoun USAF, který vezl obzvlášť cenný náklad. Z...

Dočasná raketa se po téměř 70 letech loučí. Bude startovat naposledy

v diskusi jsou 4 příspěvky

28. března 2024  15:36,  aktualizováno  19:54

Tento čtvrtek stojí na startovací rampě mysu Canaveral poslední potomek raket Thor, nosič Delta IV...

Američané odepsali modul, který je vrátil po půl století na Měsíc

v diskusi je 23 příspěvků

28. března 2024,  aktualizováno  11:41

Od začátku letošního roku je na Měsíci a kolem něj poměrně rušno. Vedle řady sond, které zamířily...

FOR KIDS by měl být zážitkem pro celou rodinu, říká Monika
FOR KIDS by měl být zážitkem pro celou rodinu, říká Monika

Monika Pavlíčková (35 let) je maminkou dvou dcer, sedmileté Terezy a čtyřleté Laury, a zároveň také manažerkou obchodního týmu společnosti ABF,...

Smoljak nechtěl Sobotu v Jáchymovi. Zničil jsi nám film, řekl mu

Příběh naivního vesnického mladíka Františka, který získá v Praze díky kondiciogramu nejen pracovní místo, ale i...

Rejžo, jdu do naha! Balzerová vzpomínala na nahou scénu v Zlatých úhořích

Eliška Balzerová (74) v 7 pádech Honzy Dědka přiznala, že dodnes neví, ve který den se narodila. Kromě toho, že...

Pliveme vám do piva. Centrum Málagy zaplavily nenávistné vzkazy turistům

Mezi turisticky oblíbené destinace se dlouhá léta řadí i španělská Málaga. Přístavní město na jihu země láká na...

Velikonoce 2024: Na Velký pátek bude otevřeno, v pondělí obchody zavřou

Otevírací doba v obchodech se řídí zákonem, který nařizuje, že obchody s plochou nad 200 čtverečních metrů musí mít...

Kam pro filmy bez Ulož.to? Přinášíme další várku streamovacích služeb do TV

S vhodnou aplikací na vás mohou v televizoru na stisk tlačítka čekat tisíce filmů, seriálů nebo divadelních...