Gustav E. Sittmann, Webster Groves US

Gustav E. Sittmann, Webster Groves, MO US

Patent application number

Description

Published

20090182966

DYNAMIC ADDRESS TRANSLATION WITH FRAME MANAGEMENT - What is disclosed is a frame management function defined for a machine architecture of a computer system. In one embodiment, a frame management instruction is obtained which identifies a first and second general register. The first general register contains a frame management field having a key field with access-protection bits and a block-size indication. If the block-size indication indicates a large block then an operand address of a large block of data is obtained from the second general register. The large block of data has a plurality of small blocks each of which is associated with a corresponding storage key having a plurality of storage key access-protection bits. If the block size indication indicates a large block, the storage key access-protection bits of each corresponding storage key of each small block within the large block is set with the access-protection bits of the key field.

07-16-2009

20090187724

DYNAMIC ADDRESS TRANSLATION WITH FRAME MANAGEMENT - What is disclosed is a set key and clear frame management function defined for a machine architecture of a computer system. In one embodiment, a machine instruction is obtained which identifies a first and second general register. Obtained from the first general register is a frame size field indicating whether a storage frame is one of a small block or a large block of data. Obtained from the second general register is an operand address of a storage frame upon which the instruction is to be performed. If the storage frame is a small block, the instruction is performed only on the small block. If the indicated storage frame is a large block of data, an operand address of an initial first block of data within the large block of data is obtained from the second general register. The frame management instruction is performed on all blocks starting from the initial first block.

07-23-2009

20090193214

DYNAMIC ADDRESS TRANSLATION WITH FRAME MANAGEMENT - What is disclosed is a frame management function defined for a machine architecture of a computer system. In one embodiment, a machine instruction is obtained containing an opcode for a frame management instruction identifying a first and second general register. Clear frame information is obtained from the first general register having a frame size field indicating whether a storage frame is a small or large block of data. The second general register contains an operand address of a storage frame. If the storage frame is a small block, all bytes of the small block of data are set to zero. If the storage frame is a large block of data, an operand address of an initial first block of data within the large block is obtained from the second general register. All data of all blocks within the large block are cleared starting from the initial first block.

07-30-2009

20090210559

PROCESSING A VARIABLE LENGTH DEVICE COMMAND WORD AT A CONTROL UNIT IN AN I/O PROCESSING SYSTEM - A computer program product, apparatus and method for processing a variable length device command word (DCW) at a control unit configured for communication with an input/output (I/O) subsystem in an I/O processing system. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a DCW at the control unit from the I/O subsystem. The DCW specifies one or more I/O operations and includes a command, a control data count, and control data having a varying length specified by the control data count. The control data is extracted in response to the control data count. The command is then executed in response to the extracted control data to perform the specified one or more I/O operations.

08-20-2009

20090210561

PROCESSING OF DATA TO PERFORM SYSTEM CHANGES IN AN INPUT/OUTPUT PROCESSING SYSTEM - A computer program product, an apparatus, and a method for processing communications between a target and an initiator an input/output processing system are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes: sending a message from the initiator to the target, the message requesting suspension of input/output operations between the initiator and the target for a period of time, the period of time being defined by the message; responsive to the message, suspending input/output operation messages for the period of time; performing a system change comprising at least one of: at least one update, a computer program installation, a recovery, and a change in operating parameters; and initiating new input/output operations after at least one of: expiration of the period of time and initiation of new input/output operations by the initiator.

08-20-2009

20090210563

PROVIDING INDIRECT DATA ADDRESSING FOR A CONTROL BLOCK AT A CHANNEL SUBSYSTEM OF AN I/O PROCESSING SYSTEM - An computer program product, apparatus, and method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes the host computer system obtaining a transport command word (TCW) for an I/O operation. The TCW specifies a location of one or more I/O commands and a flag. The flag is set to indicate that the location is an indirect address. The host computer system extracts the location of the one or more I/O commands and the flag from the TCW. The host computer system gathers the one or more I/O commands responsive to the location specified by the TCW and the flag, and then forwards the one or more I/O commands to the control unit for execution.

08-20-2009

20090210564

