10
Anoir SEGHIOUER Page 1 sur 10 M V S GENERALITE

MVS_GENERALITE

Embed Size (px)

Citation preview

Page 1: MVS_GENERALITE

Anoir SEGHIOUER

Page 1 sur 10

M V S

GENERALITE

Page 2: MVS_GENERALITE

Anoir SEGHIOUER

Page 2 sur 10

SOMMAIRE

1 Introduction. ....................................................................................................................... 3

1.1 Machines mono taches et système d’exploitation...................................................... 3 1.2 Machines multi-tache,CANAUX . ............................................................................. 3 1.3 Mémoire virtuelle. ...................................................................................................... 3 1.4 Fonctionnement du système d’exploitation................................................................ 4

2 Les Grands Systèmes IBM................................................................................................. 4 2.1 Matériels Grand systèmes. ......................................................................................... 4 2.2 Les systèmes d’exploitation. ...................................................................................... 5 2.3 Les différents niveaux de gestion de la relation Homme-Machine............................ 5

2.3.1 TSO-CICS-IMS/DC. .......................................................................................... 5 2.3.2 RESOURCES ACCES CONTOROL FACILITY, RACF. ............................... 5

3 Présentation de la structure de OS/MVS............................................................................ 5 3.1 Présentation schématique de la structure de l'OS....................................................... 5 3.2 Présentation des structures de l'OS............................................................................. 5

3.2.1 LE JOB Management. ........................................................................................ 6 3.2.2 LE MASTER SCHELER. .................................................................................. 6 3.2.3 LE JES (Job Entry Subsystem) .......................................................................... 6 3.2.4 LE READER. ..................................................................................................... 6 3.2.5 L'INITIATOR..................................................................................................... 7 3.2.6 LE SELECTOR.................................................................................................. 7 3.2.7 L'INTERPRETER. ............................................................................................. 7 3.2.8 L'ALLOCATOR................................................................................................. 7 3.2.9 LE TERMINATOR............................................................................................ 7 3.2.10 LE WRITER....................................................................................................... 8 3.2.11 LE TASK MANAGEMENT.............................................................................. 8 3.2.12 LE PAGE MANAGEMENT.............................................................................. 8 3.2.13 LE DATA MANAGEMENT. ............................................................................8 3.2.14 LE GESTIONNAIRE DU CATALOGUE. ....................................................... 8 3.2.15 LE DADSM(gestion des fichier disque) ............................................................ 9 3.2.16 LES ROUTINES OPEN/CLOSE..................................................................... 9 3.2.17 LES METHODES D'ACCES............................................................................. 9 3.2.18 L'I/O SUPERVISOR. ......................................................................................... 9 3.2.19 LE RECOVRY MANAGEMENT. .................................................................. 10

Page 3: MVS_GENERALITE

Anoir SEGHIOUER

Page 3 sur 10

1 Introduction.

1.1 Machines mono taches et système d’exploitation. Le processeur central d’un système ne peut exécuter qu’une tache élémentaire à la fois. Pour cela il faut que la tache soit chargée dans la mémoire centrale. La mémoire centrale sera occupée dès l’allumage de la machine par un ensemble de tache (routine) automatiquement et qui constitue le Système d’exploitation. Une tache (ou programme) ne peut s’exécuté dans la mémoire centrale que si le système d’exploitation est capable de : Détecter cette demande. Localiser le programme à exécuter. Le charger en mémoire centrale. Lui cédé la place dans le processeur. Si le programme a besoin d’entrer et de sortie il rend la main au système d’exploitation qui permet l’accès au type d’entrée et sortie demandée, localiser les données, lire ou écrire ces données en vérifier que l’opération s’est bien passée. Cértait des opérations d’entrée/sortie nécessite de support dans l’accès et la lecture ou l’écriture fait usage d’élément mécanique. Ses opérations peuvent être lente. Et cela rend l’exécution du programme très lent.

