VM (operační systém)
Logo | |
Vyvíjí | IBM |
---|---|
Rodina OS | VM |
Druh | Virtualizace |
První zveřejnění | 1972 |
Aktuální verze | IBM z/VM V7.3 / 16. září 2022 |
Podporované platformy | System/370, System/390, zSeries, IBM zEnterprise System |
Licence | 1972–1981 volné dílo, od roku 1976 proprietární |
Stav | aktuální |
Předchůdce | CP-67 |
Oficiální web | www |

VM neboli VM/CMS je rodina operačních systémů společnosti IBM, které realizují virtuální stroje na sálových počítačích řad IBM System/370, IBM System/390, zSeries, System z a na systémech s nimi kompatibilními, včetně emulátoru Hercules pro osobní počítače.
Návrh
[editovat | editovat zdroj]Srdcem architektury VM je hypervizor nazývaný Control Program zkráceně CP, VM-CP nebo někdy prostě VM. Běží na fyzickém hardwaru a vytváří prostředí pro virtuální stroje. VM-CP poskytuje plnou virtualizaci fyzického stroje – včetně všech vstupně/výstupních a jiných privilegovaných operací. Zajišťuje sdílení prostředků systémů včetně správy zařízení, odbavování, správy virtuální paměti a dalších úkolů tradičního operačního systému. VM poskytuje každému uživateli zvláštní virtuální stroj s vlastním adresním prostorem, virtuálními zařízeními, atd., na němž je možné spouštět libovolný software jako na fyzickém stroji. Na sálovém počítači s VM mohou běžet stovky nebo tisíce instancí virtuálních strojů. Hypervizor VM-CP je reimplementací CP-67 s názvem CP-370, který je zase reimplementací CP-40.
Na každém virtuálním stroji může běžet jiný hostovaný operační systém, např.
- CMS (Conversational Monitor System původně Cambridge Monitor System CP/CMS). Jednoduchý jednouživatelský operační systém, který se používal nejčastěji. Jeho interaktivní prostředí je srovnatelné s prostředím jednouživatelského PC, včetně systému souborů, programovacích služeb, přístupu k zařízením, a zpracování příkazového řádku. (Zatímco dřívější verze CMS byly nelichotivě označovány za „CP/M na sálovém počítači“, je toto přirovnání anachronismem; autor CP/M Gary Kildall byl zkušeným uživatelem CMS.)
- GCS (Group Control System), který poskytuje omezenou simulaci MVS API. IBM původně poskytla GCS za účelem provozování VTAM bez servisního virtuálního stroje OS/VS1 a komunikační síťové aplikace pro VTAM (VCNA). Pod GCS také běžel RSCS V2.
- Některý z rozšířených operačních systémů společnosti IBM, například MVS a DOS/VSE rodiny, OS/VS1, TSS/370 nebo jiná vrstva samotného VM/370 (viz níže)) je možné zavést a spustit bez úprav. VM hypervizor považuje hostované operační systémy za aplikační programy se zvláštními oprávněními – brání jim v přímém používání privilegovaných instrukcí (které by umožnily aplikaci převzít řízení celého systému nebo jeho významné části), ale činnost privilegovaných instrukcí sám simuluje. Většina operačních systémů sálových počítačů normální aplikaci, které se snaží si přivlastnit privilegia operačního systému, ukončí. Hypervizor VM může simulovat několik typů konzolových terminálů pro hostovaný operační systém, jako je hardwarový řádkový terminál 3215, rodina grafických terminálů IBM 3270 nebo integrovaná konzole novějších strojů IBM System/390 a System Z. Další uživatelé mohou přistupovat k běžícím virtuálním strojům pomocí příkazu DIAL na přihlašovací obrazovce, který propojí jejich terminál s prvním dostupným emulovaným zařízením 3270 nebo prvním dostupným zařízením 2703, pokud uživatel zadal příkaz DIAL z terminálu realizovaného psacím strojem.
- Další kopie VM. Ve virtuálním stroji lze plně virtualizovat instance VM druhé úrovně. Tímto způsobem se provádí vývoj a testování systému VM (VM druhé úrovně může potenciálně implementovat jinou virtualizaci hardwaru). Tato technika byla použita při vývoji softwaru pro S/370, než byl k dispozici hardware S/370, a používala se při vývoj nového hardwaru v IBM. Literatura cituje praktické příklady virtualizace s pěti úrovněmi.[1] Úrovně VM pod vrcholem jsou také považovány za aplikace ale sie zvláštními právy.
- Kopie mainframové verze systému AIX nebo Linux. V prostředí sálových počítačů se tyto operační systémy často provozují pod VM a zachází se s nimi jako s jinými hostovanými operačními systémy. (Mohou se také spustit jako 'nativní' operační systémy na holém hardwaru.) Krátkou dobu existovala také verze IX/370 a také verze S/370 a S/390 systému AIX (AIX/370 a AIX/ESA).
- Specializovaný VM subsystém. Na virtuálních strojích s VM-CP běží několik jiných systémů než CMS, které mohou uživatelům CMS poskytovat služby, jako např. spooling, meziprocesová komunikace, podpora specializovaných zařízení a sítě. Pracují v zákulisí a rozšiřují služby dostupné na CMS aniž by se přidávaly k řídicímu programu VM-CP. Díky tomyu, že běží v samostatných virtuálních strojích, mají stejnou ochranu datové bezpečnosti a spolehlivost jako jiní uživatelé VM. Jejich příklady jsou:
- RSCS (Remote Spooling and Communication Subsystem, alias VNET) – komunikační a přenosové prostředky mezi virtuálními počítači a jinými systémy[2]
- RACF (Resource Access Control Facility) – systém datové bezpečnosti
- Shared File System (SFS), který organizuje sdílené soubory v adresářovém stromě (servery jsou obvykle pojmenovány „VMSERVx“)
- VTAM (Virtual Telecommunications Access Method) – nástroj, který poskytuje podporu sítě SNA
- PVM (VM/Pass-Through Facility) – nástroj, který poskytuje vzdálený přístup k jiným VM systémům
- TCPIP, SMTP, FTPSERVE, PORTMAP, VMNFS – sada serviosních strojů, které poskytují VM/CMS síťovou komunikaci protokoly TCP/IP
- Db2 Server pro VM – databázový systém SQL, servery se často jmenují „SQLMACH“ a „SQLMSTR“
- DIRMAINT – zjednodušený systém správy uživatelských adresářů (adresář je seznam všech účtů na systému, včetně konfigurace virtuálního hardwaru, uživateliských hesel a minidisků).
- MUMPS/VM – implementace databáze a programovacího jazyka MUMPS, které mohly běžet jako host na VM/370.[3] MUMPS/VM byl představen v roce 1987 a vyvíjen do roku 1991.[4]
- Uživatelem napsaný nebo upravený operační systém, jako je VP/CSS společnosti National CSS nebo VPS/VM Bostonské univerzity.
Verze
[editovat | editovat zdroj]Existují následující verze:
- Virtual Machine Facility/370
- VM/370 vydaný v roce 1972 je reimplementací staršího operačního systému CP/CMS pro IBM System/370.
- VM/370 Basic System Extensions Program Product
- VM/BSE (BSEPP) je vylepšení VM/370, které přidává podporu pro více zařízení (např. jednotky DASD s pevnou blokovou architekturou typu 3370), vylepšení prostředí CMS (např. vylepšený editor), a některá vylepšení stability CP.
- VM/370 System Extensions Program Product
- VM/SE (SEPP) je vylepšení VM/370, které obsahuje služby systému VM/BSE, několik oprav a nových vlastností.
- Virtual Machine/System Product
- VM/SP, dílčí úkol verze, nahrazuje VM/370, VM/BSE a VM/SE. Vydání 1 přidalo EXEC2 a XEDIT Systém Product Editor; Vydání 3 přidalo REXX; Vydání 6 přidalo sdílené systém souborů.[5]
- Virtual Machine/System Product High Performance Option
- VM/SP HPO přidává k VM/SP podporu dalších zařízení a funkčností, a na některých S/370 strojích umožňuje používat až 64 MB fyzické paměti. Tato verze byla určena pro uživatele, kteří používají několik S/370 hostů současně.[6][7]
- Virtual Machine/Extended Architecture Migration Aid
- Smyslem VM/XA MA je usnadnit migraci z MVS/370 na MVS/XA tím, že oba mohou běžet současně na stejné sestavě procesorů.[8]
- Virtual Machine/Extended Architecture System Facility
- VM/XA SF je vylepšení VM/XA MA s lepší funkčností a výkonností.[9]
- Virtual Machine/Extended Architecture System Product
- VM/XA SP je vylepšení VM/XA SF s lepší funkčností a výkonností, nabízené jako náhrada za VM/SP HPO na strojích podporující S/370-XA. Obsahuje verzi CMS, které může běžet buď v režimu S/370 anebo v režimu S/370-XA.[10]
- Virtual Machine/Enterprise Systems Architecture
- VM/ESA poskytuje služby systému VM/SP, VM/SP HPO a VM/XA SP. VM/ESA verze 1 může běžet v S/370, ESA/370 nebo ESA/390 režim; nepodporuje režim S/370 XA. Verze 2 pouze běží v ESA/390 režim. s/370-schopný verze systému VM/ESA byly skutečně jejich vlastní zvláštní verze z ESA/390 verze systému VM/ESA, protože verze pro S/370 jsou založeny na starším kódu VM/SP HPO, zatímco verze ESA/390 jsou založeny na novějším kódu VM/XA.[11]
- z/VM
- z/VM je poslední stále široce používanou verzí, která je jedním z hlavních řešení plné virtualizace pro trh sálových počítačů.[zdroj?] Poslední verzí, která mohla běžet v režimu ESA/390 byl z/VM 4.4; další verze poběží pouze v režimu z/Architecture.[12]
CMS ve jméně znamená Conversational Monitor System, což je komponenta produktu, kterou je jednouživatelský operační systém pro virtuální stroj, který poskytuje konverzační sdílení času pod VM.
Rozhraní hypervizoru
[editovat | editovat zdroj]Společnost IBM poprvé použila termín hypervizor pro 360/65[13] a později jej používal pro obsluhu instrukcí DIAG na CP-67.
Instrukce Diagnose ('83'x–žádný mnemonic) je privilegovaná instrukce původně určená pro provádění „vestavěných diagnostických funkcí nebo jiných funkcí pro konkrétní model počítače.“[14] Později společnost IBM použila instrukce DIAG pro „komunikaci mezi virtuálním strojem a hypervizorem.“[15][16] Instrukce obsahuje dvě čtyřbitová čísla registrů označovaná Rx a Ry, které mohou „obsahovat adresu operandu v paměti nebo vracet kódy předávané rozhraní DIAGNOSE,“ a dvoubytový kód, „který CP používá pro určení co má funkce DIAGNOSE provádět.“[15] Používají se následujíc funkce:
Šestnáctkový kód | Funkce |
---|---|
0000 | Uložit rozšířený identifikační kód |
0004 | Zkontrolovat reálnou paměť |
0008 | Funkce virtuální konzole – provést CP příkaz |
0018 | Standardní vstupní/výstupní operace na zařízení s přímým přístupem |
0020 | Obecné vstupně/výstupní operace – provede libovolný platný řetězec CCW pro páskové nebo diskové zařízení |
003C | Aktualizuje adresář VM/370 |
0058 | 3270 rozhraní virtuální konzole – provádí celoobrazovkové vstupně/výstupní operace na terminálu IBM 3270 |
0060 | Určí velikost úložiště virtuálního stroje |
0068 | Komunikační služby Virtual Machine Communication Facility (VMCF) |
Zpočátku byl systém CMS schopen běžet na holém hardwaru jako skutečný operační systém (i když taková konfigurace nebyla obvyklá). Později jej bylo možné spustit pouze jako hostovaný systém pod VM, protože pro operace se systémem souborů a jiné služby VM využívá rozhraní hypervizoru pro VM-CP. Toto paravirtualizační rozhraní:
- Poskytuje rychlý přístup k VM-CP s nižší režií než má plná simulace.
- Bylo původně vyvinuto jako výkonnostní vylepšení pro CP/CMS release 2.1, které bylo důležitým milníkem efektivity staršího CP.
- Používá nevirtualizované strojové instrukce závislé na modelu jako signál mezi CMS a CP: DIAG (diagnose).
Minidisky
[editovat | editovat zdroj]

