Patent Publication Number: US-9891870-B2

Title: Information processing apparatus, information processing method, recording medium, and information processing system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application claims priority under 35 U.S.C. § 119 to Japanese Patent Application No. 2015-174164, filed Sep. 3, 2015 and Japanese Patent Application No. 2016-116067, filed Jun. 10, 2016. The contents of which are incorporated herein by reference in their entirety. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to an information processing apparatus, an information processing method, a recording medium, and an information processing system. 
     2. Description of the Related Art 
     Recently, a function referred to as location-free printing (hereinafter, referred to as LF printing) has been put into practice. In such LF printing, implemented is a system that uses a dedicated server to centrally manage multifunction peripherals (image forming apparatuses) and user information, so that users can output printouts from any device the user likes, after the user issues a printing instruction from a user personal computer (PC). 
     The LF printing is a function enabling a user to output a print from any one of a plurality of multifunction peripherals that are connected over a network, without the user designating which multifunction peripheral is to be used to output the print before the user issues the printing instruction from the PC. Even when the device often used by the user is not operating due to some trouble, or is congested, for example, the user can output a print from another available multifunction peripheral. This function of LF printing is known to serve to enable users to make effective use of time, for example. 
     For example, Japanese Unexamined Patent Application Publication No. 2009-294889 discloses a technique in which a user can output a print from any multifunction peripherals that are connected to a management server having an authentication function over a network, by transmitting the print data from the printer driver on the PC to the management server. This technique makes such printing possible by accumulating the print data transmitted from the user PC on the management server, and by causing a multifunction peripheral to fetch the accumulated data from the management server when the user is to actually output a print. 
     However, the technique disclosed in Japanese Unexamined Patent Application Publication No. 2009-294889 has a disadvantage that, when a user attempts to designate one of a plurality of multifunction peripherals supporting LF printing, the user is incapable of recognizing the availability of each of the multifunction peripherals accurately, and therefore, it is not possible for the user to select an available multifunction peripheral quickly, and to output a print efficiently. 
     In other words, while the conventional LF printing has the advantage that the user can output a print from any multifunction peripheral after the user issues a printing instruction from the PC, it is not possible for the user to recognize whether the multifunction peripheral often used by the user is currently in use, or has failed. For example, when there is a multifunction peripheral that supports LF printing on one floor of a building, the user is usually expected to use the multifunction peripheral. There are, however, some cases in which the user finds out that another user is outputting a large amount of prints, or the multifunction peripheral has failed when the user issues the printing instruction and thereafter arrives at the place where the multifunction peripheral is installed. In such a case, the user needs to go through a trouble of looking for another idle and available multifunction peripheral. As a result, the convenience for the user has been lost, and the operation has been inefficient, disadvantageously. 
     SUMMARY OF THE INVENTION 
     According to an aspect of the present invention, an information processing apparatus includes a history information acquiring unit, a statistics processing unit, a device information acquiring unit, and a display processing unit. The history information acquiring unit is configured to acquire history information on print outputs from a server. The statistics processing unit is configured to extract at least one image forming apparatus with a high usage ratio based on the acquired history information. The device information acquiring unit is configured to acquire device information related to an availability condition of the extracted at least one image forming apparatus directly from the at least one image forming apparatus. The display processing unit is configured to display information related to the acquired availability condition. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic for explaining a system configuration according to an embodiment of the present invention; 
         FIG. 2  is a block diagram illustrating a hardware configuration of an LF management server; 
         FIG. 3  is a block diagram illustrating a hardware configuration of a PC; 
         FIG. 4  is a block diagram illustrating a hardware configuration of a multifunction peripheral; 
         FIG. 5  is a block diagram illustrating a software functional configuration of the LF management server; 
         FIG. 6  is a block diagram illustrating a software functional configuration of a printer driver on the PC; 
         FIG. 7  is a block diagram illustrating a software functional configuration of the multifunction peripheral; 
         FIG. 8  is a sequence chart illustrating the sequence of a process of accumulating history information in the LF management server when the user outputs a print from the multifunction peripheral; 
         FIG. 9  is a sequence chart illustrating a process in which a user issues a printing request from a PC (printer driver); 
         FIG. 10A  is a sequence chart illustrating an internal process of the printer driver in the sequence illustrated in  FIG. 9 ; 
         FIG. 10B  is another sequence chart illustrating an internal process of the printer driver in the sequence illustrated in  FIG. 9 ; and 
         FIG. 11  is a schematic view for explaining an exemplary GUI screen of the printer driver on the user PC. 
     
    
    
     The accompanying drawings are intended to depict exemplary embodiments of the present invention and should not be interpreted to limit the scope thereof. Identical or similar reference numerals designate identical or similar components throughout the various drawings. 
     DESCRIPTION OF THE EMBODIMENTS 
     The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present invention. 
     As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. 
     In describing preferred embodiments illustrated in the drawings, specific terminology may be employed for the sake of clarity. However, the disclosure of this patent specification is not intended to be limited to the specific terminology so selected, and it is to be understood that each specific element includes all technical equivalents that have the same function, operate in a similar manner, and achieve a similar result. 
     An information processing apparatus, an information processing method, a recording medium, and an information processing system according to one embodiment of the present invention will now be explained in detail with reference to the appended drawings. 
     An embodiment has an object to provide an information processing apparatus, an information processing method, a recording medium, and an information processing system capable of notifying the availability of image forming apparatuses, and improving the efficiency of LF printing. 
     Embodiment 
       FIG. 1  is a schematic for explaining a system configuration according to the embodiment. As illustrated in  FIG. 1 , this system has a system configuration in which an LF management server  100 , a user PC  110  that is an information processing apparatus, and multifunction peripherals  120 A and  120 B that are a plurality of printing output devices are connected over a network (LAN)  130 , for example. Hereinafter, the user PC  110  will be simply referred to as a PC  110 , and the multifunction peripherals  120 A and  120 B will be simply referred to multifunction peripherals  120 , except for the part where there is concern for confusion. In  FIG. 1 , the multifunction peripherals  120  are illustrated to be two for the purpose of explanation, but the number of multifunction peripherals  120  is not limited to two. Furthermore, the PC  110  is also connected in plurality. 
     The LF management server  100  is a server for managing LF printing and having a user authentication function. The authentication function is a centrally managed authentication system that uses the authentication information used when the user logs into the own PC  110 . Once the LF management server  100  confirms a match of the authentication information with the authentication information entered to the multifunction peripheral  120 , the multifunction peripheral  120  is enabled to fetch a printing request issued by the user. The user can output a print from the multifunction peripheral  120  based on the printing request fetched by the multifunction peripheral  120 . This function allows a user to output a print from any one of the multifunction peripherals  120 . 
     The LF management server  100  has a function of managing the information on the multifunction peripherals  120  from which users actually output prints, as a history. The LF management server  100  identifies the multifunction peripheral  120  from which a print is output at the timing at which the user logs into the multifunction peripheral  120 , and the printing request accumulated in the LF management server  100  is fetched. In this manner, the LF management server  100  can manage the multifunction peripheral  120  used by the user and the usage count. 
     A printer driver supporting LF printing is installed on the PC  110 . The user transmits print data (in the page description language (PDL) format) to the LF management server  100  via the printer driver. The user logs into the PC, and issues a printing instruction to the printer driver from Microsoft Word, for example. The printer driver converts the print data into a data format (such as the PDL format) that can be interpreted by the multifunction peripheral  120 , and transmits the print data to the LF management server  100 . 
     The printer driver can acquire information on the devices previously used by the user from the LF management server  100 . The device information is information for identifying a device such as an IP address or a MAC address, corresponding to each of the multifunction peripherals  120  previously used by the user. The printer driver can acquire such device information at a timing designated by the user. 
     For the communication between the multifunction peripheral  120  and the LF management server  100 , used is a Web-based application programming interface (API) (Web application) using a general-purpose protocol such as Hypertext Transfer Protocol (HTTP). A data structure in a general-purpose format such as Extensible Markup Language (XML) is also used. The user can view a list of the devices previously used by the user via the screen (GUI) of the printer driver, and sort the data in an order of the usage count or the last usage time and date, for example. 
     When the user selects a particular multifunction peripheral  120  on the GUI, the printer driver acquires management information base (MIB) information in the multifunction peripheral over the network at the timing at which such a selection is made, and notifies the user of the condition of the multifunction peripheral  120 . The MIB information is data that can be accessed by a network management protocol (Simple Network Management Protocol (SNMP)), and is defined in standard specifications represented by Request for Comments (RFC) 3805. The printer driver can acquire various types of condition information such as the status of the multifunction peripheral  120  by acquiring the MIB information in the multifunction peripheral  120  over the network  130 . 
     The multifunction peripherals  120 A,  120 B are multifunction peripherals that are centrally managed by the LF management server  100 , and the multifunction peripherals  120  can fetch a piece of user print data from the LF management server  100 . A user transmits print data to the LF management server  100  from the own PC  110 . In this process, the LF management server  100  accumulates the print data received from the user PC  110  in a manner linked to the user information. At the timing at which the user logs into a multifunction peripheral  120 , the LF management server  100  acquires a list of accumulated print data using the user information (user ID) as a key. The multifunction peripheral  120  then displays the acquired list as a list of printable data on an operation panel (not illustrated), so that the user can output a print by selecting the required data from the list of printable data. 
     The multifunction peripherals  120  also support a network management protocol (SNMP) referred to as MIB, and the user can check the conditions of the multifunction peripherals  120  from the PC  110  using a dedicated application, for example. A possible common operation is to install the dedicated application on the management server, so that the management server can centrally manage each of the devices, but it is also possible to acquire the MIB information from a general-purpose PC over the network  130 . 
       FIG. 2  is a block diagram illustrating a hardware configuration of the LF management server  100 . In the LF management server  100 , a central processing unit (CPU)  101 , a memory unit  102 , a storage device control unit  103 , a network control unit  105 , and an input/output device control unit  106  are connected via a bus. To the storage device control unit  103 , a storage device  104  is connected. To the input/output device control unit  106 , an external media input/output device  107  and various interfaces  108  are connected. 
     The CPU  101  controls various devices, and performs operations and processing on data. The CPU  101  is a processor executing a computer program stored in a main memory. The CPU  101  receives data from an input device or a storage device, performs operations and processing, and outputs the resultant data to an output device or a storage device. 
     Examples of the memory unit  102  include a read-only memory (ROM) and a random access memory (RAM). The memory unit  102  is a storage device for storing or temporarily retaining therein an operating system (OS), which is the basic software executed by the processor, computer programs such as application software, and data, for example. 
     The storage device control unit  103  performs control for connecting the storage device  104  such as a hard disk drive (HDD), and for storing data that is related to application software, for example. The storage device  104  stores therein various types of information (such as user information), and is managed through functions of a database or a file system, for example. 
     The network control unit  105  is an Ethernet (registered trademark) controller, for example, and has a function of communicating with other computers via a local area network (LAN) or a wide area network (WAN). The input/output device control unit  106  manages the external media input/output device  107  and the various interface devices  108 , and inputs and outputs data from and to external devices. 
     The external media input/output device  107  controls external media such as a USB medium, a CompactFlash (registered trademark) (CF), and a secured digital (SD) card to input and output data. The various interfaces  108  are interfaces such as a serial port, a USB port, and an IEEE 1394 port for connecting external devices. General-purpose input/output devices can be used via these various interfaces. 
       FIG. 3  is a block diagram illustrating a hardware configuration of the PC  110 . In the PC  110 , a CPU  111 , a memory unit  112 , a storage device control unit  113 , a network control unit  115 , and an input/output device control unit  116  are connected via a bus. To the storage device control unit  113 , a storage device  114  is connected. To the input/output device control unit  116 , an external medium input/output device  117  and various interfaces  118  are connected. 
     The CPU  111  controls various devices, and performs operations and processing on data. The CPU  111  is a processor executing a computer program stored in a main memory. The CPU  111  receives data from an input device or a storage device, performs operations and processing, and outputs the resultant data to an output device or a storage device. 
     Examples of the memory unit  112  include a ROM and a RAM. The memory unit  112  is a storage device for storing or temporarily retaining therein an OS, which is the basic software executed by the processor, computer programs such as application software, and data, for example. 
     The storage device control unit  113  performs control for connecting the storage device  114  such as a HDD, and for storing data related to application software, for example. The storage device  114  stores therein various types of information (such as user information), and is managed through functions of a database or a file system, for example. 
     The network control unit  115  is an Ethernet (registered trademark) controller, for example, and has a function of communicating with other computers over a LAN or a WAN. The input/output device control unit  116  manages the external medium input/output device  117  and the various interface devices  118 , and inputs and outputs data from and to external devices. 
     The external medium input/output device  117  controls external media such as a USB medium, a CompactFlash (registered trademark) (CF), and an SD card, and inputs and outputs data. The various interfaces  118  are interfaces such as a serial port, a USB port, and an IEEE 1394 port for connecting external devices. General-purpose input/output devices can be used via the various interfaces. 
       FIG. 4  is a block diagram illustrating a hardware configuration of the multifunction peripheral  120 . In the multifunction peripheral  120 , a CPU  121 , a ROM  122 , a RAM  123 , an auxiliary storage device  124 , an operation panel  126 , a card reader interface (I/F)  127 , a network I/F  128 , and an engine unit  129  are connected via a bus. To the auxiliary storage device  124 , a storage device  125  is further connected. 
     The CPU  121  executes various computer programs for controlling the multifunction peripheral  120 . The ROM  122  and the RAM  123  are storage media temporarily storing therein computer programs and data during the operation of the multifunction peripheral  120 . Such computer programs and data are loaded from the auxiliary storage device  124  at the time at which the multifunction peripheral  120  is started. 
     The auxiliary storage device  124  is a storage medium such as a HDD for storing therein computer programs and data. The auxiliary storage device  124  stores therein data generated by printing, scanning, and facsimile. 
     The operation panel  126  receives settings for a job, a request for executing a job, a request for executing a maintenance operation, and other requests via user operations. Examples of the operation panel  126  include a liquid crystal display and an organic electroluminescent (EL) display. The operation panel  126  also displays various screens such as an operation screen for performing settings, and messages to the user, for example. 
     The card reader I/F  127  is a device capable of reading user information from an integrated circuit (IC) card of a user contactlessly. The card reader I/F  127  is mainly used when a user logs into the multifunction peripheral  120 . When a user does not use an IC card to log in, the user can log into the multifunction peripheral  120  by entering the user information via the operation panel  126 , for example. 
     The network I/F  128  is an Ethernet (registered trademark) controller, for example, and communicates with other computers over a LAN or a WAN. 
     The engine unit  129  controls engines for a plotter and a scanner, for example, and executes a printing operation or a scanning operation. 
       FIG. 5  is a block diagram illustrating a software functional configuration of the LF management server  100 . The authentication processing unit  10  is a processing unit that governs user authentication such as log-in and log-out, and is used together with the authentication managing unit  14  managing the user information. In the LF environment, the authentication of the user logging into the own PC is mainly performed by an authentication server. The LF management server  100  also serves as this authentication server, and can manage the authentication via the user PC  110  and the authentication via the multifunction peripheral  120  (in a configuration in which a user enters a user ID or the like to log in) as the same session. Therefore, when a user issues a printing instruction from the own PC  110 , the same print data can be shared with the multifunction peripheral  120  into which the same user logs. 
     The Web API processing unit  11  is a processing unit for communicating with the printer driver on the PC  110 , and this communication is implemented using a general-purpose protocol such as HTTP(S). A general-purpose format such as XML is used as the data format, so that the data will not be platform-dependent. 
     The accumulated data processing unit  12  is a processing unit that is used when accumulation of data is requested by the printer driver on the PC  110 . 
     The print data transmitting and receiving unit  13  is a processing unit that receives the print data generated by the printer driver on the PC  110 , and transmits the print data to a multifunction peripheral  120  when there is a request from the multifunction peripheral  120 . 
     The authentication managing unit  14  manages the user information such as user IDs for authenticating users, and is used together with the authentication processing unit  10 . 
     The print data managing unit  15  is a managing unit that accumulates the print data generated by the printer driver on the PC  110 , and stores the data mainly in a storage for data storage. Once the data is fetched by the print data transmitting and receiving unit  13 , and a print is successfully output, such print data is deleted from the storage for data storage, so that storage area will be made available again. 
     The history processing unit  16  is a processing unit that makes the information on the multifunction peripheral  120  used in outputting a print by the user persistent, and manages such information as history information. 
     In the data storage area of the LF management server  100 , user information  17 , print data  18 , and usage history data  19  are stored. Content of these pieces of data are described in Tables 1-1 and 1-2 below. 
     A part or the whole of the functional configurations of the LF management server  100  may be implemented as hardware. 
       FIG. 6  is a block diagram illustrating a software functional configuration of the printer driver on the PC  110 . An information acquiring unit  40  includes functions of an authentication processing unit  21 , a Web API processing unit  22 , a history processing unit  23 , and a statistics processing unit  24 . A display processing unit  41  includes a function of a GUI processing unit  25 . An output device identifying unit  42  includes a function of an MIB processing unit  26 . A print data output unit  43  includes functions of a print data generating unit  27 , a print data transmitting and receiving unit  28 , and a print data managing unit  29 . 
     A part or the whole of the functional configurations of the printer driver on the PC  110  may be implemented as hardware. 
     A document  30 , print data  31 , and device information  32  are stored in the data storage area of the PC  110 . Content of these pieces of data are described in Tables 2-1 to 2-4 below. 
     The authentication processing unit  21  is a processing unit that performs user authentication to the authentication processing unit  10  in the LF management server  100  based on the session information on the time at which the user logs into the PC  110 . Therefore, the authentication processing unit  21  can handle the session at the time when the user logs into the multifunction peripheral  120  integrally. Thereby, an authentication system referred to as an integrated authentication system or single sign-on is constructed, and this system is realized with centrally managed user information and an authentication system and can handle a user as the same user as long as the user logs into the network using the same account information. 
     The Web API processing unit  22  is a processing unit that governs the communication with the LF management server  100 , and is used in acquiring the usage history accumulated in the LF management server  100 . The usage history of the entire users from the past to now is accumulated in the LF management server  100 , and the Web API processing unit  22  can request the usage history via general-purpose protocols such as HTTP(S). The Web API processing unit  22  can be also considered as a history information acquiring unit, because the Web API processing unit  22  acquires the history information. 
     The history processing unit  23  processes the history information on the multifunction peripherals  120  previously used by the user and acquired from the LF management server  100 . Acquired from the LF management server  100  is the history data from the time and date on which such data was acquired at one point in time in the past to now, so that there is no gap between the acquired pieces of history information. When the period over which such data is acquired is equal to or longer than, for example, one month, such data is divided in units of one month, for example, before such data is acquired, so that the network load is reduced. 
     The statistics processing unit  24  generates a list of the multifunction peripherals  120  previously used by the user from the past up to now, based on the history data acquired by the history processing unit  23 , and calculates the multifunction peripheral  120  having been used most recently and having the highest usage count. The last usage time as well as the usage count is considered because there is a possibility for the multifunction peripherals  120  to be replaced regularly. In this manner, a list of multifunction peripherals  120  that are frequently used by the user can be calculated. 
     The GUI processing unit  25  processes a graphical user interface (GUI) screen of the printer driver. The GUI screen can operate interactively with a user, and also accepts requests from the user. The GUI processing unit  25  can specify setting such as printing settings for the printer, and conditions for the finisher (sheet post-processing apparatus) performing binding, punching, sorting, and the like. The GUI processing unit  25  can also display a list of multifunction peripherals  120  previously used by the user, and detailed information on a multifunction peripheral  120  selected by the user. The list of multifunction peripherals  120  previously used by the user is acquired by communicating with the LF management server  100 , and the printer driver acquires the information on a specific multifunction peripheral  120  based on the acquired information. The information on the multifunction peripheral  120  corresponds to the MIB information, and is acquired by the MIB information processing unit  26 . 
     The MIB information processing unit  26  acquires the MIB information from a multifunction peripheral  120  selected by a user, over the network  130 . The information on the multifunctional peripheral selected by the user includes the IP address identifying the multifunction peripheral, so that the MIB information processing unit  26  accesses the multifunction peripheral  120  based on the IP address, and acquires the MIB information. Once the MIB information is acquired, the MIB information is displayed in the GUI screen in a format that can be easily understood by users, e.g., as a table, so that the user can determine whether the multifunction peripheral  120  is available or has failed, for example, by looking at the information. The MIB information processing unit  26  may also be considered as a device information acquiring unit because the MIB information processing unit  26  acquires the availability information (that is, MIB information or device information) indicating whether each of a plurality of multifunction peripherals (image forming apparatuses) or each of the functions included in the multifunction peripherals is available. 
     The print data generating unit  27  generates print data of a document designated by the user. Examples of the document include a text file, a file created on MS Word (registered trademark), and an image file. The print data is data in the PDL format that can be interpreted by the multifunction peripheral (printer)  120 , and the data associated thereto. The generated print data is transmitted to the LF management server  100 . While the data is being created, or immediately before the data is transmitted over the network  130 , the print data is stored temporarily in a storage area. 
     The print data transmitting unit  28  is a processing unit that transmits the print data generated by the printer driver to the LF management server  100 . 
     The print data managing unit  29  manages the print data created by the print data generating unit  27 . The print data generating unit  27  generates a piece of print data for each document or each page of a document, and therefore, the print data managing unit  29  manages a set of pieces of print data when a user requests printing of a plurality of documents. 
     In  FIG. 6 , the information acquiring unit  40  acquires the device information including information related to the availability condition of the multifunction peripherals  120  that are a plurality of image forming apparatuses, via the LF management server  100 . The display processing unit  41  displays the availability conditions of the image forming apparatuses on the display unit based on the acquired device information. The output device identifying unit  42  receives a selection of the image forming apparatus to be used by the user via the display unit. The image forming apparatus from which the print is to be output is then identified. The print data output unit  43  outputs the print data to the selected image forming apparatus. 
     The device information provides device identification information such as the IP address of a multifunction peripheral  120  that is frequently used by the user, and the current condition of the device, and these pieces of information are enabled to be displayed on a screen (GUI) of the printer driver. The determination as to whether a device is frequently used by the user is calculated based on the usage count and the last usage time, among the history information accumulated in the LF management server  100 . In this manner, the user can recognize the current condition of the multifunction peripheral  120  frequently used by the user, and the conditions of the other multifunction peripherals  120 . 
     In this manner, the information acquiring unit  40  acquires the device information including the availability-related information and the history information on a plurality of image forming apparatuses (the multifunction peripherals  120 ) from the LF management server  100  over the network  130 . The display processing unit  41  causes the user to refer to the acquired device information to select an image forming apparatus (multifunction peripheral  120 ) from which a print is to be output. The print data output unit  43  then outputs the print data to the image forming apparatus (the multifunction peripheral  120 ). 
     Therefore, the printer driver on the PC  110  to which the user gives a printing instruction, communicates with the LF management server  100  to acquire the information described below, and notify the user of the information. In other words, the PC  110  acquires the IP addresses, the printing conditions, and the like for the past print output information for the user (image forming apparatus (the multifunction peripheral  120 )). Using such data, the PC  110  acquires the device information directly from the image forming apparatus designated by the user before the user actually outputs a print. Furthermore, the PC  110  can notify the user of the conditions of that image forming apparatus (such as another user currently printing) in advance. 
     The information acquiring unit  40  also acquires, when a notification of the device information is received from the LF management server  100  or when a specific image forming apparatus is selected by the user via the display unit, the device information on the selected image forming apparatus. The display processing unit  41  displays the device information on the display unit. 
     In this manner, at the timing at which the notification of the device list is received from the LF management server  100  and at the timing at which the user selects a particular multifunction peripheral  120  from the GUI of the printer driver, the printer driver acquires the MIB information from the multifunction peripheral  120 , and notifies the user of the information via the GUI. Thereby, the user can be notified of the list of the multifunction peripherals  120  having been used in the past, and the current information on the most frequently used multifunction peripheral  120  when the user displays the GUI screen of the printer driver. 
     The information acquiring unit  40  merges history information received from the LF management server  100  with the history information having already been accumulated while avoiding duplication. The information acquiring unit  40  includes the history processing unit  23  that acquires, when the time period from when the history information was acquired last time and to now is equal to or longer than a predetermined time period, the history information from the LF management server  100  in a manner divided in units of the predetermined period. 
     In other words, when the history processing unit  23  receives the user history information from the LF management server  100  via the information acquiring unit  40 , the history processing unit  23  merges (integrates) the received history information with the history information having already been accumulated by the printer driver, and removes the redundancy so as to prevent the same history from being accumulated redundantly. When the period from when the history information was acquired last time to now is equal to or longer than one month, for example, the history information divided in units of one month, for example, is acquired from the LF management server. Because the user history information accumulated in the printer driver is not always available for acquisition, there might be a long time interval since the history information was acquired last time. The history processing unit  23  can acquire the long-term history by dividing the history in some units, and remove the redundancy before accumulating the history in the printer driver even when the history having already acquired is acquired again. 
     The information acquiring unit  40  also includes the statistics processing unit  24  that extracts one or more image forming apparatuses having been used from the past to now based on the history information processed by the history processing unit  23 , and extracts only the device information on the reachable image forming apparatuses, among the image forming apparatuses extracted. In this manner, the statistics processing unit  24  can not only perform statistical processing based on the history information, but also extract only the devices that are currently reachable (available), among the extracted multifunction peripherals  120  included in the list. 
       FIG. 7  is a block diagram illustrating a software functional configuration of the multifunction peripheral  120 . An operation control unit  50  is a GUI that displays an operation screen for allowing the user to make operations on the operation panel  126 , and receives inputs from the user. The operation control unit  50  also receives a request for causing the multifunction peripheral  120  to execute a job via a user operation. 
     A network communicating unit  51  communicates with external computers over the network  130 , and communicates with the user PC  110  and the LF management server  100 . The network communicating unit  51  also receives a request to acquire MIB information from the user PC  110  or the LF management server  100  over the network management protocol (SNMP). Once the request to acquire the MIB information is received, the network communicating unit  51  returns the information collected by the device information processing unit  52  to the requestor. 
     A device information processing unit  52  is a processing unit that regularly keeps a tally and accumulates various types of information related to the multifunction peripheral  120 . As the various types of information, the device information processing unit  52  manages the conditions of sheets or toner in the multifunction peripheral  120 , an online or offline status of the device, a status such as a transition to or resume from energy-saving, and a comprehensive condition representative of the multifunction peripheral  120  based on comprehensive determination of these conditions. The device information processing unit  52  makes a diagnosis on such conditions regularly (e.g., one minute or so), and manages these conditions as the conditions of the multifunction peripheral  120 . The device information processing unit  52  also sometimes acquires these conditions in response to a request from an external computer, for example. 
     An execution determination processing unit  53  determines whether a job requested via the operation control unit  50  or over the network  130  can be executed, considering the conditions of consumable printing supplies, e.g., the remaining number of sheet and the toner conditions. 
     A printing processing unit  54  is a processing unit that executes printing in response to a job requested via the operation control unit  50  or over the network  130 . For example, in a job requested via the operation panel  126 , the printing processing unit  54  causes the scanner to read a document to acquire print data or selects print data accumulated in advance to output a print. 
     The information related to the LF management server  100 , the PC  110 , the multifunction peripheral  120  will now be explained. Table 1-1 is a table representing the history of usage by each of the entire users and the device information managed by the LF management server  100 . Table 1-1 accumulates information such as the time and date at which each user has output a print from which multifunction peripheral  120 , to clarify which user has used which one of the devices at what point in time. Table 1-1 is updated when a user issues a printing request from the own PC  110 , and a request for accumulating print data from the LF management server  100  is generated. This table is also updated at the timing at which a user outputs a print from a particular multifunction peripheral  120 . 
     
       
         
           
               
               
               
               
             
               
                 TABLE 1-1 
               
               
                   
               
               
                   
                 Time and date of usage 
                 User name 
                 Output device 
               
               
                   
               
             
            
               
                 1 
                 2015/04/03 01:23:45+0900 
                 user 1 
                 deviceID_0123 
               
               
                 2 
                 2015/04/02 23:45:12+0900 
                 user 2 
                 deviceID_0234 
               
               
                 3 
                 2015/04/01 12:23:34+0900 
                 user 1 
                 deviceID_0123 
               
               
                 4 
                 2015/03/30 03:56:22+0900 
                 user 3 
                 deviceID_0345 
               
               
                 5 
                 2015/03/29 20:44:47+0900 
                 user 1 
                 deviceID_0123 
               
               
                   
               
            
           
         
       
     
     Table 1-2 is a table indicating the current conditions of the multifunction peripherals  120 . This table manages the reachability information on the devices having been used by users. This table is updated at the timing at which a print is output from a user PC  110 , as described earlier, and at predetermined timing, e.g., at a regular interval (e.g., one o&#39;clock every night). The reachability status mainly takes one of two values of either reachable or unreachable, and only the information on reachable devices is notified when the acquisition of the history is requested by the printer driver. In this manner, packets sent across the network  130  can be reduced, so that the load in the network  130  can be suppressed. 
     The data stored in the table illustrated in Table 1-2 mainly includes the connection status with a multifunction peripheral  120 , the time and date at which the information is updated, and the IP address identifying the multifunction peripheral. When such a device becomes unreachable due to causes such as a change in the IP address, the data corresponding to the device is overwritten with new data to avoid redundancy. When an unreachable status persists, the time and date of the update is kept unupdated. 
     The LF management server  100  extracts the usage history of a specific user and of the multifunction peripherals  120  that are reachable (currently in connection) from the entries in Tables 1-1 and 1-2, and notifies the user&#39;s printer driver of the extraction. 
     
       
         
           
               
               
               
               
               
             
               
                 TABLE 1-2 
               
               
                   
               
               
                   
                 Multifunctional peripheral 
                 Information update time and date 
                 Reachability status 
                 IP address 
               
               
                   
               
             
            
               
                 1 
                 deviceID_0123 
                 2015/06/01 01:00:00+0900 
                 Connecting 
                 192.168.10.110 
               
               
                 2 
                 deviceID_0234 
                 2015/06/01 01:00:00+0900 
                 Connecting 
                 192.168.10.150 
               
               
                 3 
                 deviceID_0345 
                 2014/12/30 01:00:00+0900 
                 Unreachable 
                 192.168.10.115 
               
               
                 4 
                 deviceID_0456 
                 2015/06/01 01:00:00+0900 
                 Connecting 
                 192.168.10.120 
               
               
                 5 
                 deviceID_0567 
                 2014/10/20 01:00:00+0900 
                 Unreachable 
                 192.168.10.135 
               
               
                   
               
            
           
         
       
     
     Table 2-1 is a table representing the user usage history acquired from the LF management server  100  by the printer driver on the user PC  110 . Table 2-1 illustrates an example of the usage history and the device information acquired from the LF management server  100  for the user  1 . This information is the history information on the user outputting prints from the multifunction peripherals  120 . The printer driver on the user PC  110  receives the history information for a period from when the history information was acquired last time to now. When there is an interval equal to or longer than one month between the time and date on which the history information was acquired last time to now, the history information is divided into units of data corresponding to one month or so, and is transmitted multiple times, because the amount of data to be transmitted and received may be large. 
     This history is acquired as a list of the names and the IP addresses of the multifunction peripherals  120  used by the user, and the time and date of the usage, from the LF management server  100 , and is stored persistently in a storage area of the user PC  110 , for example, in such a manner that there is no redundancy with the data having been acquired in the past. 
     
       
         
           
               
               
               
               
               
             
               
                   
                 TABLE 2-1 
               
               
                   
                   
               
               
                   
                   
                   
                 User 
                   
               
               
                   
                   
                 Time and date of usage 
                 name 
                 Output device 
               
               
                   
                   
               
             
            
               
                   
               
            
           
           
               
               
               
               
               
            
               
                   
                 1 
                 2015/04/03 01:23:45+0900 
                 user 1 
                 deviceID_0123 
               
               
                   
                 2 
                 2015/04/01 12:23:34+0900 
                 user 1 
                 deviceID_0123 
               
               
                   
                 3 
                 2015/03/29 20:44:47+0900 
                 user 1 
                 deviceID_0123 
               
               
                   
                   
                 . . .  
                 user 1 
                 . . . 
               
               
                   
                   
               
            
           
         
       
     
     Table 2-2 is a table presenting the result of statistics calculated from the history data persistently stored in the user PC  110 . Table 2-2 presents exemplary usage history and device information on the user  1 . This table presents a tally of the usage count of each one of the specific devices based on the usage history from when the history data was started to being persistently stored to now. If a device has a high usage count and the time and the date of the last usage is recent, the device can be recognized as a device frequently used by the user. 
     
       
         
           
               
               
               
               
               
             
               
                   
                 TABLE 2-2 
               
               
                   
                   
               
               
                   
                   
                   
                 Time and date of last 
                 Usage 
               
               
                   
                   
                 Output device 
                 usage 
                 count 
               
               
                   
                   
               
             
            
               
                   
               
            
           
           
               
               
               
               
               
            
               
                   
                 1 
                 deviceID_0123 
                 2015/04/03 01:23:45+0900 
                 234 
               
               
                   
                 2 
                 deviceID_0234 
                 2015/02/13 08:45:12+0900 
                 50 
               
               
                   
                 3 
                 deviceID_0345 
                 2014/12/20 12:23:34+0900 
                 423 
               
               
                   
                 4 
                 deviceID_0456 
                 2015/11/09 03:56:22+0900 
                 102 
               
               
                   
                 5 
                 deviceID_0567 
                 2014/08/11 20:44:47+0900 
                 23 
               
               
                   
                   
               
            
           
         
       
     
     Table 2-3 is a table resulting from sorting the data tallied in Table 2-2 in the descending order of the usage ratio. Table 2-3 represents a list of multifunction peripherals  120  with high usage ratios by the user  1 . With this information, it can be determined that the user uses the multifunction peripherals  120  more frequently in the descending order, from the top of Table 2-3. In this process, because there is a possibility for a multifunction peripheral  120  not to be able to establish a connection with the network due a different IP address from the previous one, for example, a simple reachability test using a packet internet groper (ping) command, for example, is performed before this table is updated. The information on any unreachable device (multifunction peripherals  120 ) is excluded. This exclusion process is a process of when performed to ensure that the same device is registered with a plurality of IP addresses, or a plurality of devices is registered with the same IP address. 
     
       
         
           
               
               
               
               
               
             
               
                 TABLE 2-3 
               
               
                   
               
               
                   
                   
                 Time and 
                 Usage 
                   
               
               
                   
                 Output device 
                 date of last usage 
                 count 
                 IP address 
               
               
                   
               
             
            
               
                   
               
            
           
           
               
               
               
               
               
            
               
                 1 
                 deviceID_0123 
                 2015/04/03 01:23:45+0900 
                 234 
                 192.168.10.110 
               
               
                 2 
                 deviceID_0234 
                 2015/02/13 08:45:12+0900 
                 50 
                 192.168.10.150 
               
               
                 3 
                 deviceID_0456 
                 2014/11/09 03:56:22+0900 
                 102 
                 192.168.10.135 
               
               
                   
               
            
           
         
       
     
     Table 2-4 is a table presenting the MIB information acquired from a specific device (multifunction peripheral  120 ). Table 2-4 presents the current condition of a specific device ID_0123. In other words, this table presents the current conditions of the multifunction peripheral  120  (e.g., available, now printing, failed, short of sheet, and nearly short of toner), and the user can recognize which multifunction peripheral  120  is idle based on this information. This table is updated by acquiring the MIB information from the multifunction peripheral  120  at the timing at which a user selects that particular multifunction peripheral from the usage history in the GUI screen of the printer driver. This table is updated at a preset interval (e.g., one minute subsequent to a startup, and subsequently in the increment of one minute), sequentially in the descending order, from the top to the bottom of the list having been extracted via the statistical processing. 
     
       
         
           
               
               
               
               
             
               
                   
                 TABLE 2-4 
               
               
                   
                   
               
               
                   
                   
                 Item 
                 Condition 
               
               
                   
                   
               
             
            
               
                   
               
            
           
           
               
               
               
               
            
               
                   
                 1 
                 Device condition 
                 Normal 
               
               
                   
                 2 
                 Detailed device condition 
                 Idle 
               
               
                   
                 3 
                 Printer condition 
                 Available 
               
               
                   
                 4 
                 Current error condition 
                 None 
               
               
                   
                 5 
                 Sheet condition 
                 Normal 
               
               
                   
                 6 
                 Tray 1 (A4) 
                 Normal 
               
               
                   
                 7 
                 Tray 2 (A3) 
                 Normal 
               
               
                   
                 8 
                 Toner condition 
                 Normal 
               
               
                   
                 9 
                 Toner (B) 
                 57% 
               
               
                   
                 10 
                 Toner (C) 
                 80% 
               
               
                   
                 11 
                 Toner (Y) 
                 92% 
               
               
                   
                 12 
                 Toner (M) 
                 75% 
               
               
                   
                   
                 . . .  
                 . . . 
               
               
                   
                   
               
            
           
         
       
     
     Tables 3-1 to 3-7 are tables presenting representative MIB information retained by the multifunction peripheral  120 . Table 3-1 indicates the comprehensive condition of the device acquired as the MIB information. Table 3-2 indicates the error condition of the multifunction peripheral  120 . Table 3-3 indicates the device availability condition of the multifunction peripheral  120 . Table 3-4 indicates the condition as to whether any non-critical alert for the multifunction peripheral  120  is present. Table 3-5 indicates the condition as to whether a critical alert for the multifunction peripheral  120  is present. Table 3-6 indicates the on-line/off-line condition of the multifunction peripheral  120 . Table 3-7 indicates the transition condition of the multifunction peripheral  120 . 
     The multifunction peripheral  120  has an MIB function enabling the current conditions to be acquired over the network  130 , and this MIB function can be accessed via the network management protocol (SNMP). With the MIB information referred to as Printer MIB v2, in particular, the information specific to the multifunction peripheral can be acquired in a database format. 
     By acquiring this data, the printer driver on the user PC  110  can determine the current conditions of the multifunction peripheral  120 . 
     
       
         
           
               
               
               
               
               
             
               
                   
                 TABLE 3-1 
               
               
                   
                   
               
               
                   
                   
                 Comprehensive printer 
                 Device 
                 Printer 
               
               
                   
                   
                 condition 
                 condition 
                 condition 
               
               
                   
                   
               
             
            
               
                   
                 1 
                 Idle 
                 Normal 
                 Available 
               
               
                   
                 2 
                 Currently in use/active 
                 Normal 
                 Printing 
               
               
                   
                 3 
                 Non-critical alert 
                 Alert 
                 Idle or 
               
               
                   
                   
                   
                   
                 printing 
               
               
                   
                 4 
                 Critical alert 
                 Unusable 
                 Unknown 
               
               
                   
                 5 
                 Unavailable 
                 Unusable 
                 Unknown 
               
               
                   
                 6 
                 Transiting to off-line 
                 Alert 
                 Idle or 
               
               
                   
                   
                   
                   
                 printing 
               
               
                   
                 7 
                 Off-line 
                 Unusable 
                 Others 
               
               
                   
                 8 
                 Transiting to on-line 
                 Unusable 
                 Warming up 
               
               
                   
                 9 
                 Stand-by 
                 Normal 
                 Others 
               
               
                   
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-2 
               
               
                   
               
               
                   
                 Error condition 
               
               
                   
               
             
            
               
                   
               
            
           
           
               
               
            
               
                 1 
                 Nearly short of sheet 
               
               
                 2 
                 Short of sheet 
               
               
                 3 
                 Nearly short of toner 
               
               
                 4 
                 Short of toner 
               
               
                 5 
                 Door open 
               
               
                 6 
                 Paper jam 
               
               
                 7 
                 Off-lined 
               
               
                 8 
                 Request for service 
               
               
                 9 
                 No sheet-feeding tray 
               
               
                 10 
                 No sheet-discharge tray 
               
               
                 11 
                 Short of drawing consumable 
               
               
                 12 
                 Sheet-discharge bin nearly full 
               
               
                 13 
                 Sheet-discharge bin full 
               
               
                 14 
                 Sheet-feeding tray empty 
               
               
                 15 
                 Maintenance for expiration prevention 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-3 
               
               
                   
               
               
                   
                 Availability status 
               
               
                   
               
             
            
               
                 1 
                 Available and idle 
               
               
                 2 
                 Available and standby 
               
               
                 3 
                 Available and active 
               
               
                 4 
                 Available and currently in use 
               
               
                 5 
                 Available and receiving request 
               
               
                 6 
                 Unavailable due to failure 
               
               
                 7 
                 Unknown 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-4 
               
               
                   
               
               
                   
                 Non-critical alert 
               
               
                   
               
             
            
               
                 1 
                 Non-critical alert off 
               
               
                 2 
                 Non-critical alert on 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-5 
               
               
                   
               
               
                   
                 Critical alert 
               
               
                   
               
             
            
               
                 1 
                 Critical alert off 
               
               
                 2 
                 Critical alert on 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-6 
               
               
                   
               
               
                   
                 On-line 
               
               
                   
               
             
            
               
                 1 
                 On-line 
               
               
                 2 
                 Off-line 
               
               
                   
               
            
           
         
       
     
     
       
         
           
               
               
             
               
                 TABLE 3-7 
               
               
                   
               
               
                   
                 Transition 
               
               
                   
               
             
            
               
                 1 
                 Currently in mode 
               
               
                 2 
                 Currently transiting to mode 
               
               
                   
               
            
           
         
       
     
     A process of outputting a print, a process of requesting printing, and a process of acquiring device information will now be explained.  FIG. 8  is a sequence chart illustrating the sequence of a process in which the LF management server  100  accumulates the history information at the timing at which the user outputs a print from a multifunction peripheral  120 . 
     In  FIG. 8 , to begin with, a user operates the operation panel  126  on the multifunction peripheral  120  to log into the multifunction peripheral  120  (Step S 1 ). To log in, the user uses the ID having been set in advance on the operation panel  126 , or the IC card embedded with information for identifying the user. When the log-in is executed, the multifunction peripheral  120  generates an inquiry addressed to the LF management server  100  serving as an authentication server (Step S 2 ). The user information is centrally managed on the LF management server  100 . An inquiry addressed to the authentication server (the LF management server  100 ) is also generated when the user logs into the PC  110 , in the same manner as when the user logs into the multifunction peripheral  120  (Step S 3 ). 
     Upon receiving the log-in request from a client (the multifunction peripheral  120  or the PC  110 ), the LF management server  100  causes the processing unit governing the authentication function to authenticate, and matches the received user information with the centrally managed user information. If the match succeeds, a log-in state is achieved (Step S 4 ). 
     When the user transits to the log-in state, the user can now acquire a list of print data accumulated in the LF management server  100  (Steps S 5  to S 7 ). This list will present the user with the print data having been received from the user PC  110  in advance but not having been printed yet. Upon receiving the list of the accumulated data corresponding to the user having logged into the multifunction peripheral  120 , the multifunction peripheral  120  displays the list as a list of printable data on the operation panel  126 . The user is allowed to delete some data from the list, because the user may no longer need to print the data in some cases. 
     Once the user selects some data to be printed on the operation panel  126  of the multifunction peripheral  120  and starts printing, the multifunction peripheral  120  is permitted to acquire the print data on the list from the LF management server  100 , one piece at a time, and starts executing printing (Steps S 8  to S 10 ). When the multifunction peripheral  120  fetches a piece of the print data, the LF management server  100  registers therein the multifunction peripheral  120  as a device from which the user outputs a print, as history (Step S 11 ). Registered at this time when the print is output as the information on the multifunction peripheral  120  are the IP address and the device name (e.g., host name) identifying the device, for example. 
     Upon completion of the printing from the multifunction peripheral  120  (Step S 12 ), the multifunction peripheral  120  notifies the LF management server  100  of the printing result (Step S 13 ). 
     Upon completion of registering the printing result (Step S 14 ), the LF management server  100  deletes the print data (Step S 15 ), and performs a background process of updating the device usage history that is registered for each user (Steps S 16  to S 17 ). The process includes updating of the usage history, and taking a tally of the usage count again. This updating process is executed every time the user outputs a print. 
       FIG. 9  is a sequence chart illustrating the sequence of a process in which the user requests printing from the PC  110  (printer driver). In  FIG. 9 , the user turns ON the power of the own PC  110 , and logs into the PC  110  (Step S 21 ). In the log-in process, the OS generates an inquiry addressed to the authentication server (the LF management server  100 ), and the authentication server matches the user information with the centrally managed user information (Steps S 22  to S 24 ). If matching of the authentication information is successful, the user can log into the PC  110 . If the authentication fails, the log-in to the PC  110  is disabled. 
     The user then executes printing of a document on an application running on the PC (Steps S 25  to S 27 ). Examples of the application include document editing software such as Microsoft Word, and image editing software. The application then starts the printer driver (Step S 28 ), and causes the printer driver to display a print preview screen, various print settings, and so on (Step S 29 ). 
     The printer driver presents the user with various settings on the GUI screen. Once the user executes start printing, the printer driver generates the print data in a format that can be interpreted by the multifunction peripheral (Step S 30 ). 
     Once the print data is generated, the printer driver spools the print data using an API of the OS, and prepares the print data for the transmission to the LF management server  100  (Step S 31 ). Once the print data is transmitted to the LF management server  100  (Step S 32 ), the LF management server  100  manages the print data, as the accumulated data, in a manner linked to the user (Step S 33 ). Once the spooling and transmission of the print data to the LF management server  100  are completed without any problem, a message indicating a successful completion is displayed in the GUI of the printer driver (Step S 34 ). 
     The printer driver then accesses the LF management server  100  on the background, and acquires the history of usage by the user in the past (Steps S 35  to S 36 ). The printer driver transmits the request to acquire such history, as well as the information on the user, the period for which the history is to be acquired, and the like, to the LF management server  100 , and receives the response from the LF management server  100 . The information that can be acquired is the history information accumulated in the LF management server  100 , and includes information such as the device names, the IP addresses, the MAC addresses, and the like of the multifunction peripherals  120  from which the user has output prints in the past. Once these pieces of information are acquired, the information is added to the history information accumulated in the printer driver (Step S 37 ). 
       FIGS. 10A and 10B  are sequence charts illustrating an internal process of the driver in the sequence illustrated in  FIG. 9 . The process before the usage history of the multifunction peripheral  120  is acquired, as illustrated as S 41  to S 52  in  FIG. 10A , is substantially the same as Steps S 21  to S 32  in  FIG. 9 . 
     Once the usage history of the multifunction peripherals  120  is acquired from the LF management server  100 , the printer driver updates the data internally retained. Before updating the data, the printer driver removes some data so that the data newly acquired does not overlap the data having been acquired in the past, to remove the data redundancy (Step S 53 ). 
     Once the history data is updated correctly, the printer driver takes a tally of the usage history again (Steps S 54  and S 55 ). In this process, the printer driver takes the tally of the usage history of the entire period by the user, or the tally of the usage history across a predefined period (such as the most recent one month), with such a period being a range in which the usage of the multifunction peripheral  120  from the past to now is known. The statistical processing is mainly determined based on the last usage time and date, and the total usage count. It is also possible to make the determination based only on the last usage time and date; however, the usage count is also considered as an additional condition because there are some cases in which a plurality of devices have been used up to the same time on the same date. 
     Once the usage history and the result of the statistics processing are updated, and the devices with higher ratios of usage by the user are extracted, these results are displayed in the GUI screen (Step S 56 ), and presented to the user. The GUI screen displays the devices in a manner sorted in the reversed chronological order of the last usage time and date, and the descending order of the usage count, but the devices can instead be sorted by the time and date/usage count so that the user can better determine. When the device information (MIB information on the devices) is being acquired on the background, the GUI display is also updated every time the device information is acquired (Step S 57 ). Updated is, however, only the information on the multifunction peripheral  120  having been selected by the user in the GUI screen, and the information on the unselected multifunction peripherals  120  is retained as internal data. 
     The printer driver acquires the MIB information on the multifunction peripherals  120  as a background process (Steps S 58  to S 61 ), and updates the display in the GUI screen and the internal data every time the information is acquired (Step S 62 ). 
     When the user selects a particular multifunction peripheral  120  from the list of history of usage by the user, displayed in the GUI screen, the printer driver acquires the MIB information on the multifunction peripheral  120  at that timing (Steps S 63  to S 68 ). Because several ten seconds to one minute, for example, is required to acquire the MIB information depending on the conditions of the network, the printer driver displays, during such a period, a message indicating that the information is being updated in the GUI. 
     The MIB information on the multifunction peripheral  120  to be displayed in the GUI is presented in a format enabling the user to easily get a grasp of the conditions of the multifunction peripheral  120  at the time at which such information is acquired. This format is configured to provide information such as: another user is current printing, a failure has occurred, and the immediate availability by the user, for example to enable the user to immediately determine whether the user can output a print from the multifunction peripheral  120 . 
     The user is then enabled to select a multifunction peripheral  120  that is currently available, and that is frequently used by the user via the GUI screen (Step S 69 ). 
     The LF management server  100  tests the reachability of the multifunction peripherals  120  registered in the history information regularly (e.g., at one o&#39;clock every night). The reachability is tested because there are some factors making the multifunction peripherals  120  to become unreachable, such as a replacement of the device, an update in the IP address, and disconnection of the network. In such a case, by causing the LF management server  100  to confirm the reachability of the multifunction peripherals  120  regularly (Step S 70 ), unreachable multifunction peripherals  120  can be excluded in the statistical processing. 
       FIG. 11  is a schematic view for explaining an exemplary GUI screen of the printer driver on the user PC  110 . When the user issues a printing instruction from some application such as text editor software, the user can display the GUI screen of the printer driver. The GUI of the printer driver includes a screen for displaying the current conditions of the multifunction peripherals previously used by the user, as well as general printing settings, and can be caused to be displayed by a user at any timing. 
     When the user displays the screen illustrated in  FIG. 11 , the usage history data of the multifunction peripherals  120  having been already acquired at the point in time (the table in the upper area of the GUI screen) is displayed. What is displayed here is a list of the multifunction peripherals  120  previously used by the user, and this list can present the usage count, the IP address, and the current reachability status of each of the multifunction peripherals  120 . 
     When the user selects a particular multifunction peripheral  120  on the GUI screen, the printer driver acquires the MIB information on the multifunction peripheral  120  at the time of the selection. It is however also possible to acquire the MIB information at the timing at which the history list in the upper area of the GUI screen is created on the background, in order to improve the response speed to the user. In such a case, because there might be a discrepancy in the MIB information with respect to the real-time MIB information, the printer driver is enabled to acquire the MIB information again if a certain period (for example, one minute or so) has elapsed from the last acquisition of the MIB information. 
     A computer program executed on the information processing apparatus and the information processing system according to the embodiment is provided in a manner embedded in the memory unit  102 ,  112 , for example. The computer program may also be provided in a manner incorporated in a computer-readable recording medium such as a compact disc read-only memory (CD-ROM), a flexible disk (FD), a compact disc recordable (CD-R), and a digital versatile disc (DVD), as a file in an installable or executable format. 
     Furthermore, the computer program executed in the embodiment may be stored in a computer connected to a network such as the Internet, and may be available for download over the network. Furthermore, the computer program executed in the embodiment may be provided or distributed over a network such as the Internet. 
     The computer program executed in the embodiment has a modular structure including the units described above. As actual hardware, the CPU (processor)  101 ,  111  reads the computer program from the memory unit  102 ,  112  and executes the computer program to load and generate the units described above onto the main memory. 
     According to an embodiment, an information processing apparatus, an information processing method, a recording medium, and an information processing system capable of notifying the availability of an image forming apparatus, and improving the efficiency of LF printing can be provided, advantageously. 
     The above-described embodiments are illustrative and do not limit the present invention. Thus, numerous additional modifications and variations are possible in light of the above teachings. For example, at least one element of different illustrative and exemplary embodiments herein may be combined with each other or substituted for each other within the scope of this disclosure and appended claims. Further, features of components of the embodiments, such as the number, the position, and the shape are not limited the embodiments and thus may be preferably set. It is therefore to be understood that within the scope of the appended claims, the disclosure of the present invention may be practiced otherwise than as specifically described herein. 
     The method steps, processes, or operations described herein are not to be construed as necessarily requiring their performance in the particular order discussed or illustrated, unless specifically identified as an order of performance or clearly identified through the context. It is also to be understood that additional or alternative steps may be employed. 
     Further, any of the above-described apparatus, devices or units can be implemented as a hardware apparatus, such as a special-purpose circuit or device, or as a hardware/software combination, such as a processor executing a software program. 
     Further, as described above, any one of the above-described and other methods of the present invention may be embodied in the form of a computer program stored in any kind of storage medium. Examples of storage mediums include, but are not limited to, flexible disk, hard disk, optical discs, magneto-optical discs, magnetic tapes, nonvolatile memory, semiconductor memory, read-only-memory (ROM), etc. 
     Alternatively, any one of the above-described and other methods of the present invention may be implemented by an application specific integrated circuit (ASIC), a digital signal processor (DSP) or a field programmable gate array (FPGA), prepared by interconnecting an appropriate network of conventional component circuits or by a combination thereof with one or more conventional general purpose microprocessors or signal processors programmed accordingly. 
     Each of the functions of the described embodiments may be implemented by one or more processing circuits or circuitry. Processing circuitry includes a programmed processor, as a processor includes circuitry. A processing circuit also includes devices such as an application specific integrated circuit (ASIC), digital signal processor (DSP), field programmable gate array (FPGA) and conventional circuit components arranged to perform the recited functions.