Shmuel posted the relevant section.

The really relevant point is that subpool 251 is fetch-protected (and 
subpool 252 is not)
If you switch out of the subpool 251 key (and the module is in subpool 251 
storage, not subpool 252), then you have no access to the storage of your 
program and thus, yes, you will program check attempting to fetch the 
instruction.

If your program is loaded into subpool 252 (key 0, not fetch protected) 
any key can read it.

<snip>
when a blob of AUTHORIZED code loads something, say, some system exit or 
something; what
is the STORAGE KEY of the memory that code is loaded in.  That
program may get entered with a KEY=0, but will need access to its own 
CSECT.
</snip>
The same rules apply.


May I ask why you need to switch to key 9? That is very atypical. I 
believe that the Storage Protect Override facility, as implemented in z/OS 
with Key 9, was created so that CICS transactions could avoid accidental 
overlays of CICS key 8 storage.  So unless you're trying super-hard to 
prevent yourself from overlaying your own key 8 storage, you would not 
typically get into key 9.

Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to