On 10/10/2017 7:45 AM, Paul Gilmartin wrote:

Slightly more feasible would be an option on LOCTR declaring that only
code or only data may oppear governed by that LOCTR, and that code LOCTRs must
not be overwritten.

I LIKE that!!!

Some non-z architectures have additional segment protection enforcing the
distinction between code segments and data segments at execution time.

And z/Architecture supports this as well. That's why we have the EXECUTABLE=YES|NO keyword on the STORAGE and IARV64 macros:

[EXECUTABLE={SYSTEM_RULES|YES|NO}]                     *
    is an optional keyword input that specifies if     *
    code can be executed from the storage being        *
    obtained on a machine that has implemented         *
    Instruction-Execution-Protection.  The setting of  *
    EXECUTABLE=NO will be ignored when executed on a   *
    machine that has not implemented                   *
    Instruction-Execution-Protection or is not running *
    an appropriate level of z/OS.                      *
    DEFAULT: SYSTEM_RULES                              *
                                                       *
    EXECUTABLE=SYSTEM_RULES                            *
        Code will obey the current system defaults.    *
                                                       *
    EXECUTABLE=YES                                     *
        Code will be able to be executed from the      *
        obtained storage.                              *
                                                       *
    EXECUTABLE=NO                                      *
        Code will not be able to be executed from the  *
        obtained storage on a machine that has         *
        implemented Instruction-Execution-Protection.  *

--
Phoenix Software International
Edward E. Jaffe
831 Parkview Drive North
El Segundo, CA 90245
http://www.phoenixsoftware.com/

Reply via email to