Paramètres d'Up ! System

Tous les programmes en technologie Up ! Virtual Technical Machine possèdent les paramètres énumérés ci-après. Certaines paramètres font référence à des fichiers ou à des chemins d'accès. En ce cas, il est possible d'employer des variables environnement dans l'expression des chemins d'accès. Exemple :

Tmp=${UPS_HOME}/demo/tmp/${UPS_USER}

D'autre part, le séparateur de répertoire est le caractère division / et les noms de fichiers ou de répertoires peuvent utiliser les partitions montées automatiquement par Up ! System.

Les paramètres sont lus successivement dans :

Les valeurs des paramètres comportant des caractères espace doivent être mises entre caractères guillemet " ou entre caractères apostrophe ' .

Paramètres d'exécution

DestructionContenu

DestructionContenu détermine le mode de destruction par défaut des contenus avant qu'ils ne soient réalloués. Il s'applique en particulier aux fichiers quand ils sont supprimés.

Les valeurs admissibles sont les valeurs de l'énuméré DestructionContenu. La valeur par défaut est DestructionAucune.

DestructionContenu=DestructionZero

ModeOptimisationFichierDivers

ModeOptimisationFichierDivers détermine le mode d'optimisation pour le travail sur des fichiers divers par le système d'exploitation virtuel - déplacement, copie, lecture, écriture, etc.

Les valeurs admissibles sont les valeurs de l'énuméré ModeOptimisationFlux. La valeur par défaut est Asynchrone4096.

ModeOptimisationFichierDivers=Asynchrone16384

ModeOptimisationFichierSource

ModeOptimisationFichierSource détermine le mode d'optimisation pour le travail sur des sources par le système d'exploitation virtuel - déplacement, copie, lecture, écriture, etc.

Les valeurs admissibles sont les valeurs de l'énuméré ModeOptimisationFlux. La valeur par défaut est Asynchrone4096.

ModeOptimisationFichierSource=Asynchrone16384

ModeOptimisationFichierTrace

ModeOptimisationFichierTrace détermine le mode d'optimisation pour le travail sur des traces par le système d'exploitation virtuel - déplacement, copie, lecture, écriture, etc.

Les valeurs admissibles sont les valeurs de l'énuméré ModeOptimisationFlux. La valeur par défaut est Asynchrone4096.

ModeOptimisationFichierTrace=Asynchrone16384

PageCode

PageCode permet de spécifier la page de code du système d'exploitation. Sa valeur est une des valeurs énumérées de PagesDeCodesSupportees.

Système d'exploitationValeur par défaut de l'option
WindowsWE8Windows1
Os 400WE8Ebcdic500
UnixWE8Iso8859P1

Le fichier d'initialisation est ${UPS_HOME}/ini/${UPS_LANGUAGE}/upssys.ini parce qu'il est partagé par tous les programmes en technologie Up ! Virtual Technical Machine. La section est le nom de la machine.

PageCode=WE8Windows2

Cette page de code est utilisé lors d'un accès au système d'exploitation comme la création d'un répertoire ou le lancement d'un processus.

TailleAnteMemoireFichiersPersistants

TailleAnteMemoireFichiersPersistants permet de définir la taille en kilo octets de l'anté-mémoire pour les fichiers ouverts selon le mode MemoirePersistant. La valeur par défaut est 32 Ko.

TailleAnteMemoireFichiersPersistants=64

TailleMaxChaine

TailleMaxChaine permet de définir la taille d'allocation en kilo octets d'un bloc de chaînes de caractères statiques. La valeur par défaut est 32 Ko.

Les chaînes de caractères statiques sont surtout utilisées par :

TailleMaxChaine=64

TracerCommunication

TracerCommunication permet de tracer les communications effectuée par Up ! System lorsque la console n'est pas encapsulée dans le programme mais déportée vers Up ! Debugger ou Up ! Terminal. La valeur par défaut est Non.

