Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Special considerations

When invoking a BS2000 program using START-PROGRAM neither the /etc/profile nor the .profile file of the user is executed. The result of this is that a program may, in some cases, behave differently than if it had been started under the shell. If the file access rights of newly created files are restricted in the profiles using umask, this does not apply to programs started using START-PROGRAM. The result of this is that these programs then create files with more extensive access rights than intended. There is currently no solution available to remedy this. The tools are also affected because they are called with the START-PROGRAM command in the START procedure.

The environment variable PATH is not set after START-PROGRAM. The consequence of this is that creating a new process with fork/exec is not possible under some circumstances when the program to be started cannot be found. It is possible to resolve this problem by setting the SDF-P variable SYSPOSIX.PATH to the value used in the shell before calling START-PROGRAM, or by specifying a complete path name in the program for exec(). In Java this problem effects the method Runtime.exec().


Example

The following instruction can only be excuted if the environment variable PATH was set correctly:


Process child = Runtime.getRuntime().exec("java Myclass");


The following instruction rectifies the problem:


Process child =
Runtime.getRuntime().exec(System.getProperty("java.home") +
"/bin/java Myclass");


Even if the VM is started using START-PROGRAM, the input/output is, by default, directed to files in the POSIX file system. BS2000 files can be opened using the package JRIO. The class files must be located in the POSIX file system.