No instructions can both change the values of
general-register alteration masks and cause a
general-register alteration event to be recognized.
When aPER interruption occurs during the execu
tion of an interruptible instruction, the ILC indi
cates length of that instruction or EXECUTE, as
appropriate. When aPER interruption occurs as a
result ofLOAD PSW or SUPERVISOR CALL, the
ILC indicates the length of these instructions or EX
ECUTE, as appropriate, unless a concurrent specifi
cation exception onLOAD PSW calls for an ILC of O. When a PER interruption is caused by branching,
thePER address identifies the branch instruction (or
EXECUTE, as appropriate), whereas the oldPSW points to the next instruction to be executed. When
the interruption occurs during the execution of an
interruptible instruction, thePER address and the
instruction address in the oldPSW are the same.
Storage Area Designation
Two of the program events--instruction fetching and
storage alteration--involve the designation of an area
in main storage. The storage area monitored for the
references starts at the location designated by the
starting address in control register10 and extends up
to and including the location designated by the end
ing address in control register 11. The area extends
to the right of the starting address.
When dynamic address translation is specified,
the storage area is designated by logical when dynamic address translation is suppressed,
control registers10 and 11 contain real addresses.
The s,et of locations designated for monitoring
purposes wraps around at location 16,777,215; that
is, location0 is considered to follow location
16,777,215. When the starting address is smaller
than the ending address, the area is contiguous.
When the starting address is larger than the ending
address, the set of locations designated for monitor
ing purposes includes the area from the starting ad
dress to the largest address in the system and the
area from location0 to, and including, the ending
address. When the starting address is equal to the
ending address, only the location designated by that
address is monitored.
The monitoring of main-storage alteration and
instruction fetching is performed by carrying out the
address on all 24 bits of the addresses. Events
Successful Branching
Execution of a successful branch operation causes a
program-event interruption if bit0 of the PER- 42 System/370 Principles of Operation
event-mask field is one and thePER mask in the PSW is one.
A successful branch occurs whenever one of the
following instructions causes control to be passed to
the instruction designated by the branch address:
BRANCHON CONDITION BRANCH AND LINK
BRANCHON COUNT BRANCH ON INDEX HIGH
BRANCHON INDEX LOW OR EQUAL
The branch event is also indicated by special-
purpose instructions, such as those provided for em
ulation, when the special-purpose instruction causes
a branch. That is, the location of the next instruc
tion executed by theCPU after leaving emulation
mode does not immediately follow the location of
the instruction which caused theCPU to enter the
mode.
The event is identified by setting bit0 of the PER code to one.
Instruction Fetching
Fetching the first byte of an instruction from the
main-storage area designated by the contents of
control registers10 and 11 causes a program-event
interruption if bit 1 of the PER-event-mask field is
one and thePER mask in the PSW is one.
A program event is recognized whenever theCPU executes an instruction whose initial byte is located
within the monitored area. When the instruction is
executed by means of EXECUTE, a program event
is recognized when the first byte of the EXECUTE
instruction or the subject instruction or both is locat
ed in the monitored area.
The event is identified by setting bit 1 of thePER code to one.
Storage Alteration
Storing of data by theCPU in the main-storage area
designated by the contents of control registers10 and 11 causes a program-event interruption if bit 2
of the PER-event-mask field is one and thePER mask in the PSW is one.
The contents of main storage are considered to
have been altered whenever theCPU executes an
instruction that causes the whole operand or part of
it to be stored within the monitored area of main
storage. Alteration is considered to take place when
ever storing is considered to take place for purposes
of indicating protection exceptions.(See "Recognition of Access Exceptions" in the chapter
"Interruptions.") An arithmetic or movement opera
tion is considered to fetch the operand, perform the
indicated operation, if any, and then store the result.Such storing into main storage constitutes alteration
general-register alteration masks and cause a
general-register alteration event to be recognized.
When a
tion of an interruptible instruction, the ILC indi
cates
appropriate. When a
result of
ILC indicates the length of these instructions or EX
ECUTE, as appropriate, unless a concurrent specifi
cation exception on
the
EXECUTE, as appropriate), whereas the old
the interruption occurs during the execution of an
interruptible instruction, the
instruction address in the old
Storage Area Designation
Two of the program events--instruction fetching and
storage alteration--involve the designation of an area
in main storage. The storage area monitored for the
references starts at the location designated by the
starting address in control register
to and including the location designated by the end
ing address in control register 11. The area extends
to the right of the starting address.
When dynamic address translation is specified,
the storage area is designated by logical
control registers
The s,et of locations designated for monitoring
purposes wraps around at location 16,777,215; that
is, location
16,777,215. When the starting address is smaller
than the ending address, the area is contiguous.
When the starting address is larger than the ending
address, the set of locations designated for monitor
ing purposes includes the area from the starting ad
dress to the largest address in the system and the
area from location
address. When the starting address is equal to the
ending address, only the location designated by that
address is monitored.
The monitoring of main-storage alteration and
instruction fetching is performed by carrying out the
address
Successful Branching
Execution of a successful branch operation causes a
program-event interruption if bit
event-mask field is one and the
A successful branch occurs whenever one of the
following instructions causes control to be passed to
the instruction designated by the branch address:
BRANCH
BRANCH
BRANCH
The branch event is also indicated by special-
purpose instructions, such as those provided for em
ulation, when the special-purpose instruction causes
a branch. That is, the location of the next instruc
tion executed by the
mode does not immediately follow the location of
the instruction which caused the
mode.
The event is identified by setting bit
Instruction Fetching
Fetching the first byte of an instruction from the
main-storage area designated by the contents of
control registers
interruption if bit 1 of the PER-event-mask field is
one and the
A program event is recognized whenever the
within the monitored area. When the instruction is
executed by means of EXECUTE, a program event
is recognized when the first byte of the EXECUTE
instruction or the subject instruction or both is locat
ed in the monitored area.
The event is identified by setting bit 1 of the
Storage Alteration
Storing of data by the
designated by the contents of control registers
of the PER-event-mask field is one and the
The contents of main storage are considered to
have been altered whenever the
instruction that causes the whole operand or part of
it to be stored within the monitored area of main
storage. Alteration is considered to take place when
ever storing is considered to take place for purposes
of indicating protection exceptions.
"Interruptions.
tion is considered to fetch the operand, perform the
indicated operation, if any, and then store the result.