Vyšlo v týdeníku CHIPweek č. 7/96, 13. února 1996
Vytištěno z adresy: http://www.earchiv.cz/a96/a607k150.php3

Skok ke druhé zdi: izolované osobní počítače

Velké střediskové počítače, vybavené celými terminálovými sítěmi a provozující aplikace v režimu host/terminál, dlouho vládly počítačovému světu. Jejich absolutní nadvláda však skončila v okamžiku, kdy výrobní náklady nových počítačů klesly natolik, že se stalo ekonomicky únosným přidělit jednotlivým uživatelům počítač jen a jen pro jejich osobní využití, bez nutnosti sdílet jej s někým jiným. S nástupem tzv. osobních počítačů nastala v počítačovém světě doslovná revoluce, V jejím rámci samozřejmě došlo i na výpočetní model host/terminál.

Střediskové počítače, označované často také jako sálové - protože ke svému provozu vyžadovaly velké klimatizované sály - po dobu své nadvlády počítačovému světu samozřejmě procházely určitými změnami. Postupně se zvyšovala jejich rychlost a spolehlivost, snižovala se cena a zmenšovaly se jejich fyzické rozměry. Právě zmenšené fyzické rozměry pak dokonce daly vzniknout samostatné kategorii počítačů, tzv. minipočítačům. Ty se ale od svých velkých střediskových (sálových) protějšků nijak principiálně nelišily - zejména pokud jde o způsob fungování a způsob provozování jednotlivých aplikací. Stále to byly především hostitelské počítače vybavené terminály, „hostící" aplikace fungující v režimu host/terminál. Kvantitativní změny, vyvolané pokrokem ve výrobních technologiích, zkrátka stále ještě nezpůsobily změnu zásadní, kvalitativní.

Fenomén osobního počítače

Ke změně skutečně kvalitativní došlo až po roce 1981, kdy firma IBM představila světu svůj osobní počítač IBM PC. Nebyl to sice úplně první počítač, určený k tomu aby sloužil výhradně jedinému uživateli, ale byl to první skutečně osobní počítač, který se prosadil. Dokonce se prosadil tak výrazně, že se stal prakticky synonymem pojmu „osobní počítač", a jeho koncepční i konkrétní technické řešení posléze převzali i další výrobci, vyrábějící tzv. klony originálního IBM PC.

Řízením osudu se jako základní operační systém tohoto novodobého fenoménu stal MS DOS, který jakoby chtěl negovat většinu vlastností operačních systémů tehdejších střediskových počítačů. Byl a navždy zůstal jednouživatelským, což konec konců dobře odpovídalo samotné myšlence osobních počítačů. Vzhledem ke své jednouživatelskosti pak dokonce ani neznal pojem uživatele. Navíc ale byl celou svou koncepcí tzv. jednoúlohový, což znamená že nepočítal s tím, že by jeden uživatel mohl na svém počítači chtít provozovat více aplikací (úloh) najednou.

Ani terminály, ani terminálové relace

Jedním ze zajímavých základních rysů osobního počítače IBM PC s jednouživatelským a jednoúlohovým operačním systémem MS DOS byl jeho pohled na způsob komunikace s uživatelem. Střediskové počítače i pozdější minipočítače, jako typičtí představitelé hostitelských počítačů, předpokládaly existenci terminálů, skrz které jednotlivé aplikace komunikovaly se svými uživateli. Přitom ale nebylo nikdy předem známo, který konkrétní terminál to bude (tj. ke kterému si uživatel sedne). Jednotlivé terminálové relace pak mohly vznikat (být zřizovány) pouze dynamicky, v momentě kdy se uživatel přihlásil z konkrétního terminálu.

U osobního počítače IBM PC, vybaveného jedním monitorem a jedinou klávesnicí, bylo předem jasné „kam si uživatel sedne", a nebylo tedy nutné žádné dynamické zřizování terminálových relací. Dokonce vzhledem k jednoúlohovému charakteru operačního systému MS DOS (nedovolujícímu „normálním způsobem" spustit více jak jednu úlohu současně) nebylo vůbec třeba uvažovat nějaké terminálové relace - všechny výstupy k uživateli směřovaly „natvrdo" na jediný displej počítače PC, a všechny vstupy od uživatele se odebíraly z jediné existující klávesnice. Díky tomu si operační systém MS DOS dokonce mohl dovolit to, aby pojem terminálové relace vůbec neznal.

Aplikace je pánem počítače

Nástup osobních počítačů otevřel dosud netušené možnosti nejen pro výrobce hardwaru, ale samozřejmě i pro producenty softwaru. Existující aplikace, určené pro hostitelské počítače, byly na osobních počítačích nepoužitelné. Bylo nutné vyvinout zcela nové aplikace, nebo alespoň podstatně přepracovat ty, které sice již existovaly, ale byly uzpůsobeny výpočetnímu modelu host/terminál.

