# FAQs zu den Mess- und Auswerteprogrammen #
********************************************

*(Häufig gestellte Fragen)*

21.Jul.04 K. Huber, Strahlenzentrum Univ. Gießen
Version 23.May.2012

1 Readme
********

Diese FAQs gibt es zur Zeit in fünf verschiedenen Formaten *(html, txt,
dvi, pdf, info)*. Sie finden Sie unter `/usr/exp/ex_help/FAQs'.

   Einen einfachen Zugang zu den FAQs finden Sie über die lokalen Seite
des Strahlenzentrums unter `'Anleitungen zu den VME Mess- und
Auswerteprogrammen'':
   * *HTML-Format:* durch Anklicken von *FAQs* erhält man das
     menü-orientierte HTML-Format.

   * *Text-Format:* durch Anklicken von *(txt)* erhält man das
     Text-Format.  Ausdrucken mit `/usr/local/bin/a2ps' ergibt ein
     handliches Format.

   * *TeX-Format:* durch Anklicken von *(dvi)* erhält man das
     TeX-Format.  Auf dem Servix druckt man das dvi-Format mit
     `/usr/local/bin/dvips' oder verwendet den dvi-Viewer
     `/usr/local/bin/xdvi'.

   * *PDF-Format:* durch Anklicken von *(pdf)* erhält man das
     PDF-Format. Sie benötigen dazu den Acrobat-Viewer.

   * *INFO-Format:* durch Anklicken von *(info)* erhält man das
     menü-orientierte Info-Format.  Um das Info-Format lesen zu können,
     benötigen Sie den GNU-Info-Browser (auf dem Servix:
     `/usr/local/bin/info').

2 FAQs - Häufig gestellte Fragen
********************************

2.1 Verbindung zum VME-Rechner ist abgerissen
=============================================

   Üblicherweise werden die VME-Rechner mittels TeraTerm
Terminal-Emulator auf einem PC über das Netzwerk bedient.  Die Folgen
für die Messung bei einem Verbindungsabbruch sind abhängig von dem
Status des Messprogrammes beim Verbindungsabbruch und dem
Versions-Datum des Programmes:

   *Versions-Datum vor 21Jun12:*

   * *Das Messprogramm war mit 'Detach' sich selbst überlassen worden.*
     In diesem Fall läuft die Messung ungestört weiter und kann nach
     einem erneuten Verbindungsaufbau direkt wieder erreicht werden
     durch den gewohnten Aufruf über das Start-Menü.

   * *Mit 'Analyse Spectrum' war zum Auswerteprogramm gewechselt
     worden.*
     Auch in diesem Fall läuft die Messung ungestört weiter, kann
     jedoch mit einem erneuten Verbindungsaufbau nicht wieder erreicht
     werden sondern nur noch über die lokale COM-Schnittstelle des
     VME-Rechners (VME162/172: Console 1) z.B. mittels VT100 oder PC
     mit TeraTerm.
     Einstellungen:
        9600 bd
        8 bits, no parity
        1 stop bit
     Nach Anschluss und Leertaste drücken sollte sich das Messprogramm
     umgehend melden. Wenn danach das Messprogramm  mit 'Detach'
     verlassen wird, kann es nach einem erneuten Verbindungsaufbau
     direkt wieder erreicht werden durch den gewohnten Aufruf über das
     Start-Menü.

   * *Das Messprogramm stand bei Verbindungsabbruch im 'Experiment
     online' Menü.*
     In diesem Fall bleibt die Messung stehen und es gibt keine
     Möglichkeit mehr, das Messprogramm zu erreichen. Der VME-Rechner
     muss neu gebootet werden.

   Tips:
   * Benutzen Sie bei länger laufenden Messungen die Möglichkeit, die
     Messdaten periodisch zu retten. Wenn Sie dabei die Daten jedes Mal
     auf eine neue Datei schreiben lassen, könnten Sie möglicher Weise
     Unregelmäßigkeiten bei der Messung erkennen und korrigieren.

   * Verlassen Sie bei länger laufenden Messungen das Messprogramm mit
     'Detach' oder indem Sie mit 'Analyse Spectrum' das Auswerteprogramm
     aufrufen.

   *Versions-Datum ab 21Jun12:*

Bei einem Verbindungsabbruch läuft die Messung ungestört weiter.  War
mit 'Analyse Spectrum' zum Auswerteprogramm gewechselt worden, so wird
dieses normal beendet und es wird in das Menü des Messprogrammes
zurückgekehrt. Ein- und Ausgabe fallen bei einem Verbindungsabbruch
automatisch auf die COM-Schnittstelle zurück.

   Voraussetzung für die Wiedererlangung der Kontrolle über die
laufende Messung ist, dass das Messprogramm zuvor über das Programm
START aktiviert wurde. Wird nach einem Verbindungsabbruch START wieder
aufgerufen, so kann es die Verbindung zum Messprogramm wieder
herstellen.  Dies kann sowohl über die COM-Schnittstelle mittels
VT-Terminal nach Eingabe von <ENTER> um den Shell-Prompt zu erhalten
als auch von einem PC aus z.B. mit TeraTerm geschehen.

   Obwohl auf diese Weise auch die Kontrolle einer laufenden Messung zu