CMS a jiné operační systémy často mají mnohem menší požadavky na zařízení s přímým přístupem (DASD), než je velikost skutečných svazků. Z tohoto důvodu CP umožňuje instalace definovat virtuální disky libovolné velikosti až do kapacity zařízení. Pro CKD svazky musí být minidisky definovány v celých cylindrech. Minidisk má stejné atributy jako podkladový fyzický disk, ale obvykle je menší a začátek každého minidisku je namapován na válec nebo blok 0. K minidisku lze[pozn. 1] přistupovat pomocí stejného kanálového programu jako na fyzický disk. Minidisk se systémem souborů CMS se nazývá CMS minidisk, i když CMS není jediný systém, který jej může používat.
Je běžnou praxí definovat celý svazek minidisků pro použití takovými hostovanými operačními systémy jako je z/OS místo použití DEDICATE
přiřadit svazek určitému virtuálnímu stroji. Navíc „plný-pack odkazy“ se často definují pro každý DASD v systému, a jsou vlastněné uživatelem MAINT. Používají se pro zálohování systému pomocí programu DASD Dump/Restore, který přesně zapíše celý obsah DASD na pásku (nebo na jiný DASD).
Shared File System
[editovat | editovat zdroj]
Na nových verzích VM lze většinu systému nainstalovat na SFS, přičemž několik zbývajících minidisků je nezbytně nutných pro spuštění systému a patří serverům, které obhospodařují fond souborů.