PROCESSING OF DATA TO SUSPEND OPERATIONS IN AN INPUT/OUTPUT PROCESSING SYSTEM - A computer program product, an apparatus, and a method for processing communications between a target and an initiator an input/output processing system are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes: sending a message between the initiator and the target, the message requesting suspension of input/output operations between the initiator and the target for a period of time, the period of time being defined by the message; and responsive to the message, suspending input/output operation messages for the period of time.

08-20-2009

20090210570

EXTENDED MEASUREMENT WORD DETERMINATION AT A CHANNEL SUBSYSTEM OF AN I/O PROCESSING SYSTEM - An article of manufacture, an apparatus, and a method for determining an extended measurement word at a channel subsystem of an I/O processing system using data from a control unit are provided. The article of manufacture includes at least one computer usable medium having computer readable program code logic. The computer readable program code logic performs a method including sending a command message to the control unit, and receiving a transport response information unit message at the channel subsystem in response to sending the command message to the control unit. The computer readable program code logic additionally extracts a plurality of time values from the transport response information unit message as calculated by the control unit, calculates an extended measurement word as a function of the time values, and writes the extended measurement word to computer readable memory in the I/O processing system.

08-20-2009

20090210572

COMPUTER COMMAND AND RESPONSE FOR DETERMINING THE STATE OF AN I/O OPERATION - A computer program product, apparatus, and method are provided for determining a state of an input/output (I/O) operation in an I/O processing system. A request from a channel subsystem is received at a control unit for performing the I/O operation. After a predetermined amount of time passes without the I/O operation completing, an interrogation request is received from the channel subsystem at the control unit for determining the state of the I/O operation. A response is sent from the control unit to the channel subsystem indicating the state of the I/O operation in response to the interrogation request. The response also includes information regarding a state of an I/O device executing the I/O operation and information indicating a state of the control unit controlling the I/O device executing the I/O operation.

08-20-2009

20090210576

PROVIDING INDIRECT DATA ADDRESSING IN AN INPUT/OUTPUT PROCESSING SYSTEM WHERE THE INDIRECT DATA ADDRESS LIST IS NON-CONTIGUOUS - Systems, methods and computer program products for providing indirect data addressing at an I/O subsystem of an I/O processing system. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a control word for an I/O operation. The control word includes an indirect data address for data associated with the I/O operation. The indirect data address includes a starting location of a list of storage addresses that collectively specify the data, the list spans two or more non-contiguous storage locations. Data is gathered responsive to the list. The gathered data is transmitted to a control unit in the I/O processing system.

08-20-2009

20090210579

OPEN EXCHANGE LIMITING IN AN I/O PROCESSING SYSTEM - A computer program product, an apparatus, and a method for limiting a number of open exchanges at a channel subsystem of an I/O processing system using data from a control unit. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method that includes sending a command message to the control unit, and receiving a transport response information unit message in response. The method further includes extracting a maximum control unit exchange parameter from the transport response information unit message, and determining a limit value for a maximum number of open exchanges between the channel subsystem and the control unit as a function of the extracted maximum control unit exchange parameter. The method additionally includes applying the limit value to prevent opening of a new exchange.

08-20-2009

20090210581

BI-DIRECTIONAL DATA TRANSFER WITHIN A SINGLE I/O OPERATION - An article of manufacture, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes the host computer system obtaining a transport command word (TCW) for an I/O operation having both input and output data. The TCW specifies a location of the output data and a location for storing the input data. The host computer system forwards the I/O operation to the control unit for execution. The host computer system gathers the output data responsive to the location of the output data specified by the TCW, and then forwards the output data to the control unit for use in the execution of the I/O operation. The host computer system receives the input data from the control unit and stores the input data at the location specified by the TCW.

08-20-2009

20090210582

PROVIDING EXTENDED MEASUREMENT DATA IN AN I/O PROCESSING SYSTEM - An article of manufacture, an apparatus, and a method for providing extended measurement word data from a control unit to a channel subsystem of an I/O processing system are disclosed. The article of manufacture includes at least one computer usable medium having computer readable program code logic. The computer readable program code logic performs a method including receiving a command message from the channel subsystem at the control unit, and initiating a timing calculation sequence of a plurality of time values in response to receiving the command message at the control unit. The computer readable program code logic also populates extended measurement word data at the control unit including the plurality of time values, and outputs the extended measurement word data from the control unit to the channel subsystem.

08-20-2009

20090210583