wechselnden PCs oder COM delegiert werden könnte, so ist doch eher der
'saubere' Weg mittels Detach, Rückkehr zur Shell und Logout vorzuziehen.

2.2 Programme hängen nach Eingabe von ^S
========================================

   Problem:
Wird über die Tastatur versehentlich ^S (Control S / Strg S)
eingegeben, so scheint sich das Programm aufzuhängen.

   Ursache:
^S ist der übliche ASCII-Code (XOFF) zum Anhalten eines
Ausgabe-Datenstroms. Terminals nutzen dies, wenn sie mit der
Datenverarbeitung nicht mitkommen und Benutzer können damit eine
Ausgabe anhalten, um sie in Ruhe lesen zu können.  Der Restart der
Ausgabe erfolgt mit ^Q (XON), bei manchen Systemen (Windows) auch mit
jeder beliebigen Taste.

   Abhilfe:
^Q (XON) eingeben.

2.3 'Show spectrum' lässt sich nicht mehr starten
=================================================

   Problem:
Plötzlich lässt sich aus einem Messprogramm heraus unter dem Menü-Punkt
'Show spectrum' bzw. 'Analyse spectrum' die Messdaten-Auswertung nicht
mehr starten mit folgender Fehlermeldung:
*??????????????*
Ursache:
VxWorks, das Betriebssystem der VME-Rechner, hat ein Memory-Leck, d.h.
im Gebrauch wird der freie Speicherplatz immer weniger. Wird der
VME-Rechner lange Zeit nicht gebootet, dann ist früher oder später der
freie Speicherplatz nicht mehr ausreichend zum Laden der
Auswerte-Software.

   Abhilfe:
Messung stoppen und VME-Rechner neu booten.

2.4 Das Zeitverhalten der Messprogramme
=======================================

Unter VxWorks, dem Betriebssystem der VME-Rechner, werden die
anstehenden Aufgaben durch verschiedene Prozesse erledigt, denen gemäß
ihrer Echtzeitanforderungen Prioritäten zugeteilt werden. Ein
Mess-/Auswerte-System kann je nach Aufgabenstellung mehr als zehn
solcher Prozesse benötigen. Die Prioritätenverteilung ist im
Wesentlichen folgendermaßen:
   * kurze, zeitkritische Prozesse haben hohe Priorität,

   * die Messdatenerfassung hat mittlere Priorität,

   * die Bedienung und Auswertung hat niedrige Priorität.
   Diese Anordnung der Prioritäten könnte allerdings dazu führen, dass
bei hoher Datenrate die Bedienung völlig blockiert wird.  Um dies zu
vermeiden, ist die Messdatenerfassung begrenzt, so dass sie nur zu
maximal ca. 90% die CPU belasten kann.

   Um Totzeiten bei der Datenverarbeitung möglichst gering zu halten,
ist hardware-seitig ein Fifo-Speicher installiert, der in der
Standardausführung 2048 Datenworte zwischenspeichern kann.  Bei 100kHz
Datenrate können damit 20ms Totzeit überbrückt werden.

   Weitere Rechnungen dazu findet man in der 'Data Routing'
Funktionsbeschreibung unter 'Totzeitbetrachtungen'.

2.5 Wie tausche ich meine VME-CPU aus
=====================================

Nur Motorola VME162 und VME172 CPUs können verwendet werden. Die VME172
arbeitet etwa 4 mal schneller als die VME162.

   Wenn Sie von Ihrer alten CPU noch die Boot-Parameter abfragen können,
dann gehen Sie so vor:
  1. Reset-Knopf drücken

  2. beim Countdown Leertaste drücken

  3. p<enter> eingeben,
     	dies listet Ihnen die Boot-Parameter auf, z.B.:
        boot device      : ei
        processor number : 0
        host name        : bootHost
        file name        : ex_home/vxw/vx172
        inet on ethernet : 134.176.20.74:ffffff00
        inet on backplane: (nicht angezeigt, falls leer)
        host inet        : 134.176.20.59
        gateway inet     : (nicht angezeigt, falls leer)
        user             : huber
        ftp password     : (nicht angezeigt, falls leer)
        flags            : 0x0
        target name      : vmetst
        startup script   : ex_home/ex_param/startup.vxw
        other            : (nicht angezeigt, falls leer)

  4. Parameter notieren, 'file name' ggf. mit vx162 bzw. vx172
     anpassen

  5. VME-Crate abschalten, CPUs tauschen, VME-Crate anschalten

  6. beim Countdown Leertaste drücken

  7. c<enter> eingeben, Parameter eingeben

  8. p<enter> eingeben, Parameter kontrollieren

  9. @<enter> eingeben, System booten

   Wenn Sie von Ihrer alten CPU die Boot-Parameter nicht mehr abfragen