Cette trace est inscrite dans le fichier ${UPS_HOME}/log/${UPS_LANGUAGE}/${UPS_APPLICATION}-upssys-console-${UPS_SESSION}.log en mode mono-utilisateur ou dans le fichier ${UPS_HOME}/log/${UPS_USER}/${UPS_APPLICATION}-upssys-console-${UPS_SESSION}.log en mode multi-utilisateur.

TracerCommunication=Oui

TracerObjets

TracerObjets permet de tracer l'utilisation des objets alloués par le programme. La valeur par défaut est Non.

Cette trace est inscrite dans le fichier ${UPS_HOME}/log/${UPS_LANGUAGE}/${UPS_APPLICATION}-upssys-objets-${UPS_SESSION}.log en mode mono-utilisateur ou dans le fichier ${UPS_HOME}/log/${UPS_USER}/${UPS_APPLICATION}-upssys-objets-${UPS_SESSION}.log en mode multi-utilisateur.

Cette trace permet de s'assurer que tous les objets sont bien détruits au moment opportun, en particulier en fin d'exécution du programme.

TracerObjets=Oui

TracerRessources

TracerRessources permet de tracer les ressources systèmes allouées par le programme. La valeur par défaut est Non.

Cette trace est inscrite dans le fichier ${UPS_HOME}/log/${UPS_LANGUAGE}/${UPS_APPLICATION}-upssys-resources-${UPS_SESSION}.log en mode mono-utilisateur ou dans le fichier ${UPS_HOME}/log/${UPS_USER}/${UPS_APPLICATION}-upssys-${UPS_SESSION}.log en mode multi-utilisateur.

Cette trace permet de s'assurer que toutes les ressources sont bien relâchées au moment opportun, en particulier en fin d'exécution du programme.

TracerRessources=Oui

URIConsoleClient

URIConsoleClient permet de rediriger la console d'Up ! System vers un autre programme serveur de console scruptant l'adresse spécifiée. Par défaut, la console reste encapsulée dans le programme.

Quand la console est redirigée, cela affecte les objets suivant :

De plus, l'application n'ouvre pas de console graphique.

URIConsoleClient=UpsTcp://soleil:1648

Optimisation du cycle de vie des objets

TypeConservation possibleTaille par défaut
du segment
FichierOui.4.
FichierListeOui.32.
FluxBinaireOui.4.
FluxCaractereOui.4.
FluxCompresseOui.4.
FluxConcateneOui.4.
FluxEncodeOui.4.
IFluxOui.4.
ProcessusListeOui.32.
SynchronisationOui.8.
TacheNon.2.
UniteListeeOui.8.

ConserverObjets, quand le paramètre est possible, spécifie qu'au plus TailleSegment objets du type sont conservés pré-construits en anté-mémoire au lieu d'être détruits.

Quand un nouvel objet du type est demandé, il est prélevé de l'anté-moire s'il en existe un pré-construit. Cela évite de réaliser des enchaînements de destruction / libération / ... / allocation / création d'objets de ce type trop fréquents.

Par défaut, les objets ne sont pas conservés en anté-mémoire.

ConserverObjetsFichier=Non
ConserverObjetsFichierListe=Oui
ConserverObjetsFluxBinaire=Non
ConserverObjetsFluxCaractere=Oui
ConserverObjetsFluxCompresse=Non
ConserverObjetsFluxConcatene=Oui
ConserverObjetsFluxEncode=Non
ConserverObjetsIFlux=Oui
ConserverObjetsProcessusListe=Non
ConserverObjetsSynchronisation=Oui
ConserverObjetsTache=Non
ConserverObjetsUniteListee=Oui

TailleSegment spécifie la taille d'un segment de mémoire dédié à un objet du type concerné en spécifiant le nombre d'objets de ce dernier par segment de mémoire. Ce nombre ne peut excéder la capacité du ramasse-miettes définie par TailleBloc*NbBlocs.

La valeur est 0 signifie que le type n'a pas ses propres buffers et que les objets du type sont alloués dans le tas commun.

TailleSegmentFichier=8
TailleSegmentFichierListe=64
TailleSegmentFluxBinaire=8
TailleSegmentFluxCaractere=8
TailleSegmentFluxCompresse=8
TailleSegmentFluxConcatene=8
TailleSegmentFluxEncode=8
TailleSegmentIFlux=8
TailleSegmentProcessusListe=64
TailleSegmentSynchronisation=16
TailleSegmentTache=4
TailleSegmentUniteListee=16

