Un article de Wikipedia, l'encyclopedie libre.
Multiple Virtual Storage
(MVS) est le
systeme d'exploitation
des gros ordinateurs (≪
mainframes
≫) d'
IBM
.
MVS a ete lance en
1974
par IBM. Le but etait de fournir un systeme tres fiable pour supporter de gros environnements de production. Il est destine aux grosses machines du constructeur IBM (machines a technologie
CMOS
de la serie
360 / 370
de nos jours appelee
zSeries
).
Comme son nom veut le faire comprendre (≪ Multiple Virtual Storage ≫), il applique le principe de la
memoire virtuelle
pour traiter differents travaux simultanement sur une machine comprenant un ou plusieurs
processeurs
(jusqu'a 54, sans doute davantage
dans les annees qui viennent
[Quand ?]
).
MVS se veut universel, et gere des sous-systemes aptes a repondre a des requetes en mode interactif (appele aussi ≪ dialogue ≫), qu'il s'agisse aussi bien de ≪ temps partage ≫ (
TSO
: l'ordinateur sert plusieurs utilisateurs ? informaticiens le plus souvent ? en meme temps) que de ≪
transactionnel
≫, ou l'utilisateur final, non forcement informaticien, dialogue avec des applications en rapport avec sa fonction dans l'entreprise (moniteurs transactionnels
CICS
,
IMS
). MVS reste cependant bien adapte au traitement par lots (
batch
), pris en charge par le langage
JCL
.
Les caracteristiques du systeme MVS sont les suivantes :
- Multiprogrammation : plusieurs utilisateurs ou travaux peuvent etre servis simultanement par la machine. ≪ Simultanement ≫ signifie que, bien qu'a un instant donne un seul travail puisse etre traite par un processeur, dans les conditions habituelles tous les utilisateurs sont servis a tour de role si rapidement qu'a l'echelle humaine ils paraissent utiliser tous en meme temps la machine.
- MVS realise aussi une fonction de multi-tache, plus fine que celle de multiprogrammation : un travail peut etre constitue de differentes taches fonctionnant les unes apres les autres ou simultanement : dans ce dernier cas elles entrent ainsi en competition pour l'usage du ou des processeurs.
- La multiprogrammation et le multi-tache offrent une ≪ simultaneite ≫ et une multiplicite d'acces au processeur satisfaisantes pour tous les utilisateurs. Ils optimisent aussi l'emploi du processeur en reduisant au maximum ses ≪ temps morts ≫ : quand le travail en cours attend un evenement quelconque (notamment la fin d'une entree-sortie, operation ≪ longue ≫ - c'est le cas d'une attente de page), le processeur peut l'abandonner pour un autre processus pret a etre active.
- Multitraitement : plusieurs processeurs peuvent etre geres par le systeme (jusqu'a 2 en MVS-SP, 16 a partir de MVS-XA). Ainsi, a un instant donne, sont traites par la machine autant de processus que de processeurs. Ceci ameliore le rendement global du systeme a condition que l'algorithme d'ordonnancement soit efficace.
- La memoire virtuelle : chaque travail se voit offrir une taille de memoire possible pouvant etre bien superieure a la memoire reellement disponible. Ceci est rendu possible par le fait qu'a un instant donne un travail n'a pas besoin de toutes les donnees ni de toutes les sections de code qui le composent. Le systeme lui laisse les portions de memoire qui lui sont necessaires a cet instant (
Working Set
), le reste pourra etre appele du disque a tout moment, ou transfere sur disque s'il s'agit de donnees modifiees entre-temps, recuperable a tout moment a la demande du travail. Le reste de la memoire est utilement occupe par les routines et donnees du systeme ou par d'autres travaux prets a etre traites par le ou les processeurs.
- Forte dependance vis-a-vis de l'architecture materielle : certaines fonctionnalites de base du systeme sont partiellement implementees au niveau du micro-code, (par exemple les techniques de serialisation qui dependent de l'instruction
Compare-and-swap
), ou reposent sur des particularites de l'architecture (comme les mecanismes de protection memoire, qui reposent sur la presence de bits supplementaires non adressables associes a chaque bloc de RAM).
- annees 1960 :
OS/360
version OS/VS2 (MVT) est le grand ancetre de MVS ; apparition de
CICS
et
IMS
- annees 1970 : architecture S/370 et memoire virtuelle ; 16 canaux d'E/S ; adressage 24 bits ("ligne" des 16 MB)
- annees 1980 : MVS/XA et l'adressage 31 bits ; 256 canaux d'E/S ; apparition de
DB2
(
SGBD
relationnel)
- annees 1990 : canaux en fibre optique ; Sysplex (
clustering
de machines) ; abandon de la technologie ECL et passage au CMOS ; MVS devient OS/390, avec un
UNIX
integre ("USS",
UNIX System Services
: il s'agit en fait des services POSIX normalises)
- annees 2000 : la denomination OS/390 disparait au profit de
z/OS
. Mode 64 bits ; ouverture a Internet (Websphere), TCP/IP.
- Thierry Falissard,
Le systeme MVS
, Eyrolles, 1992
- David Shelby Kirk,
The MVS Primer
, QED, 1992
- Robert H. Johnson,
MVS, Concepts and Facilities
, Intertext, 1989
- Ronald Paans,
A close look at MVS systems
, North-Holland, 1986