können, dann gehen Sie von dem obigen Beispiel aus und passen die
Parameter wie folgt an:
   boot device      : ei
   processor number : 0
   host name        : bootHost
   file name        : ex_home/vxw/vx172
   inet on ethernet : 134.176.20.xx:ffffff00  (xx: s.h. lokale Seiten)
   inet on backplane: (leer)
   host inet        : 134.176.20.59    (für Servix als Host)
   gateway inet     : (leer)
   user             : xxxx   (xxxx: Ihr Experiment-Accout)
   ftp password     : (leer)
   flags            : 0x0
   target name      : xxxx   (xxxx: Name des Experiment-Rechners)
   startup script   : ex_home/ex_param/startup.vxw
   other            : (leer)

2.6 Wie funktioniert der Datentransfer zum Host-Rechner
=======================================================

Die VME-Systeme besitzen in der Regel keine eigenen Medien zum Speichern
der Messdaten sondern sie benutzen die Dienste von Servern im Netzwerk.

   Unter VxWorks, dem Betriebssystem der VME-Rechner, wird im Boot-File
des VME-Rechners der Server und der User-Account festgelegt, von dem das
System gebootet wird.  Nach dem Booten eines VME-Rechners ist, wie bei
einem normalen Login, die Home-Directory des Users als Work-Directory
eingestellt. Mit `cd "path"' ("'s nicht vergessen!) bewegt man sich in
fast gewohnter Weise durch die Directory-Hierarchie. Die Schreibweise
für Pfadangaben richtet sich nach dem Host-Rechner.

   Diese Netzwerkzugriffe erfolgen über RSH oder FTP (im Boot-File
festgelegt). Für RSH muss der File $HOME/.rhosts die entsprechende
Freigabe enthalten.

   Für den Transfer großer Datenmengen, insbesondere bei "List-Mode"
Messungen, sind RSH und FTP jedoch nicht geeignet. In solchen Fällen
sollte der Datentransfer über NFS erfolgen. Dazu muss auf dem
Host-Rechner der /etc/exports File die notwendigen Freigaben enthalten
und in den Boot-Script-File $HOME/ex_home/ex_param/startup.vxw müssen
die benötigten NFS-Verbindungen eingetragen werden.

   Um das Ganze übersichtlich zu halten, werden die VME-Systeme in der
Regel zur Zeit folgendermaßen betrieben:
   * Die Host-Rechner sind Unix-Rechner (Servix, Atomix).

   * Zu jedem Experiment "xxxx" gibt es auf dem Host-Rechner einen
     gleichnamigen Account. Meistens trägt der VME-Rechner ebenfalls
     diesen Namen.
     Auf einem solchen Experiment-Account sind folgende Directories
     vorhanden
     ($HOME = Home Directory des Accounts):
     $HOME/ex_home/ex_data:   Messdaten
     $HOME/ex_home/ex_help:   Help-Files für die Mess- und Auswerteprogramme
     $HOME/ex_home/ex_param:  Parametersätze der Mess- und Auswerteprogramme
     $HOME/ex_home/ex_prog:   Mess- und Auswerteprogramme
     $HOME/ex_home/vxw:       VxWorks Betriebssysteme für die VME-Rechner

   * Das Booten und die nachfolgenden Nicht-NFS-Zugriffe erfolgen über
     RSH auf den Servix.  Bei der Angabe des Messdatenpfades werden
     folgende Schreibweisen als RSH-Verbindung verstanden:
     bootHost:spektr.spe      $HOME/spektr.spe
     bootHost:ddd/spektr.spe  $HOME/ddd/spektr.spe
     ~/spektr.spe             $HOME/spektr.spe
     ~/ddd/spektr.spe         $HOME/ddd/spektr.spe
     spektr.spe               ./spektr.spe
     ddd/spektr.spe           ./ddd/spektr.spe

   * Als NFS-Verbindungen stehen die Laufwerks-Bezeichnungen "home:"
     und "data:" zur Verfügung, die auf dem Servix zu folgenden
     Directories führen:
     home:spektr.spe          $HOME/spektr.spe
     data:spektr.spe          $HOME/ex_home/ex_data/spektr.spe
     Weitere NFS-Laufwerke können im Boot-Script-File freigegeben bzw.
     neu definiert werden.
     Die existierenden NFS-Laufwerke können Sie sich mit dem
     SHOW-Programm unter "Network(NFS) devices" anzeigen lassen.

   * Zur Umgehung eines aktuellen VxWorks-Systemfehlers wird nach der
     Laufwerksangabe './' eingefügt:
     home:ex_home/ex_data/test.spe   -> home:./ex_home/ex_data/test.spe

   * Das Messprogramm hebt seine aktuellen Parameter in dem File
     $HOME/ex_home/ex_param/<Programmname>par.vxw
     auf, um sie bei einem nachfolgenden Start als Default-Werte
     anbieten zu können.