Vyšlo v týdeníku Computerworld č. 1/95 v roce 1995
Vytištěno z adresy: http://www.earchiv.cz/a95/a501c120.php3

Faul-tolerant

Skutečnost, že počítače se dnes prosazují snad do všech oblastí lidské činnosti, překvapí asi jen málokoho. Důležitý je ale i způsob, jakým se počítače prosazují - mnohdy tak činí takovým způsobem, že lidé se stávají na počítačích bytostně závislí. Někdy dokonce i životem (jde-li například o lékařské přístroje řízené počítačem, o navigační systémy letadel apod.), ale nejčastěji majetkem. Snad není nutné podrobněji popisovat, co všechno může způsobit nenávratná ztráta důležitých dat. Mnohdy ale stačí i mnohem méně - například jen dočasné vyřazení nějakého počítačového systému z provozu. I takovýto dočasný výpadek může způsobit nemalé škody na ušlém zisku, přivodit sankce za nedodržení termínů, postarat se o ztrátu důvěry a tím o zisky budoucí apod. A že může jít opravdu o velké peníze, snad netřeba dodávat.

Nelze se proto divit, že lidé jsou dnes ochotni obětovat nemalé úsilí a vynaložit nemalé peníze na minimalizaci případných výpadků svých životně důležitých výpočetních systémů, a především pak na minimalizaci jejich následků.

Jedním z možných přístupů je usilovat o to, aby k výpadkům nedocházelo vůbec. To je sice chvályhodný cíl, ale v praxi se mu lze jen přiblížit na určitou nenulovou vzdálenost. I při nejlepší vůli a nejdokonalejší technice a technologii bude vždy existovat nenulová pravděpodobnost výpadku. Realističtějším přístupem je usilovat o to, aby pravděpodobnost výpadku byla únosně malá.

Ještě realističtějším přístupem je připustit, že k výpadkům občas dochází, a pak usilovat o to, aby jejich následky byly co možná nejmenší. Tedy například zařídit věci takovým způsobem, aby se celý výpočetní systém dokázal z výpadku některé své části zotavit sám, bez zásahu člověka, a pokračoval dál ve své činnosti. Nebo i připustit, že případné ošetření výpadku vyžaduje zásah lidského činitele, a minimalizovat rozsah a potřebnou délku tohoto zásahu, a s ním i délku výpadku celého výpočetního systému. Konkrétních technik a postupů, které tomuto cíli vychází vstříc, je celá řada - vždy ale počítají s určitou mírou redundance, v rámci které je používáno více zdrojů, prostředků či jiných komponent, než kolik by jich bylo skutečně zapotřebí. V případě detekce výpadku, poruchy, závady či jiné nestandardní situace pak dochází k automatickému, ev. i ručnímu odstavení vadné komponenty, a k jejímu zastoupení dosud nadbytečnými komponentami.

Zajímavé je, že právě v této oblasti má bývalé Československo hned světový primát. Profesor Antonín Svoboda, historickými prameny neoprávněně opomíjený průkopník výpočetní techniky a zakladatel dodnes existujícího Výzkumného ústavu matematických strojů, již počátkem 50. let navrhl a také prakticky realizoval první opatření, umožňující „přežít" případný výpadek. Svobodova myšlenka byla geniálně jednoduchá, ale na svou dobu skutečně revoluční: svůj samočinný počítač (příznačně nazvaný SAPO, dokončený v roce 1956) vybavil hned třemi identickými procesorovými jednotkami. Za normálních okolností pracovaly všechny tři souběžně, a jejich výsledky se shodovaly. Jakmile ale jedna z nich měla nějakou poruchu čizávadu, jí poskytované výsledky se začaly odlišovat od výsledků obou ostatních, a příslušné obvody ji automaticky odpojily. Dnes se tato myšlenka obecně označuje jako princip TMR (Tripple Modular Redundancy). S postupem času se pak samozřejmě objevovaly další myšlenky, techniky a postypy, zaměřené na minimalizaci dopadu případných výpadků.

Objevil se samozřejmě i termín, kterým se takovéto „výpadku odolné" systémy označovaly. Zpočátku šlo o přívlastek fail-safe, který v doslovném překladu znamená „zabezpečený proti selhání", resp. „neselhávající". Toto však bylo v mnoha konkrétních případech značně nadsazené, a tak se časem vžil poněkud realističtější termín fault-tolerant (doslova" tolerující výpadky"). Ten totiž neslibuje, že k výpadkům nebude docházet vůbec. Místo toho je připouští, ale snaží se naznačit, že nenadělají mnoho škod.