# MVS

MVS (Multiple Virtual Storage, Múltiple Emmagatzematge Virtual en anglès) fou el sistema operatiu més usat en els models de mainframes-ordinadors grans, potents i cars usats principalment per grans companyies per al processament de grans quantitats de dades- System/370 i System/390 d'IBM i va ser llançat al mercat per primera vegada en 1974.
Com a característiques destacables, permetia l'execució de múltiples tasques, a més del fet que va introduir el concepte de memòria virtual i finalment va afegir la capacitat que cada programa tingués el seu propi espai d'adreçament de memòria, d'aquí el seu nom.

## Història del MVS

El MVS va ser llançat al mercat per primera vegada en 1974, i llavors va ser reanomenat a MVS/XA (per arquitectura estesa en anglès), més tard a MVS/ESA (per arquitectura de sistemes empresarials), llavors es va rebatejar com a OS/390 quan se li va afegir al sistema operatiu els serveis de UNIX, i finalment a z/OS quan els models zSeries van ser introduïts al mercat. Tot i això, tots ells, són bàsicament el mateix sistema operatiu. De fet, els programes que hagin estat dissenyats pel sistema MVS poden córrer en z/OS sense cap modificació.
MVS va ser creat basant-se en SVS (Single Virtual Storage, Únic Magatzem Virtual), i aquest al seu torn va ser creat a partir de MVT, una de les variants del sistema operatiu OS/360.
La variant original de l'OS/360 era PCP (Programa de Control Primari) no suportava l'execució de múltiples tasques, i MVT (Multitasca amb nombre de tasques variables) era una millora que era capaç de l'execució de múltiples tasques. Sobre aquesta base, el sistema SVS va afegir el "magatzem virtual", més conegut com a memòria virtual; l'espai d'adreçament d'aquesta memòria era compartit per totes les aplicacions. MVS, finalment, va afegir la capacitat de què cada un dels programes tingues el seu propi espai d'adreçament de memòria, d'aquí el seu nom.
Aquest sistema s'utilitza típicament en aplicacions comercials i bancàries, i aquestes són normalment escrites en COBOL. Normalment aquests programes escrits en COBOL són utilitzats en sistemes transaccionals com IMS i CICS.

## Sistema de fitxers MVS

Els Data Set Names (DSNs, el terme arxiu en el context de mainframes) estan organitzats en una jerarquia on els nivells estan separats per punts.
Per exemple: "DEPT01.SISTEMA01.FITXER01".
Cada nivell en la jerarquia pot tenir fins a 8 caràcters de llargada. La llargada total del fitxer són 44 caràcters incloent els punts. Per convenció, els components separats pels punts són utilitzats per organitzar fitxers de forma similar als directoris en altres sistemes operatius. Tot i això, a diferència de molts altres sistemes de fitxers, aquests nivells no són directoris reals, sinó simplement una convenció per a anomenar els fitxers. Com altres membres de la família OS, el data sets de MVS son orientat a registres. MVS hereta tres tipus principals dels seus predecessors:
* Els Data sets seqüencials: Aquests són llegits registre a registre, de principi a fi.
* Els Data sets BDAM (accés directe), l'aplicació ha d'especificar la situació física de la informació a la qual vol accedir (normalment especificant on comencen les dades).
* En els Data sets ISAM, s'utilitza una secció específica de cada registre com a clau per a cercar un registre en concret. La clau pot constar de més d'un camp, però han de ser contigus i en ordre correcte; aquests valors han de ser únics. Un arxiu IBM ISAM ha de tenir una sola clau, equivalent a la clau primària d'una taula d'una base de dades relacional; ISAM no suporta les claus foranes.
Els registres dels data sets seqüencials i ISAM poden ser de longuitud fix o variable, i els data sets de qualsevol tipus no poden ocupar més del volum d'un disc.