Normal Operation
Normal Operation
Normal Operation
When you compile a module object using a command such as Create C Module (CRTCMOD), the optimizing translator automatically detects which processor features are available on your system. The hardware instructions generated for your module object take advantage of any optional processor features that might be useful. The optimizing translator stores the feature set used in the module object as part of the object.
When you create a program object using a command such as Create Program (CRTPGM) or Create Service Program (CRTSRVPGM), the binder determines the feature set for the program object and stores it as part of the program object. A feature is included in the program’s feature set if it is present in any of the feature sets of the program’s modules.
The first time the program object is activated on your system, the system checks to be sure that the program object is compatible with the target model associated with your system; that is, it ensures that your program does not use any features that are not available on your system. Because you compiled the program object on this system, the program object always passes this compatibility check, and the program runs correctly.
Suppose you want to migrate this program object to another system that uses the same release, but has a different target model. The first time the program is activated on the system to which it is moved, the system performs the compatibility check against this system’s target model. If the program is compatible with the system, the program runs correctly. However, if the program requires any processor feature that is not supported by the system to which it was moved, then the system automatically calls the optimizing translator to convert the program to be compatible. The translator detects which features are available on the new system, and takes advantage of all those that are applicable, just as it did when the original module objects were created. The converted program is then activated as requested.