Kategorie

A B C D E
F G H I J
K L M N O
P Q R S T
U V W X Y
Z 0      

iefbr14

ia ib ic id ie if ig ih ii ij ik il im
in io ip iq ir is it iu iv iw ix iy iz

IEFBR14

IEFBR14 ist ein Hilfsprogramm, welches in IBM-Großrechnerbetriebssystemen seit OS/360 verwendet wird, wenn mittels JCL Dateioperationen vorgenommen werden sollen. Es handelt sich dabei um ein Programm, welches die Kontrolle sofort wieder an den Aufrufer zurück gibt (RETURN, in Assemblersprache BR 14 für Branch Register), ohne selbst irgendwelche Aktionen zu treffen.

IEFBR14 gilt als Schulbeispiel für die Tatsache, dass es sehr schwer ist, fehlerfreie Programme zu schreiben. Die ersten Auslieferungen des Programms setzten den Rückgabewert nicht auf 0, was Abfragen des Condition Code in Folgesteps behinderte. Dieser Fehler wurde durch Einbauen einer SR 15,15 - Instruktion behoben. SR steht hierbei für Subtract Registers.

Der einzige wirkliche Nutzen von IEFBR14 ist, den syntaktischen Anforderungen von JCL gerecht zu werden. Jeder Step bei JCL muss mindestens ein EXEC-Statement beinhalten, auch wenn JES nur eine Datei allokieren soll. Eine beliebte Anwendung ist, hiermit Dateien zu löschen:

//LOESCH EXEC PGM=IEFBR14
//DUMMY1   DD DSN=FILE.TO.DELETE,
//            DISP=(MOD,DELETE,DELETE),
//            SPACE=(TRK,(1,1))

Mit diesem Vierzeiler weist man JES an, ein Data Set FILE.TO.DELETE anzulegen falls es noch nicht existiert. Danach wird IEFBR14 aufgerufen; schlägt das fehl wird die Datei gelöscht, wenn nicht wird sie auch gelöscht. Im nächsten Step, in dem dann ein "echtes" Programm aufgerufen wird, kann die Datei mit DISP=(NEW... neu allokiert und beschrieben werden.

Ansonsten besteht das Programm tatsächlich aus zwei Maschineninstruktionen (1. setzt ReturnCode 0; 2. sagt ich bin fertig) mit insgesamt vier Bytes; womit es eines der kleinsten Programme auf dem Globus sein dürfte (dürfte aber auch weltweit das Programm sein, das am wenigsten tut).

Impressum

Datenschutzerklärung