Processor Modes

The elements of this Architecture specific to multiprocessors consist of six processor classes. The classes are called modes and are KERNEL, EXECUTING, IDLE, INTERRUPTING, STOPPED and DEAD.

KERNEL mode is comprised of the basic interrupt handling and dispatching code of the MCP. It is entered whenever a processor in the INTERRUPTING mode obtains a hardware maintained lock which assures that there is at most one processor in KERNEL mode at any time. The only other transition into KERNEL mode occurs when a completely stopped system is bootstrapped by the Maintenance Processor. It must set the KERNEL MODE ACCESS LOCK to owned and set a single processor into KERNEL mode from STOPPED mode.

EXECUTING mode is entered from KERNEL mode upon execution of the Branch Reinstate Virtual instruction. Within EXECUTING mode the processor may freely make transitions between Privileged and User contexts. The difference between these two contexts is the setting of the Privileged Enable toggle. Except as initiated by the Maintenance Processor, the only transitions out of EXECUTING mode are into IDLE mode when an Idle instruction is executed, or into INTERRUPTING mode whenever the processor responds to an interrupt.

The IDLE mode is characterized by the processor doing nothing except waiting for interrupts. When the processor responds to an interrupt, it enters INTERRUPTING mode.

The INTERRUPTING mode is entered from EXECUTING mode or from IDLE mode when a processor responds to an interrupt, or from STOPPED mode when the processor responds to the Start Selected Processors variant of the Interprocessor Communicate instruction. The INTERRUPTING mode is a transitional mode between other modes and KERNEL mode. It is characterized by an attempt to obtain the KERNEL MODE ACCESS LOCK, which results in obtaining exclusive access to KERNEL mode (if the lock was obtained), or waiting to again attempt to acquire the lock.

The STOPPED mode is entered from KERNEL mode through execution of the Stop This Processor variant of the Interprocessor Communicate instruction; it is the initial mode of all processors when the system is being bootstrapped by the Maintenance processor. The only transitions out of STOPPED mode occur into INTERRUPTING mode as a response to the execution of a Start Selected Processors variant of the Interprocessor Communicate instruction or into DEAD mode through Maintenance processor intervention, or into KERNEL mode (for one and only one processor) at the instigation of the Maintenance processor.

The DEAD mode is characterized by a processor having no affect on the system; it is under control of the Maintenance Processor. It can be returned to the system by the MP returning it to the STOPPED mode. MCP intervention is required to cause it to move from the STOPPED mode back into the normal complement of the system, through the Interprocessor Communicate instruction.

processor_state/mode.txt · Last modified: 2008/11/26 12:09 by scott
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki