Premium

Získejte všechny články
jen za 49  Kč / 1. měsíc

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ší

Za celosvětový kolaps IT systémů může nečekaně absurdní chyba

Nepovedená aktualizace bezpečnostního softwaru společnosti Crowdstrike způsobila pád počítačů a serverů s operačním systémem Windows do „modré obrazovky smrti“. Ani po restartu se nespustí. Některé...

19. července 2024  11:01,  aktualizováno  18:52

Uvězněni na vesmírné stanici. Boeing neví, kdy vrátí posádku zpět na Zemi

První testovací let nové vesmírné lodi Boeing Starliner CST-100 s posádkou neprobíhá tak, jak měl její výrobce spolu s NASA naplánováno. Cesta dvou astronautů na ISS a zpět měla původně trvat...

26. července 2024  12:59

{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...}

OBRAZEM: Jugoslávské karavany byly zcela jiný level než ty z NDR, PLR a ČSSR

V roce 1965 se ve slovinském městě Novo Mesto začala psát historie továrně vyráběných jugoslávských a následně slovinských karavanů. Tak vznikla značka Adria, jejíž život se potom přenesl přes rozpad...

23. července 2024

Mistr vedlejších rolí Krška hrál geniálně alkoholiky a muže zlomených osudů

Herec Vladimír Krška, který se narodil před 100 lety, byl téměř čtyři desítky let členem souboru pražského Divadla na Vinohradech. Na jeho scéně vytvořil na osmdesát rolí.

22. července 2024

{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...}

KVÍZ: Výlet do století páry. Poznáte, v jaké dnešní zemi jste?

V následujícím kvízu se podíváme na zajímavá místa zachycená na fotografiích v devatenáctém století. Úkolem je poznat, v jaké dnešní zemi se dané místo či objekt nachází.

26. července 2024

Možná jsme na Marsu našli dávný život, hlásí NASA. Nález potvrdí až na Zemi

Robotické vozítko Perseverance amerického Národního úřadu pro letectví a vesmír (NASA) našlo na Marsu kus horniny, který by mohl obsahovat zkamenělé mikroby. Jde o další významný krok v hledání...

27. července 2024  10:34

Konečná československá bilance z Paříže před 100 lety: 10 medailí a první zlato

Hry VIII. letní olympiády v Paříži, které skončily před 100 lety, 27. července 1924, potvrdily velký rozmach olympijského hnutí.

27. července 2024

První tryskový dopravní letoun de Havilland DH106 Comet vzlétl před 75 lety

První proudový dopravní letoun de Havilland DH106 Comet se poprvé dostal do vzduchu 27. července 1949. O necelé tři roky později už začal pracovat v běžném provozu, avšak konstrukční chyba znamenala...

27. července 2024

Uvězněni na vesmírné stanici. Boeing neví, kdy vrátí posádku zpět na Zemi

První testovací let nové vesmírné lodi Boeing Starliner CST-100 s posádkou neprobíhá tak, jak měl její výrobce spolu s NASA naplánováno. Cesta dvou astronautů na ISS a zpět měla původně trvat...

26. července 2024  12:59

Můj syn Xavier zemřel, říká Musk o transgender dceři. A chce zničit „virus woke“

Miliardář Elon Musk tvrdí, že byl podveden, když dovolil svému synovi stát se transgender ženou. V rozhovoru s...

Ruská kráska Sofja Lebeděva šla donaha v seriálu Vikingové: Valhalla

Bývalá gymnastka Sofja Lebeděva (30) potěšila fanoušky seriálu Vikingové: Valhalla, když se v jedné ze scén nového dílu...

Sto tun obilí za hodinu. Na Hané mají výjimečný kombajn, jeden z patnácti na světě

Až sto tun obilí dokáže za hodinu sklidit nový kombajn CR11 firmy New Holland, který vyjel do obilných lánů v okolí...

Rozvádím se, oznámila dubajská princezna na Instagramu manželovi a jeho milenkám

Dubajská princezna Mahra (30) a její manžel šejk Mana Bin Mohammed Al Maktúm (25) se po loňské svatbě rozvádí. Dcera...

Olympiáda je festival sexu pro sportovce, potvrzují bývalí účastníci

Olympijská vesnice mi dala za dva týdny víc sexu než zbytek mého života, tvrdí bývalý olympionik Matthew Syed....