1.2 Machines multi-tache, CANAUX. Les canaux permettent de décharger le processeur central d’une partie des opérations d’entrée/sortie. Cela permet eu processeur d’exécuter d’autre tache lorsque la tache précédente et interrompue tout en attendant l’opération d’entrée/sortie de la première tache. Pendant ce temps les deux taches sont chargées dans la mémoire centrale du processeur. La multiplication du nombre de canaux permettrait d’exécuter une multitude de tache proportionnel à la mémoire centrale du processeur.

1.3 Mémoire virtuelle. Un programme est constituer d’une grandes partie de code qui n’est pas utiliser dans le traitement en permanence (code dormant), initialisation, fin de traitement, traitement d’erreur, cas particulier … Les programmes exécuté en un instant donnée par le processeur sont stocké sur un disques, dont l’accès très rapide par l’unité centrale, puis de ne stocker dans le processeur que la parti active du programme. Ainsi a chaque un des programmes exécuté et alloue un espace mémoire sur le disque, où il est prédécoupé en PAGES de 4096 octets (4K)pour le GRANDS SYSTEMES D’IBM. L’ensemble de l’espace ainsi alloué constitue une mémoire virtuelle beaucoup plus étendue que la mémoire Centrale. Seul les pages utilises à un instant donné seront charger dans la mémoire centrale. Les pages déjà servis seront stockés dans une autre mémoire. Le nombre de programme exécutables ‘simultanément’ par une machine utilisant le principe de mémoire virtuelle n’est plus fonction de la taille de la mémoire centrale mais aussi de la vitesse de transfert entre les disques et l’unité centrale, du nombre et de la puissance des canaux.

Page 4: MVS_GENERALITE

Anoir SEGHIOUER

Page 4 sur 10

1.4 Fonctionnement du système d’exploitation. La multiplication et la diversification des taches exécutables simultanément, complexifient le rôle du système d’exploitation. L’accroissement concomitant du volume des données, des nombres d’utilisateurs simultanés a fait apparaître des ‘adjoints’ au système d’exploitation qui sera présentés dans les paragraphes suivants. L’ensemble des fonctions assurées par ce système d’exploitation est résumé dans les points suivantes :

• Prise en compte des demandes d’utilisateurs simultanément. o Vérification de la validité de ces travaux (synthèses). o Attribution des ressources nécessaires (programmes, fichiers). o Lancement des demandes. o Orientation des demandes sortie sur support ou impression.

• Gestion de la mémoire. o Partager la mémoire entre les utilisateurs. o Attribution de la mémoire demander. o Optimisation de la gestion de la mémoire (virtuelle, pagination).

• Gestion des taches : chaque travail soumis demande l’exécution d’une ou plusieurs taches.

• Gestion des fichiers. o Réalisation des l'entrée/sortie. o Localisation. o Gestion des catalogues.

• Gestion des anomalies. o Erreurs de programmes. o Problèmes d’accès aux périphériques. o Erreur logicielle due au système d’exploitation lui-même.

• Gestion des périphériques. o Prise en compte des différentes unités (disques, bandes, imprimantes,

terminaux). o Gestion du réseau pour les connections à distances.

2 Les Grands Systèmes IBM.

2.1 Matériels Grand systèmes. Les matériel IBM et compatibles (Amdahl, Fujitsu, Hitachi …) sont souvent désignés par des codes de quatre chiffres assez incompréhensibles a priori, auxquels il sera parfois fait référence dans la suite de ce cours. Il est donc utile d’en expliciter quelque uns. Les unités centrales : Actuellement ils peuvent utiliser jusqu’à une dizaine de processeurs, et il est possible de connecté jusqu’à 32 machine visible comme une seule. Les unités disques : Les volumes de disque ont notablement évolué ces dernières années. Une armoire 9394 peut contenir 181 GO pour une occupation au sol inférieur à 1 m2. Les dérouleurs : Les dérouleurs de cassettes (ou cartouches), deux référence 3480 et 3490. 3480 a la capacité de 200 à 250 Mo. Les 3490 peuvent aller jusqu’à 2,4 Go. La manipulation des es cassettes étant peut être automatisée à l’aide de bandothèque automatique genre 3494 d’IBM ou de robot en silo genre Storagetek. Le matériel réseau : Routeur à fibre optique, unité d’interconnexion de canaux 3088, contrôleur de communication 3174,3745, 3746 (acceptant les protocoles SNA et TCP/IP)

