|
Claims  |
|
|
What is claimed as new and desired to be secured by Letters Patent of the United States is:
1. A printer system connected to a data processing system via a local area network, the printer system
comprising:
A. at least one printer, the printer performing printing operations in response to received printing requests, and formulating resource fault messages to request resources and printer status messages to signal a change in status;
B. a local area print server for receiving and managing the printing requests and supplying to the printer the printing requests and the resources required to perform requested printing operations, the print server including:
1. network facility means, connected to the local area network, for receiving the printing requests and resource over the network and transmitting resource request messages and the printer status messages over the network,
2. resource data storage means for storing resources received locally or from said network facility means,
3. resource manager means for responding to resource fault messages from the printer, the resource manager including a resource directory which contains information from which the resource manager can determine if the resources requested in the
resource fault messages are available within the printing system or are available outside of the printing system, the resource manager
i. consulting the resource directory to determine if a resource is available within the printing system, and if so, supplying the resource to the printer, and otherwise
ii. consulting the resource directory to determine if the resource is available at a remote source, and if so, acquiring the resource from the remote source and supplying the resource to the printer, the resource manager sending the resource
request message to the remote source over the local area network via the network facility means, and receiving the requested resource from the remote source over the network via the network facility means,
4. status collector means, for receiving the printer status messages from the printer, the status collector means determining, based on the particular printer status message received, a destination for the printer status message and forwarding
the printer status message through the network facility means to the destination.
2. A printer system as in claim 1 wherein the resource data storage means additionally comprises:
i. a font data memory containing resource data;
ii. a font directory containing information indicating the location of resource data stored in the font data memory, and information indicating the location of resource data stored in the resource server; and
the resource manager means additionally determines the location of the required resource data by reading the font directory.
3. A printer system as in claim 1 wherein the network facility means additionally receives printing request messages including printing data and printing instructions, the printer status messages provided by the printer additionally include a
printer ready message, and the local area print server additionally comprises:
i. server job controller means, connected to the network facility, means the status collector means, the resource manager, and the printer, for, in response to receiving a printing request message, storing the printing request message, and, in
response to a printer ready message indicating the printer is available, retrieving a stored printing request message and transmitting the printing data and printing instructions associated with the stored printing request message to the printer, and
wherein if the status collector means receives a resource fault message in response to transmission of the stored printing request message to the printer, the status collector means additionally enables the resource manager means to locate and
then transmit the required resource data to the printer.
4. A printer system as in claim 3 wherein the local area print server is connected to two or more printers, and the server job controller selectively forwards a printing request message to a printer in accordance with the printer ready message
most recently received from that printer.
5. A printer system as in claim 3 wherein the server job controller means additionally determines if a printing request message includes printing instructions, and the local area printer server additionally comprises:
E. a global default instruction memory containing default printing instructions to be used when a printing request message does not include printing instructions; and
F. program control means, connected to the global default instruction memory and the server job controller, for forwarding the default printing instructions when printing instructions are not supplied with a printing request message.
6. The printer system of claim 1 wherein the local area print server further includes a server job controller for determining if and in what order the printing requests received by the network facility means are to be serviced, the server job
controller consulting an internal data base which contains data relating to the printer system and the network to determine if the printing system is authorized to perform a received printing request, and to determine in what order various received
printing requests are to be performed, the server job controller further indicating to the status collector means where to send the printer status messages.
7. The printer system of claim 1, wherein the resource data storage means includes:
i. a resource database which is stored within the local area print server, and
ii. a resource database which is external to the local area print server and which is locally accessible to the print server, wherein the resource manager means supplies resources from the internal resource database and the external resource
database directly to the printer.
8. A local area print server for connecting a printer to a data processing system via a local area network, the data processing system including host nodes, an operator console node, and a service manager node, the local area print server
comprising:
A. network facility means, connected to the local area network, for receiving configuration data messages from the service manager node, and for selectively transmitting a printer status message to the operator console node or one of the host
nodes;
B. configuration data storage means, connected to the network facility means, for storing configuration data; and
C. status collector means, connected to the network facility means, the configuration data storage means and the printer, for receiving the printer status message from the printer, for retrieving from the configuration data storage means
configuration data which indicates which of the host nodes or operator console node, if any, is a destination node for the printer status message, and for forwarding the printer status message through the network facility means to the destination node
indicated by the configuration data.
9. A local area network server as in claim 8 wherein the printer status message indicates one of several different events, and the configuration data additionally indicates different destination nodes depending upon the type of event indicated.
10. A local area print server for connecting a printer to a data processing system via a local area network, the data processing system including host nodes, an operator console, a service manager node, and a resource server node, the local area
print server comprising:
A. network facility means, connected to the local area network, for receiving printing request messages including printing data and printing instructions from the host nodes, for transmitting resource request messages to the resource server node
and receiving printer resource data in response thereto, for receiving configuration data messages from the service manager node and for selectively transmitting a printer status message to the operator console node or one of the host nodes;
B. configuration data storage means, connected to the network facility means, for storing configuration data;
C. status collector means, connected to the network facility means, the configuration data storage means and the printer, for receiving printer status messages, the printer status messages including printer resource fault messages, for reading
from the configuration data storage means configuration data which indicates which of the host nodes or operator console node, if any, is a destination node for receiving a particular printer status message, and for forwarding the printer status message
through the network facility means to the destination node indicated by the configuration data;
D. resource data storage means, connected to the network facility means, for storing printer resource data received from the resource server node;
E. resource manager means, connected to the network facility means, the printer, the resource data storage means and the status collector means, for determining, upon receipt of a printer resource fault message, whether required resource data is
stored in the resource data storage means and, if so, transmitting the required resource data from the resource data storage means to the printer and, if not, forwarding a resource request message to the network facility means; and
F. server job controller means, connected to the network facility means, the status collector means, the resource manager means and the printer, for, in response to receiving a printing request message, storing the printing request message and,
in response to a printer status message indicating the printer is available, retrieving a stored printing request message and transmitting the printing data and printing instructions associated with the stored printing request message to the printer,
and, wherein if the status collector means receives a resource fault message in response to transmission of the stored printing request message to the printer by the server job controller means, the status collector means additionally enables the
resource manager means to locate and transmit the required resource data to the printer. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
FIELD OF THE INVENTION
This invention relates generally to the field of digital data processing systems and more specifically to a local area print server which controls and selects the printing requests to be served by a printing system, provides resources the
printing system may need, and informs other components of the digital data processing system of the status of the printing system.
BACKGROUND OF THE INVENTION
Most digital data processing (computer) systems include at least one printing system to produce printed records of data that has been interchanged and generated by other elements of the computer system. A typical printing system comprises a
single, stand-alone printer designed to sequentially accept printing requests from the computer system it is connected to, and to process these requests in order to produce a printed copy of the information processed by the computer system. The printer
may have a small memory which stores information necessary to process the print requests.
Over the years, computer systems have become very sophisticated. Some digital data processing computers include a very large, very fast processor. Other digital data processing computer systems include a number of processors that are connected
together to form a cluster or network. Both types of systems are capable of processing large amounts of data very rapidly. As a result, modern digital data processing systems generate a large number of printing requests to produce the required hard
copy records of the data they process.
The increased number of printing requests has created new demands on printing systems. For instance, most printing systems are unable to process printing requests as fast as they are received. This creates a back-up, as printing clients wait to
have their printing requests acknowledged and serviced. To date, the response to this situation has been to provide high speed printers that are capable of processing printing requests at a rapid rate, and to provide computer systems with multiple
printers so that a number of printing requests may be serviced simultaneously.
A disadvantage of the current way multiple printers are connected to a computer system is that each printer can only service printing requests from one processor or one group of processors. In some instances one printer may stand idle if it does
not have any printing requests to service, while an adjacent printer, connected to a different group of processors, has a line or queue of unprocessed printing requests to service. In other words, the way multiple printers currently are attached to
computer systems, they are unable to load balance the printing requests they receive, and as a result there is an inefficient use the printers' services.
Also, printers currently being provided for computer systems have substantially greater capabilities than printers previously supplied. This is because the previous printers had keys which impacted on the paper to produce the desired image; the
capabilities of these printers were limited by the type and number of keys they had. Currently, computer systems include non-impact printers such as laser printers and ink jet printers. Non-impact printers are able to produce an almost unlimited
variety of alphanumeric characters, symbols, figurative and image representations on paper. Furthermore, the next generation of printers will be able to produce printed copy in an array of colors.
Current printers, particularly non-impact printers, require resources in order to produce the desired print copy. The resources are generally divided into two categories, namely, fonts and forms. Fonts are the instructions needed to produce
specific characters and symbols on the paper. Forms include instructions directing where the characters should be placed on the paper. Some printers are also capable of using different hardware features to process different printing requests. These
hardware features include such things as using paper from different trays for different printing requests, (i.e. from a tray filled with blank paper or one filled with letterhead paper depending on the destination of the printed copy, or based on
different trays having different sizes paper in them), which output tray the printed copy should be deposited in, or if the printed copy should be deposited in the tray face up or face down. In an accounting environment, for example, form information
may direct how a set of figures and descriptive text is displayed on a page, font information may direct the size and shape of the specific numbers and text, and printing instructions may direct from which tray paper is supplied to the printer in order
to service the printing request.
The increased demand on printing systems has also made it necessary to provide individual printing systems with large amounts of resources. Different resources are regularly required by a printing system to service different printing requests.
For instance, in a network environment, a first printing client may want the printing system to produce scientific output in tabular or figurative form and a subsequent printing client may want the printing system to produce a business letter. In this
situation, the separate printing requests would require different resources. Moreover, color printers require additional resources which include the instructions necessary to produce color copy.
Problems arise because a printing system can usually only store a limited amount of resources. If a printing client wants a printing request processed that needs resources that the printing system does not have, it must send those resources
along with the printing request or the request will not be satisfactorily serviced. A printing system can be provided with large amounts of storage space for resources; however, doing so substantially increases the cost of the printing system in order
to provide resources that may be seldom, if ever, used. Thus, a printing system is usually limited in the types of printing requests it services, or the printing clients themselves must take the time to forward resources to the printing system in order
to have more unusual printing requests serviced. In either situation, the overall efficiency of the digital data processing system is reduced.
Another consideration with a printing system is the system's ability to report its own status to other parts of the data processing system. For instance, after a printing client has generated a printing request for a printing system, it may
later check on the request's status; i.e., whether the request was processed. Also, printing systems occasionally need to call attention to their own condition. For example if a printer runs out of paper, it may need to report to the printing clients
that it is temporarily unable to process their printing requests, and to an operator who may be at a remote location that it needs attention. Currently, most printing systems are unable to do more than activate a local signal, such as flashing lights,
to indicate their status. This has made it difficult to place printers at remote locations, such as at an office work station, since personnel who would be nearby but not immediately around the printer, for example, personnel at adjacent work stations,
would not be made that the printer requires attention.
SUMMARY OF THE INVENTION
This invention provides a new local area print server for processing printing requests that are sent to a printing system, that responds to status requests regarding printing requests forwarded to the printing system, that provides the printers
with resources which they may require to service printing requests, and informs the other components of the digital data process of the status of the printing system, such as when it receives printing requests or when it becomes inoperable and needs
attention.
In brief summary, the local area print server is connected to one or more printers to form a printing system. The digital data processing system, which includes a number of printing clients is connected to the printing system through the local
area print server. The printing clients make printing requests on the printing system. Resource servers, which store data which comprise printing resources, and file servers for temporarily storing data which comprise printing requests, may also be
part of the digital data processing system. The digital data processing system may further include a service manager which exerts overall control over the computer system, including the printing system, and a terminal (usually called a console) that
enables an operator to monitor and control the system.
The local area print server includes a network facility for interfacing with the data processing system components, such as the printing clients, and a driver for interfacing with the printers. A server job controller selects printing requests
for servicing, accepts information needed to service the printing requests, and forward that information to the appropriate printer. A program control insures that the information forwarded to the printers is in a syntax understandable by them. A
resource manager is used to process resource requests from the printers, and provide the resources from the local area print server, or arrange for them to be supplied from an external source. A status collector monitors the status of the printing and
other events occurring in the local area print server, such as the changes in the status of printing requests being serviced. A system manager monitors the status of the printing system and controls its operation based on instructions received from
either the service manager or the operator monitoring the printing system.
When a printing client makes a printing request of the printing system, the request is sent to the local area print server. The request is initially processed by the network facility which determines it is a printing request and forwards it to
the server job controller. The server job controller is informed of the status of the printers by the status collector which monitors their status. When the server job controller receives an indication from the status collector that a printer is
available for servicing a printing request, it forwards that information to the printing client; the printing client then forwards the printing data and other information, such as font information or printing instructions, which comprises the printing
request to the local area print server. The printing data and other information is forwarded to the printer through the network facility, the server job controller, the program control, and the driver. The program control converts the printing data and
printing instructions into a syntax understandable by the printer.
If the printer needs a resource to service a particular printing request, it informs the resource manager through the driver. The resource manager initially attempts to supply the needed resource from resources stored locally by the local area
print server. If the needed resource is not locally available, the resource manager attempts to obtain the resource from another component of the digital data processing system, such as the resource server.
Other components of the digital data processing system, such as the service manager, may give instructions to the digital data processing system. These instructions may be commands to terminate a particular printing request, or to give a
printing request priority for immediate servicing. These instructions are received by the network facility and forwarded to the system manager. The system manager then arranges for the execution of these instructions by issuing further instructions,
typically to the server job controller.
The system manager also monitors the current status of the printing system by receiving and interpreting events collected by the status collector. If a particular event requires external attention, such as one of the printers requires servicing,
the status collector arranges to have an appropriate message forwarded to another digital data processing system component, such as an event logger or an operator console facility.
The local area print server constructed in accordance with this invention increases the efficiency of the digital data processing system. Printing clients are able to receive immediate acknowledgements of their printing requests. The local area
print server is able to assign the printing requests to printers as they become available to service printing requests. In other words, the local area print server balances the servicing of printing requests so there is an efficient use of the printers
attached thereto. If the printers attached to a particular local area print server are unable to service a particular printing request, the printing client is informed, and at its option it may seek to have it served by printers attached to another
local area print server. This further maximizes the efficiency of the printers attached to the local area print servers.
If a printer servicing a particular printing request does not have a resource needed to service a printing request, it can request the needed resource from the local area print server. If the local area print server cannot provide the requested
resource, the local area print server attempts to obtain the resource from another source. The local area print server also informs other components of the digital data processing of the status of the printers. This enables the printing clients, and an
operator monitoring the system, to be immediately notified whenever a printer requires some machine or operator attention.
BRIEF DESCRIPTION OF THE DRAWINGS
This invention is pointed out with particularity in the appended claims. The above and further advantages of this invention may be better understood by referring to the following description taken in conjunction with the accompanying drawings,
in which:
FIG. 1 is a general block diagram of a local area print server implemented in accordance with this invention;
FIG. 2a is a diagram depicting the structure of a data packet which is used to transfer information within the local area print server in accordance with a print server internal protocol;
FIG. 2b is a diagram depicting the structure of a status block which is used to transfer information regarding activities and events occurring within the printing system in accordance with a print server internal protocol;
FIG. 3 is a diagram depicting the structure of a network facility of the local area print server of this invention;
FIG. 4 is a diagram depicting the internal elements of a server job controller of the local area print server of this invention;
FIG. 5 is a diagram depicting the internal elements of a program control of the local area print server of this invention;
FIG. 6 is a diagram depicting the internal elements of a resource manager of the local area print server of this invention;
FIG. 7 is a diagram depicting the internal elements of a font manager of the local area print server of this invention;
FIG. 8 is a block diagram depicting the internal elements of a status collector of the local area print server of this invention;
FIG. 8a is a diagram depicting the structure of a status block maintained by a status collector of the local area print server of this invention to contain information regarding the status of a portion of the local area print server or a printer
that it is connected thereto;
FIG. 8b is a diagram depicting the structure of an invent list entry created and maintained by a status collector of the local area print server of this invention to contain status information regarding a portion of the local area print server or
a printer that it is connected to;
FIG. 9 is a diagram depicting the internal elements of a system manager of the local area print server of this invention;
FIG. 10 is a diagram depicting the internal processor elements of a printing client that uses a printing system which includes the local area print server of this invention;
FIG. 11 is a diagram depicting the structure of information sent between the local area print server and the other digital data processing system components in accordance with the local print server protocol;
FIG. 12 is a diagram depicting the structure of server message sent to the local area print server from the other components of the data processing system components in accordance with the server manager external protocol; and
FIG. 13 depicts a sequence of print server protocol messages transmitted between the local area print server and the other digital data processing system components in order to service a printing request.
DETAILED DESCRIPTION OF AN
ILLUSTRATIVE EMBODIMENT
Overview
FIG. 1 depicts a local area print server 10 in a network 12 which comprises a digital data processing system. The local area print server 10 is connected to the network 12 by a communication link, or bus 14, which allows communication between
the components that comprise the network 12. A number of printers, generally identified by reference numbers 16, (two printers 16a and 16b are depicted), are also connected to the local area printing server 10. Collectively, the local area print server
10 and the printers are known as a printing system 17.
The network 12 includes a number of components including processing units, represented by printing clients 18a, 18b, that make printing requests on the printing system 17. One or more components of the network 12 may have a terminal designated
as an operator console 20 that allows an operator to monitor and control the activities of the network 12, including programs that are running on it. A service manager 22 may be provided to automatically monitor and control the operation of the network
12.
In many networks 12 the operator console is a terminal controlled by a utility application running on a remote system, such as the service manager 22 or on one of the printing clients 18a, 18b. Typically, however, the operator console 20 is used
for communication with applications and utilities running on the network 12 and the service manager 22 is only used to send commands to "hosts and servers," described hereinafter, and to receive responses to those commands. In some networks 12, it may
be desirable to combine the functions and duties of the operator console 20 and the service manager 22.
The network 12 may also include a number of storage devices including a file server 24 and a resource server 26. The file server 24 stores information used and generated by the printing clients 18a and 18b. The resource server 26 stores
resources necessary to service printing requests. For example, the resource server 26 may store fonts, which are the instructions needed by the printers 16a, 16b to produce specific characters and symbols, and forms which are instructions used to
control where the characters and symbols are to be produced on the page, and standard text and figures to be produced on the page. Depending on the construction of the particular network, the operator console 20, the file server 24 and resource server
26 may each be omitted, made part of the printing clients 18a, 18b, or the service manager 22, or integrated into a single processing system.
In brief, the local area print server 10 of this invention accepts printing requests from the printing clients, generally identified as 18, and arranges for them to be serviced by the printers 16. Each printing request has associated with it
specific printing data that is to be printed, and printing instructions identifying fonts and forms to be used to service the request. The printing instructions may also have context instructions which include the size of paper the data is to be printed
on and the format on which it is printed, for example landscape, (greater width than height), or portrait, (greater height than width). Other printing instructions allow the printing request to select hardware features that are associated with the
request. The hardware features include: the tray used to supply paper for the printing request, (i.e. a tray with blank paper or one with letterhead stationary); the output tray where the printed output is delivered; or whether the paper is delivered
face-up or face-down.
When the printing system 17 is ready to service a printing request, the local area print server 10 identifies the printing request that should be serviced. This request may be the one that has been waiting for service the longest, or one that
another network component 18-26 has instructed should be serviced first. After the local area print server identifies the printing request to be serviced, it informs the printing client 18a, 18b that made the printing request that the request has been
accepted. The printing client 18 either forwards the printing data and printing instructions to the local area print server 10, or provides a pointer to the location of the data which the local are print server 10 uses to obtain it.
After the local area print server 10 receives the printing data and the printing instructions it forwards them to one of the printers 16 which produces printed copy based upon them. If the printer 16a, 16b does not have a specific resource
locally available to service a printing request, the local area print server 10 may provide the resource from an internal collection of resources which it maintains, or it attempts to have the resource supplied from another component of the network 12,
such as the resource server 26.
The local area print server 10 monitors the status of events occurring internally and within the printers 16a, 16b. This enables the local area print server 10 to respond to status queries from other components that are part of the network 12.
For instance, a printing client 18a, 18b can inquire of the print server 10 to determine whether a particular printing request has been accepted by the printing system 17 and later serviced by it. Alternatively, the printing client 18a, 18b, an operator
at the operator console 20 or the service manager 24 may query the printing system 17 regarding the number of pages printed during the servicing of a particular printing request.
The local area print server notifies the other components of the network 12, such as one or more operator consoles 20, whenever it or the printers 16a and 16b need attention. For example, the local area print server 10 can arrange to have an
appropriate message displayed on an appropriate operator console 20 whenever one of the printers 16a, 16b needs paper.
The service manager 22, or an operator at the operator console 20, can issue commands and queries to the printing system 17 through the local area print server 10. These commands and queries include the ability to add or delete printing clients
18 authorized to use the printing system 17, to add, delete or modify resources available to the printing system 17, to cancel printing requests, and to make queries regarding the status and capabilities of the printing system. Furthermore, the printing
system 17 can be directed to service a high priority printing request before other printing requests, that were made earlier, are serviced.
With this background, the local area print server 10, and the environment in which it may be used, will be discussed in more detail.
The network 12, also referred to as a local area network, is comprised of a number of different stations, referred to as nodes. In the described embodiment of the invention, the printing system 17, the printing clients 18a, 18b, the service
manager 22, the file server 24 and the resource server 26 are each a different node on the network 12. Communication between each node on the network 12 and every other node on the network 12 is possible over a high speed communications link, the bus
14, in accordance with a network communications protocol not a part of this invention.
Generally the nodes on the network can be divided into two classes; hosts and servers. A host provides shared access to a component or group of components on the network 12 that one or more users that want to take advantage of. For instance,
users may be human or machine operators that want to run programs, referred to as applications, on the network's computing system. A specific user thus uses the services of a particular processor which may be one or a group of processors controlled by a
single host. Servers, on the other hand, are centralized units that provide facilities used by other hosts and servers in the network. The file server 26, for example, provides a central storage location or service for the other components of the
network. The printing system 17 is a "printing server" for the other components of the network 12, and exists to accept their printing requests and produce printed copy based upon them.
The processes running on the hosts or servers that provide access to downline servers are referred to as "clients" that obtain the downline servers' services on behalf of "users" that require the services of the end servers. For example, the
printing clients 18a, 18b can each be hosts which control one or more processors on which one or more programs, called "applications", are running. Each application may make one or more printing requests that require the printers 16 to generate a paper
record of the information processed by the application. When an application makes a printing request, it is a user that desires the services a printer to service its printing request. The host, which may be at a remote node relative to the node the
application requiring the services of a printer 16, may server as the printing client 18 for the particular application, and arrange access to the printer 16 through the print server 10 on its behalf.
Depending on the construction of the particular computer system, the operator console 20, the file server 24 and the resource server 26 may all be applications running on a specific host system. Also, the service manager 22 may be integrated
into the host system.
The printers 16 each include a print engine 28, which is used to produce the printed image on paper, and a print controller 29. The print controller 29 directs the production of print copy by the print engine 28. To service a printing request,
the print controller 29 accepts printing data and printing instructions from the local area print server 10 and then converts them into the instructions which are used by the print engine 28 to produce printed copy. Printing data is transmitted from the
local print server 10 to the printers 16 over a printer data link 30; printing instructions are similarly transferred over a printer control link 32.
The print controllers 29 each have a limited memory for storing resources, such as fonts or forms, needed to produce the necessary instructions for the print engine 28. If a printer does not have a needed resource for a particular printing
request locally available, the printer 16a, 16b can transmit a resource request for the resource from the local area print server 10 in the form of a resource fault over a printer resource fault link 34 connected therebetween. The local area print
server 10 can forward resources to the printer 16 in response to receiving a resource fault over a printer resource link 35 connected therebetween.
The printer controllers 29 are also capable of monitoring events and conditions which occur within the printers 16a, 16b, including the condition of the print engines 28. Events and conditions which the printer controllers 29 monitor include the
successful receipt of printing data and printing instructions enabling a printing request to be serviced, or when the paper supplies to print engines 28 are empty and need refilling. A printer status link 36, connected between each of the printers 16a,
16b and the local area print server 10, enable the printers to report these events and conditions to the local area print server.
In the illustrated embodiment, the printer data links 30, printer control links 32, printer resource fault links 34, the printer resource links 35 and printer status links 36, are depicted as distinct connections between the printers 16a, 16b and
the local area print server 10. These links 30-36 may be separate, or combined into one physical link. For instance, the printer resource fault link 34 and the printer status link 36 are typically combined. Moreover, depending on a particular
printer's 16a, 16b capacity to accept resource data, there may be a number of printer resource links 35 connected between the local area print server 10 and each printer 16a, 16b.
The local area print server 10 has a number of server internal modules 38-50 that control the flow of information within the local area print server 10, and between the local area print server and the printers 16 and the other network components
18-26. The server internal modules 38-50 and the other components of the network 12 operate in accordance with a print server protocol, described herein, so printing requests made by the printing clients 18a, 18b are efficiently serviced.
In summary, a network facility 38 is connected to the bus 14 and functions as an interface to other components of the network 12. A server job controller 40, receives printing requests from the printing clients 18a, 18b through the network
facility 38 and selects the order in which they will be serviced. In particular, the server job controller 40 receives printing data, printing instructions and resources from the other network components 18-26 and forwards them to a program control 42
so they may be sent to one of the printers 16a, 16b.
The program control 42 receives printing data and printing instructions from the server job controller 40 and forwards this information to the appropriate printer 16a, 16b. If necessary, the program control 42 also codes this information into a
syntax understood by the print controller 29 so the information will be properly converted into printing instructions for the print engine 28. A resource manager 44 acts as a clearinghouse for resource requests made by the printers 16a, 16b. The
resource manager 44 can supply the printers 16 with the resource they requested from either the local area print server 10, or from another network component 18-26.
A system manager 46 serves as the controller for the local area print server 10. The system manager 46 initializes the local area print server 10 when it is first activated. Commands issued to the printing system 17 by either the service
manager 22 or through the operator console 20 are processed by the system manager 46. The system manager 46 is responsive to queries made by printing clients 18a, 18b and other components of the network 12 regarding the status of the local area print
server 10, the printers 16a, 16b, printing requests, and available resources. The system manager also informs the appropriate other network components 18-26 whenever a part of the printing system 17 requires attention.
A dedicated printer console 51 may be connected to the local area print server 10 through the system manager 46. The printer console 51 is used only to monitor the status of the components of the printing system 17 and to make commands regarding
the operation of the printing system 17 and printing requests received by it.
A status collector 48 serves as an event logger for activities and conditions that occur within the printing system 17. The status collector receives reports of the events and activities that occur within the printing system, and if necessary
forwards a report of the status changes to other server internal modules, usually server job controller 40, the resource manager 44, or the system manager 46 so they may take appropriate action.
A driver 50 serves as the interface between the local area print server 10 and the printers 16a, 16b. All information exchanged between the printers 16a, 16b and the local area print server 10 passes through the driver 50. The printer data link
30, printer control link 32, printer status 36 link, and printer resource link 34 all pass through the driver 50.
The local area printer server 10 also maintains a set of databases 52-60 which store information used by t | | |