The logical flow of Java code that is running on a z14 server that has a zIIP available is shown  in Figure 3-13. When JVM starts the execution of a Java program, it passes control to the  z/OS dispatcher that verifies the availability of a zIIP. Figure 3-13 Logical flow of Java code execution on a zIIP The availability is treated in the following manner:  A zIIP runs only IBM authorized code. This IBM authorized code includes the z/OS JVM in  association with parts of system code, such as the z/OS dispatcher and supervisor services.  A zIIP cannot process I/O or clock comparator interruptions, and it does not support operator  controls, such as IPL. Java application code can run on a CP or a zIIP. The installation can manage the use of CPs  so that Java application code runs only on CPs, only on zIIPs, or on both. GLYPH<SM590000> If a zIIP is available (not busy), the dispatcher suspends the JVM task on the CP and  assigns the Java task to the zIIP. When the task returns control to the JVM, it passes  control back to the dispatcher. The dispatcher then reassigns the JVM code execution to  aCP. GLYPH<SM590000> If no zIIP is available (all busy), the z/OS dispatcher allows the Java task to run on a  standard CP. This process depends on the option that is used in the OPT statement in the  IEAOPTxx member of SYS1.PARMLIB. Chapter 3. Central processor complex system design  115 Standard Processor zIIP WebSphere Execute JAVA Code z/OS Dispatcher  Suspend JVM task on z/OS  standard logical processor WebSphere Java Application Code Executing on a zAAP logical processor z/OS Dispatcher  JVM Switch to zAAP JVM JVM Switch to  JVM Dispatch JVM task on z/OS  standard logical processor JVM z/OS Dispatcher  logical processor Dispatch JVM task on z/OS  zAAP logical processor Switch to standard processor z/OS Dispatcher  Suspend JVM task on z/OS  zAAPlogical processor Executing on a zIIP Switch to zIIP zIIP logical processor zIIP logical processor