Method of repositioning an I/O device to a predetermined...

Electrical computers and digital data processing systems: input/ – Input/output data processing – Concurrent input/output processing and data transfer

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S203000, C711S147000, C711S157000, C714S006130

Reexamination Certificate

active

06339799

ABSTRACT:

TECHNICAL FIELD
This invention relates, in general, to recovery techniques for programs executed on position sensitive input/output devices and, in particular, to repositioning an input/output device in order to retry a program.
BACKGROUND ART
A requirement of any robust computing environment is to be able to recover from errors, such as device hardware errors (e.g., mechanical, electrical) or recording media errors. In order to recover from some device or media errors, it is necessary to restart a program, either from the beginning or from some other point within the program. The restarting of a program, however, poses certain challenges, especially when the input/output device in which the program is executed is position sensitive.
Conventionally, with position sensitive devices, such as magnetic tape units, the position of the device when the programming error occurred is needed in order to restart the program. This position, however, is difficult to determine for some programs.
For example, when an error is encountered in a channel program that allows pipelining, it is difficult to know where the device was positioned when the error occurred. A channel program includes one or more channel command words. Some channel programs that have a plurality of channel command words allow pipelining of those channel command words. This means that a number of the channel command words may be initiated prior to receiving a response for any one of the command words. Thus, if an error has been detected for a second channel command word, as one example, but the control unit is already processing the fifth channel command word, then the device is positioned past the error and the position within the device of where the error occurred is unknown.
Thus, a need exists for a capability that enables an input/output device to be repositioned, even when the position of the input/output device when the error occurred is unknown. Further, a need exists for a capability that enables an input/output device to be repositioned without any knowledge of current positioning within the device. A further need exists for an enhanced capability that enables programs to be restarted, even when the program has been modified or the last known block-id representing the position of the input/output device is invalid.
SUMMARY OF THE INVENTION
The shortcomings of the prior art are overcome and additional advantages are provided through the provision of a method of repositioning within an input/output device. The method includes, for instance, ascertaining that a program, that was executing on an input/output device sensitive to positioning, is to be retried; and repositioning the input/output device to a predetermined position in order to retry the program. The repositioning is performed without knowledge of current positioning within the input/output device.
In one embodiment, the method further includes determining the predetermined position. For example, the determining includes scanning a previously executed program for command; adjusting a position identifier of the input/output device based upon a type of the command; and repeating the scanning and the adjusting until a prespecified limit is reached. The position identifier then represents the predetermined position.
In another embodiment, the adjusting includes incrementing the position identifier when the command is an Add type; decrementing the position identifier when the command is a Delete type; and invalidating the position identifier when the command is an Invalidate type.
In a further embodiment of the present invention, the program is a channel program including one or more channel command words. Additionally, the determining of the predetermined position includes scanning a previously executed channel program for a channel command word; adjusting a block-id of the input/output device based upon a type of operand of the channel command word; and repeating the scanning and the adjusting for each channel command word of the previously executed channel program.
In another aspect of the present invention, a method of repositioning within an input/output device is provided. The method includes, for instance, determining a position, within an input/output device sensitive to positioning, that is to be used to retry a program. The determining uses a first address representative of where a channel associated with an input/output device stopped processing the program and a second address representative of where a control unit associated with the input/output device stopped processing the program. The method further includes repositioning the input/output device to the position in order to retry the program.
In accordance with the principles of the present invention, a repositioning capability is provided that enables an input/output device to be repositioned without knowing the current position of the device or where an error occurred within the device. The repositioning capability of the present invention allows for enhanced error recovery on various interface types (e.g., parallel Original Equipment Manufacturers' Information (OEMI), Enterprise Systems Connection Architecture (ESCON), Fiber Connection (FICON) and internal tape) for various input/output errors. The capabilities of the present invention allow the operating system to improve the reliability of input/output devices on errors where the ending channel command word cannot even be determined and which previously had to be treated as a permanent error (e.g., interface control check or channel control check with an invalid CCW address). Further, the repositioning capability of the present invention is applicable to any device where the software depends on media positioning to be able to recover from errors.
Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention.


REFERENCES:
patent: 3564502 (1971-02-01), Boehner et al.
patent: 3688274 (1972-08-01), Cormier et al.
patent: 4201976 (1980-05-01), Patel
patent: 4209809 (1980-06-01), Chang et al.
patent: RE31069 (1982-10-01), Chang et al.
patent: 4549295 (1985-10-01), Purvis
patent: 4688221 (1987-08-01), Nakamura et al.
patent: 4932826 (1990-06-01), Moy et al.
patent: 4993030 (1991-02-01), Krakauer et al.
patent: 5172381 (1992-12-01), Karp et al.
patent: 5331476 (1994-07-01), Fry et al.
patent: 5386324 (1995-01-01), Fry et al.
patent: 5446872 (1995-08-01), Ayres et al.
patent: 5455926 (1995-10-01), Keele et al.
patent: 5490149 (1996-02-01), Nylander-Hill
patent: 5526484 (1996-06-01), Casper et al.
patent: 5539914 (1996-07-01), Fry et al.
patent: 5546533 (1996-08-01), Koyama
patent: 5615329 (1997-03-01), Kern et al.
patent: 5619644 (1997-04-01), Crockett et al.
patent: 5734818 (1998-03-01), Kern et al.
patent: 5765200 (1998-06-01), McIlvain et al.
patent: 5911040 (1999-06-01), Hirayama et al.
patent: 6031991 (2000-02-01), Hirayama
patent: 6055602 (2000-04-01), McIlvain et al.
patent: 6115781 (2000-09-01), Howard
patent: 6173417 (2001-01-01), Merrill
“Staged Read Error Recovery For a Magnetic Tape Subsystem”, IBM Technical Disclosure Bulletin, vol. 35, No. 3, pp. 412-414 (Aug. 1992).
“Pointer Collection and Reporting for Error Recovery Procedures Branching”, IBM Technical Disclosure Bulletin, vol. 39, No. 7, pp. 87-89 (Jul. 1996).
“Adaptive Digital Readback Equalization For Recording Devices”, IBM Technical Disclosure Bulletin, vol. 35, No. 7, pp. 43-44 (Dec. 1992).

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method of repositioning an I/O device to a predetermined... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method of repositioning an I/O device to a predetermined..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of repositioning an I/O device to a predetermined... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2847152

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.