- 32 -
3.6.3
Controlling Interrupts
Interrupt enable/disable control in a service call is accomplished by IPL manipulation. The IPL value in a service call is set
to the kernel mask level(OS interrupt disable level = system.IPL) in order to disable interrupts for the kernel interrupt han-
dler. In sections where all interrupts can be enabled, it is returned to the initial IPL value when the service call was invoked.
•
For service calls that can be issued from only task context.
Task
Service call issued
Service call processing
I flag
IPL
1
0
system.IPL
system.IPL
1
0
0
1
0
Task
Service call issued
Service call processing
I flag
IPL
0
0
system.IPL
system.IPL
1
0
0
0
0
When the I flag before issuing a service call is 1.
When the I flag before issuing a service call is 0.
Figure 3.23 Interrupt control in a Service Call that can be Issued from only a Task