IUCV - IUCV
Komunikace mezi uživateli (IUCV) je mechanismus přenosu dat v systému Windows IBM VM řada operačních systémů. To bylo představeno s VM / SP Release 1 v roce 1980.[1]
Umožňuje vytvoření komunikačních kanálů z bodu do bodu, a to buď mezi dvěma virtuálními stroji, nebo mezi službami virtuálního stroje a hypervisoru. IUCV ve skutečnosti poskytuje formu interakce založené na zprávách mezi virtuálními stroji, která předpokládala interakci klient / server mezi fyzickými stroji připojenými k síti, která se později objevila v distribuovaných systémech.
IUCV je implementováno CP (hypervisor VM) a řídí všechny aspekty zřízení relací, předávání zpráv a řízení toku.
Základy IUCV
Inicializace IUCV
Než virtuální stroj může službu IUCV používat, musí nejprve uvést adresu oblasti v rámci svého adresního prostoru, kde bude CP schopen ukládat informace týkající se nevyřízených informací nebo stavu. Proto VYHLÁSIT PAMĚŤ
metoda musí být vyvolána jako první.
Cesta IUCV
V terminologii IUCV se relace mezi dvěma koncovými body nazývá a CESTA. Na každém konci je identifikován ID cesty, které je relevantní pouze pro virtuální stroj, který vlastní konec relace. Cesta je vždy propojený kanál - to znamená, že neexistují žádné cesty bez připojení.
Stanovení cesty
K vytvoření cesty musí inicializující virtuální stroj vyvolat PŘIPOJIT
metoda a zadejte identitu cíle cesty, což je buď název jiného virtuálního počítače, nebo název systémové služby CP - které všechny začínají znakem „*“ - což není platný znak v názvu virtuálního počítače.
Za předpokladu, že cíl inicializoval samotný IUCV, bude cíl informován o čekajícím připojení příchozí cesty a poté může buď použít AKCEPTOVAT
metoda - k dokončení vytvoření cesty - nebo SEVER
metoda - která účinně uzavírá čekající cestu.
Jakmile je cesta vytvořena, mohou být zprávy předávány mezi dvěma koncovými body cesty.
Zprávy IUCV
Zprávy IUCV jsou omezené, to znamená, že mají začátek a konec. Pokud čeká na cestu pro koncový bod více než jedna zpráva, IUCV zprávy nesloučí.
Zprávy se na cestu odesílají pomocí POSLAT
metoda. Druhý koncový bod pak může zprávu přijmout pomocí DOSTÁVAT
metoda. Pokud původní zpráva také požadovala odpověď, přijímající koncový bod pak použijte ODPOVĚĎ
způsob odeslání této odpovědi.
Řízení toku
Na cestě může být vytvořeno více zpráv. Počet povolených zpráv čekajících na cestu je určen během vytváření cesty, ale nesmí překročit 65535. Pokus o odeslání zprávy na cestě, která dosáhla limitu nevyřízených zpráv, bude mít za následek chybu.
Pozastavte a pokračujte
Přenos dat může být dočasně pozastaven použitím QUIESCE
metoda. Zatímco je cesta pozastavena, do cesty nejsou povoleny žádné další přenosy zpráv ŽIVOTOPIS
metoda je vyvolána virtuálním strojem, který původně pozastavil cestu.
Anketa
Virtuální stroj může dotazovat oznámení IUCV pomocí ZKUŠEBNÍ ZPRÁVA
a DOKONČENÍ ZKOUŠKY
metody. Pokud nic čeká, pak virtuální stroj počká, dokud nebudou k dispozici další informace.
Explicitní ukončení cesty
Když některý z koncových bodů vydá SEVER
metoda, cesta vstoupí do přerušeného (uzavíracího) stavu a je oznámen druhý koncový bod. V tomto okamžiku nejsou na cestě povoleny žádné nové zprávy - ale druhý koncový bod může stále načítat nevyřízené zprávy. Když druhý koncový bod také vydá SEVER
metoda je cesta účinně demontována.
Implicitní ukončení cesty
Cesta může být implicitně uzavřena, když
- Virtuální stroj se odhlásí
- Virtuální počítač se resetuje
- Virtuální stroj ukončí operace IUCV pomocí
ZÍSKEJTE PAMĚŤ
metoda
V obou případech je chování na druhém konci cesty identické s explicitním ukončením cesty.
Pomocí IUCV
Instrukce B2F0
Metody IUCV jsou vyvolány pomocí instrukce 'B2F0'x. Tato instrukce musí být vyvolána, když je ve stavu virtuálního supervizora (například supervizora hosta) nebo je generováno přerušení programu Výjimka operace. Instrukce je poté interpretována CP jako požadavek IUCV.
IPARML
IPARML je seznam parametrů Iucv PARaMeter. Jedná se o kontrolní blok, který popisuje vyvolanou metodu i její parametry. Po dokončení instrukce B2F0 jsou některá pole pozměněna CP, aby indikovala stav dokončení instrukce B2F0.
Oznámení
CP upozorní virtuální stroj na nevyřízenou zprávu nebo stavové informace tím, že provede externí kód přerušení X'4000 čekající na virtuální stroj. Dojde-li k přerušení, informace týkající se nevyřízeného stavu se zpřístupní na místě adresy určeném PROHLÁŠIT NÁRAZNÍK
metoda.
Makra
CP Makra
CP má specifické makro (IUCV), které generuje příslušný kód - včetně instrukcí a vyplnění IPARML - aby bylo možné implicitně zkontrolovat podrobnosti týkající se parametrů takové a takové metody nebo zkontrolovat konflikt.
Makra CMS
Lze vytvořit CMS pro vyřizování požadavků aplikací IUCV. CMS má vlastní sadu maker IUCV (CMSIUCV), která umožňují více aplikacím sdílet zařízení IUCV ve virtuálním stroji.
Oprávnění
Přístup k některým funkcím IUCV je řízen příkazy v CP Directory (seznam virtuálních strojů a jejich specifikace).
Virtuálnímu stroji může být povoleno přijímat komunikaci ze všech ostatních virtuálních strojů prostřednictvím POVOLIT IUCV
prohlášení o adresáři nebo navázat komunikační cestu s jakýmkoli jiným virtuálním strojem prostřednictvím JAKÉKOLI IUCV
prohlášení. Je také možné povolit virtuálnímu stroji vydávat požadavky na připojení cesty k jiným konkrétním virtuálním strojům zadáním názvu virtuálního počítače v příkazu IUCV, například: IUCV TARGETVM
. Ve výchozím nastavení má uživatel vždy povoleno se k sobě připojit.
Prohlášení IUCV řídí řízení přístupu vynuceného CP pro připojení IUCV. Virtuální stroj může navíc uložit vlastní řízení přístupu odmítnutím pokusu o připojení.
Příklady použití IUCV
Služby systému CP
Služby systému CP jsou koncové body IUCV, které samy o sobě nejsou virtuálními stroji, ale umožňují virtuálnímu stroji provádět funkce hypervisoru asynchronně nebo přistupovat ke konkrétním zařízením hypervisoru.
Některé příklady jsou
- * MSG: Služba systému zpráv. Umožňuje virtuálnímu počítači přijímat prostřednictvím konzoly virtuálního počítače specifické výstupy konzoly IUCV, jako jsou výsledky „CP MESSAGE“ nebo I / O konzoly. Toto používají subsystémy VM, jako je PROP (The PRogrammable OPerator) nebo Fullscreen CMS.
- * SPL: Umožňuje asynchronní přístup k souborům pro souběžný tisk. RSCS (Remote Spool Communication Subsystem) je příkladem aplikace, která využívá tuto systémovou službu.
GCS
GCS (The Group Control System) of VM uses IUCV to perform maintenance of shared memory areas between virtual machines. Pomocí implicitního ukončení cesty může virtuální počítač pro obnovení GCS zajistit, aby všechny zámky držené ve sdílené oblasti virtuálním strojem, který vstoupil do skupiny, ale neočekávaně odešel, byly správně uvolněny.
VM TCP / IP
VM TCP / IP - zásobník TCP / IP pro VM - používá IUCV buď k tomu, aby virtuální stroj mohl provádět operace soketů, nebo k tomu, aby virtuální stroj fungoval jako síťové rozhraní pro předávání celých rámců nebo datagramů mezi sebou a TCP / IP zásobník. The S / 390 a z / Architektura implementace Linux používá toto zařízení k implementaci síťového rozhraní do zásobníku VM TCP / IP.
Reference
- ^ Thompson, Samuel A. „Používání IUCV v CMS“ (PDF). PODÍL. Citováno 17. srpna 2019.
Viz také
- VMCF - Komunikační zařízení virtuálního stroje
- Adaptér typu kanál na kanál