RESERVED DEVICE ACCESS CONTENTION REDUCTION - A computer program product, an apparatus, and a method for reducing reserved device access contention at a control unit in communication with a plurality of operating systems via one or more channels are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method that includes receiving a command message at the control unit from a first operating system, including an I/O operation command for a device. A device busy indicator is received, indicating that a second operating system has reserved the device. The command message is queued on a device busy queue in response to the device busy indicator. The control unit monitors for a device end indicator. The device busy queue is serviced to perform the I/O operation command in response to the device end indicator.

08-20-2009

20090210584

EXCEPTION CONDITION DETERMINATION AT A CONTROL UNIT IN AN I/O PROCESSING SYSTEM - A computer program product, apparatus, and method for providing exception condition feedback at a control unit to a channel subsystem in an I/O processing system are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a command message at the control unit from the channel subsystem, and detecting an exception condition in response to unsuccessful execution of at least one command in the command message. The method further includes identifying a termination reason code associated with the exception condition, writing the termination reason code to a response message, and sending the response message to the channel subsystem.

08-20-2009

20090210585

PROCESSING OF DATA TO SUSPEND OPERATIONS IN AN INPUT/OUTPUT PROCESSING LOG-OUT SYSTEM - A computer program product, an apparatus, and a method for processing communications between a control unit and a channel subsystem in an input/output processing system are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes: sending a Process Log-out (PRLO) message from the control unit to the channel subsystem, the message requesting suspension of input/output operations between the control unit and the channel subsystem for a period of time, the period of time being defined by the PRLO message; responsive to the PRLO message, suspending by the channel all input/output operation messages for the period of time, wherein suspending comprises stopping input/output operation messages during the period of time; and responsive to an expiration of the period of time, sending a Process Log-in (PRLI) message from the channel subsystem to the control unit to re-initiate an operating environment between the channel subsystem and the control unit.

08-20-2009

20090210768

EXCEPTION CONDITION HANDLING AT A CHANNEL SUBSYSTEM IN AN I/O PROCESSING SYSTEM - A computer program product, apparatus, and method for handling exception condition feedback at a channel subsystem of an I/O processing system using data from a control unit are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes sending a command message to the control unit, and receiving a response message in response to the command message. The response message includes exception condition feedback identifying a termination reason code in response to unsuccessful execution of at least one command in the command message. The method also includes interrupting a CPU in the I/O processing system, and reporting status associated with the exception condition feedback to the CPU in an interrupt response block.

08-20-2009

20090210884

PROCESSING OF DATA TO DETERMINE COMPATABILITY IN AN INPUT/OUTPUT PROCESSING SYSTEM - A computer program product, an apparatus, and a method for processing communications between a control unit and a channel subsystem in an input/output processing system are provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method including: sending a message from the channel subsystem to the control unit in a first mode; receiving a response from the control unit and determining from the response whether the control unit supports a message protocol; and responsive to the message protocol being supported by the control unit, sending another message using the message protocol from the channel subsystem to the control unit to determine whether the control unit supports a second mode.

08-20-2009

20110131343

PROVIDING INDIRECT DATA ADDRESSING IN AN INPUT/OUTPUT PROCESSING SYSTEM WHERE THE INDIRECT DATA ADDRESS LIST IS NON-CONTIGUOUS - Systems, methods and computer program products for providing indirect data addressing at an I/O subsystem of an I/O processing system. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a control word for an I/O operation. The control word includes an indirect data address for data associated with the I/O operation. The indirect data address includes a starting location of a list of storage addresses that collectively specify the data, the list spans two or more non-contiguous storage locations. Data is gathered responsive to the list. The gathered data is transmitted to a control unit in the I/O processing system.

06-02-2011

20110173615

INTERPRETING I/O OPERATION REQUESTS FROM PAGEABLE GUESTS WITHOUT HOST INTERVENTION - Input/output (I/O) operation requests from pageable storage mode guests are interpreted without host intervention. In a pageable mode virtual environment, requests issued by pageable storage mode guests are processed by one or more processors of the environment absent intervention from one or more hosts of the environment. Processing of the requests includes manipulating, by at least one processor on behalf of the guests, buffer state information stored in host storage. The manipulating is performed via instructions initiated by the guests and processed by one or more of the processors.

