A VMS belső szerkezete
2.1 Bevezető
A VMS operációs rendszer egy ún. multiuser, multitasking operációs rendszer. Minden egyes felhasználóhoz egy saját diszk-területet rendel a rendszer. Az operációs rendszerbe a felhasználói név és a jelszó (username, password) megadása révén lehet bejutni. Ez a mechanizmus védelmet jelent az illetéktelen felhasználók ellen, illetve lehetőség van a személyes, bizalmas jellegű adatállományok védelmére. Az egyes felhasználók csoportokra vannak osztva. A felhasználók beállíthatják, hogy egyes állományaikhoz kik férhetnek hozzá, és mit csinálhatnak az egyes file-jaikkal (olvashatják-e, írhatják-e, törölhetik-e, futtathatják-e).
Egy állomány tulajdonjoga, illetve elérhetősége szempontjából a felhasználók felosztása a következő: Létezik az owner (az a felhasználó, akié az adott file), a group (a tulajdonossal egy csoportban lévo felhasználók halmaza), a world (az összes felhasználó halmaza) és a system (a rendszer-menedzser, illetve maga az operációs rendszer).
A VMS a parancsoknál a kis és nagybetűk között nem tesz különbséget.
2.2 A VMS shell-je, avagy a DCL
A VMS-ben egyetlen shell áll rendelkezésre, ez a DCL (Digital Command Language). A bejelentkezés után ennek a prompt-ja jelenik meg (általában $ jel). A DCL parancsok általános felépítése:
parancsnév paraméterek és minősítők sorozata
A parancsnév egészen addig rövidíthető, amíg egyértelmű marad a DCL számára.
A paraméterek azt mondják meg, hogy a parancsnak mivel kell a műveletet elvégezni, ezek többnyire filenevek.
A minősítők (qualifier-ek) azt mondják meg a parancsnak, hogy hogyan módosítsa a működését, hasonlóan a UNIX opciókhoz. A minősítő minden esetben / jellel kezdődik és ugyanúgy rövidíthető, mint a parancs neve. Amennyiben nem adunk meg opciókat, úgy az alapértelmezés (default) szerint dolgozik a parancs.
Ha a parancsot úgy adjuk ki, hogy nem adjuk meg az összes szükséges paramétert (nem minősítőt!), akkor a DCL rákérdez azokra.
2.3 Fájlrendszer
A VMS file-rendszere inkább a DOS file-rendszeréhez hasonlít, mintsem a UNIX-énhoz. A file-ok különböző eszközökön (device)-okon helyezkednek el, vagy maguk az eszközök viselkednek úgy, mint file-ok (például egy terminál, hasonlóan a UNIX speciális file-jaihoz). Az eszközök lehetnek fizikai eszközök vagy logikai eszközözök A "nagy" kapacitású fizikai eszközök felbonthatók kisebb egységekre, amelyek ezek után logikai eszközként viselkednek a felhasználó számára. A felbontáson kívül a logikai eszköznevekkel elérhető bizonyos eszközfüggetlenség, például a USER$DISK: eszköz mindig a felhasználó diszket jelenti, függetlenül attól, hogy az éppen melyik fizikai egységen foglal helyet. A logikai eszköz-(és file-) nevek hasonlóan működnek, mint a UNIX-ban levő mount pontok.
Az eszköz neve után mindig: (kettőspont) karakter áll.
Az eszközök egy részén (például a lemezeken) lehetőség van könyvtárszerkezet (DIRECTORY struktúra) kialakítására. A könyvtárak természetesen egymásba ágyazhatók. Egy eszközön a "gyökér könyvtár" neve: 000000 (azaz hat darab 0), a könyvtárneveket . (pont) karakterrel kell elválasztani egymástól és a teljes könyvtárnevet [ ] -ek közé kell írni, valahogy így: [ALTSZAM.SECI.COM]. Az egymagában álló [.] az aktuális könyvtárat, míg a [-] a szülő könyvtárat jelenti.
A file-ok megnevezése mindig három részből áll: filenév.kiterjesztés;verziószám
A név és a kiterjesztés 40 karakteres lehet, a betűket, számjegyeket illetve _ és $ jelet tartalmazhat, a kiterjesztés lehet üres. A kiterjesztés - ajánlottan - a file-ban tárol infromáció jellemzésére való. A file nevét a kiterjesztéstől . (pont) választja el.
A verziószám a VMS azon nagyon speciális tulajdonságából ered, hogy ha VMS-ben egy file módosul - például mert megeditálod - akkor az előző változat nem vész el, hanem egy, az eredetivel megegyező nevű és kiterjesztésű, de egyel magasabb verziószámú file jön létre. A file keletkezésekor a verziószám 1 lesz, az első módosulás után 2, stb. A kiterjesztést a verziószámtól ; (pontosvessző) karakter választja el. Ha a verziószámot nem írjuk ki, akkor input file esetén a legnagyobb verziójú, output esetén pedig az ennél egyel nagyobb verziójú filemegnevezés lesz helyettesítve a műveletben.
A Digital gépei egy speciális (nem internet jellegű) protokollal hálózatba köthetők egymással, ezt a hálózati rendszer DECNet-nek hívják. Az így hálózatba kötött gépek láthatják egymás eszközeit, ezért egy teljes filemegnevezés tartalmazhatja azt is, hogy a file a hálózat mely csomópontján (node) helyezkedik el. A csomópont nevét :: (két kettősponttal) választjuk el az eszköz nevétől.
2.4 Attributumok, ill. programok futtatása
A VMS-ben a file-ok védelmére 4x4 bit áll rendelkezésre, ezek megmondják, hogy ki mit tehet az adott file-lal.
A "ki" négy értéke: Owner (tulajdonos), Group (a tulajdonos csoportja), World (mindenki más) illetve System (rendszergazdai jogokkal rendelkező user/program)
A "mit" négy értéke: Read (olvasás), Write (írás), Execute (végrehajtás), Delete (törlés).
VMS-ben a programokat a következőképpen tudjuk futtatni:
a katalogizált parancsokat egyszerűen a nevükkel
a parancsfile-okat (DCL scriptek, .COM file-ok) a @PARANCSNÉV segítségével
az általunk egy programozási nyelven megírt, majd lefordított és összeszerkesztett (.EXE) file-okat a RUN NÉV formával
a SUBMIT parancsfile a háttérben indítja el a parancsfile-t, kijelentkezés után is megmarad a process
|