Définition des ressources partagées

Pour les plates-formes Macintosh, Z/Os, Os 400 et Unix, chaque ressource partagée doit être identifiée de façon unique au niveau du système d'exploitation par une clé numérique.

Si vous utilisez des segments de mémoire publique, il est nécessaire de déclarer les clés numériques de chaque module utilisant de la mémoire partagée.

Cela s'effectue dans le fichier ${UPS_HOME}/ini/upssys.ini en mode mono-utilisateur et ${UPS_HOME}/ini/${UPS_USER}/upssys.ini en mode multi-utilisateur parce qu'il est partagé par tous les programmes en technologie Up ! Virtual Technical Machine.

La section est le nom de la machine. L'entrée est le nom du module. La plage de clés réservée à ce module est égale au nombre de segments de mémoire partagée utilisé dans le module.

Dans l'exemple suivant, le module libd comportant un unique composant libd1. Les trois segments (le segment public de libd1, le segment protégé de libd1 et le segment privé de libd1) utilisent de la mémoire partagée. La taille de la plage de clés est donc trois.

PageDeCode

PageDeCode permet de définir la page de codes du système d'exploitation. Il n'y a pas de valeur par défaut.

Pour plus de précisions, merci de se référer à la fiche PagesDeCodesSupportees.

PageDeCode=WE8Iso8859P1

Partition

Up ! System monte automatiquement des partitions à partir desquelles sont localisés les fichiers, les répertoires et les exécutables.

Une partition peut correspondre à :

L'authentification au serveur de la partition peut être réalisée avec un nom d'utilisateur et un mot de passe si nécessaire. Les droits au contenu de la partition peuvent limiter l'accès en lecture, en écriture ou en exécution. La partition où est conservé Up ! Application System doit être accessible en lecture, écriture et exécution.

La déclaration des partitions s'effectue dans le fichier ${UPS_HOME}/ini/upssys.ini en mode mono-utilisateur et ${UPS_HOME}/ini/${UPS_USER}/upssys.ini en mode multi-utilisateur parce qu'il est partagé par tous les programmes en technologie Up ! Virtual Technical Machine.

Les répertoire de montage des partitions peuvent être référencés dans tous les noms de fichiers et de répertoires d'Up ! Application System, en particulier les valeurs des paramètres.

Il faut garder à l'esprit que :

DroitsDAcces

DroitsDAcces permet de définir les droits d'accès au contenu de la partition. Il n'y a pas de valeur par défaut.

Pour plus de précisions, merci de se référer à la fiche DroitsDAcces.

Etant donné que plusieurs partitions peuvent être prises en charge, le paramètre DroitsDAcces est suivi d'un index.

DroitsDAcces1=LectureEcritureExecution

MotDePasse

MotDePasse permet de définir le mot de passe pour se connecter au serveur de la partition. Il n'y a pas de valeur par défaut.

Etant donné que plusieurs partitions peuvent être prises en charge, le paramètre MotDePasse est suivi d'un index.

MotDePasse1=tiger

PointDeMontage

PointDeMontage permet de définir le point de montage de la partition sous forme d'un répertoire virtuel. Il n'y a pas de valeur par défaut.

Etant donné que plusieurs partitions peuvent être prises en charge, le paramètre PointDeMontage est suivi d'un index.

PointDeMontage1=/

URIServeur

URIServeur permet de définir l'Uniform Resource Identifier (URI) du serveur de la partition. Il n'y a pas de valeur par défaut.

Etant donné que plusieurs partitions peuvent être prises en charge, le paramètre URIServeur est suivi d'un index.

URIServeur1=file://local/

Utilisateur

Utilisateur permet de définir le nom de l'utilisateur pour se connecter au serveur de la partition. Il n'y a pas de valeur par défaut.

Etant donné que plusieurs partitions peuvent être prises en charge, le paramètre Utilisateur est suivi d'un index.