Page 5: MVS_GENERALITE

Anoir SEGHIOUER

Page 5 sur 10

2.2 Les systèmes d’exploitation. En même temps que l’évolution des machines IBM, les systèmes d’exploitation ont évolué. Deux systèmes d’exploitations DOS, (Disk Operating System) et l’OS (Operating system). L’OS est plus gourmand en espace mémoire mais permet de fiabiliser d’avantage le fonctionnement de la machine. MVS (Multiple Virtual Storage) est la seconde version de l’OS adaptée à la gestion de la mémoire virtuelle. Il a été pleinement opérationnel en1974 et n’a cessé d’évoluer depuis. L’OS/390 est le système d’exploitation, Il inclus en plus la version 5.2.2 de MVS, MVS Open EDITION, un système UNIX à part entière satisfaction (pour la version 5.2.2).

2.3 Les différents niveaux de gestion de la relatio n Homme-Machine.

2.3.1 TSO-CICS-IMS/DC. Le dialogue consiste à échanger des informations avec la machine, deux type de dialogues sont possible, Le Time Sharing et le Transactionnel. Le Time Sharing d’IBM est TSO, généralement compété par le gestionnaire d’écrans ISPF. Il permet l’utilisation de touts les ressources de la machine et utiliser par les développeurs pour créer, visualiser, détruire, écrire, et exécuté des programmes. Le transactionnel permet au contraire à un utilisateur d’accéder à certains fichiers via certains programmes, dans un contexte bien limité (mise à jour, consultation …) Le nombre croissant d’utilisateurs, de fichiers et de ressources des gros sites a cependant amené IBM à développer un logiciel de gestion des autorisations d’accès (RACF) qui fait partie des packages MVS.

2.3.2 RESOURCES ACCES CONTOROL FACILITY, RACF. Un analyste programmeur n’a pas la possibilité d’accéder au RACF. Ces autorisations sont définies par des responsables, eux-mêmes habilités par un responsable général pour le site. Ainsi chaque tentative d’utilisation d’une ressource que l’utilisateur ou le développeur potentiel sera soumise au RACF pour vérifier les autorisations.

3 Présentation de la structure de OS/MVS. MVS possède une structure modulaire et hiérarchisée. Un problème complexe doit être décomposés en plusieurs solutions. Simple qui résolvent une fonction élémentaire. Ces solutions élémentaires regroupées permettent d'avoir des traitements complexes.

3.1 Présentation schématique de la structure de l'O S.

3.2 Présentation des structures de l'OS. 5 éléments principaux :

o Le JOB Management o Le TASK Management o Le PAGE Management o Le DATA Management

Page 6: MVS_GENERALITE

Anoir SEGHIOUER

Page 6 sur 10

o Le RECOVERY Management. Les fonctions des éléments, Le PAGE Management, DATA Management et RECOVERY Management sont aujourd'hui assurées par un seul composant de MVS : DFSMS/MVS, lui-même constitué de modules gérant les fonctions de bases :

o DFSMSdfp : gestion de catalogue et des entrées sorties (logiques et physiques). Ce module permet le chargement des exécutables en mémoire centrale et de gérer les bibliothèques ou ils sont stockés.

o DFSMSdss : gestionnaire des déplacement de fichiers (disques ou cassettes). o DFSMShsm : gestionnaire des sauvegardes et de migrations de fichier. o DFSMSrmm : gestionnaire de fichiers cassettes.