VM/SP release 6 představilo Shared File System[17] který významně vylepšil souborovou funkcionalitu CMS. Systém souborů CMS minidisků na rozdíl od SFS nepodporuje adresáře (složky). SFS také přináší jemnější datovou bezpečnost. S CMS minidisky lze systém zkonfigurovat, aby uživatelům umožnil nebo zakázal pouze čtení nebo i zápis na disk, ale jednotlivé soubory nemohou mít stejnou datovou bezpečnost. SFS to zmírňuje a významně vylepšuje výkonnost.
SFS poskytují služební virtuální stroje. Na moderním systému VM jsou požadovány obvykle tři: VMSERVR „stroj pro zotavení“, který ve skutečnosti neposkytuje žádné soubory; VMSERVS, server pro fond souborů VMSYS; a VMSERVU, server pro uživatelský fond souborů VMSYSU.[18] Servery souborového fondu vlastní několik minidisků, obvykle včetně CMS disku A (s adresou virtuálního zařízení 191 obsahující konfigurační soubory fondu souborů), řídicí disk, žurnálovací disk a libovolný počet datových disků, na kterých jsou uživatelské soubory.
Pokud je uživatelský účet nakonfigurován tak, aby používal pouze SFS (a nevlastní žádné minidisky), bude FILEPOOL:USERID.
uživatelův disk A, a libovolné další adresáře, které si uživatel vytvoří, budou FILEPOOL:USERID.DIR1.DIR2.DIR3
, přičemž ekvivalentní unixová cesta bude /dir1/dir2/dir3
. SFS adresáře mohou mít mnohem podrobnější řízení přístupu v porovnání s minidisky (které, jak bylo zmíněno výše, mohou mít často pouze heslo pro čtení, heslo pro zápis a heslo pro více zápisů). SFS adresáře také řeší problémy, ke kterým může docházet, když dva uživatelé současně zapisují na stejný CMS minidisk, což může způsobit poškození disku (protože CMS VM provádějící zápis nemusí vědět, že na minidisk zapisuje i jiná instance CMS).
Servery souborového fondu také obsluhují příbuzný Byte File System (BFS), který se používá k ukládání souborů v unixovém stylu. BFS je určen především pro VM OpenExtensions POSIX prostředí pro CMS. Uživatelské virtuální stroje s CMS samy komunikují s virtuálními stroji, které slouží jako SFS servery, pomocí mechanismu IUCV.[19]
Historie
[editovat | editovat zdroj]

