><begin extract from extract> >The directory is located on DASD with the data set, and is updated >whenever the module is changed. The directory entry contains >information about the module and where it is located in storage. ></end extract from extract>
>which is at best misleading. The data-set directory contains no >information about where in virtual or real storage any copy of a >member may have been loaded and no indicator that it is currently >resident. The phrase 'in storage' should replaced by 'in the data >set'. I disagree. The "where" refers to "allowed to be above 16M", "must be below 16M" >And RMODE is a rough suggestion about where the module *should* >be located in main storage. But is that in the directory entry? I disagree. RMODE is a firm definition of where the module is allowed to be located. Yes, it is in the directory entry. >So perhaps the intent is not that the JOBLIB is ignored. But that searching >stops if the module is found in the STEPLIB Just curious: how many people are not aware that the STEPLIB/JOBLIB (and TASKLIB) is represented solely by the TCBJLB address? A given task can have only one. Thus, due to the implementation (which for all I know goes back to the dawn of time, as it were), it is not possible to search both steplib and joblib for a given jobstep. And the jobstep program task can have no other tasklib (which is fine because the system does the attach of the jobstep program task specifying the proper thing via the TASKLIB parameter which results in setting TCBJLB appropriately). Thus it is effectively true that if steplib and joblib exist for a given step, joblib is ignored. With respect to the statement with respect to ignoring unauthorized steplib aside from the 306 abend: >That behavior, as you discovered, is more confusing than useful. That erroneous statement has been debunked before. It might be confusing. But it is more than useful. It is necessary for system integrity. >The way I'm reading your explanation below, if I have >program ABCDE that needs to run APF authorized, and it >is sitting both in the LNKLST and in an unauthorized JOBLIB/STEPLIB, >the system will skip loading the unauthorized module from >STEPLIB and load the authorized version from LNKLST? Very close. Fully correct would be "if the program needs to be fetched from an authorized concatenation because the requestor is authorized". Then "yes". Only the program, not the system, needs to know if the program does need to run APF authorized. >If I have a STEPLIB and a JOBLIB and the module I need is only in the >JOBLIB, would not the step with the STEPLIB looking for that module fail? Correct. Peter Relson z/OS Core Technology Design ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