07-14-2011

20110196993

BI-DIRECTIONAL DATA TRANSFER WITHIN A SINGLE I/O OPERATION - An article of manufacture, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes the host computer system obtaining a transport command word (TCW) for an I/O operation having both input and output data. The TCW specifies a location of the output data and a location for storing the input data. The host computer system forwards the I/O operation to the control unit for execution. The host computer system gathers the output data responsive to the location of the output data specified by the TCW, and then forwards the output data to the control unit for use in the execution of the I/O operation. The host computer system receives the input data from the control unit and stores the input data at the location specified by the TCW.

08-11-2011

20120011341

Load Page Table Entry Address Instruction Execution Based on an Address Translation Format Control Field - What is provided is a load page table entry address function defined for a machine architecture of a computer system. In one embodiment, a machine instruction is obtained which contains an opcode indicating that a load page table entry address function is to be performed. The machine instruction contains an M field, a first field identifying a first general register, and a second field identifying a second general register. Based on the contents of the M field, an initial origin address of a hierarchy of address translation tables having at least one segment table is obtained. Based on the obtained initial origin address, dynamic address translation is performed until a page table entry is obtained. The page table entry address is saved in the identified first general register.

01-12-2012

20120117275

PROVIDING INDIRECT DATA ADDRESSING FOR A CONTROL BLOCK AT A CHANNEL SUBSYSTEM OF AN I/O PROCESSING SYSTEM - An computer program product, apparatus, and method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes the host computer system obtaining a transport command word (TCW) for an I/O operation. The TCW specifies a location of one or more I/O commands and a flag set to indicate that the location is an indirect address. The host computer system extracts the location of the one or more I/O commands and the flag from the TCW, gathers the one or more I/O commands responsive to the location specified by the TCW and the flag, and then forwards the one or more I/O commands to the control unit for execution.

05-10-2012

20120166758

Executing a Perform Frame Management Instruction - What is disclosed is a frame management function defined for a machine architecture of a computer system. In one embodiment, a frame management instruction is obtained which identifies a first and second general register. The first general register contains a frame management field having a key field with access-protection bits and a block-size indication. If the block-size indication indicates a large block then an operand address of a large block of data is obtained from the second general register. The large block of data has a plurality of small blocks each of which is associated with a corresponding storage key having a plurality of storage key access-protection bits. If the block size indication indicates a large block, the storage key access-protection bits of each corresponding storage key of each small block within the large block is set with the access-protection bits of the key field.

INTERPRETING I/O OPERATION REQUESTS FROM PAGEABLE GUESTS WITHOUT HOST INTERVENTION - Input/output (I/O) operation requests from pageable storage mode guests are interpreted without host intervention. In a pageable mode virtual environment, requests issued by pageable storage mode guests are processed by one or more processors of the environment absent intervention from one or more hosts of the environment. Processing of the requests includes manipulating, by at least one processor on behalf of the guests, buffer state information stored in host storage. The manipulating is performed via instructions initiated by the guests and processed by one or more of the processors.

08-23-2012

20130290671

Emulating Execution of a Perform Frame Management Instruction - What is disclosed is a frame management function defined for a machine architecture of a computer system. In one embodiment, a frame management instruction is obtained which identifies a first and second general register. The first general register contains a frame management field having a key field with access-protection bits and a block-size indication. If the block-size indication indicates a large block then an operand address of a large block of data is obtained from the second general register. The large block of data has a plurality of small blocks each of which is associated with a corresponding storage key having a plurality of storage key access-protection bits. If the block size indication indicates a large block, the storage key access-protection bits of each corresponding storage key of each small block within the large block is set with the access-protection bits of the key field.

10-31-2013

20140059321

Load Page Table Entry Address Instruction Execution Based on an Address Tralsnation Format Control Field - What is provided is a load page table entry address function defined for a machine architecture of a computer system. In one embodiment, a machine instruction is obtained which contains an opcode indicating that a load page table entry address function is to be performed. The machine instruction contains an M field, a first field identifying a first general register, and a second field identifying a second general register. Based on the contents of the M field, an initial origin address of a hierarchy of address translation tables having at least one segment table is obtained. Based on the obtained initial origin address, dynamic address translation is performed until a page table entry is obtained. The page table entry address is saved in the identified first general register.