| Archiv článků a přednášek Jiřího Peterky | |
| článek pochází z archivu autora, z adresy http://www.earchiv.cz/a94/a426c301.php3 | Vyšlo v týdeníku Computerworld č. 26/94, 1994 |
V prvním přiblížení si vlastnosti operačního systému DR Multiuser DOS můžeme shrnout takto: jde o víceuživatelský operační systém na bázi DOSu, určený pro provozování na počítačích s procesorem 80386 a vyšším. Z tohoto počítače vytváří víceuživatelský hostitelský počítač, pracující podle modelu host/terminál a schopný sloužit až 64 uživatelům současně. Každý z těchto uživatelů přitom může mít otevřeno až 8 dosovských relací (tj. mít současně spuštěno až osm "instancí" jednoúlohového DOSu) a v nich provozovat běžné aplikace pro prostředí DOSu. Všechny takto provozované aplikace (od všech uživatelů) přitom společně sdílí všechny systémové zdroje daného hostitelského počítače a samozřejmě se také dělí o jeho procesor. Souběžného běhu více úloh je dosaženo pomocí preemptivního multitaskingu, implementovaného na nejnižší možné úrovni. Použita je i zajímavá technika detekce neaktivních procesů, která umožňuje lépe hospodařit s časem procesoru a dosáhnout využití strojového času na více než 100 procent (v celkovém součtu). Přístupová práva jsou řešena obdobným způsobem jako v Unixu, včetně zavádění uživatelských skupin. Každá jednotlivá úloha přitom může mít k dispozici až 640 KB konvenční paměti, a kromě ní i rozšířenou paměť typu expanded (tj. paměť EMS). Paměť typu extended (tj. XMS) jednotlivé úlohy k dispozici nemají. Podporován je především textový režim zobrazení, z grafických režimů pak režim CGA - vyšší režimy pouze na tzv. systémové konzole, kterou je displej vlastního hostitelského počítače (a nikoli tedy na terminálech). Podporována je vícenásobná konektivita se sítěmi Novell NetWare - z jednoho hostitelského počítače lze současně otevřít až 16 samostatných relací s file serverem sítě NetWare.
V článku je popisována verze DR Multiuser DOS 5.11, která byla poskytnuta k recenzi. Na trhu by se však již brzy měla objevit novější verze 7 (Firma Novell se rozhodla sjednotit číslování verzí svých operačních systémů, a proto přeskočila verzi 6. Nová verze DR Multiuser DOSu tedy bude mít stejné číslo verze jako jednouživatelský Novell DOS 7.) - tam, kde se tato verze významněji liší od verze 5.11, je na to explicitně upozorněno.
DR Multiuser DOS umožňuje připojovat k hostitelskému počítači jednotlivé terminály třemi základními způsoby:
Terminály, které lze k hostitelskému počítači připojovat, mohou být v zásadě opět trojího druhu:
![]() |
Emulační program PCTERM, dodávaný jako standardní součást DR Multiuser DOSu, můžete využít jak pro emulaci znakového režimu na terminálu, tak i pro emulaci barevného grafického režimu v rozlišení CGA. Můžete jej provozovat na libovolném počítači PC, který má alespoň 256 KB paměti RAM. Pro připojení tohoto počítače k hostitelskému počítači potřebujete sériový kabel zapojený jako tzv. nulový modem - emulátor PCTERM je však schopen používat i tzv. softwarový handshake, takže vystačíte i s takovým sériovým kabelem, který má jen tři vodiče (zemnicí vodič a vzájemně překřížené vodiče TxD a RxD). Nejvyšší přenosovou rychlostí, kterou emulátor PCTERM zvládá, je 38 400 b/s.).
Jako samostatný doplněk (tj. nezahrnutý v ceně vlastního DR Multiuser DOSu) si můžete zakoupit i dokonalejší emulátor IMSTERM pro prostředí DOSu. Jeho Hlavní předností tohoto emulátoru (oproti emulátorům PCTERM, resp. PTERM) je to, že má formu rezidentního programu, a může tedy být provozován na pozadí jiného programu - dovoluje vám například pracovat "v lokálu" na nějaké aplikaci, v okamžiku skutečné potřeby aktivovat rezidentní emulátor, jeho prostřednictvím chvíli pracovat na hostitelském počítači a pak se zase vrátit zpět do původní "lokální" aplikace, jejíž běh nebyl vůbec přerušen. Tento emulátor již také zvládá vyšší přenosové rychlosti (až 115 000 kb/s) a kromě přímého připojení počítače PC v roli terminálu po sériovém kabelu umožňuje připojit počítač i přes veřejnou telefonní síť prostřednictvím modemu - což otevírá mnohé zajímavé možnosti (viz například scénáře č. 3 a 4). Ve verzi 7 DR Multiuser DOSu by již měl být tento emulátor jeho standardní součástí a měl by také být vybaven schopností přenosu souborů mezi hostitelským počítačem a emulovaným terminálem.
Ještě další možností je pak emulátor IMSTERM pro prostředí sítí NetWare (neboli: IMSTERM for NetWare). Tato varianta emulátoru se vyznačuje tím, že pro komunikaci emulovaného terminálu s hostitelským počítačem využívá přenosových schopností lokální sítě. Označení .. for NetWare.. přitom neznamená, že k tomu potřebujete plnohodnotnou síť Novell NetWare - znamená to, že pro vlastní přenos dat jsou využívány přenosové protokoly IPX/SPX sítí NetWare. Z čistě praktického pohledu to znamená, že na straně hostitelského počítače musíte mít nainstalovánu síťovou kartu a k ní ovladač pro síť Novell NetWare a na straně počítače v roli emulovaného terminálu musíte mít taktéž nainstalovánu vhodnou síťovou kartu a nad ní ovladač, který vytváří rozhraní IPX. Žádný server k tomu zapotřebí není (viz obr. 2.2).
![]() |
Správce systému přitom má možnost omezit počet relací, které mohou být současně zřízeny jak na systémové konzole, tak i na každém jednotlivém terminálu. Důvodem k takovémuto opatření nejčastěji bývá omezený objem operační paměti, který je na hostitelském počítači k dispozici.
DR Multiuser DOS se s otázkou uživatelů a přístupových práv vyrovnává způsobem, který velmi připomíná operační systém Unix. Jednotliví uživatelé jsou identifikováni přidělenými uživatelskými jmény, jejich uživatelské účty jsou chráněny hesly a stejně jako v Unixu jsou uživatelé zařazováni do skupin (tj. každý je vždy členem právě jedné skupiny).
Soubory umístěné na hostitelském počítači patří vždy určitým konkrétním uživatelům (kteří jsou jejich vlastníky) a přístupová práva k těmto souborům jsou stejně jako v Unixu stanovována samostatně pro vlastníka, pro skupinu, do které vlastník patří, a pro "zbytek světa". Na rozdíl od Unixu se ale v DR Multiuser DOSu v rámci každé z těchto tří kategorií stanovuje právo čtení, právo zápisu a právo zrušení (delete), zatímco v Unixu se stanovuje právo čtení, zápisu a provedení (a možnost zrušení je chápána jako zvláštní případ zápisu, resp. přepisu).
Tak jako ostatně v každém víceuživatelském systému, musí i v DR Multiuser DOSu existovat alespoň jeden superuživatel - tedy uživatel s maximálními právy, kterého se žádná omezení netýkají (a který například mění implicitně nastavovaná přístupová práva, zřizuje a ruší uživatelské účty apod.). Uživatelské jméno tohoto superuživatele není pevně dáno (jako tomu bývá v Unixu), ale je možné jej volit (v průběhu instalace DR Multiuser DOSu).
Zajímavou možností, kterou DR Multiuser DOS nabízí, je tzv. "otevřený" systém: jde o takovou variantu víceúlohového DOSu, která se nesnaží rozlišovat mezi jednotlivými uživateli a vlastně s nimi ani nepočítá. Každému, kdo si sedne k některému z terminálů či k systémové konzole, pak nabízí v zásadě identické postavení a identická přístupová práva ke všem systémovým zdrojům.
Tato "otevřená" varianta je alternativou dosud popisované víceuživatelské varianty, která počítá s jednotlivými uživateli a s individuálními přístupovými právy (a která je označována jako "bezpečná", resp. "secure"). Nicméně "otevřená" varianta nemusí být zcela nezabezpečená proti neoprávněnému přístupu - v rámci ní je možné každý jednotlivý soubor chránit individuálním přístupovým heslem.
Obě varianty jsou samozřejmě vzájemně neslučitelné a nemohou existovat vedle sebe. Proto se již při instalaci DR Multiuser DOSu musíte rozhodnout, zda si přejete nainstalovat "otevřený" víceúlohový systém, nebo "bezpečný" víceuživatelský operační systém.
Zajímavou a velmi důležitou vlastností DR Multiuser DOSu je jeho schopnost koexistence s běžným jednouživatelským a jednoúlohovým DOSem. Nikoli sice ve stejném čase (což by asi nemělo příliš velký význam), ale zato na stejném počítači: oba operační systémy mohou být nainstalovány současně a uživatel si při počátečním zavádění systému (tzv. bootu) může vybrat, který z nich má být skutečně zaveden.
Díky tomu je pak možná i taková strategie, kdy na určitém počítači je standardně provozován běžný jednouživatelský DOS (ať již MS DOS, PC DOS či DR DOS), a pouze v případě skutečné potřeby je místo běžného DOSu zaveden víceuživatelský DR Multiuser DOS. Uživatelé tak nepřichází o své běžné pracovní prostředí, pouze dostávají na výběr ještě jednu další alternativu, kterou mohou, ale nemusí používat.
Možnost koexistence DR Multiuser DOSu s běžným DOSem je umožněna mj. i tím, že oba operační systémy si "zabydlují" pevné disky i diskety stejným způsobem (tj. používají stejnou organizaci souborů na discích). To, co si DR Multiuser DOS musí u každého souboru pamatovat navíc (zejména jeho vlastníka a přístupová práva), přitom ukládá přímo do příslušných souborů takovým způsobem, že pro běžný DOS je to neviditelné.
Vedle možnosti sdílení disků a na nich uložených souborů je významnou charakteristikou většiny víceuživatelských systémů také možnost sdílení tiskáren více uživateli. Nejinak je tomu i u DR Multiuser DOSu, jehož přístup k problematice tisku by bylo možné vystihnout sloganem: "odkudkoli lze tisknout na kterékoli tiskárně". DR Multiuser DOS samozřejmě umožňuje připojit tiskárny přímo k hostitelskému počítači, a to všemi obvyklými způsoby, tj. přes paralelní i přes sériová rozhraní. Kromě toho však umožňuje připojit sdílené tiskárny i k jednotlivým terminálům (avšak pouze k počítačům PC vystupujícím v roli emulovaných terminálů a používajícím některý z emulátorů "šitých na míru" DR Multiuser DOSu, jako jsou například emulátory PCTERM, IMSTERM, ev. další). Všem uživatelům pak nabízí jednotný pohled na tiskárny, který zcela zastírá místo a způsob jejich skutečného připojení. Uživatel, pracující u jednoho terminálu pak může tisknout například na tiskárně připojené k jinému terminálu.
Tak jako obecně v každém prostředí, které připouští současný běh více úloh, je i v DR Multiuser DOSu tisk řešen pomocí spoolingu. Příslušné spoolovací prostředky přitom umožňují nejen manipulovat s tiskovými úlohami (zejména rušit je apod.), ale dovolují také dynamicky přidělovat priority tiskovým úlohám, připraveným k tisku a čekajícím ve frontě na tisk.
Zajímavostí je i program SCRIPT, dodávaný jako součást DR Multiuser DOSu. Tento program je určen pro převod standardních ASCII-textů do PostScriptu ale kromě toho dokáže převádět do PostScriptu i výstupní data, formátovaná pro tisk na tiskárnách kompatibilních s tiskárnami HP Laserjet II. Navíc může být tento program nainstalován i jako rezidentní program, který průběžně zachytává data, určená k tisku, převádí je do tvaru PostScriptu a posílá je na postscriptovou tiskárnu. Tím se vlastně stává emulátorem tiskárny HP LJ II na postscriptové tiskárně.
Multitasking je v DR Multiuser DOSu řešen jako preemptivní - což znamená, že jednotlivým úlohám je procesor vždy přidělován na určitý časový interval (časové kvantum, anglicky: time slice) a po jeho uplynutí je jim zase odebírán. Alternativou k tomuto řešení by byl tzv. nepreemptivní multitasking, v jehož rámci by úloha musela sama a z vlastní iniciativy vrátit procesor (resp. předat jej jiné úloze) - to by ale znamenalo, že by o mechanismu přepínání procesou mezi jednotlivými úlohami musela vědět a být mu přizpůsobena. Preemptivní multitasking, implementovaný v DR Multiuser DOsu, toto nevyžaduje: procesor je jednotlivým úlohám odnímán "násilím", bez jejich vědomí. V důsledku toho pak jednotlivé úlohy nemusí o existenci multitaskingu vůbec vědět - mohou to tedy být i zcela běžné úlohy, psané pro jednoúlohové prostředí běžného DOSu.
| Tento článek pochází z archivu J. Peterky, z adresy http://www.earchiv.cz/a94/a426c301.php3 |