摘要:
A LOCK PAGE instruction is provided for locking a page of real storage using a virtual address. The LOCK PAGE instruction includes an operation code which specifies the operation to be performed, a first operand which contains the value of the real address obtained during execution of the LOCK PAGE instruction and a second operand which contains the value of the virtual address of the page to be locked during execution of LOCK PAGE. LOCK PAGE enables an address page or a data page to be locked without requiring the entire address space to be locked. A page is locked when a lock control bit in general register 0 is zero, the page is valid in main storage and a lock bit located in a page table entry is zero. In addition to the above, the technique used by an operating system service for reclaiming a page of real storage is altered to intersect with the LOCK PAGE facility.
摘要:
Storage is managed in a shared electronic store (SES) by assigning storage classes (STCs) to each directory entry having a data item stored in SES. The assignments of directory entries and data elements to the respective STCs can be changed at any time by any CPC. Eventually, no free space remains in the SES cache, and then space for new directory entries and data items must be obtained by reclaiming space occupied by directory entries and associated unchanged data items. The reclaiming of SES space is controlled on a STC basis. Any specified STC may reclaim from itself or from another STC using reclaiming software/microcode in SES, which includes a reclaim vector, a reclaim counter, a queue, and reclaiming controls. The vector and counter have respective elements for all possible STCs to controls how a specified STC may reclaim space from any or all target STC. Any enabled target STC reclaims its space according to an LRU algorithm maintained by a queue for the STC. A CPC can issue a command to load different values in target STC elements in the SES vector for a specified STC to control how reclaiming is apportioned for the specified STC. In SES, associated target counter elements are loaded from its vector. Reclaiming is done automatically in SES upon each directory miss in the current target STC having a non-zero counter value, when no free space exists. The counter is decremented for each reclaimed directory entry until its count reaches zero, and then the counter element for the next non-zero target STC is used for reclaiming until it reaches zero. When all STC elements in the counter are zero for the specified STC, the counter elements are reloaded from the vector elements to repeat the reclaiming operation, as long as a repeat factor for the specified STC has not reached zero. The repeat factor is decremented each time the counters are loaded from the vector. When the counters and repeat factor have all reached zero, reclaiming is disabled for the specified STC.
摘要:
Apparatus and accompanying methods for use in preferably a multi-system shared data (sysplex (5)) environment which quickly and efficiently isolates (fences), through a pre-defined hierarchical order, failed sysplex components from accessing shared data in order to protect data integrity. Specifically, by dividing a sysplex workload into specified fence groups (FG A, FG B) and providing appropriate software and hardware fence support, fencing can occur at various distinct levels: a member-to-member level, i.e. to allow any member (220, 225, 230, 233,237) of a fence group to fully isolate any other ("target") member of that same group; a fence group level, i.e. to isolate all members of a fence group that execute on a "target" system (200.sub.1, 200.sub.2, 200.sub.3); and a system level, i.e. to fully isolate an entire "target" system. Through pre-defined escalation rules (630), fencing can be escalated from a lower member level to a higher, group or system, level in the event a lower level fence can not be successfully imposed. Member level fencing is accomplished in software (1300, 1500); group and system level fencing is accomplished through dedicated hardware fencing facilities (44). An identifier (444, 464) uniquely designates each different fence group existing on a computer processing complex (CPC) (40.sub.1, 40.sub.2, 40.sub.3, 40.sub.M) in the sysplex over the life of that CPC. Advantageously, this technique eliminates erroneous back level fencing, significantly expedites fence processing and also greatly reduces a need for human intervention.
摘要:
A Structured External Storage (SES) Facility is coupled to one or more Central Electronic Complex (CEC) Processors, each linked to each other in a System Processing Complex (Sysplex). Applications within a CEC communicate with the SES via messages over a communication means. The SES comprises one or more List Structures, each structure comprising one or more Lists, each List comprising a list control and none or more List Entries. List Entries may be keyed or unkeyed, have a List Entry Identifiers (LEID), created within the SES, and unique within a particular List Structure. List Entries may also have a unique (within a List Structure) Name, created and managed by the application. A plurality of List commands are provided for creating, locating, moving and deleting List Entries--with location reference possible by LEID, Name, Key, Location within List, or a combination of Key and Location within Key. Name and LEID are preserved between moves, while Key may or may not be changed, and will be used to determine relative location.
摘要:
A method for controlling coherence of data elements sharable among a plurality of independently-operating CPCs (central processing complexes) in a multi-system complex (called a parallel sysplex) which contains sysplex DASDds (direct access storage devices) and a high-speed SES (shared electronic storage) facility. Sysplex shared data elements are stored in the sysplex DASD under a unique sysplex data element name, which is used for sysplex coherence control. Any CPC may copy any sysplex data element into a local cache buffers (LCB) in the CPC's main storage, where it has an associated sysplex validity bit. The copying CPC executes a sysplex coherence registration command which requests a SES processor to verify that the data element name already exists in the SES cache, and to store the name of the data element in a SES cache entry if found in the SES cache. Importantly, the registration command communicates to SES the CPC location of the validity bit for the LCB containing that data element copy. Each time another copy of the data element is stored in any CPC LCB, a registration command is executed to store the location of that copy's CPC validity bit into a local cache register (LCR) associated with its data element name. In this manner, each LCR accumulates all CPC locations for all LCB validity bits for all valid copies of the associated data element in the sysplex -- for maintaining data coherency throughout the sysplex.
摘要:
One or more Central Processing Complexes (CPC), each with one or more programs being executed, become command initiators by issuing commands requesting an action to be performed by a command responder. The responder is a Structured Electronic Storage (SES) which comprises a coupling facility. The SES receives commands to be executed over a plurality of links interconnecting the CPC's and SES, and returns a response to the program that issued the command. The SES is the focal point for the CPC's to share data, control locks, and manipulate lists or queues. This couples the autonomous CPC's into a System Complex (Sysplex) displaying a single system image. An indicator associated with each of the links is set by SES when it appears to a initiator that problems on the link exist. The set state of any indicator prevents SES from starting execution of any subsequent commands. This preserves the orderly, sequential execution of commands to insure consistent states of data in SES, and allows the program that issued the command to determine exactly how the command ended at SES. Data associated with execution of the command is stored in a status save area of SES for subsequent access by the program.
摘要:
Two or more user applications executing on one or more processors, each controlled by an operating system, share use of a list structure within a Structured External Storage (SES) facility to which each processor is connected. One of the applications registers interest in particular state transitions affecting one or more lists within the list structure, causing a process within the SES to notify the appropriate processor when a list operation causes the particular state transition, without interrupting processing on the processor. The application receives notice of the state transition by periodically polling a vector within the processor, or by receiving control when a test by the operating system of a summary indicator for the vector causes an application exit to be driven.
摘要:
One or more Central Processing Complexes (CPC), each with one or more programs being executed, become command initiators by issuing commands requesting an action to be performed by a command responder. The responder is a Structured Electronic Storage (SES) which comprises a coupling facility. The SES receives commands to be executed over a plurality of links interconnecting the CPC's and SES, and returns a response to the program that issued the command. The SES is the focal point for the CPC's to share data, control locks, and manipulate lists or queues. This couples the autonomous CPC's into a System Complex (Sysplex) displaying a single system image. An indicator associated with each of the links is set by SES when it appears to a initiator that problems on the link exist. The set state of any indicator prevents SES from starting execution of any subsequent commands. This preserves the orderly, sequential execution of commands to insure consistent states of data in SES, and allows the program that issued the command to determine exactly how the command ended at SES. Data associated with execution of the command is stored in a status save area of SES for subsequent access by the program.
摘要:
A high-speed cache is shared by a plurality of independently-operating data systems in a multi-system data sharing complex. Each data system has access both to the high-speed cache and the lower-speed, secondary storage for obtaining and storing data. Management logic and the high-speed cache assures that a block of data obtained form the cache for entry into the secondary storage will be consistent with the version of the block of data in the shared cache with non-blocking serialization allowing access to a changed version in the cache while castout is being performed. Castout classes are provided to facilitate efficient movement from the shared cache to DASD.
摘要:
One or more central processing complexes (CPC's), each with one or more programs being executed, issue commands to a structured electronic storage (SES). The commands include ones that create or delete data structures in SES, and attach or detach users to the data structures. The commands include a comparative authority value operand and a new authority value operand. A data structure or user control information has an associated existing authority value. If the comparative authority value matches the existing authority value, the existing authority value is replaced by the new authority value, and the command is executed. If there is a mismatch, the existing authority value is returned to the program that issued the command, and the command is not executed in SES. This enables software to serialize management of SES and maintain a consistent view of objects in SES in the presence of faulty CPC's, without causing correctly operating CPC's to experience errors or undue delays.