Nová kniha: Jádro systému Windows

Verze pro tiskPDF verze

Zkoumáním vlastností operačních systémů Microsoft Windows se zabývám již od středoškolských let. Nejprve jsem se věnoval programování systémových aplikací a později jsem se začal zajímat o samotné jádro. Tato záliba mi vydržela dodnes.

Moje znalosti postupem času stále rostly a začal jsem zjišťovat, že v našich zemích (tímto označením myslím Česko a Slovensko) se jednak nenajde mnoho lidí, kteří se zajímají o to samé, co já, druhak nabídka zdrojů informací není příliš široká. Z tohoto důvodu jsem se rozhodl část svých vědomostí o systémech Windows předat širší veřejnosti.

Příležitost se naskytla na konci července 2009 – nakladatelství Computer Press hledalo nové autory. Odpověděl jsem tedy na inzerát a výsledkem naší spolupráce je kniha s názvem Jádro systému Windows, která vychází právě v těchto dnech.

Kniha zabírá poměrně širokou škálu témat. Při jejím psaní jsem měl na paměti tři následující cíle:

  • poskytnout čtenářům znalosti z obecné teorie operačních systémů,
  • popsat vnitřní strukturu a mechanismy některých součástí jádra Windows,
  • naučit čtenáře jádro zkoumat samostatně.

Abych dodržel první bod, zařadil jsem do některých kapitol knihy pasáže popisující obecné postupy a algoritmy, které se v operačních systémech objevují. Tyto postupy však nejsou specifické pro určitou rodinu systémů (Windows, Linux, Mac), ale platí do jisté míry obecně; operační systémy si z nich obvykle vybírají části, které se jim nejvíce hodí. A právě z tohoto pohledu považuji znalost obecných postupů za velmi důležitou: pomáhá lépe pochopit, proč jsou jednotlivé součásti systému naprogramovány, tak jak jsou naprogramovány.

Další pasáže knihy se věnují detailnímu popisu těch nejdůležitějších součástí jádra Windows. Jednotlivé součásti popisuji nejen na úrovni, jak vnitřně fungují, ale snažím se také naznačit, jak jsou přesně implementovány. Popis obvykle zachází až na přesné definice datových struktur, které Windows pro splnění daného účelu opravdu používají.

Text knihy je dále prošpikován zdrojovými kódy aplikací a ovladačů, které vám pomohou nejen pochopit mechanismy popisované v knize, ale dovolí vám také získat ještě hlubší informace o tom, jak Windows vlastně fungují. Jelikož mají zdrojové kódy ukázkových programů mnoho řádek, v textu knihy naleznete jenom zajímavé výňatky. Kompletní zdrojové kódy všech aplikací a ovladačů naleznete na internetových stránkách knihy na adrese http://www.jadro-windows.cz.

Kniha v jedenácti kapitolách pokrývá následující témata:

  • úvod do teorie operačních systémů, základní pojmy a datové struktury,
  • historie operačních systémů Microsoft Windows a architektura jejich jádra,
  • základy programování ovladačů,
  • synchronizace přístupu v paralelním prostředí,
  • obsluha výjimek, přerušení a systémových volání,
  • procesy, vlákna a jejich plánování,
  • vstup a výstup,
  • správa paměti,
  • registr Windows a souborové systémy.

Jak jsem již zmínil výše, spolu s vydáním knihy vznikají i internetové stránky http://www.jadro-windows.cz, na kterých si můžete stáhnout všechny ukázkové příklady včetně zdrojových kódů. Naleznete tam také ukázkovou kapitolu, užitečné materiály z různých oblastí a několik nástrojů, které představují skvělé pomocníky při zkoumání operačního sytému Na stránkách dále naleznete blog, kam plánuji psát zajímavé postřehy a zkušenosti.

Další informace, včetně ukázkové kapitoly a možnosti si knihu objednat, naleznete na stránkách nakladatelství Computer Press.



Volby prohlížení komentářů

Vyberte si, jak chcete zobrazovat komentáře a klikněte na „Uložit změny“.
Obrázek uživatele RubberDuck

Na tuto knihu se velmi těším.

Na tuto knihu se velmi těším. Jméno autora zajišťuje kvalitní přísun informací :)

Bol som na autorovej

Bol som na autorovej prednáške na Security Session 2012. Vyzeral byť skutočne veľmi znalý problémovej oblasti :)

Obrázek uživatele cm3l1k1

to on skutecne je... jeden z

to on skutecne je... jeden z mala...

.::[ optimista je člověk s nedostatkem informací.. ]::.
sed '66!d;s/[0-9]*\.\s*//;s/\./\!/' /usr/src/linux/M*