Nové aplikace, psané již na míru osobním počítačům IBM PC a kompatibilním, rychle převzaly jednouživatelskou a jednoúlohovou filosofii MS DOSu. Rychle si zvykly na to, že vedle nich nepoběží již žádné jiné aplikace (snad vyjma rezidentních programů), a tak se začaly chovat značně sobecky. Nemusely například pamatovat na to, že by o konkrétní systémové zdroje mohl souběžně usilovat i někdo jiný (jiné aplikace), a mohly si naopak všechny takovéto zdroje jednoduše natrvalo přivlastnit. Aplikace, psané pro osobní počítače PC, si mohly myslet že mají celý počítač jen a jen pro sebe - že mají výhradně ke své dispozici celou volnou operační paměť, že jen a jen pro sebe mají všechny soubory, tiskárny, klávesnici i displej, stejně tak zařízení připojená k sériovým portům atd. Také o operačním systému si mohly myslet, že je to jen jakási soustava rutin, která je jim plně k dispozici a nikdy neodmítne žádnou jejich žádost.

Aplikace, vycházející z právě popsaných předpokladů, již nebyly aplikacemi uzpůsobenými pro výpočetní model host/terminál. Nebyl to ani pozdější model server/pracovní stanice, a samozřejmě ani model klient/server. Jejich chování a především jejich celková koncepce vytvářela zcela specifický výpočetní model, pro který se dodnes neustálilo žádné specifické označení.

Problémy vyvstaly jinde

Aplikace, psané pro osobní počítače PC, tedy nemusely počítat se současnou existencí jiných aplikací či úloh, a díky tomu mohly být o to jednodušší. Nemusely například implementovat často dosti komplikované strategie a algoritmy, řešící vzájemnou koexistenci více úloh, čímž se zjednodušil i jejich vývoj. Na druhé straně toto zjednodušení umožnilo soustředit větší úsilí na zvýšení uživatelského komfortu a celkové užitné hodnoty jednotlivých aplikací. Časem se tak podařilo alespoň zčásti naplnit to, co uživatelům asi nejvíce vadilo na střediskových počítačích a minipočítačích, provozovaných v režimu host/terminál - malá uživatelská přívětivost a komfort, a nutnost s někým se o něco dělit. V tomto ohledu tedy osobní počítače postupně dostály svým proklamovaným cílům, i když se tak ale stalo přeci jen se značným časovým odstupem: zpočátku totiž měly i osobní počítače k uživatelské přívětivosti stejně daleko, jako hostitelské počítače.

Současně s odstraněním některých dřívějších problémů však rázem vyvstaly problémy nové, dosud netušené. Většina z nich přitom souvisí právě s decentralizací, kterou osobní počítače zavedly - každý osobní počítač sice byl hradem, na kterém se aplikace mohla chovat jako jediný a výhradní pán, ale na druhé straně si zase každá aplikace musela zajistit všechno znovu a sama, resp. znovu a sám si to musel zajistit vlastník počítače. Například nainstalovat novou aplikace bylo nutné na každém osobním počítači zvlášť, zatímco za dob centralizovaných střediskových počítačů to stačilo udělat jednou.

Jiným příkladem mohlo být odstraňování chyb, závad a jiných nestandardních situací. Jestliže dříve stačilo lokalizovat příčinu a opravit ji na jediném místě, nyní bylo nutné obdobnou závadu odstraňovat znovu a znovu, na každém jednotlivém počítači. Jestliže dříve stačil pro podporu uživatelů malý okruh systémových programátorů a techniků, nyní jejich „spotřeba" značně stoupla, protože bylo nutné neustále „obíhat" jednotlivé osobní počítače a individuálně řešit konflikty, do kterých se jejich uživatelé dostávali.

Ještě dalším zdrojem problémů se pak stávaly snahy uživatelů o vzájemnou spolupráci. Na původním hostitelském počítači, kde všechny datové (i jiné) soubory byly v zásadě „na jedné hromadě", nebylo velkým problémem sdílet tato data - například umožnit uživatelům současný přístup do jedné a téže databáze, editaci různých částí téhož dokumentu apod. V prostředí samostatných a zcela izolovaných počítačů PC to ale bylo velmi obtížné - dalo se to řešit v zásadě jen replikacemi, neboli vytvářením samostatných kopií. práce s těmito kopiemi ale přinášela značné riziko vzniku vzájemně nekonzistentních verzí jedněch a týchž dat.

Celkově se tedy objevily problémy jak v oblasti správy (které původní centralizace vyhovovala mnohem více), tak i v oblasti spolupráce uživatelů, a v neposlední řadě i problémy s tím, že některé věci byly stále ještě moc drahé, než aby je mohli uživatelé dostat jen a jen ke svému výhradnímu využití (například výkonné laserové tiskárny apod.). Lidé poměrně brzy pochopili, že zavedení zcela samostatných a od sebe izolovaných osobních počítačů je pouze opačným extrémem k původnímu ryze centralizovanému světu hostitelských počítačů.