3.2.1 LE JOB Management. Par l'intermédiaire du Master Scheduler et le JES (job entry subsystem) , il permet d'assurer la gestion des travaux. Pour cela d'établit la communications avec les utilisateurs de la machine. Un JOB constitué de un ou plusieurs programmes à exécuter pour un utilisateur donné. Chaque étape du JOB exécute un programme avec sont environnement (fichier en lecture, écriture, SYSIN . ..). Ce JOB sera décrit par le programmeur par le langage appelé JCL (Job Contrôle Langages) dans un fichier qui sera soumis au JOB Management à l'aide d'un terminal. L'ensemble des exécutions des JCL constitue un flot d'entrée qui est géré par le JES. Les Job peuvent coexisté pour plusieurs environnements. Batch, test, homologation …

3.2.2 LE MASTER SCHELER. Il s'agit d'un outil très puissant réservé au seul usage du pupitre et inaccessible aux utilisateurs informaticiens ou non. Il permet l'ensemble des contrôles sur les taches réaliser par la machine, arrêt, ordre de priorité, reconfiguration de l'environnement. Il contient un ensemble de commande utile pour les techniciens d'exploitation qui contrôle la machine.

3.2.3 LE JES (Job Entry Subsystem) Le JES possède trois fonctions principales : READER , permet la lecture des JOBs en entrée, INITIATOR, permet de préparer l'exécution, WRITER, permet la création des sortie physiques. Globalement, il lit le JCL décrivant le JOB et prépare l'environnement de travail et les sorties des programmes exécutés. Il a aussi la capacité de gérer les flot de JCL provenant et à destination de plusieurs machines.

3.2.4 LE READER. Il assure la fonction de lecture du flot d'entrée. Il les places en file d'attente selon le degrés d'urgence et la nature du JOB. Elle peut être une contrainte temporelle par apport à une planification, une évolution d'équipe système, des Jobs qui dure plus lengtemps à cause d'accès a des bandes magnétiques. C'est pour cela que les files d'attente sont déversent est ce distingue par la classe d'entrée. Il sont 36, désignées par les lettres A à Z et de 0 à 9. C'est un paramètre du JCL. Il y a un deuxième niveau de contrôle c'est le niveau de priorité il y en à 16 de 0 à 15. 15 est la plus importante. Le Job sera placé dans la classe préciser dans le JCL par l'ordre de classe et l'ordre d'arrivée.

Page 7: MVS_GENERALITE

Anoir SEGHIOUER

Page 7 sur 10

3.2.5 L'INITIATOR. Prépare l'exécution du JOB en file d'attente. Il existe plusieurs, appelés INITS), le nombre et la répartition des taches correspondent a une optimisation du système. Il dispose de quatre sous composants qui sont :

• Le Selector • L'Interpreter • L'Allocator • Le Terminator.

3.2.6 LE SELECTOR Il permet l'exploitation de la file d'attente, extrait les JOBs à exécuter. L'ordre d'exploitation des files d'attente est donné par un jeu de paramètre fournis à l'initialisation de la machine, ou par le pupitre au cours d'exploitation. Le SELECTOR va extraire le KOB (le premier entré dans la plus haute priorité), puis le suivant jusqu'à épuisement de la classe. Il ne passe à un autre JOB que si le premier est terminé.

3.2.7 L'INTERPRETER. Transforme le JCL en ordres de contrôles compréhensibles par la machine. Il procède à une analyse syntaxique du JCL, puis il construit des tables de paramètres pour le JOB, Les étapes, les programmes les fichiers et les procédures cataloguées. Réserve les noms du fichier non partageable (en écriture). Si l'un des fichiers est déjà réservé, le JOB est mis en attente. A la fin de la dernière étape, l'ensemble des noms de fichiers est libéré pour les autre JOB.

3.2.8 L'ALLOCATOR. Il procure les ressources fichiers dont le JOB a besoin, step par step. Il s'assure pour cela de la disponibilité des éléments physiques (dérouleurs de bandes, lecteurs de disque), la présence de volume et d'espace suffisant sur disque pour les fichiers en création. Après allocation de ces ressources, il produit les messages de compte-rendu. Le job devient alors une tache exécutable .En suite il passe la main au TASK-MANAGEMENT qui déclanche l'exécution.