Utilisateur1=scott

Exemple de configuration d'Up ! System

Fichier upsaps.ini

; -------------------------------------------------------------------
; Fichier : upsaps.ini
; Objet : Initialisation d'Up ! Virtual Technical Machine.
;
; Module : Up ! Application System.
; Auteur-Date : DUVAL Jean-Pierre - Novembre 2003.
; -------------------------------------------------------------------
; Observations ;
;
; -------------------------------------------------------------------


[UpsSys]
ConserverObjetsFichier=Non
ConserverObjetsFichierListe=Oui
ConserverObjetsFluxBinaire=Non
ConserverObjetsFluxCaractere=Oui
ConserverObjetsFluxCompresse=Non
ConserverObjetsFluxConcatene=Oui
ConserverObjetsFluxEncode=Non
ConserverObjetsIFlux=Oui
ConserverObjetsProcessusListe=Non
ConserverObjetsSynchronisation=Oui
ConserverObjetsTache=Non
ConserverObjetsUniteListee=Oui
DestructionContenu=DestructionZero
ModeOptimisationFichierDivers=Asynchrone16384
ModeOptimisationFichierSource=Asynchrone16384
ModeOptimisationFichierTrace=Asynchrone16384
TailleAnteMemoireFichiersPersistants=64
TailleMaxChaine=64
TailleSegmentFichier=8
TailleSegmentFichierListe=64
TailleSegmentFluxBinaire=8
TailleSegmentFluxCaractere=8
TailleSegmentFluxCompresse=8
TailleSegmentFluxConcatene=8
TailleSegmentFluxEncode=8
TailleSegmentIFlux=8
TailleSegmentProcessusListe=64
TailleSegmentSynchronisation=16
TailleSegmentTache=4
TailleSegmentUniteListee=16
TracerCommunication=Oui
TracerObjets=Oui
TracerRessources=Oui
URIConsoleClient=UpsTcp://soleil:1648

Fichier upssys.ini

; -------------------------------------------------------------------
; Fichier : upssys.ini
; Objet : Initialisation d'Up ! System.
;
; Module : Up ! Application System.
; Auteur-Date : DUVAL Jean-Pierre - Novembre 2003.
; -------------------------------------------------------------------
; Observations
;
;
; -------------------------------------------------------------------

[Andromede]
PageCode=WE8Iso8859P1
libd=0x1234

[Terre]
PageCode=WE8Iso8859P1
libd=0x1234

[Mars]
PageCode=WE8Iso8859P1
libd=0x1235

[Soleil]
PageCode=WE8Iso8859P1
libd=0x1234

[Saturne]
PageCode=WE8Windows1

[Jupiter]
PageCode=WE8Iso8859P1
libd=0x1234

[Venus]
PageCode=WE8Windows1

[Uranus]
PageCode=WE8Ebcdic500
libd=0x1234

[UpsSys]
; /
;--
URIServeur1=UpsSys://local
PointDeMontage1=/
DroitsDAcces1=DroitLectureEcritureExecution
; /users1
;--------
URIServeur2=UpsArc://${UPS_HOME}/demo/tmp/${UPS_USER}/monarchive.uar
PointDeMontage2=/users1
DroitsDAcces2=DroitLectureEcriture
; /users2
;--------
URIServeur3=UpsCns://127.0.0.1/tmp
PointDeMontage3=/users3
Utilisateur3=king
MotDePasse3=elephant
DroitsDAcces3=DroitLectureEcriture
; /users3
;--------
URIServeur4=UpsFtp://tmp
PointDeMontage4=/users2
Utilisateur4=scott
MotDePasse4=tiger
DroitsDAcces4=DroitLectureEcriture
; /users4
;--------
URIServeur5=UpsOrb://Soleil/tmp
PointDeMontage5=/users3
Utilisateur5=king
MotDePasse5=elephant
DroitsDAcces5=DroitLectureEcriture
; /users5
;--------
URIServeur6=UpsSys://${UPS_HOME}/demo/tmp/
PointDeMontage6=/users4
DroitsDAcces6=DroitLectureEcriture