Nejstarší historie VM je popsaná v článcích CP/CMS a Historie CP/CMS. VM/370 je reimplementací CP/CMS, která byla zpřístupněna v roce 1972 v rámci oznámení IBM System/370 Advanced Function (které oznamovalo dostupnost hardwaru pro virtuální paměť a operačních systémů pro řadu IBM System/370. První vydání VM až do VM/370 Release 6 byly dostupné se zdrojovým textem do roku 1981, a dnes jsou považovány za veřejně dostupné. Tato strategie skončila v roce 1977 zpoplatněnými upgrady VM/SE a VM/BSE a v roce 1980 upgradem VM/System Product (VM/SP). IBM však mnoho let pokračovala v poskytování aktualizací ve formě zdrojových textů pro existující kód, i když upgrady všech kromě bezplatného základu vyžadovaly licenci. Stejně jako u CP-67 způsobovaly privilegované instrukce ve virtuálním stroji programové přerušení a CP simuloval chování privilegovaných instrukcí. VM zůstala důležitou platformou uvnitř IBM používanou pro vývoj operačních systémů a používání sdílení času; pro zákazníci však zůstával „jiným operačním systém společnosti IBM“. Rodiny systémů OS a DOS zůstávají strategickými produkty IBM, a zákazníci nebyli vybízeni k provozování VM. Ti, kteří to uřinili, navázali úzké pracovní vztahy a pokračovali v modelu komunitní podpory prvních uživatelů CP/CMS. Mezitím se systém potýkal s politickými boji uvnitř IBM o to, jaké prostředky by měly být v projektu dostupné ve srovnání s jinými aktivitami IBM. Základní problém systému se projevil na úrovni terénního prodeje IBM: VM/CMS prokazatelně snižoval množství hardwaru potřebného pro podporu daného počtu uživatelů se sdílením času. A společnost IBM se koneckonců zabývala prodejem počítačových systémů.
Melinda Varian uvádí tento fascinující citát ilustrující neočekávaný úspěch VM:[20]
Marketingové prognózy pro VM/370 předpovídaly, že za celou dobu života produktu nebude VM provozováno na více než 168 počítačích. Ve skutečnosti se na prvních 168 počítačích dodaných zákazníkům provozovalo pouze CP a CMS. O deset let později mělo být deset procent velkých procesorů dodávaných z Poughkeepsie určeno pro provoz VM, stejně jako velmi podstatná část strojů střední třídy, které byly vyrobeny v Endicottu. Než uplynulo 15 let, bylo více VM licencí než MVS licencí.
Verze PC DOSu, která běží na CMS na XT/370 (a později na AT/370), se nazývá VM/PC. VM/PC 1.1 byla založena na VM/SP release 3. Když IBM představila procesorové karty P/370 a P/390, mohl počítač PC spouštět plné systémy VM, včetně VM/370, VM/SP, VM/XA a VM/ESA (tyto karty byly plně kompatibilní se sálovými počítači S/370 a S/390, a mohly provozovat libovolný operační systém S/370 z 31bitového období, například MVS/ESA, VSE/ESA).
Kromě základních vydání VM/SP společnost IBM také představila VM/SP HPO (High Pertformance Option). Tento doplněk (který se instaluje přes základní VM/SP vydání) vylepšuje několik klíčových vlastností systému, včetně umožnění používání více než 16 MB paměti (RAM) na podporovaných modelech (např. IBM 4381). S nainstalovaným VM/SP HPO je nový limita byl 64 MB; ale, jediný uživatel (nebo virtuální stroj) nemohli používá více než 16 MB. Funkce systému spool souborů byly také vylepšené, což umožňuje, aby 9900 spoolové soubory mohly být vytvářeny na uživatelském disku, místo na 9900 pro celý systém. Architektura spool systém souborů byla také vylepšena, každý spool soubor má nyní přiřazený uživatelský ID, a reader soubor řízení bloky byly nyní držen ve virtuální paměti. Systém mohl být také zkonfigurován, aby neumožňoval určitým uživatelům používat vektorové funkce (pomocí uživatelských adresářových položek).[6]
Od VM/SP Vydání 1 podporovalo VM multiprocesorové systémy. Verze VM pro IBM System/370 (jako je např. VM/SP a VM/SP HPO) podporovala maximálně dva procesory, s systém fungující v buď UP (uniprocessor) režim, MP (multiprocessor) režim, anebo AP (připojený procesor) režim.[21] AP režim je totéž jako MP režim, kromě druhý procesor postrádá I/O funkčnost. System/370-XA vydání/vá of VM (jako je např. VM/XA) podporoval více. Systém/390 vydání/vá (jako je např. VM/ESA) téměř zcela odstraněny limity, a některé moderní z/VM systémy mohou mít tak mnoho jak 80 procesory.[22] Na-VM limit pro definované procesory je 64.
Když IBM představil System/370 Extended Architecture na 3081, zákazníci byly postaveni před potřebu spustit produkční systém MVS/370 při testování MVS/XA na stejném stroji. Řešením IBM byl VM/XA Migration Aid, který používal novou instrukci Start Interpretive Execution (SIE) pro spustění virtuálního stroje. SIE automaticky zpracovávalo některé privilegované instrukce a v případech, vrátilo se do CP pro případy, které nemohly zpracovávat. Processor Resource/System Manager (PR/SM) pozdějšího IBM 3090 také používal SIE. Existovalo několik produktů VM/XA než byly nakonec nahrazeny systémy VM/ESA a z/VM.
Kromě podpory RSCS sítí společnost IBM také poskytla uživatelům sítě VTAM. ACF/VTAM pro VM byl plně kompatibilní s ACF/VTAM na MVS a VSE.[23] Stejně jako RSCS, i VTAM na VM běžel pod specializovaným operačním systémem GCS. VM však také podporoval sítě TCP/IP. Koncem 80. let 20. století společnost IBM vyvinula TCP/IP zásobník pro VM/SP a VM/XA.[24] Zásobník podporoval sítě IPv4 a různé systémy síťových rozhraní (např. propojení kanál-kanál mezi sálovými počítači nebo specializovaný počítač IBM RT pro zpřístupnění sítí Token ring nebo Ethernet). Zásobník poskytoval podporu pro připojení protokole Telnet, a to buď z jednoduchých emulátorů terminálů v řádkovém režim nebo emulátorů kompatibilních s VT100, anebo z vlastních terminálových emulátorů IBM 3270. Zásobník také poskytoval FTP server. IBM také vyráběla volitelný NFS server pro VM; první verze byly poměně primitivní, ale moderní verze jsou mnohem pokročilejší.[25]
Další síťovou volbou bylo VM/Pass-Through Facility (PVM). PVM umožňuje jako VTAM spojení na vzdálené VM/CMS systémy i na jiné systémy IBM.[26] Pokud byly dva VM/CMS uzly propojeny spojením kanál-kanál nebo bisync spojem (který mohl používat komutovaný modem nebo pronajatý okruh), uživatel se mohl na dálku připojit na oba systémy zadáním příkazu „DIAL PVM“ na přihlašovací obrazovce VM a zadáním jména systému (nebo výběrem ze seznamu dostupných uzlů). Případně mohl uživatel v CMS použít program PASSTHRU, který byl nainstalován s PVM a umožňoval rychlý přístup ke vzdáleným systémům bez odhlášení od relace uživatele. PVM také umožňoval přístup k jiným než VM systémům pomocí emulační techniky 3x74. Pozdější vydání PVM obsahovala komponentu, která umožňovala připojení ze sítě SNA.
VM byl také základní operační systém sítě BITNET, protože systém RSCS pro VM poskytoval jednoduchou síť, kterou nebylo obtížné realizovat, a která byla poměrně spolehlivá. VM uzly byly propojeny pomocí RSCS VM s každým VM systémem, se který bylo možné komunikovat, a uživatelé mohli posílat a přijímat zprávy, soubory a dávkové úlohy pomocí RSCS. Příkaz „NOTE“ používal XEDIT pro zobrazení dialogu pro vytvoření e-mailu, který každý uživatel mohl posílat. Pokud uživatel zadal adresu ve tvaru user at node
, zpráva byla doručena do RSCS, které ji pak doručilo k cílovému uživateli na cílovém systému. Pokud bylo v uzlu nainstalované TCP/IP, RSCS mohlo použít stroj se SMTP serverem pro doručení zprávy na vzdálené systémy, i zprávy přijímat. Pokud uživatel zadal jako příjemce user at some.host.name
, program NOTE doručil e-mail na SMTP server, který směroval zprávu do cílového uzlu v Internetu.
Role virtuálního počítače se v rámci IBM změnila, když vývoj hardwaru vedl k významným změnám v architektuře procesorů. Zpětná kompatibilita zůstala základním kamenem rodiny sálových počítačů IBM, která stále používá základní instrukční sadu uvedenou s původním IBM System/360. Potřeba efektivního využití 64bitové řady zSeries však učinila přístup VM mnohem atraktivnějším. VM bylo využíváno také v datových centrech přecházejících z DOS/VSE na MVS a je užitečný při provozování systémů AIX a Linux na sálových počítačích, na platformách, které měly nabývat na významu. Aktuální platforma z/VM nakonec dosáhla v IBM uznání, které si podle uživatelů VM dlouho zasloužila. Některé uzly z/VM poskytují na jediném systému služby tisícům uživatelů virtuálních strojů současně. Systém z/VM byl uveden na trh v říjnu 2000[27] a nadále se aktivně používá a vyvíjí.
Společnost IBM a třetí strany nabídly mnoho aplikací a nástrojů, které běží pod VM, např. RAMIS, FOCUS, SPSS, NOMAD, DB2, REXX, RACF a OfficeVision. Současná nabídka VM zahrnuje celou škálu mainframových aplikací, včetně HTTP serverů, databázových manažerů, analytických nástrojů, inženýrských balíčků, a finančních systémů.
CP příkazy
[editovat | editovat zdroj]Od release 6 má VM/370 Control Program několik příkazů pro obecné uživatele, které slouží pro definování a řízení uživatelského virtuálního stroje. Příkazy shrnuje následující tabulka (malá písmena jsou nepovinné části příkazu):[28]
Příkaz | Popis |
---|---|
#CP | Umožňuje uživateli zadat CP příkaz z příkazového prostředí nebo na jiném virtuálním stroji po lisování porušují/zlom klíč (defaults na PA1) |
ADSTOP | Nastaví address stop pro zastavení virtuálního stroje na určité instrukce |
ATTN | Způsobí attention interruption, které umožňuje CP převzít řízení v příkaz prostředí |
Begin | Obnoví provádění uživatelského virtuálního stroje, volitelně od zadané adresy |
CHange | Změní atributy spoolového souboru nebo souborů. Lze například změnit výstupní třídu nebo jméno souboru nebo tiskárna-určitý atributy nastaví |
Close | Zavře otevřenou tiskárnu, děrovač, reader nebo konzolový soubor a uvolní jej pro spooling systém |
COUPLE | Propojí virtuální adaptér kanál-kanál (CTCA) na jiný. Používá se také pro připojení simulované ethernetové karty QDIO na virtuální ethernetový přepínač. |
CP | Provede CP příkaz v CMS prostředí |
DEFine | Změní aktuální konfiguraci virtuálního strojie. Přidá virtuální zařízení nebo změní velikost dostupné paměti |
DETach | Odstraní virtuální zařízení nebo kanál z aktuální konfigurace |
DIAL | Propojí terminál na přihlašovací obrazovce k simulovaným terminálům 3270 nebo řádkového terminálu na přihlášeném virtuálním počítači s více přístupy |
DISConn | Odpojí terminál přičemž virtuální stroj pokračuje v běhu |
Display | Zobrazí paměť virtuálního stroje nebo (virtuální) hardwarové registry |
DUMP | Vytiskne snímek aktuálního virtuálního stroje na virtuální spoolovanou tiskárnu |
ECHO | Zapne opisování zadaných řádků na virtuálním stroji |
EXTernal | Pošle virtuálnímu stroji externí přerušení |
INDicate | Zobrazí aktuální zatížení systému nebo využití prostředků |
Ipl | Zavede do virtuálního stroje operační systém (IBM používá místo termínu boot zkratku IPL, initial program loading) |
LINK | Připojí zařízení z jiného virtuálního stroje, který umožňuje sdílení zařízení |
LOADVFCB | Definuje forms control buffer (FCB) pro virtuální tiskárnu |
LOGoff LOGout |
Ukončí aktuální virtuální stroj a odpojí jej od systému |
Logon Login |
Přihlášení k systému |
Message MSG |
Pošle jednořádkovou zprávu operátorovi systému nebo jinému uživateli |
NOTReady | Způsobí, že se virtuální zařízení bude jevit jako nepřipravené |
ORDer | Přeskupí uzavřený spool soubory by ID nebo třída |
PURge | Smaže zavřené spool soubory pro zařízení podle třídy,m ID nebo všechny |
Query | Zobrazí stavovou informaci virtuálního stroje nebo zprávu pro daný den nebo číslo nebo jména připojených uživatelů |
READY | Způsobí zařízení konec přerušení pro zařízení |
REQuest | Pošle přerušení na virtuální konzoli |
RESET | Smaže všechna probíhající přerušení zadaného zařízení |
REWind | Převine reálnou (nevirtuální) pásku v magnetopáskové jednotce |
SET | Nastaví různé atributy pro váš virtuální stroj, včetně přenos zpráv nebo terminál funkční klávesy |
SLeep | Uvede virtuální stroj do neaktivního stavu na zadanou nebo neomezenou dobu |
SMsg | Posílá jednořádkové speciální zprávy na jiný virtuální stroj (obvykle slouží k ovládání virtuálního stroje; často používaný s RSCS) |
SPool | Zkonfiguruje spoolované virtuální zařízení (tiskárna, reader nebo děrovač) |
STore | Změní obsah registrů nebo paměti virtuálního stroje |
SYStem | Resetuje nebo znovu odstartuje virtuální stroj nebo vymaže paměť |
TAg | Nastaví tag související se spoolovaným zařízením nebo souborem. Tag je obvykle používá Remote Spooling Communications Subystem (RSCS) pro identifikaci cíle |
TERMinal | Nastaví vlastnosti terminálu |
TRace | Spustí nebo zastaví trasování zadaných činností virtuálního stroje |
TRANsfer | Přenese spool soubor od jiného uživatele nebo k jinému uživateli |
VMDUMP | Uloží virtuální stroj ve formátu čitelném programovým produktem Interactive Problem Control System (IPCS) |
OpenEdition rozšíření
[editovat | editovat zdroj]Od VM/ESA verze 2 IBM podporuje zpoplatněný nepovinný rys OpenEdition for VM/ESA Shell and Utilities Feature,[29] který poskytuje systému CMS POSIX kompatibilitu. Základní funkcionalitou byl unixový shell pro CMS. Překladač jazyka C pro unixové prostředí poskytuje buď C/370 nebo C for VM/ESA. Souborový systém CMS ani standardní sdílený souborový systém VM namají žádnou podporu souborů i adresářů v unixovém stylu; místo toho se používá Byte File System. Jakmile je ve fondu souborů SFS vytvořen BFS extent, uživatel jej může připojit příkazem OPENVM MOUNT /../VMBFS:fileservername:filepoolname /path/to/mount/point
. Uživatel musí také připojit kořenový systém souborů příkazem OPENVM MOUNT /../VMBFS:VMSYS:ROOT/ /
. Pak lze spustit shell může příkazem OPENVM SHELL
. Na rozdíl od běžného SFS je přístup k souborovým systémům BFS řízen oprávněními POSIX (příkazy chmod a chown).
Od z/VM Verze 3 společnost IBM integrovala do z/VM systému modul OpenEdition,[30] který přejmenovala na OpenExtensions. OpenEdition a OpenExtensions zajišťují kompatibilitu systém CMS se standardem POSIX.2.[31] Programy zkompilované pro běh pod shellem OpenExtensions jsou uloženy ve stejném formátu jako standardní spustitelné moduly CMS. Vizuální editory jako vi nejsou k dispozici, protože je nelze používat na terminálech 3270. Uživatelé mohou místo vi používat editory ed nebo XEDIT.
Marketing
[editovat | editovat zdroj]Na počátku 80. let 20. století uživatelská skupina VM v SHARE hledala pro komunitu maskota nebo logo. Částečně to byla odezva na používání krocana jako maskota skupiny IBM uživatelů systému MVS (který podle legendy vybrala MVS Pertformance Group v počátcích MVS, když byl jeho výkon bolestivým tématem). V roce 1983 se de facto maskotem VM na SHARE 60 stal plyšový medvídek, když byly nálepky s medvídky přilepeny na jmenovky „přítulnějších veteránů“, aby je začátečníci mohli označovat za „přátelské, pokud se blíží“.[32] Medvídci byli udělováni osobám, které byly uvedeny do „Řádu rytířů VM“, tedy osobám, které „významně přispěly“ komunitě, a brzy se začali objevovat všude možně.[33][34]
Odkazy
[editovat | editovat zdroj]Poznámky
[editovat | editovat zdroj]- ↑ CMS může používat DIAG pro vstupy/výstupy na systémy souborů CMS.
Reference
[editovat | editovat zdroj]V tomto článku byl použit překlad textu z článku VM (operating system) na anglické Wikipedii.
- ↑ VARIAN, Melinda. VM AND THE VM COMMUNITY: Past, Present, and Future [online]. April 1991 [cit. 2022-06-09]. S. 55. Dostupné v archivu pořízeném z originálu dne 2022-08-23.
- ↑ Creasy, op. cit., p. 483 – role of RSCS.
- ↑ Two versions of MUMPS out. Computerworld. 1987-11-30, roč. XXI, čís. 48. Dostupné v archivu pořízeném z originálu dne 2023-03-06.
- ↑ Licensed Products Migration Matrix for z/VM [online]. IBM, 2009-12-02 [cit. 2022-07-09]. Dostupné v archivu pořízeném z originálu dne 2022-08-10.
- ↑ ELLIOTT, Jim. The Evolution of IBM Mainframes and VM. In: SHARE August 2004. [s.l.]: SHARE, 2004-08-17. Dostupné v archivu pořízeném z originálu dne 2006-10-13. Session 9140.
- ↑ a b Virtual Machine/System Product High Performance Option Release 5 Guide. [s.l.]: IBM, July 1987. Dostupné v archivu pořízeném z originálu dne 2022-06-17. SC23-0189-3.
- ↑ VM/SYSTEM PRODUCT HIGH PERFORMANCE OPTION ANNOUNCED. [s.l.]: IBM, 1981-10-21. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. ZP81-0805.
- ↑ VIRTUAL MACHINE/EXTENDED ARCHITECTURE MIGRATION AID. [s.l.]: IBM, 1981-10-21. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. ZP81-0811.
- ↑ VIRTUAL MACHINE/EXTENDED ARCHITECTURE (VM/XA) SYSTEMS FACILITY. [s.l.]: IBM, 1985-02-12. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. 285-044.
- ↑ VIRTUAL MACHINE/EXTENDED ARCHITECTURE SYSTEM PRODUCT (VM/XA SP) RELEASE 1. [s.l.]: IBM, 1987-06-11. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. 287-239.
- ↑ VIRTUAL MACHINE/ENTERPRISE SYSTEMS ARCHITECTURE VERSION 1 RELEASE 1.0 AND VERSION 1 RELEASE 1.1. [s.l.]: IBM, 1990-09-05. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. 290-499.
- ↑ z/VM V3R1 Enabled for 64-bit Architecture. [s.l.]: IBM, 2000-10-03. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. 200-358.
- ↑ Gary R. Allred. System/370 integrated emulation under OS and DOS. In: 1971 Spring Joint Computer Conference. [s.l.]: AFIPS Press, May 1971. Koncept hypervizoru byl poměrně jednoduchý. Skládal se z doplňku k emulátoru a hardwarové úpravy pro Model 65 s funkcí kompatibility. Hardwarová úprava rozdělila Model 65 na oddíly, z nichž každý byl každý adresovatelný v rozsahu 0-n. Programový přídavek, který překryl systémová stavová slova programu (PSW) vlastními, se stal obsluhou přerušení pro celý systém. Po určení, který oddíl inicioval událost způsobující přerušení, se podle toho přeneslo řízení. Hypervizor vyžadoval vyhrazená vstupně/výstupní zařízení před každým oddílem, a z tohoto důvodu byly vstupně/výstupní konfigurace obvykle poměrně velké, a proto pro většinu použití neúnosné.. Dostupné v archivu pořízeném z originálu dne 2018-07-25. doi:10.1109/AFIPS.1971.58. S. 164.
- ↑ , 1987. IBM System/370 Principles of Operation. [s.l.]: IBM. Dostupné v archivu pořízeném z originálu dne 2019-09-29. S. 10–5.
- ↑ a b IBM Virtual Machine Facility/370: System Programmer's Guide. Eighth. vyd. [s.l.]: IBM, březen 1979. Dostupné v archivu pořízeném z originálu dne 2020-04-02. GC20-1807-7.
- ↑ z/VM Version 7 Release 2 CP Programming Services. [s.l.]: IBM, 2020-08-12. Dostupné v archivu pořízeném z originálu dne 2021-04-30. SC24-6272-04. S. 3. Ve fyzickém procesoru provádí instrukce DIAGNOSE diagnostické funkce závislé na procesoru. Ve virtuálním počítači lze pomocí rozhraní DIAGNOSE požádat, aby CP provedl služby pro váš virtuální stroj. Když se virtuální stroj pokusí provést instrukci DIAGNOSE, řízení je předané CP. CP použije informace obsažené v kódové části instrukce pro určení, jakou službu má provést. Po dokončení služby se řízení vrátí virtuálnímu stroji..
- ↑ VIrtual Machine/System Product CMS User's Guide Release 6. [s.l.]: IBM, July 1988. Dostupné v archivu pořízeném z originálu dne 2022-06-17. SC19-6210-05.
- ↑ CMS File Pool Planning, Administration, and Operation. [s.l.]: IBM, 2021-11-12. (Z/VM 7.2). Dostupné v archivu pořízeném z originálu dne 2022-10-06. SC24-6261-02. S. 18–23.
- ↑ IUCV Overview [online]. [cit. 2022-07-31]. Dostupné v archivu pořízeném z originálu dne 2022-07-31. (anglicky)
- ↑ Varian, op. cit., p. 30 – extent of VM use; more VM licenses than MVS licenses
- ↑ Virtual Machine/System Product Installation Guide Release 5. [s.l.]: IBM, December 1986. Dostupné v archivu pořízeném z originálu dne 2022-06-17. SC24-5237-3.
- ↑ Vm66265: Z/Vm Support for 80 Logical Processors [online]. 2020-08-27 [cit. 2021-08-19]. Dostupné v archivu pořízeném z originálu dne 2021-08-19.
- ↑ VTAM Reference Summary Version 3 Release 3 for MVS, VM, and VSE/ESA. [s.l.]: IBM, September 1990. Dostupné v archivu pořízeném z originálu dne 2021-08-19. LY43--0047-1.
- ↑ IBM 9370 LAN Volume 2 - IEE 802.3 Support. [s.l.]: IBM, April 1988. Dostupné v archivu pořízeném z originálu dne 2021-08-19. GG24-3227-0.
- ↑ VM TCP/IP NFS Server Support [online]. 2001-05-29 [cit. 2021-08-19]. Dostupné v archivu pořízeném z originálu dne 2021-04-26.
- ↑ VM/Pass-Through Facility Administration and Operation Version 2. [s.l.]: IBM, June 1993. Dostupné v archivu pořízeném dne 2021-08-19. SC24-5557-01.
- ↑ IBM: About the z/VM Operating System [online]. Vm.ibm.com [cit. 2015-07-02]. Dostupné v archivu pořízeném z originálu dne 2015-07-03.
- ↑ IBM Virtual Machine Facility/370: CP Command Reference for General Users. [s.l.]: IBM, 1979-08-01. Dostupné v archivu pořízeném z originálu dne 2020-04-02.
- ↑ Availability: VM/ESA Version 2 Release 1.0 with OpenEdition for VM/ESA [online]. IBM, 1995-06-12 [cit. 2021-10-28]. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-10-28. 295-240.
- ↑ z/VM V3R1 Enabled for 64-bit Architecture [online]. IBM, 2000-10-03 [cit. 2022-01-31]. (Announcement Letters). Dostupné v archivu pořízeném z originálu dne 2021-12-17. 200-358.
- ↑ IBM z/VM: OpenExtensions POSIX Conformance Document (GC24-6298-01) [online]. 2020-08-21 [cit. 2022-07-31]. Dostupné v archivu pořízeném z originálu dne 2024-02-28. (anglicky)
- ↑ Gallery of VM web GIFs [online]. Dostupné v archivu pořízeném z originálu dne 2006-10-18.
- ↑ Varian, op. cit., p. 2 – the teddy bear story
- ↑ Explain "official VM teddy" [online]. Alanflavell.org.uk [cit. 2015-07-02]. Dostupné v archivu pořízeném z originálu dne 2016-03-04.
Literatura
[editovat | editovat zdroj]- Primární CP/CMS zdroje
- CREASY, R. J. The origin of the VM/370 time-sharing system. IBM Journal of Research & Development. Září 1981, roč. 25, čís. 5, s. 483–90. Dostupné online. – perspektivy CP/CMS a VM historie podle vedoucího projektu IBM CP-40 a autora CTSS
- PUGH, E.W.; JOHNSON, L.R.; PALMER, John H. IBM's 360 and early 370 systems. Cambridge, MA a Londýn: MIT Press, 1991. Dostupné online. ISBN 0-262-16123-0.
– detailní (na 819 stránkách) popis nabídek společnosti IBM v tomto období; omezený popis CP/CMS - VARIAN, Melinda. VM and the VM community, past present, and future [online]. SHARE 89 Sessions 9059–61, 1997;
– vynikající popis historie CP/CMS a VM. Dostupné online. - Index of /pdf/ibm/360/cp67 [online]. Dostupné online.
- Další popisy CP/CMS
- ADAIR, R. J.; BAYLES, R. U.; COMEAU, L. W.; CREASY, R. J. A Virtual Machine System for the 360/40. [s.l.]: IBM Corporation, květen 1966. (Cambridge Scientific Center Report; sv. No. 320‐2007). článek popisující implementaci konceptu virtuálního stroje s popisy upraveného CSC S/360-40 a návrhu CP-40
- IBM Program Information Department; CP-67/CMS Program 360D-05.2.005. [s.l.]: International Business Machines Corporation, červen 1969. – referenční manuál IBM
- MEYER, R. A.; SEAWRIGHT, L. H. A virtual machine time-sharing system. IBM Systems Journal. Září 1970, roč. 9, čís. 3, s. 199–218. – popisuje systém CP-67/CMS, jeho vlastnosti a aplikace
- PARMELEE, R. P.; PETERSON, T. I.; TILLMAN, C. C.; HATFIELD, D. J. Virtual storage and virtual machine concepts. IBM Systems Journal. Červen 1972, roč. 11, čís. 2, s. 199–218.
- Základní popisy CP/CMS
- CORBATÓ, F. J.; AL., et. The Compatible Time-Sharing System, A Programmer’s Guide. [s.l.]: M.I.T. Press, 1963.
- CORBATÓ, F. J.; MERWIN-DAGGETT, M.; DALEY, R. C. An Experimental Time-sharing System. [s.l.]: [s.n.], 1962. S. 335–44. — description of CTSS
- CORBATÓ, F. J.; VYSSOTSKY, V. A. "Introduction and Overview of the MULTICS System. [s.l.]: [s.n.], 1965. S. 185–96.
- DENNING, P. J. Virtual Memory. Computing Surveys. 1970, roč. 2, s. 153–89.
- DENNIS, J. B. Segmentation and the Design of Multi-Programmed Computer Systems. JACM. 1965, roč. 12, s. 589–602. - požadavky na virtuální paměť pro Project MAC, určené pro GE 645
- Operating Systems Techniques. In: New York: Academic Press, Inc, 1972.
- KILBURN, T.; EDWARDS, D. B. G.; LANIGAN, M. J.; SUMNER, F. H. One-Level Storage System. IRE Trans. Electron. Computers EC-11. 1962, s. 223–35. – Manchester/Ferranti Atlas
- NELSON, R. A. Mapping Devices and the M44 Data Processing System. Thomas J. Watson Research Center: IBM Research Report RC 1303.
- PARMELEE, R. P.; PETERSON, T. I.; TILLMAN, C. C.; HATFIELD, D. J. Virtual Storage and Virtual Machine Concepts. IBM Systems Journal. 1970, roč. 11, s. 99–130.
- Další online CP/CMS prostředky
- Information Technology Timeline, 1964–74
- The IBM 360/67 and CP/CMSTom Van Vleck's krátký essay
- Short history of IBM's virtual machines Norman Hardy
- short description of the "Blaauw Box" Norman Hardy
Související články
[editovat | editovat zdroj]Externí odkazy
[editovat | editovat zdroj]- Bob DuCharme, Operating Systems Handbook, Part 5: VM/CMS: docela podrobný uživatel's guide na VM/CMS
- HENDRICKS, E. C.; HARTMANN, T. C. Evolution of a Virtual Machine Subsystem. IBM Systems Journal. 1979, roč. 18, s. 111–142. RSCS design and implementation
- IBM Corporation. IBM Virtual Machine Facility/370 Introduction, GC20-1800. [s.l.]: [s.n.], 1972. - původní manuál
- IBM Redbooks Publication – z/VM textbook
- IBM: z/VM portal
- IBM: z/VM manuals
- VM/PC documentation on bitsavers