← Back to Patent Explorer
US5060142A Expired / Lapsed US ⏱️ 0.0 years remaining

System which matches a received sequence of channel commands to sequence defining rules for predictively optimizing peripheral subsystem operations

Assignee: International Business Machines Corp
•
Filing: 1988-05-20
•
Granted: 1991-10-22
•
Expires: 2008-05-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A state of operation is established in accordance with rules for a peripheral subsystem which enables reduced channel time for executing ensuing related channel commands of the same channel program. In a peripheral data-storage subsystem, a set of rules of operation are established. Each rule sets forth a predetermined set of sequences of channel commands during any chain of channel commands (channel program) which predict ensuing channel operations in channel program currently being executed. Once any rule is satisfied, a state of operation is established in the subsystem for responding to ensuing channel commands in the same channel program and which relate to the channel commands set forth in the rules. So long as such related ensuing channel commands continue or until the end of the channel program the state of operation is maintained in the subsystem. During the state of operation, responding to the ensuing commands is speeded by performing preparatory subsystem operations before executing the ensuing channel commands. In a search for a desired record function, the state of operation causes data to be next searched to be staged to an electronic buffer such that the ensuing channel commands are executed at electronic speeds rather than related to the latency time of disk recorders.

Inventors

  • 👤 Moothedath J. Menon
  • 👤 Dickie K. Woo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 09:50
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F13/00; G06F13/10; G06F13/12; G06F13/124; G06F13/126; G06F3/0602; G06F3/061; G06F3/0611; G06F3/0628; G06F3/0655; G06F3/0659; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 414 words
In a machine-effected method of operating a peripheral data-storage subsystem having a machine-sensible data-storing medium with a large plurality of addressable data-storage locations; including, the machine-executed steps of: establishing a set of sequence defining rules for a channel program having a series of channel commands, said channel commands being in a plurality of chains of said channel commands; the subsystem receiving from a connected input-output channel one or more of said channel commands in each said chain of channel commands, some of said chains of channel commands including ones of said received channel commands having data record identifying parameter data for identifying to the data-storage subsystem predetermined ones of said data-storage locations; examining the sequence of said channel commands having said parameter data in each one of the chains of commands for any one of a predetermined set of a plurality of said channel command sequences; during said each chain of channel commands, attempting to match the examined sequence of said channel commands to the set of sequence defining rules; if no rule match between said examined sequence of channel commands and said set of sequence occurring rules is found, then resetting the examining to start anew; if a rule match between said examined sequence of channel commands and said set of sequence occurring rules is found, establishing a state of operation in the subsystem for effecting changes in the operation of the subsystem in responding to ensuing ones of said channel commands after said match is found and such ensuing channel commands being related to the examined channel commands; and such changes causing the subsystem to execute first predetermined subsystem machine operations in an unchanged mode of operation of the subsystem during the existence of said each chain of channel commands which would occur as if the subsystem were transferring data over said the channel but wherein the subsystem performs such first predetermined subsystems machine operations during said state of operation while the subsystem is disconnected from the channel and during said first predetermined machine operations the system storing data in a buffer connected to the data-storing medium during said first predetermined machine operations and wherein said ensuing channel commands in the said each chain of commands appear to the channel to be executed in the same manner using said buffer without the state of operation accessing said data storing medium but at electronic speeds including accessing said buffer whereby the usage of the channel during the chain of channel commands is reduced.
Claim 2
Dependent Claim 414 words
In a machine-effected method of operating a peripheral data-storage subsystem having a machine-sensible data-storing medium with a large plurality of addressable data-storage locations; including, the machine-executed steps of: establishing a set of sequence defining rules for a channel program having a series of channel commands, said channel commands being in a plurality of chains of said channel commands; the subsystem receiving from a connected input-output channel one or more of said channel commands in each said chain of channel commands, some of said chains of channel commands including ones of said received channel commands having data record identifying parameter data for identifying to the data-storage subsystem predetermined ones of said data-storage locations; examining the sequence of said channel commands having said parameter data in each one of the chains of commands for any one of a predetermined set of a plurality of said channel command sequences; during said each chain of channel commands, attempting to match the examined sequence of said channel commands to the set of sequence defining rules; if no rule match between said examined sequence of channel commands and said set of sequence occurring rules is found, then resetting the examining to start anew; if a rule match between said examined sequence of channel commands and said set of sequence occurring rules is found, establishing a state of operation in the subsystem for effecting changes in the operation of the subsystem in responding to ensuing ones of said channel commands after said match is found and such ensuing channel commands being related to the examined channel commands; and such changes causing the subsystem to execute first predetermined subsystem machine operations in an unchanged mode of operation of the subsystem during the existence of said each chain of channel commands which would occur as if the subsystem were transferring data over said the channel but wherein the subsystem performs such first predetermined subsystems machine operations during said state of operation while the subsystem is disconnected from the channel and during said first predetermined machine operations the system storing data in a buffer connected to the data-storing medium during said first predetermined machine operations and wherein said ensuing channel commands in the said each chain of commands appear to the channel to be executed in the same manner using said buffer without the state of operation accessing said data storing medium but at electronic speeds including accessing said buffer whereby the usage of the channel during the chain of channel commands is reduced.
Claim 3
Dependent Claim 134 words
In the machine-effected method set forth in claim 1, further including the machine-executed steps of: establishing said set of sequence-defining rules to be respective sequences of SEARCH channel commands, each said SEARCH channel command including a search parameter in its respective said parameter data, said set of sequence-defining rules including a first rule for a predetermined sequence of two predetermined search parameters in successive ones of the SEARCH channel commands, said set of sequence-defining rules further including a second rule or a predetermined sequence of diverse SEARCH channel commands, each of said diverse CHANNEL commands wherein said parameter data includes predetermined diverse search parameters; and establishing said state of operation to continue searching in said data-storing medium by the subsystem as indicated by the respective two rules independent of any later received channel commands.
Claim 4
Dependent Claim 101 words
In the machine-effected method set forth in claim 1, further including the machine-executed steps of: after a rule match is found between a set of sequence-defining rules and a sequence of examined channel commands; alternating the subsystem operations between channel connections and channel disconnections and limiting the subsystem operations occurring at electronic speeds to the times when the subsystem is connected to the channel and accessing a peripheral device having said data-storing medium for copying data stored on said data-storing medium from the peripheral device during channel disconnections; and alternating the channel connection and disconnection during execution of the channel program.
Claim 5
Dependent Claim 448 words
In the machine-effected method set forth in claim 1, further including the machine-executed steps of: in said chain of commands, searching for a desired record using predetermined criteria received from a channel processor in SEARCH ID or in SEARCH KEY channel commands, each of said SEARCH ID and SEARCH KEY channel commands including an argument in its respective parameter data; in a first rule for changing the subsystem operations, detecting two successive received SEARCH ID channel commands and their respective arguments which are identical and establishing said state of operation upon matching the pattern of two successive SEARCH ID channel commands in the current chain of commands and maintaining said state of operation until the end of the chain of commands or until a channel command is received that is not a SEARCH ID related channel command; in a second rule of changing subsystem operations, detecting a received sequence of four successive channel commands, including a first SEARCH ID command immediately followed by a first SEARCH KEY channel command, immediately followed by a second SEARCH ID channel command and then immediately followed by a second SEARCH KEY channel command and wherein the first and second SEARCH KEY channel commands and their respective arguments are identical and said first and second SEARCH ID channel commands are identical and maintaining said state of operation until the end of the chain of commands or until a channel command is received that is not a SEARCH ID or SEARCH KEY related command for searching for a desired record; in a third rule of changing the subsystem operations, detecting a received sequence of two identical SEARCH KEY channel commands with their identical arguments and in response to said detected received sequence of SEARCH KEY channel commands establishing said state of operation in the current chain of commands and maintaining said state of operation until the end of the chain of commands or until a channel command is received that is not a SEARCH KEY related channel command; and in a fourth rule of changing subsystem operations, detecting a received sequence of a third SEARCH KEY channel command immediately followed by a first READ CF channel command immediately followed by a fourth SEARCH KEY channel command immediately followed by a second READ CF channel command and wherein the first and second READ CF channel commands are identical and have respective identical arguments and said third and fourth SEARCH KEY channel commands and their arguments are identical, establishing said state of operation and maintaining said state of operation in the subsystem until the end of the chain of commands or until a channel command is received that is not a SEARCH KEY related channel command.
Claim 6
Dependent Claim 194 words
In the machine-effected method set forth in claim 4, wherein the subsystem has an electronic data buffer capable of storing data equal to one track of data of a peripheral data storage device having and operable with respect to said data-storing device to machine sense data stored in the data-storing medium and said track-sized buffer providing access to data stored therein which are at electronic speeds; further including the machine executed steps of: during said state of operation and while disconnected from the channel, copying data indicated by any one of said rule matches to be next searched by said rule in the set of rules from a peripheral data storage device to said track-sized buffer, upon completing a predetermined copy of data, reconnecting the subsystem to the channel and performing ensuing search commands against data stored in the buffer, and when the search of data stored in the buffer is completed, determining whether or not additional searching is required; then when additional searching is required, repeating the disconnection and copying followed by the buffer data searching until the desired record is found, the search is stopped or the chain of channel commands ends.
Claim 7
Dependent Claim 323 words
In a method of operating a data processing subsystem attached to a host processor via a channel processor wherein the input output operations between the subsystem and the channel processor are in chains of channel commands corresponding directly to channel programs being executed by the channel processor; including the machine-executed steps of: establishing a set of rules, each rule having a match pattern, in the subsystem wherein each of the established rules define predetermined sequences of channel commands within any chain of commands; executing a given chain of channel commands in the subsystem including responding to each received channel command and monitoring sequences of said channel commands in the given chain and comparing the monitored sequences of channel commands with all of the established rules; and detecting when any rule defined pattern of a sequence of channel commands is are matched, in response to detecting matching any of said rules, initiating a state of operation in the subsystem which results in internal subsystem operations not used in responding to channel commands received by the subsystem after detecting said matching of rule to a sequence of channel commands but reducing channel utilization time used in responding to such ensuing channel commands, including disconnecting the subsystem from the channel processor and performing predetermined operations in the subsystem related to said detected matching of a rule to a sequence of channel commands, said disconnecting being a preparation for ensuing channel commands received after detecting said matching in said given chain of channel commands; upon completion of said predetermined operations which produce a predetermined result of making data available to the channel processor from the subsystem at electronic speeds, reconnecting to the channel and executing said ensuing ones of said channel commands including using the data made available at electronic speeds by said predetermined operations for to responding to said ensuing channel commands for reducing the channel time to respond because of the usage of said results.
Claim 8
Dependent Claim 323 words
In a method of operating a data processing subsystem attached to a host processor via a channel processor wherein the input output operations between the subsystem and the channel processor are in chains of channel commands corresponding directly to channel programs being executed by the channel processor; including the machine-executed steps of: establishing a set of rules, each rule having a match pattern, in the subsystem wherein each of the established rules define predetermined sequences of channel commands within any chain of commands; executing a given chain of channel commands in the subsystem including responding to each received channel command and monitoring sequences of said channel commands in the given chain and comparing the monitored sequences of channel commands with all of the established rules; and detecting when any rule defined pattern of a sequence of channel commands is are matched, in response to detecting matching any of said rules, initiating a state of operation in the subsystem which results in internal subsystem operations not used in responding to channel commands received by the subsystem after detecting said matching of rule to a sequence of channel commands but reducing channel utilization time used in responding to such ensuing channel commands, including disconnecting the subsystem from the channel processor and performing predetermined operations in the subsystem related to said detected matching of a rule to a sequence of channel commands, said disconnecting being a preparation for ensuing channel commands received after detecting said matching in said given chain of channel commands; upon completion of said predetermined operations which produce a predetermined result of making data available to the channel processor from the subsystem at electronic speeds, reconnecting to the channel and executing said ensuing ones of said channel commands including using the data made available at electronic speeds by said predetermined operations for to responding to said ensuing channel commands for reducing the channel time to respond because of the usage of said results.
Claim 9
Dependent Claim 52 words
In the machine-effected method set forth in claim 6, further including the machine-executed steps of: selecting said sequence of channel commands for said rules to include search type channel commands; and after establishing said state of operation performing said disconnected channel operations interleaved with said subsystem operations on said ensuing channel commands.
Claim 10
Dependent Claim 42 words
In the machine-effected method set forth in claim 7, further including the machine-executed steps of: aborting said state of operation whenever any of said ensuing channel commands is other than a search type command or whenever the given chain of commands terminates.

References Cited (Backward Citations)

US4536836A Cited
US4574346A Cited
US4888690A Cited
US4837688A Cited
US4882642A Cited
US4978944A Cited
US4876642A Cited
US4888691A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-10-21 1995-04-22 1995-10-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-10-21 1999-04-22 1999-10-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-10-21 2003-04-22 2003-10-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag