Patent Publication Number: US-2011066722-A1

Title: Device management apparatus, device management system, device management program, and storage medium

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application claims priority to and incorporates by reference the entire contents of Japanese Patent Application No. 2009-213577 filed in Japan on Sep. 15, 2009. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a device management apparatus, a device management system, and a device management program for managing devices connected to a network, and to a storage medium. 
     2. Description of the Related Art 
     Device management systems have been increasingly used to manage devices connected to networks, as devices connected to the same network increases in number. A large number of devices connected to a network may be replaced or otherwise changed so that older devices will no longer exist on the network for a certain period of time. However, this situation cannot be automatically detected with ease by the device management system. This is due to the fact that the device management system is capable of determining whether it can communicate with the device, but remotely knows with difficulty whether the system cannot communicate with the device because the device has been turned off or already disconnected from the network. 
     In this context, there has been provided a method for checking the operation of a device while being powered to know the connection status thereof based on the presence or absence of a response (for example, Japanese Patent Application Laid-open No. H8-307431). According to the method disclosed in this patent document, the period of time during which the device is powered is pre-stored as schedule information in a storage unit. Based on this schedule information, the device to be monitored is determined whether it is in a mode of operation, so that if not, an error is issued. 
     However, the method of the above patent document displays all the monitored devices, including both one that sends a response and one that does not send a response, thereby disabling the administrator to know no-response devices with ease. Accordingly, the no-response devices need to be individually filtered from the list of managed devices by the administrator, thus leading to inefficient and complicated management of devices. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to at least partially solve the problems in the conventional technology. 
     According to an aspect of the present invention there is provided a device management apparatus connected to one or more devices via a network, including: a response request unit that requests a response from the devices via the network; a reception unit that receives the response from the respective devices, a storage unit that stores a record, the record being arranged such that device identification information for identifying the devices is associated with response information indicative of whether the response was received and a date and time at which the response was received; a recording unit that records, if the response was received, the response information indicative of a presence of the response and the date and time on the record associated with the device identification information of corresponding one of the devices from which the response was received, or records, if the response was not received, the response information indicative of an absence of the response on the record associated with the device identification information of corresponding one of the devices from which the response was not received; and an output control unit that reads on the storage unit and delivers the device identification information indicating that the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. 
     According to another aspect of the present invention there is provided a device management system including one or more devices and a device management apparatus connected thereto via a network. The device management apparatus includes: a response request unit that requests a response from the devices via the network; a reception unit that receives the response from the respective devices; a storage unit that stores a record, the record being arranged such that device identification information for identifying the devices is associated with response information indicative of whether the response was received and a date and time at which the response was received; a recording unit that records, if the response was received, the response information indicative of a presence of the response and the date and time on the record associated with the device identification information of corresponding one of the devices from which the response was received, or records, if the response was not received, the response information indicative of an absence of the response on the record associated with the device identification information of corresponding one of the devices from which the response was not received; and an output control unit that reads on the storage unit and delivers the device identification information for which the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. The devices includes: a transmission unit that sends the response to the device management apparatus via the network when having received the response request from the device management apparatus. 
     According to still another aspect of the present invention there is provided a computer program product comprising a computer-usable medium having computer-readable program codes. The program codes when executed causing a computer to execute: a response request step of requesting a response from one or more devices via a network; a reception step of receiving the response from the respective devices, a recording step of recording a record on a storage unit, if the response was received, the record being arranged such that the response information indicative of a presence of the response, the date and time, and the device identification information of corresponding on of the devices from which the response was received are associated with each other, or for recording a record on the storage unit, if the response was not received, the record being arranged such that the response information indicative of an absence of the response is associated with the device identification information of corresponding one of the devices from which the response was not received; and an output step of reading on the storage unit and delivering the device identification information for which the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. 
     The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic diagram illustrating a device management system  1  according to first and second embodiments of the present invention; 
         FIG. 2  is a hardware block diagram of a device management apparatus  100  according to the embodiments; 
         FIG. 3  is a diagram illustrating an example of the software configuration of the device management apparatus  100 ; 
         FIG. 4  is a functional block diagram of the device management apparatus  100  and a managed device  200  according to the first embodiment of the present invention; 
         FIG. 5  is a diagram illustrating an example of a device information table stored in an HDD  108 ; 
         FIG. 6  is a sequence diagram illustrating the steps of displaying a device list; 
         FIG. 7  is a diagram illustrating an example of a normal display window without a no-response filter applied; 
         FIG. 8  is a diagram illustrating an example of a display window with the no-response filter applied; 
         FIG. 9  is a functional block diagram illustrating a device management apparatus  400  and a managed device  200  according to the second embodiment of the present invention; 
         FIG. 10  is a sequence diagram illustrating the steps of deleting device information; 
         FIG. 11  is a schematic diagram illustrating a device management system  2  according to a third embodiment of the present invention; 
         FIG. 12  is a functional block diagram illustrating a device management apparatus  500  and a managed device  200  according to the third embodiment of the present invention; 
         FIG. 13  is a sequence diagram illustrating the steps of transmitting an email according to the third embodiment; 
         FIG. 14  is a functional block diagram illustrating a device management apparatus  600  and a managed device  200  according to a fourth embodiment of the present invention; 
         FIG. 15  is a sequence diagram illustrating the steps of transmitting an email according to the fourth embodiment; and 
         FIG. 16  is a block diagram illustrating the hardware configuration of a multifunction peripheral as a managed device  200  in the first to fourth embodiments. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Now, referring to the accompanying drawings, a detailed description will be made to the preferred embodiments of a device management apparatus, a device management system, a device management program, and a storage medium, according to the invention. 
     First Embodiment 
       FIG. 1  is a schematic diagram illustrating a device management system  1  according to the first embodiment of the present invention. As shown in  FIG. 1 , the device management system  1  is configured such that one or more managed devices  200  such as an MFP (Multifunction Peripheral) and an LP (Laser Printer), one or more client PCs (Personal Computers)  300 , and a device management apparatus  100  are connected to a network  90 . 
     In such a system structure, the device management apparatus  100  monitors and manages the status conditions of the managed devices  200  through a device management function operated in the device management apparatus  100 . Furthermore, the device management apparatus  100  provides the PC  300  with various types of information on the status of the managed devices  200 . 
     Now, a description will be made to the hardware configuration of the device management apparatus  100 .  FIG. 2  shows a hardware block diagram of the device management apparatus  100  according to the present embodiment. As shown in  FIG. 2 , the device management apparatus  100  mainly includes an input device  101 , a display device  102 , a drive device  103 , a RAM (Random Access Memory)  104 , a ROM (Read Only Memory)  105 , a CPU  106 , an interface device  107 , and an HDD (Hard Disk Drive)  108 , which are interconnected to one another via a bus. 
     The input device  101  may be a keyboard or a mouse for receiving operation signals that the user enters into the device management apparatus  100 . The display device  102  may be a display which displays the results of processing performed by the device management apparatus  100 , etc. 
     The interface device  107  serves to connect the device management apparatus  100  and the managed devices  200  to the network  90 . The connection allows the device management apparatus  100  to communicate data via the interface device  107  to the managed devices  200 . 
     The HDD  108  stores various types of programs and pieces of data. The stored programs and pieces of data include, for example, information processing programs to control the entire device management apparatus  100  and applications to provide various functions on the information processing system. The HDD  108  also manages the stored programs and data using a given file system and/or DB (Database). 
     The drive device  103  is an interface with a removable storage medium  103   a . The device management apparatus  100  can read and write on the storage medium  103   a  via the drive device  103 . 
     The ROM  105  is a non-volatile semiconductor memory device (storage device) which can sustain internal data even when its power has been turned off. The ROM  105  stores data such as the BIOS (Basic Input/Output System) to run when the device management apparatus  100  is initiated, the system configuration of the device management apparatus  100 , and network-related settings. 
     The RAM  104  is a volatile semiconductor memory device (storage device) which can temporarily hold programs and data read from various types of storage devices. The CPU  106  runs programs read onto the RAM  104 , thereby providing control to the entire device management apparatus  100  and realizing the operation of the various functions incorporated therein. 
     With such a hardware configuration, the device management apparatus  100  allows the CPU  106  to execute, for example, a program (device management program) read from the HDD  108  onto the RAM  104 , thereby implementing the device management function. 
     Now, the software structure in the device management apparatus  100  will be described.  FIG. 3  is a view illustrating an example of the software configuration in the device management apparatus  100 . As shown in  FIG. 3 , the device management apparatus  100  has a group of software components installed therein which mainly include an httpd (Hyper Text Transfer Protocol Daemon)  21 , a web page generation unit  22 , a front end unit  23 , and a device management unit  24 . 
     The httpd  21 , or a program on a web server resident in the information processing system, is configured to receive an operation request from a browser and send contents accumulated in the server in response to the request. 
     The web page generation unit  22  generates a web page to be displayed on the browser based on the request received at the httpd  21 . 
     The front end unit  23  acquires data, which is necessary to generate a web page at the web page generation unit  22 , from the device management unit  24 , to be described later, and then processes the acquired data so as to generate the web page. 
     To realize the device management functions, the device management unit  24  monitors the managed devices  200 , acquires device information, manages various types of data such as acquired information, and performs various types of data manipulations, for example, when requested to search or update data. 
     This means that the device management unit  24  is equivalent to software components which implement the device management functions operated on the device management apparatus  100 . The httpd  21 , the web page generation unit  22 , the front end unit  23 , etc. are equivalent to the software components which implement a function for providing information to the PC  300 . 
     Now, the functional structures of the device management apparatus  100  and the managed devices  200  will be described.  FIG. 4  is a functional block diagram illustrating the device management apparatus  100  and the managed devices  200  according to the first embodiment of the present invention.  FIG. 4  shows the functional structures of the front end unit  23  and the device management unit  24  for the device management apparatus  100 , and the functional structure of the managed devices  200 . 
     As shown in  FIG. 4 , the device management unit  24  of the device management apparatus  100  mainly includes a device list acquisition unit  241 , a monitor timer unit  246 , a polling control unit  247 , a communication control unit  248 , and the HDD  108 . The front end unit  23  mainly includes a device list display information acquisition unit  231 , a display control unit  232 , and a display unit  233 . 
     The HDD  108  stores system information and device information tables. Here, the system information contains values to be used in the entire system, where the values may include, for example, a given period that defines the interval at which polling is performed. The given period can be a predetermined number of days. The device information table is organized such that the IP address of a device is associated with the model name, the status, and the latest update date and time of the device. Note that among those pieces of information, the device information corresponds to the IP address, the model name, and the status of a device. 
       FIG. 5  is a view illustrating an example of a device information table stored in the HDD  108 . As shown in  FIG. 5 , for example, the first record in the device information table associates the IP address “192.168.1.101” with the model name “Model A,” the status “caution,” and the latest update date and time “2009/05/01 15:0000:00.” Here, as the status, the conditions of the device is indicated by category, such as “no-response,” “available,” “toner low,” “jamming,” and “cover open” in addition to “caution” that indicates that a failure is likely to occur. 
     The device list acquisition unit  241  includes a device response decision unit  242 , a device information acquisition unit  243 , a filtering unit  244 , and a device information update unit  245 . The device list acquisition unit  241  acquires a device list through these units upon reception of a device list acquisition request from the device list display information acquisition unit  231 . Here, the device list is a list of device information to be displayed on the display unit  233  or the display device of the client PC  300 . On the other hand, the device list acquisition request means a request to acquire a device list. 
     The device information acquisition unit  243  acquires MIB (Management Information Base) information from a device through the communication control unit  248  according to an acquisition request from the device list acquisition unit  241 . Then, the device information acquisition unit  243  acquires device information from the MIB information acquired. Here, the MIB information is the information which a network device managed by SNMP (Simple Network Management Protocol) makes public in order to allow the status to be known to the outside. The MIB information includes the device information. The device information acquisition unit  243  saves the acquired MIB information on the HDD  108 . 
     The device response decision unit  242  determines whether there is a response from a device based on polling by the polling control unit  247 . 
     The device information update unit  245  updates the device information table stored in the HDD  108 , based on the response result determined by the device response decision unit  242  and the device information acquired by the device information acquisition unit  243 . Note that the device response decision unit  242  and the device information update unit  245  are equivalent to a recording unit of the present invention. 
     More specifically, for a device determined by the device response decision unit  242  to have returned a response, the status associated with the IP address of the device in the device information table is rewritten to the status that is contained in the device information acquired by the device information acquisition unit  243 . Furthermore, the latest update date and time associated with the IP address of the device in the device information table is changed to the date and time at which the device information acquisition unit  243  has acquired the device information from the device. 
     On the other hand, for a device determined by the device response decision unit  242  to have returned no response, the status associated with the IP address of the device in the device information table is changed to “no response.” Here, for the device determined to have returned no response, the corresponding latest update date and time will not be changed, so that the latest update date and time at which a response was returned is saved. 
     The filtering unit  244  refers to the device information table and selects a device which is registered with the device information table and which has a device ID with the status “no response” and the elapsed time from the latest update date and time exceeding a predetermined period. The filtering unit  244  then saves the device information and the latest update date and time of the selected device as a device list in the HDD  108 . 
     Note here that the predetermined period can be set for each device or for each group. For example, the predetermined period can be changed for each group, where devices are used with different frequencies for the each group, for example, for each business location or each department. 
     The predetermined period can also be set according to the actual operation period of each device in the past. For example, this can be done by holding the history of no response to polls in the past one week. In this case, when polling is performed once in an hour, the history is kept regarding how many times no response was received to the total number of polls, i.e., 24 (hours)×7 (days)=168 polls. Thus, the predetermined period can be changed depending on that value. That is, devices with a less number of no-responses are to be provided with a shorter period, whereas those with a greater number of no-responses are to be provided with a longer period. 
     In this manner, dynamically changing the predetermined period from the latest update date and time makes it possible to manage devices more accurately and efficiently. 
     The polling control unit  247  controls threading of polls. The polling control unit  247  initiates a processing thread to call up the device information acquisition unit  243  and the device information update unit  245 . 
     Now, the thread will be briefly described below. The thread is an execution unit of software on an OS (Operating System) which supports multithreading. One program has at least one thread. Those threads that belong to the same program share resources such as work areas on the RAM  104 . Furthermore, a plurality of initiated threads can be processed apparently in parallel, i.e., executed simultaneously by occupying the CPU  106  alternately. 
     The polling control unit  247  manages the number of currently active threads (hereinafter referred to as the initiated thread number), to initiate a new thread depending on the maximum number of threads. In this manner, the device information acquisition unit  243  and the device information update unit  245  are executed in parallel by a plurality of threads. The thread initiated by the polling control unit  247  sends to the device response decision unit  242  a request to acknowledge the device response, before issuing an information acquisition request to the managed devices  200 . 
     The device response decision unit  242  determines whether there is a response from the managed devices  200  to the request for acknowledgement from the polling control unit  247 . For example, the device response decision unit  242  issues a response confirmation request (dummy request) before issuing the information acquisition request. The device response decision unit  242  determines whether there is a response from the managed devices  200 , and then returns to the thread the result of determination of whether there is a response. 
     The monitor timer unit  246  directs the polling control unit  247  to start polling at certain time intervals, thereby controlling the timing at which device information is acquired. 
     The communication control unit  248  controls communications with the managed devices  200  via the network  90 . Note that the communications are carried out based on the IP address of the devices. 
     Suppose that the device list display information acquisition unit  231  receives an acquisition request (hereinafter referred to as the device list information acquisition request) to acquire the information on a device list (hereinafter referred to as the device list information) from the web page generation unit  22 . In this case, the device list display information acquisition unit  231  acquires the device list display information from the device list acquisition unit  241  and then converts the acquired device list information into such information that can be used to be displayed, depending on whether the information is to be displayed on the display unit  233  or the display device of the client PC  300 . The device list information acquisition unit  231  sends the converted device list information to the display control unit  232  or the client PC  300 . 
     The display control unit  232  displays on the display unit  233  the display window of the device list information converted by the device list display information acquisition unit  231 . 
     Now, as shown in  FIG. 4 , the managed devices  200  each mainly include a communication control unit  201  and an HDD  202 . 
     The HDD  202  stores the MIB information. The communication control unit  201  controls communications with the device management apparatus  100  via the network  90 . Note that the communications are carried out based on the IP address of the devices. 
     Now, a description will be made to the steps for displaying a device list.  FIG. 6  is a sequence diagram illustrating the steps for displaying a device list. 
     The client PC  300  sends a no-response filter choice as a choice of a device list display window to the httpd  21  (step S 1 ). Here, what is meant by the no-response filter is that the conditions for filtering by the device list acquisition unit  241  are set as follows; the result of response to polling indicates that there is no-response and a certain period have passed from the latest update date and time. 
     The httpd  21  sends a request to the web page generation unit  22  to generate a device list window with the no-response filter selected (step S 2 ). The web page generation unit  22  sends a request to the device list display information acquisition unit  231  to acquire the device list information with the no-response filter selected (step S 3 ). 
     Upon reception of the request from the web page generation unit  22  to generate a device list window with the no-response filter selected, the device list display information acquisition unit  231  requests the device list acquisition unit  241  to acquire the device list information with a filtering condition applied (step S 4 ). 
     The device list acquisition unit  241  directs the polling control unit  247  to start polling for a given period (step S 5 ). The polling control unit  247  polls the managed devices  200  registered with the device information table for the given period, and then sends the result of polling to the device list acquisition unit  241  (step S 6 ). 
     Upon reception of the result of polling from the polling control unit  247 , the device list acquisition unit  241  sends a request for device information to the managed devices  200  (step S 7 ). When having received the request for device information, the managed devices  200  acquire their own device information from the HDD  202  and send it to the device list acquisition unit  241  (step S 8 ). Note that steps S 7  and S 8  are repeated as many times as the number of the devices registered with the device information table of the HDD  108 . 
     The device list acquisition unit  241  checks to see if the filtering condition is met based on whether there is a response from the managed devices  200  and based on the latest update date and time (step S 9 ). The device list acquisition unit  241  stores, as the device list, a record of a device information table indicating the managed devices  200  which meet the filtering condition, into the HDD  108  (step S 10 ). More specifically, the device list acquisition unit  241  employs such a filtering condition that the response result is no response and a certain number of days have passed from the latest update date and time. Note that since the device information update unit  245  will not rewrite the latest update date and time of the record associated with a no-response device, that latest update date and time of the record associated with the no-response device substantially indicates the last communication date and time. 
     The device list acquisition unit  241  sends the device list to the device list display information acquisition unit  231  (step S 11 ). The device list display information acquisition unit  231  converts the received device list into display information (step S 12 ). The device list display information acquisition unit  231  displays the display information as a display window on the display unit  233  (step S 13 ). 
     The device list display information acquisition unit  231  also sends the device list converted into the display information to the web page generation unit  22  (step S 14 ). The web page generation unit  22  generates the display window of the received device list (hereinafter referred to as the device list window) (step S 15 ). 
     The web page generation unit  22  sends the information of the generated device list window (hereinafter referred to as the device list window information) to the httpd  21  (step S 16 ). The httpd  21  sends the received device list window information to the client PC  300  (step S 17 ). Based on the received device list window information, the client PC  300  then displays on the display device the device list window with the no-response filter applied (step S 18 ). 
     Now, a description will be made to a normal device list window without a no-response filter applied and a device list window with a no-response filter applied.  FIG. 7  shows an example of the normal device list window without the no-response filter applied. As shown in  FIG. 7 , the display control unit  232  or the client PC  300  displays the device information of all the devices registered with the device information table in the HDD  108  regardless of whether a response was returned from the devices. On the other hand,  FIG. 8  shows an example of the device list window with the no-response filter applied. As shown in  FIG. 8 , the display control unit  232  or the client PC  300  displays a list that include only the device for which the device list acquisition unit  241  has acquired the records whose status indicates “no-response” and which indicate that a certain number of days have passed from the latest update date and time. 
     In this manner, it is possible to extract the device information of a device which returned no response, and for which a certain period has elapsed from the last communication date and time, thereby efficiently managing devices connected to a network. 
     Second Embodiment 
     The first embodiment is configured to detect a device that has been already disconnected from a network and display the identification information of the detected device. In contrast to this, the present embodiment is configured such that the device management apparatus detects a device having been already disconnected from a network and deletes the identification information of the detected device from the device information table, thereby managing the devices. 
     Now, a description will be made to the functional structure of the device management apparatus  400  and the managed devices  200 . Note that the hardware configurations of the device management system and the device management apparatus  400  are the same as those of the first embodiment, and thus will not be described again. 
       FIG. 9  is a functional block diagram illustrating the device management apparatus  400  and the managed devices  200  according to the second embodiment of the present invention.  FIG. 9  shows the functional structures of the front end unit  23  and the device management unit  24  for the device management apparatus  400  and the functional structure of the managed devices  200 . 
     As shown in  FIG. 9 , the device management unit  24  of the device management apparatus  400  mainly includes the device information acquisition unit  243 , the device information update unit  245 , a deleted device detection unit  401 , a device information delete unit  402 , the monitor timer unit  246 , the polling control unit  247 , the communication control unit  248 , and the HDD  108 . The front end unit  23  mainly includes the device list display information acquisition unit  231 . 
     The functions and structures of the deleted device detection unit  401  and the device information delete unit  402  will now be described. Note that functions and structures of the other units than the deleted device detection unit  401  and the device information delete unit  402  are the same as those of the first embodiment, and thus will not be described again. 
     The deleted device detection unit  401  includes the filtering unit  244  and detects a device to be deleted (hereinafter referred to as the deleted device) from the device information filtered by the filtering unit  244 . Note that the deleted device detection unit  401  is equivalent to a device management unit of the present invention. 
     The device information delete unit  402  deletes, from the device information table, the device information of the deleted device detected by the deleted device detection unit  401 . Note that the device information delete unit  402  corresponds to a device management unit of the present invention. 
     Now, the steps for deleting from the device information table the device information of a deleted device.  FIG. 10  is a sequence diagram illustrating the steps for deleting the device information. 
     The monitor timer unit  246  waits for a given time (step S 21 ), and then directs the polling control unit  247  to start polling for a certain period (step S 22 ). The polling control unit  247  polls for the given period the managed devices  200  registered with the device information table, and then sends the result of polling to the device response decision unit  242  (step S 23 ). 
     The device response decision unit  242  determines whether there is a response to the polling by the polling control unit  247 , and if it is determined that there is a response, notifies the device information update unit  245  of the presence of a response (step S 24 ). The device information update unit  245  sends a device information acquisition request to the device information acquisition unit  243  (step S 25 ). The device information acquisition unit  243  acquires the device information from the managed devices  200  (step S 26 ). 
     The managed device  200  acquires its own device information from the HDD  202  and sends it to the device information acquisition unit  243  (step S 27 ). The device information acquisition unit  243  sends the received device information to the device information update unit  245  (step S 28 ). The device information update unit  245  updates the device information table stored in the HDD  108  (step S 29 ). More specifically, based on the device information acquired from the managed device  200  which has been determined by the device response decision unit  242  to have returned a response, the device information update unit  245  rewrites the status of the device included in the device information and changes the date and time of the acquisition of the device information to the latest update date and time. 
     On the other hand, when it was determined that there was no response, the device response decision unit  242  notifies the device information update unit  245  that there was no response (step S 30 ). The device information update unit  245  updates the device information table stored in the HDD  108  with “no response” (step S 31 ). 
     When it was determined that there was no response, the device response decision unit  242  also notifies the deleted device detection unit  401  that there is no response (step S 32 ). The deleted device detection unit  401  checks to see if the managed device  200  that has sent no response meets a device delete requirement (step S 33 ). Here, the device delete requirement is for deleting devices or means to meet the conditions for filtering by the filtering unit  244 . More specifically, the requirement is to meet the conditions that the status in the device information table is “no response” and a certain period has elapsed from the latest update date and time. 
     When the device delete requirement is met, the deleted device detection unit  401  sends to the device information delete unit  402  a request to delete the deleted device from the device information table (step S 34 ). The device information delete unit  402  deletes the record of the deleted device from the device information table (step S 35 ). 
     In this manner, it is possible to efficiently manage devices by deleting the device information of a device which has been determined to have returned no response and for which a certain period has elapsed from the latest update date and time. 
     Third Embodiment 
     The first embodiment is configured to detect a device which has already been disconnected from a network and display the identification information of the detected device. In contrast to this, the present embodiment is designed to send an email to the client PC  300  when a device that has already been disconnected from a network is detected. 
       FIG. 11  is a schematic diagram illustrating a device management system  2  according to the third embodiment of the present invention. As shown in  FIG. 11 , the device management system  2  is configured such that one or more managed devices  200  such as devices or LPs, one or more client PCs  300 , a device management apparatus  500 , and an SMTP server  800  for transmitting and receiving an email are connected to the network  90 . Note that the hardware configuration and the functional structure of the device management apparatus  500  are the same as those of the first embodiment, and thus will not be described again. 
     Now, the functional structures of the device management apparatus  500  and the managed devices  200  will be described.  FIG. 12  is a functional block diagram of the device management apparatus  500  and the managed devices  200  according to the third embodiment of the present invention.  FIG. 12  shows the functional structures of the front end unit  23  and the device management unit  24  for the device management apparatus  500 , and the functional structure of the managed devices  200 . 
     As shown in  FIG. 12 , the device management unit  24  of the device management apparatus  500  mainly includes an email transmission information acquisition unit  501 , the monitor timer unit  246 , the polling control unit  247 , the communication control unit  248 , an email transmission unit  502 , and the HDD  108 . The front end unit  23  mainly includes the device list display information acquisition unit  231 . 
     The email transmission information acquisition unit  501  and the email transmission unit  502  will now be described. Note that the functions and structures of the other units than the email transmission information acquisition unit  501  and the email transmission unit  502  are the same as those of the first embodiment, and thus will not be described again. 
     The email transmission information acquisition unit  501 , which includes the filtering unit  244  and the device information acquisition unit  243 , and which acquires the filtered device information from the device information table updated by the device information update unit  245 . 
     The email transmission unit  502  transmits by an email to the email address of the administrator the device information acquired by the email transmission information acquisition unit  501 . Note that the transmitted email is routed to the SMTP server  800  via the communication control unit  248  and then to the email address. 
     Now, the steps in the email transmission process for sending by an email the device information acquired through a no-response filter will be described.  FIG. 13  is a sequence diagram illustrating the steps in the email transmission process according to the third embodiment. 
     The client PC  300  notifies the email transmission information acquisition unit  501  of a no-response filter choice (step S 41 ). The email transmission information acquisition unit  501  requests the device information acquisition unit  243  to acquire device information (step S 42 ). The device information acquisition unit  243  directs the polling control unit  247  to start polling for a given period (step S 43 ). The polling control unit  247  then polls for a given period the managed devices  200  registered with the device information table, and then sends the result of polling to the device information acquisition unit  243  (step S 44 ). 
     The device information acquisition unit  243  requests the managed devices  200  to acquire the device information (step S 45 ), and upon acquisition of the device information from the managed devices  200  (step S 46 ), sends the acquired device information to the email transmission information acquisition unit  501  (step S 47 ). 
     The email transmission information acquisition unit  501  checks to see if the received device information meets the filtering conditions (step S 48 ). More specifically, it is checked if the received device information concerns a device providing no response and a certain period has elapsed from the latest update date and time for the device. When the filtering conditions are met, the email transmission information acquisition unit  501  stores the device information that meets the conditions in the HDD  108  (step S 49 ), and requests the email transmission unit  502  to send an email (step S 50 ). The email transmission unit  502  sends the device information to the email address of the client PC  300 . 
     In this manner, having received the email, the client PC  300  can determine whether or not to delete a device from the device information table after having confirmed the network connection status of the device information contained in the email and then having checked if the device is actually disconnected from the network. 
     Fourth Embodiment 
     The second embodiment is configured to detect a device that has been already disconnected from a network and then delete the identification information of the detected device from the device information table. In contrast to this, the present embodiment is designed to transmit by an email the deleted device information to the client PC  300  at the same time it is deleted. 
     Now, a description will be made to the functional structures of a device management apparatus  600  and the managed devices  200 . Note that the device management system is the same as that of the third embodiment, while the hardware configuration and the functional structure of the device management apparatus  600  are the same as those of the first embodiment, and thus will not be described again. 
       FIG. 14  is a functional block diagram illustrating the device management apparatus  600  and the managed devices  200  according to the fourth embodiment of the present invention.  FIG. 14  shows the functional structures of the front end unit  23  and the device management unit  24  for the device management apparatus  600 , and the functional structure of the managed devices  200 . 
     As shown in  FIG. 14 , the device management unit  24  of the device management apparatus  600  mainly includes the device information acquisition unit  243 , the device information update unit  245 , a deleted device detection unit  601 , the monitor timer unit  246 , the polling control unit  247 , the device response decision unit  242 , the device information delete unit  402 , the communication control unit  248 , the email transmission unit  502 , and the HDD  108 . The front end unit  23  mainly includes the device list display information acquisition unit  231 . 
     The function and structure of the deleted device detection unit  601  will now be described. Note that the functions and structures of the other units than the deleted device detection unit  601  are the same as those of each unit denoted with the same symbols in the first to third embodiments, and thus will not be described again. 
     When the filtering unit  244  filters a device to be deleted, the deleted device detection unit  601  sends the device information of the filtered device to be deleted to the email transmission unit  502 , requesting it to send an email. 
     Now, a description will be made to the steps in the email transmission process for transmitting by an email the device information, which was acquired by the no-response filter and deleted by the device information delete unit  402 .  FIG. 15  is a sequence diagram illustrating the steps in the email transmission process according to the fourth embodiment. 
     The steps from S 61  to S 75  are the same as the steps from S 21  to S 35  in the flowchart of  FIG. 10  described in relation to the second embodiment, and thus will not be described again. 
     In step S 76 , the device information delete unit  402  sends to the email transmission unit  502  a request to transmit an email indicating that the device information of the deleted device filtered to be deleted by the filtering unit  244  was deleted (step S 76 ). 
     The email transmission unit  502  notifies the client PC  300  of the device information of a device deleted from the device information table and of the fact that the device information was deleted (step S 77 ). 
     In this way, the present embodiment is configured to inform the client PC  300  of the device information of a device deleted from the device information table as well as of the fact that the device information was deleted therefrom. This allows the user to know the device that has been deleted from the device information table. 
     As a result, the user can also re-register a device, which was once deleted, with the device information table when the device is actually connected to the network but has been turned off for a long time and therefore returned no response. Thus, the user can manage devices more effectively according to the actual connection status. 
     Device management programs to be executed in the device management apparatus according to the present embodiment are provided in the form of an installable or executable file stored in a computer-readable storage medium such as a CD-ROM, a flexible disk (FD), a CD-R, or a DVD (Digital Versatile Disk). 
     Furthermore, the device management program to be executed in the device management apparatus according to the present embodiment may also be stored in a computer connected to a network, such as the Internet, so that the program can be provided by being downloaded via the network. The device management program to be executed in the device management apparatus according to the present embodiment can also be provided or distributed via a network such as the Internet. 
     Furthermore, the device management program of the present embodiment can also be written in advance onto a ROM or the like to be provided for use. 
     The device management program to be executed in the device management apparatus according to the present embodiment has a module structure that includes each of the units described above (the device list acquisition unit, the monitor timer unit, the polling control unit, and the communication control unit). As the actual hardware structure, the CPU (processor) reads the device management program from the storage medium and executes it to load each of the units onto the main memory device. This allows the device list acquisition unit, the monitor timer unit, the polling control unit, and the communication control unit to be generated on the main memory device. 
       FIG. 16  is a block diagram illustrating the hardware configuration of a multifunction peripheral as the managed devices  200  according to the first to fourth embodiments. As illustrated, this multifunction peripheral has a control unit  710  and an engine unit (Engine)  760  connected to each other by a PCI (Peripheral Component Interface) bus. The control unit  710  serves to provide control to the entire multifunction peripheral, drawing, communications, and inputs from an operation unit (not shown). The engine unit  760  may be a printer engine connectable to the PCI bus, including, for example, a black and white plotter, one-drum color plotter, four-drum color plotter, scanner, or fax unit. Note that the engine unit  760  includes an image processing unit, such as for error diffusion or the gamma transform, in addition to the so-called engine section such as plotters. 
     The control unit  710  has a CPU  711 , a Northbridge (NB)  713 , a system memory device (MEM-P)  712 , a Southbridge (SB)  714 , a local memory device (MEM-C)  717 , an ASIC (Application Specific Integrated Circuit)  716 , and a hard disk drive (HDD)  202 , and is configured to connect between the Northbridge (NB)  713  and the ASIC  716  by an AGP (Accelerated Graphics Port) bus  715 . Also, the MEM-P  712  further has a ROM (Read Only Memory)  712   a  and a RAM (Random Access Memory)  712   b.    
     The CPU  711  controls the entire multifunction peripheral, and has a chip set that is made up of the NB  713 , the MEM-P  712 , and the SB  714 . The CPU  711  is connected to other devices via this chip set. 
     The NB  713 , which serves as a bridge for connecting the CPU  711  to the MEM-P  712 , the SB  714 , and the AGP  715 , has a memory controller for controlling, for example, read and write operations on the MEM-P  712 , a PCI master, and an AGP target. 
     The MEM-P  712 , which includes a ROM  712   a  and a RAM  712   b , serves as a system memory device used for storing programs and data, expanding programs and data, and drawing by printers. The ROM  712   a  is a read-only memory used for storing programs and data. The RAM  712   b  is a readable and writable memory device used, for example, for expanding programs and data and drawing by printers. 
     The SB  714  serves as a bridge to connect the NB  713  to the PCI device and the peripheral device. This SB  714  is connected to the NB  713  via the PCI bus. The PCI bus is connected, for example, with a network interface (I/F). 
     The ASIC  716  is an IC (Integrated Circuit) which is intended for image processing and which has hardware components for image processing, and plays the role of a bridge for connecting between the AGP  715 , the PCI bus, the HDD  202 , and the MEM-C  717 . This ASIC  716  includes a PCI target, an AGP master, an arbiter (ARB) as the core of the ASIC  716 , a memory controller to control the MEM-C  717 , a plurality of DMACs (Direct Memory Access controller), for example, to rotate image data by hardware logic, and a PCI unit to transfer data to and from the engine unit  760  via the PCI bus. This ASIC  716  is connected with, via the PCI bus, a FCU (Facsimile Control Unit)  730 , a USB (Universal Serial Bus)  740 , and an IEEE 1394 (the Institute of Electrical and Electronics Engineers  1394 ) interface  750 . The ASIC  716  is directly connected with an operation display unit  720 . 
     The MEM-C  717  is a local memory device used as a copy image buffer or a symbol buffer. The HDD  202  is a storage device for storing image data, programs, font data, and forms. 
     The AGP  715 , or a bus interface for graphics accelerator cards proposed to accelerate graphic processing, accelerates the function of graphics accelerator cards by directly accessing the MEM-P  712  with high throughput. 
     Note that the device management program to be executed in the device management apparatus according to the present embodiment is written on a ROM or the like in advance and then provided for use. 
     The device management program to be executed in the device management apparatus according to the present embodiment may also be provided in the form of installable or executable files stored on a computer-readable storage medium such as a CD-ROM, a flexible disk (FD), a CD-R, or a DVD (Digital Versatile Disk). 
     Furthermore, the device management program to be executed in the device management apparatus according to the present embodiment may also be stored in a computer connected to a network, such as the Internet, so that the program can be provided by being downloaded via the network. The device management program to be executed in the device management apparatus according to the present embodiment can also be provided or distributed via a network such as the Internet. 
     The device management program to be executed in the device management apparatus according to the present embodiment has a module structure that includes each of the units described above (the device list acquisition unit, the monitor timer unit, the polling control unit, and the communication control unit). As the actual hardware structure, the CPU (processor) reads the device management program from the ROM and executes it to load each of the units onto the main memory device. This allows the device list acquisition unit, the monitor timer unit, the polling control unit, and the communication control unit to be generated on the main memory device. 
     The present invention makes it possible to efficiently manage devices connected to a network. 
     According to an aspect of the present invention there is provided a device management apparatus connected to one or more devices via a network, including; a response request unit that requests a response from the devices via the network; a reception unit that receives the response from the respective devices; a storage unit that stores a record, the record being arranged such that device identification information for identifying the devices is associated with response information indicative of whether the response was received and a date and time at which the response was received; a recording unit that records, if the response was received, the response information indicative of a presence of the response and the date and time on the record associated with the device identification information of corresponding one of the devices from which the response was received, or records, if the response was not received, the response information indicative of an absence of a response on the record associated with the device identification information of corresponding one of the devices from which the response was not received; and a delete unit that deletes from the storage unit the device identification information for which the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. 
     The device management may further include an email transmission unit that notifies by an email an external information processor that the device identification information was deleted from the storage unit, upon deleting from the storage unit the device identification information for which the corresponding response information is indicative of an absence of a response and an elapsed time from the corresponding date and time has exceeded a predetermined period. 
     The device management may further include a condition setting unit that sets the predetermined period to a different value for each predetermined type of the devices. 
     According to another aspect of the present invention there is provided a device management system including one or more devices and a device management apparatus connected via a network. The device management apparatus includes: a response request unit that requests a response from the devices via the network; a reception unit that receives the response from the respective devices connected to the network; a storage unit that stores a record, the record being arranged such that device identification information for identifying the devices is associated with response information indicative of whether the response was received and a date and time at which the response was received; a recording unit that records, if the response was received, the response information indicative of a presence of the response and the date and time on the record associated with the device identification information of corresponding one of the devices from which the response was received, or records, if the response was not received, the response information indicative of an absence of the response on the record associated with the device identification information of corresponding one of the devices from which the response was not received; and a delete unit that deletes from the storage unit the device identification information for which the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. The devices includes: a transmission unit that sends the response to the device management apparatus via the network when having received the response request from the device management apparatus. 
     According to still another aspect of the present invention there is provided a computer program product comprising a computer-usable medium having computer-readable program codes. The program codes when executed causing a computer to execute: a response request step of requesting a response from one or more devices via a network; a reception step of receiving the response from the respective devices; a recording step of recording a record on a storage unit, if the response was received, the record being arranged such that the response information indicative of a presence of the response, the date and time, and the device identification information of corresponding on of the devices from which the response was received are associated with each other, or for recording a record on the storage unit, if the response was not received, the record being arranged such that the response information indicative of an absence of the response is associated with the device identification information of corresponding on of the devices from which the response was not received, and a delete step of deleting from the storage unit the device identification information for which the corresponding response information is indicative of an absence of the response and an elapsed time from the corresponding date and time has exceeded a predetermined period. Although the invention has been described with respect to specific embodiments for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.