Browse Prior Art Database

IPDS Resource Management without Synchronous Acknowledgements

IP.com Disclosure Number: IPCOM000106161D
Original Publication Date: 1993-Oct-01
Included in the Prior Art Database: 2005-Mar-20
Document File: 4 page(s) / 148K

Publishing Venue

IBM

Related People

Brant, CI: AUTHOR [+3]

Abstract

Synchronous Acknowledgements after IPDS resource loads and deletes slow down IPDS printer performance. This invention eliminates the need for Synchronous Acknowledgements (hence forth "ACKs") after resource loads and deletes.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 41% of the total text.

IPDS Resource Management without Synchronous Acknowledgements

      Synchronous Acknowledgements after IPDS resource loads and
deletes slow down IPDS printer performance.  This invention
eliminates the need for Synchronous Acknowledgements (hence forth
"ACKs") after resource loads and deletes.

      Resource ACKs are avoided by the use of a "Resource Stack",
which tracks all outstanding resource loads and deletes.  This allows
improved pipelining and performance over the previous algorithms in
all cases.

      Previous IPDS resource management schemes require that the
Resource Manager be completely synchronous with the IPDS printer,
which is accomplished by synchronous ACKs (ie, an IPDS "NOP-ARQ"
command) after each resource load or delete operation.  Although this
scheme causes an interruption in the IPDS pipeline to the printer,
which can slow down the IPDS printer throughput, it does guarantee
that the Resource Manager always knows the IPDS printer resource
state.  Knowledge of the printer resource state is needed for proper
IPDS generation, and for error recovery.

      This invention allows the PSF/2 product to carry on an IPDS
conversation with an attached printer, in many cases without a single
ACK after a resource operation.  A "resource stack" is used instead,
which records all outstanding resource operations in the order they
were sent to the device.  Resource load operations are assumed to
have worked for the purposes of subsequent IPDS creation.  After
determining that some number of pages have printed successfully, the
resource loads associated with those pages may be inferred to have
worked, and thus the ACKs associated with those loads are avoided.

      There are two equally good inference mechanisms available to
resolve any outstanding resource load operations.  The first is that
inference can occur any time information about IPDS page counters is
received from the device-- that is, after any single ACK is sent to
the device, or the device itself informs the IPDS Print Driver via a
Negative ACK ("NACK") of the current page counters.  Logically, this
inference takes the form, for example, of "Since pages 1-1000 have
been received, the resource loads for those pages must have been
carried out successfully" (See the IPDS Architecture for a definition
of what constitutes a "received" page).  In most cases the entire
load stack can simply be discarded after every print job, since if it
is determined that the entire job has completed successfully, it must
be true that all the resources were also received successfully, and
so by inference, all resource-associated ACKs have been avoided.

      The second inference mechanism which can be used, and is needed
in the event of many printer errors, is logical inference based on
the confirmation of a given resource's existence in the printer.  In
this form of inference the IPDS RRL command is used on the most
recently loaded resource in the stack: if...