3.2.9 LE TERMINATOR. Permet de libéré les ressources allouées à une étape par l'Allocator, prend en compte les dispositions prévues dans le JCL pour les fichiers (conservation, destruction, inscription au catalogue, etc… ). Si le Job est composé de plusieurs step, le Terminator repasse la main à l'Allocator. Lorsque un step est fini il donne naissance à trois types de sortie :

• Des fichiers sur support physique, mis à jour ou créés. Ces sorties est effectuées en temps réel

• Des comptes-rendus d'exécution (JCL, Allocation, Display) • Des fichiers à destination d'imprimante.

Les deux dernières sorties fond intervenir des périphérique plus lent. Ils sont mis sur disque en attente d'impression, le Terminator a pour rôle de construire les files d'attente de ces sorties. Ces files attentes seront en sortie par des ordres de priorité de la catégorie du JOB préciser dans la classe du JCL. Ils sont distincts des catégories d'entrées. Il y a aussi la priorité de classe de sortie qui est identique a la priorité des classe en entré.

Page 8: MVS_GENERALITE

Anoir SEGHIOUER

Page 8 sur 10

3.2.10 LE WRITER. Réalise les impressions physiques des fichiers en attente dans le SPOOL. Cette opération est complètement indépendante du JOB. Elle est automatique par le JES , ou à l'initiative de pilotage grâce a des commandes de Master Scheduller. Le pilotage a la main dynamiquement sur les files d'attente. Le WRITER obéie aux consignes données par l'exploitation pour choisir les classes qu'il faut éditer.

3.2.11 LE TASK MANAGEMENT. Exécute les JOBs. Un step est une tache qui se déroule en trois phases : PRÊT : une fois le programme à exécuter et localiser il lui attribut des adresses mémoires virtuelle. ACTIF : lorsque le processeur débute l'exécution du programme. ATTENTE : des entrées/sortie provoque des attentes. Lors de cette étape une partie du programme sera en mémoire virtuelle et une autre en mémoire réel. Ceci est géré par le PAGE MANAGEMENT.

3.2.12 LE PAGE MANAGEMENT. Permet la gestion de mémoire. Un programme exécutable est un programme en langage machine écrit par le compilateur. Pour l'exécuter l'ordinateur identifie le code par leur adresse mémoire. 1- Adressage Absolu : chaque instruction du programme prend une adresse qui lui correspond dans la case mémoire. Simple au niveau de l'exécution, mais oblige à charger l'ensemble du code du programme. 2- Adressage relatif : chaque instruction du programme lui correspond une nouvelle adresse, repérée par rapport à son déplacement, relatif au niveau du programme. Elle sera la même tous le long de l'exécution du programme. L'adresse réelle sera connue en ajoutant l'adresse relatif a la valeur du registre qui contient l'adresse du chargement. Donc les adresses sont différentes à chaque chargement, est le programme est devenu TRANSLATABLE. Les programmes sont stocker par morceaux, appelle pages, ayant une taille de 4 K (4096octet). A chaque une des instructions correspond une adresse relative dans la page, les pages ont leurs propres registres de base.

3.2.13 LE DATA MANAGEMENT. Permet la gestion des données mémorisées dans les fichiers. Il possède cinq sous ensemble :

o Le DADSM o Les routines OPEN/CLOSE o Les méthodes d'accès. o L'I/O superviseur o Le gestionnaire du catalogue

3.2.14 LE GESTIONNAIRE DU CATALOGUE. C'est un fichier du système d'exploitation qui permet la localisation des fichiers. Ainsi chaque fichier est répertorié (catalogué) par un enregistrement qui comprend, entre autres :

o Son nom. o Le type d'unité. o Le Numéro du volume ou il est stocké.

Les fichiers peuvent être regroupés au sein de sous catalogues appelés catalogue utilisateur qui serons eux même répertorier dans le catalogue général. Les routines de gestion du

Page 9: MVS_GENERALITE

Anoir SEGHIOUER

Page 9 sur 10

catalogue tient a jour le contenue sur demande du Terminator et en fonction des consignes données par le JCL. En plus il est responsable des opérations suivantes :

o Inscription du fichier dans le catalogue. o Suppression du fichier du catalogue : lors de cette opération le fichier physique n'est

pas forcement détruit, il peut resté dans le VTOC du volume. Par contre da destruction physique d'un fichier le retire automatiquement du catalogue.

o Recherche d'un fichier dans le catalogue.

3.2.15 LE DADSM(gestion des fichier disque) Direct Access Device System Management. Le VTOC(Volume Table Of Contains) permet de connaître les emplacements occupés par les différent fichiers et l'espace disponible sur le disque. Chaque fichier est représenté dans le VTOC. Lors de la création d'un fichier le DADSM consulte le VTOC pour avoir les informations sur l'espace disponible. Chaque fichier est représenté par un ou plusieurs poste (DSCB, Data Set Control Block) qui fournit son adresse. Le DADSM qui assure la gestion du VTOC et le tient a jour lors des différentes opérations : Création du fichier : sur demande de l'Allocator. Extension d'un fichier : sur demande d'un programme. Suppression d'un fichier : sur demande du Terminator.

3.2.16 LES ROUTINES OPEN/CLOSE. Lors de l'exécution d'un programme, le JCL spécifie le nom physique du fichier (utiliser par le programme) connu par le système. La routine OPEN établi le lien entre le nom physique, est mais à jour le (DCB) Data Control Block qui évolue tous le long de l'exécution. A la fin de l'exécution le fichier est dissocier du programme par la routine CLOSE, le DCB revient a ça valeur initial.

3.2.17 LES METHODES D'ACCES. Dans un programme la lecture d'un fichier est réalisée par un ordre simple READ. Cette ordre met en jeux des opérations complexe pour le système d'exploitation :

o Organisation des donnée : séquentielle, séquentielle indexée, relative … o Format du fichier : fixe ou variable, bloqué ou non bloqué. o Caractéristique de l'enregistrement : longueur, position taille de la clé. o Choix d'un canal. o Exploitation du VTOC, et différents domaines du fichier. o Localisation du block contenant l'enregistrement. o Échange des données avec la mémoire.

Le rôle des méthodes d'accès est de prendre en charge une partie de ces opérations, les opération qui ce déroule au sein de la mémoire centrale. Si l'opération d'entrée et sortie ce fait sur un disque, la méthode d'accès est transmis à I/O Supervisor grâce à EXCP (EXECUTE CHANNEL PROGRAM).

3.2.18 L'I/O SUPERVISOR. Si la méthode d'accès et EXCP, il vérifie l'état de l'unité qui contient le fichier et le canal concerné. Il exécute le programme qui réalise l'opération. D'entrée/Sortie. Cette opération sera entièrement pris en compte par le canal est laisse le processeur centrale libre.

Page 10: MVS_GENERALITE

Anoir SEGHIOUER

Page 10 sur 10

A la fin de l'Entrée/Sortie, le canal provoque une fin qui est pris en compte par l'I/O Supervisor. A chaque opération l'I/O Supervisor vérifie la validité de la demande reçu, en cas de problème il fait appel au RECOVERY MANAGEMENT.

3.2.19 LE RECOVRY MANAGEMENT. Il tente de résoudre automatiquement les problèmes qui peuvent se poser tant au niveau logique que au niveau physique. Des routines spécialisées interviennent dans chaque cas spécifique.

• Canal ou unité physique hors service : tentative d'utilisation d'un autre canal ou résigné l'unité en erreur pour finir la tache en cour.

• Erreur d'entrée/sortie (information erronées ou support endommagé) : tentative de correction et production d'un DUMP (rapport sur l'erreur) si la correction n'a pas été au niveau.

• Exécution d'une instruction erroné : analyse, réexpression, sauvegarde de l'environnement et production d'un DUMP.

Le but est que la machine ne reste pas bloquée et poursuit le traitement des files de tache. Touts en fournissant des éléments pour l'analyse des erreurs.