Patent Publication Number: US-2019196913-A1

Title: Image forming apparatus, control method thereof, and recording medium

Description:
BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The present invention relates to an image forming apparatus, a control method thereof, and a recording medium. 
     Description of the Related Art 
     In recent years, functions of an image forming apparatus such as a multifunction printer have become various, and many applications operate on an image forming apparatus in order to realize various functions. Pieces of data required when operating each application are various. For example, user setting data may be managed in a database included in an image forming apparatus. In addition, in a data area of each application, various data necessary for operating the application are stored and managed. 
     Since a storage device such as an HDD that is widely used in order to store various data in an image forming apparatus is a consumable product, there may be cases where the store device breaks down in a case where a use period becomes long and there is a risk of data loss. As preparation for such a case, in many cases, the image forming apparatus has a function of taking out various data managed by the image forming apparatus at certain time points, backing up the various data, and restoring the backup data as necessary. 
     Japanese Patent Laid-Open No. 2011-180753 discloses an image forming apparatus that performs processing of excluding unnecessary data from a restore target according to a state of the image forming apparatus when restoring backup data. Japanese Patent Laid-Open No. 2011-180753 describes that the backup data is set as data of the restore target in a case where an option to increase a storage capacity of the image forming apparatus is selected. In addition, Japanese Patent Laid-Open No. 2011-180753 describes that the backup data includes indispensable data specified by data identification information and only the indispensable data is set as the data of the restore target in a case the above option is not selected. 
     As described above, it is necessary to periodically back up data managed by an image forming apparatus. This is because, for example, there may be cases where all pieces of data are not able to be restored due to a breakdown of the storage device or the like and various data may be lost. However, the data managed by the image forming apparatus may include data that is able to be backed up during the operation of an application, such as user setting data, and data that is not able to be backed up during the operation of an application, such as application data. 
     Application data includes temporary data and the like at the time of activating the application. Therefore, the application data is not able to be backed up during the operation of an application and so the application data needs to be backed up in a state in which an operation is stopped. Therefore, it is not possible to execute backup of the application data simultaneously with the user setting data. However, in a case where the operation of an application is stopped in order to acquire various data managed by the image forming apparatus, the application is not able to be used, that is, a downtime occurs. 
     SUMMARY OF THE INVENTION 
     The present invention provides an image forming apparatus capable of suppressing occurrences of downtimes when executing backup of the image forming apparatus. 
     An image forming apparatus of an exemplary embodiment of the present invention includes a first acquisition unit configured to acquire backup data of a first data area in a state in which the image forming apparatus is activated according to an instruction of backup of the image forming apparatus, a first creation unit configured to create first information that causes a process of acquiring backup data of a second data area including a data area of an application that is operated on an application execution platform installed on system software included in the image forming apparatus, an activation unit configured to execute re-activation of the image forming apparatus, and a second acquisition unit configured to acquire the backup data of the second data area on the basis of the first information before activating the application execution platform in a process of executing the re-activation of the image forming apparatus. 
     Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a diagram illustrating an example of a hardware configuration of an image forming apparatus. 
         FIG. 2  is a diagram illustrating an example of a software configuration of the image forming apparatus. 
         FIG. 3  is a diagram illustrating an example of a backup setting screen of the image forming apparatus. 
         FIG. 4  is a flowchart for explaining a backup process. 
         FIG. 5  is a diagram illustrating the backup process of a data area of an extended application. 
         FIG. 6  is a flowchart for explaining a transmission process of backup data. 
         FIG. 7  is a diagram illustrating an example of a restore execution screen of the image forming apparatus. 
         FIG. 8  is a flowchart for explaining a restore process. 
         FIG. 9  is a diagram illustrating the restore process of the data area of the extended application. 
         FIG. 10  is a flowchart for explaining a transmission process of an execution result of the restore process. 
         FIG. 11  is a flowchart for explaining a backup process according to a second exemplary embodiment. 
         FIG. 12  is a flowchart for explaining a restore process according to the second exemplary embodiment. 
         FIGS. 13A to 13D  are examples of screens displayed in the backup process and the restore process. 
     
    
    
     DESCRIPTION OF THE EMBODIMENTS 
     Hereinafter, an exemplary embodiment for implementing the present invention will be described with reference to the drawings and the like. 
     First Exemplary Embodiment 
       FIG. 1  is a diagram illustrating an example of an apparatus configuration of a system including an image forming apparatus of the present invention and a hardware configuration of the image forming apparatus. 
     In  FIG. 1 , an image forming apparatus  100 , an external server  101 , and a computer  103  are connected on a local area network (LAN)  104 . In addition, the image forming apparatus  100  uses an external USB storage  102  that is a portable storage medium. Note that a plurality of image forming apparatuses  100  may be connected with the LAN  104 . 
     The computer  103  is connected to the image forming apparatus  100  through the LAN  104 , and is capable of transmitting print data, operating through a WEB browser, and the like with respect to the image forming apparatus  100 . In addition, the image forming apparatus  100  and the computer  103  are connected to the external server  101  through the LAN  104 , and are able to execute uploading and downloading of data. Protocols used by these communication units dealt here are not restricted, for example, HTTP, FTP, and other protocol can be used. The external server  101  is mainly present on the Internet, but the external server  101  may be present in an internal network. In addition, the external server  101  may be present as a cloud service. 
     In  FIG. 1 , the image forming apparatus  100  includes a control unit  110 . The control unit  110  controls the overall operation of the image forming apparatus  100 . The control unit  110  includes the following processing units in a configuration for controlling the image forming apparatus  100 . A CPU  111  reads a control program stored in a ROM  112  to a RAM  113  and executes the control program. In addition to the control program, the ROM  112  stores apparatus information such as a license, apparatus configuration information, or a firmware version. A hard disk drive (HDD)  114  stores the print data received from the computer  103  through a network I/F  119 . 
     Note that the program executed by the CPU  111  includes a printing application program. The print data stored in the HDD  114  is converted into image data that is able to be printed by a printer unit  130  by executing the printing application program. Then, the HDD  114  stores the image data that is able to be printed by the printer unit  130 . 
     In addition, the program executed by the CPU  111  includes a scanning application program. The image data is read by a scanner unit  140  and the read image data is transmitted to the HDD  114  by executing the scanning application program. Then, the HDD  114  stores the read image data. 
     An operation unit I/F  115  is an interface for transferring an instruction input by a user of the image forming apparatus  100  to the CPU  111  through an operation unit  120 . In addition, the operation unit I/F  115  receives processing details for switching a content displayed on the operation unit  120  from the CPU  111  and transfers the processing detail to the operation unit  120 . Note that the operation unit  120  includes a liquid crystal display unit having a touch panel function, a keyboard, or the like, and receives an instruction from the user. 
     A printer I/F  116  is an interface for connecting the control unit  110  and the printer unit  130  to each other. The printer unit  130  prints the image data transmitted from the HDD  114  through the printer I/F  116  on a recording medium. A finisher unit  150  performs various finishing processes on the recording medium on which printing is performed by the printer unit  130 . Finishing processes include, for example, a process of stapling sheets, a punching process (hole-forming process) of sheets, a saddle stitching binding process, and the like. 
     A scanner I/F  117  is an interface for connecting the control unit  110  and the scanner unit  140  with each other. The scanner unit  140  reads an image on a document by using a line sensor configured of a charge coupled device (CCD) or the like, generates image data, and inputs the image data to the control unit  110  through the scanner I/F  117 . 
     The input image data is transmitted to the HDD  114 . The image data transmitted to and stored in the HDD  114  is able to be printed by the printer unit  130 . Thereby, the image on a document is able to be copied (duplicated) by reading the image data using the scanner unit  140  and printing the read image data using the printer unit  130 . 
     A USB-Host I/F  118  is an interface for connecting the control unit  110  and the external USB storage  102  with each other. The USB-Host I/F  118  outputs the data stored in the HDD  114  to the external USB storage  102 . In addition, the USB-Host I/F  118  inputs the data stored in the external USB storage  102  and notifies the input of the data to the CPU  111 . 
     The external USB storage  102  is an external storage device that stores data and is able to be attached to and detached from the USB-Host I/F  118 . A plurality of USB devices including the external USB storage  102  are able to be connected to the USB-Host I/F  118 . An example of the external USB storage may include a USB memory, a USB keyboard, or the like. A network I/F  119  connects the control unit  110  (hence, the image forming apparatus  100 ) to the LAN  104 . The network  119  transmits image data or information to an external device on the LAN  104 , or receives various kinds of information from the external device on the LAN  104 . 
       FIG. 2  is a diagram illustrating an example of a software configuration of the image forming apparatus  100 . 
     Note that each configuration shown in  FIG. 2  is realized by using computer program stored in the ROM  112  of  FIG. 1  and executed by the CPU  111 . An activation processing unit  201  that controls an activation sequence of each program included in the image forming apparatus  100  is operated on an OS  200 . The programs activated by the activation processing unit  201  are able to call each other&#39;s functions by using a common I/F  202 . 
     The programs activated by the activation processing unit  201  include a native program  203  that realizes each function of a printer, a facsimile, and a scanner, a data management unit  204  that performs management of various data, and a system control unit  205  that is a control program to control a power source and so on. In addition, the programs activated by the activation processing unit  201  include a user box management unit  206  that manages a user box function for a user to store personal data from the computer  103  or to store data scanned by the image forming apparatus  100 , and the like. 
     In addition to these, an extended application execution platform  208  that is an execution platform of an extended application  212  to which a user adds a program later as necessary is operated on the OS  200 . The extended application execution platform  208  includes a Java VM that is operated on the OS  200 . The extended application execution platform  208  includes the Java VM and a library group and execution environment that is operated on a VM. 
     In addition, a framework for managing the extended application  212  is installed on the extended application execution platform  208 . A UI program  209  for displaying an operation screen necessary for using the image forming apparatus  100  is operated on the extended application execution platform  208 . Part or all of reference numerals  201  to  202  are an example of system software. 
     In addition, a backup restore application  211  that realizes backup and restore functions of various data of the image forming apparatus  100  is operated on the extended application execution platform  208 . Furthermore, in addition to the extended application  212 , an extended application system service  210  that manages the extended application  212 , or the like is operated on the extended application execution platform  208 . 
     An extended application data processing unit  207  executes backup and restoration of a data area where the extended application execution platform  208  is operated. The extended application data processing unit  207  is able to execute not only backup of the entire data area but also backup of only a part of the data area. In the present exemplary embodiment, a case where the backup and restoration of the entire data area is executed will be described. 
     The data management unit  204  performs backup and restoration of the various data managed by the image forming apparatus  100 . Specifically, the data management unit  204  performs backup and restoration of a first data area which is a data area excluding a second data area for the extended application execution platform  208  that will be described later. For example, user setting data or directory information managed by the user box management unit  206  is stored in the first data area. 
     The data management unit  204  is able to perform acquisition of the directory information managed by the user box management unit  206  and creation of a new directory by accessing the user box management unit  206 . 
     In addition, the data management unit  204  instructs the extended application data processing unit  207  to access the second data area including the data area of each extended application  212  and executes the backup and restoration of the second data area. In the second data area, data necessary for operating the extended application execution platform  208  and each extended application  212  is stored. 
     For example, the second data area stores each extended application  212  itself and setting data of each extended application  212 , and so the second data area is a data area in which it is not possible to acquire backup data in a case where any application is operating. In the present exemplary embodiment, the first data area is set as all data areas except for the second data area. 
     The extended application data processing unit  207  receives the instruction of the data management unit  204  and then acquires all the backup data of the second data area. However, the present invention is not limited thereto, and it is also possible to acquire a backup only in an area of a specific extended application  212 . 
     The backup restore application  211  starts operation according to a set time of the user and instructs the data management unit  204  to execute the backup and restoration through the common I/F. The extended application system service  210  is a utility library that is commonly useful for the extended applications  212  and is provided from the system. 
     The extended application system service  210  requests the extended application execution platform  208  to install, uninstall, activate, stop, and the like the extended application  212 . It is possible to reduce problems in developing the extended application  212  by calling a function of the extended application system service  210  from the extended application  212 . 
     The extended application  212  is able to access each function of the image forming apparatus  100  such as another extended application  212  or the RAM  113  only through the extended application execution platform  208  or the extended application system service  210 . In addition, the extended application  212  having a user interface (UI) displays an icon on a main menu screen displayed on the operation unit  120  of the image forming apparatus  100 . 
     In a case where the operation unit I/F  115  detects that the user selects the icon through the operation unit  120 , the operation unit I/F  115  transmits the fact that the user has selected the icon to the CPU  111 . In a case where the CPU  111  receives the fact that the user has selected the icon from the operation unit I/F  115 , the CPU  111  displays the UI of the selected extended application  212  on the operation unit  120 . 
     Note that, the software configuration shown in  FIG. 2  describes only a basic part of the software included in the image forming apparatus  100 , and other services and the like may be included in an execution environment. For example, in  FIG. 2 , an extended application A and an extended application B are shown as an example of the extended application  212 , but the present invention is not limited thereto, and the image forming apparatus  100  may have one or a plurality of extended applications  212 . In addition, the image forming apparatus  100  may not include unnecessary software and services for reasons such as limiting the setting of the image forming apparatus  100 . 
       FIG. 3  is an example of a backup setting screen  300  displayed on the operation unit  120  by the backup restore application  211 . 
     The backup setting screen  300  has a backup start time setting section  301 , and receives designation of a backup start time (an execution time) from the user. In a case where a close button  302  is pressed, the operation unit  120  closes the backup setting screen  300  and transits to the main menu of the image forming apparatus  100 . 
     Note that, in the present exemplary embodiment, the execution time of the backup is set. However, the present invention is not limited thereto. For example, the backup may be set to be executed at the time of a specific event, such as at the time of execution of a firmware update. In addition, for example, a button for immediate execution of the backup may be provided. 
     Next, a data backup process performed by the image forming apparatus  100  will be described with reference to  FIGS. 4 to 6 . 
       FIG. 4  is a flowchart for explaining a backup process of the image forming apparatus  100 . 
     In step S 401 , the backup restore application  211  receives the designation of the backup start time from the user using the backup setting screen  300  ( FIG. 3 ). 
     In step S 402 , the backup restore application  211  waits until the backup start time designated by the user is reached. In a case where the backup start time designated by the user is reached, the process proceeds to step S 403 . In step S 403 , the backup restore application  211  notifies the data management unit  204  and causes the data management unit  204  to execute the backup of the user setting data. 
     During the backup of the user setting data, since data is not able to be rewritten, a screen is covered so that user operation is not able to be performed. For example, as shown in  FIG. 13A , a screen  1301  indicating that the user setting data is being exported is displayed on the operation unit  120  and an alert is issued. While the screen  1301  is being displayed, the image forming apparatus  100  does not receive an operation from the user. 
     In step S 404 , the backup restore application  211  notifies the user box management unit  206  and acquires the management directory information of the user box. During the acquisition of the management directory information, as shown in  FIG. 13B , a screen  1302  indicating that the box setting is being exported is displayed on the operation unit  120 . While the screen  1302  is being displayed, the image forming apparatus  100  does not receive an operation from the user. 
     As described above, in the present exemplary embodiment, the backup data of the user setting data and the management directory information of the user box are acquired in a state in which various applications of the image forming apparatus  100  are activated without stopping the various applications of the image forming apparatus  100 . Note that, in the present exemplary embodiment, although the user setting data and the management directory information of the user box are exemplified as the backup data acquired in the state in which the various applications are activated, the present invention is not limited thereto. Backup of arbitrary data of the first data area, that is the backup of the data of the data area except for the second data area that is the data area of the extended application execution platform, may be set to be acquired. 
     In step S 405 , the backup restore application  211  creates a backup execution request file. The backup execution request file is used to back up the second data area including the data area of each extended application  212 . Since the data area of each extended application  212  is not able to be backed up during the operation of the extended application  212 , in the present exemplary embodiment, the backup is executed at the time of activating the image forming apparatus. 
     Therefore, the backup restore application  211  creates the backup execution request file. At the time of the activation of the image forming apparatus, the extended application data processing unit  207  determines the necessity of backup on the basis of the backup execution request file. Specifically, in a case where the backup execution request file is present in a predetermined place, it is determined that backup of the second data area is necessary. In other words, the backup execution request file is a file that causes a process of acquiring the backup data. 
     Note that, in the present exemplary embodiment, a case where the execution of the backup is caused by creating a file such as the backup execution request file has been described, but the present invention is not limited thereto. That is, in step S 405 , information (first information) causing the process of acquiring the backup data of the second data area including the data area of the extended application  212  may be created. 
     For example, the information causing the process of the backup data may be created as flag information developed on a memory such as the RAM  113 , or other static data may be created. In step S 406 , the backup restore application  211  instructs the system control unit  205  to re-activate the image forming apparatus  100  in order to back up the data area of the extended application. 
       FIG. 5  is a flowchart for explaining the backup process of the data area of the extended application  212  executed by the extended application data processing unit  207  during the activation process of the image forming apparatus is progressed. 
     In step S 501 , the activation processing unit  201  activates the extended application data processing unit  207  during the activation process of the image forming apparatus  100  is progressed. The activation of the extended application data processing unit  207  is executed prior to the activation of the extended application execution platform  208 . 
     In step S 502 , the extended application data processing unit  207  checks whether the backup execution request file is present in the predetermined place. In step S 503 , the extended application data processing unit  207  determines whether or not the backup execution request file is present, and in a case where the backup execution request file is present, the process proceeds to step S 504 . 
     Note that, in a case where the file is not present, the extended application data processing unit  207  determines that the backup process of the data area of the extended application is unnecessary, and the process proceeds to step S 508 . In step S 508 , the activation processing unit  201  continues a normal activation process of the image forming apparatus  100 . 
     In step S 504 , the extended application data processing unit  207  acquires the backup data of the data area of the extended application. Specifically, one file obtained by compressing the entire data area of the extended application execution platform  208  including each extended application and the setting data of each extended application is acquired as the backup data. Note that, as a method of creating the backup data, all the data of the data area of the extended application may be simply copied, or the backup data obtained by filtering only necessary data with using an extension or the like may be acquired. 
     In step S 505 , the extended application data processing unit  207  encrypts the data acquired in step S 504 . By performing encryption, it become possible to reduce a risk of the backup data being read even in a case where the backup data is acquired by a third party. In step S 506 , the extended application data processing unit  207  stores the backup data in the HDD  114 . Note that, the storage destination is not limited to the HDD  114 , but may be the RAM  113 , or may be an external storage connected to the image forming apparatus  100 , such as a USB memory. 
     In step S 507 , the extended application data processing unit  207  creates an execution result file in order to notify an execution result of the backup process to the backup restore application  211 . Note that, in the present exemplary embodiment, a file such as the execution result file is created and stored to notify the execution result, but the present invention is not limited thereto. For example, the notification of the execution result may be managed by the flag information stored in the memory such as the RAM  113 , or for example, the notification of the execution result may be managed as a setting value stored by the data management unit  204 . 
     In step S 508 , the activation processing unit  201  executes an activation process of programs related to other various functions and the like by receiving completion of the backup of the data area of the extended application. Note that the activation process of the extended application execution platform  208  is performed in step S 508  and the backup restore application  211  is activated. 
       FIG. 6  is a flowchart for explaining a transmission process of the backup data of the backup restore application  211 . 
     Note that, since the present process is executed in the background, the present process does not affect a use of the image forming apparatus  100  of the user. 
     In step S 601 , the backup restore application  211  activated in step S 508  checks the execution result file created in step S 507 . The backup restore application  211  decides whether the backup process of the various data managed by the image forming apparatus  100  has been executed successfully or not by using the execution result file, and in a case where it is determined that the process has been executed successfully, the backup restore application  211  executes a process of step S 602 . 
     In step S 602 , the backup restore application  211  transmits the execution result file and the backup data to the external server  101 . Note that the transmission destination is not limited to the external server  101 . For example, the transmission destination of the backup data may be an external storage connected to the image forming apparatus  100 , for example, a USB memory, or may be the HDD  114  in the image forming apparatus  100 . 
     Note that, in a case where the backup restore application  211  determines that the backup process of the data area of the extended application has failed on the basis of the execution result file, the backup restore application  211  transmits only the execution result file to the external server  101  and ends the process of step S 602 . The success or failure of the backup process is determined for each backup target. In a case where even one backup fails, it may be determined that the backup has failed. In addition, in a case where even one backup is successful, it may be determined that the backup is successful and a transmission process of the successful backup data may be performed. 
     Next, a method of restoring the backup data will be described with reference to  FIGS. 7 to 10 . 
       FIG. 7  is an example of a restore execution screen  700  displayed on the operation unit  120  by the backup restore application  211 . 
     The restore execution screen  700  includes a data selection section  701  that causes the user to select data to be restored in the backup data acquired by the backup process executed in the past. In a case where the user finishes the selection and a restore execution button  702  is pressed, a restore process is started. 
       FIG. 8  is a flowchart for explaining the restore process of the image forming apparatus  100  executed by the data management unit  204  and the backup restore application  211 . 
     In step S 801 , the backup restore application  211  receives the selection of the data to be restored by the operation of the user using the restore execution screen  700  ( FIG. 7 ). In the data selection section  701  of the restore execution screen  700 , the backup data of the user stored in the external server  101  is displayed as a selection target. 
     In step S 802 , the backup restore application  211  detects that the user has pressed the restore execution button  702  on the restore execution screen  700 . Then, the backup restore application  211  acquires the backup data selected by the user, and stores the backup data in an arbitrary area, for example, the HDD  114 , in the image forming apparatus  100 . 
     In step S 803 , the backup restore application  211  notifies the data management unit  204  and causes the data management unit  204  to execute the restore process of the user setting data. During the restoration of the user setting data, similarly to during the execution of the backup process, a screen is covered so that user operation is not able to be performed. For example, as shown in  FIG. 13C , a screen  1303  indicating that the setting data is being imported (being restored) is displayed on the operation unit  120 . While the screen  1303  is being displayed, the image forming apparatus  100  does not receive an operation from the user. 
     In step S 804 , the backup restore application  211  notifies the user box management unit  206  and executes the restoration of the data of the user box. In the restoration of the data of the user box, the user box management unit  206  creates the user directory on the basis of the restore data. During the creation of the user directory, as shown in  FIG. 13D , the user box management unit  206  displays a screen  1304  indicating that the box setting is being imported on the operation unit  120 . While the screen  1304  is being displayed, the image forming apparatus  100  does not receive an operation from the user. 
     As described above, in the present exemplary embodiment, the restoration of the user setting data and the management directory information of the user box is executed in a state in which various applications of the image forming apparatus  100  are activated without stopping the various applications of the image forming apparatus  100 . Note that, in the present exemplary embodiment, although the user setting data and the management directory information of the user box are exemplified as the backup data on which the restoration is performed in the state in which various applications are activated, the present invention is not limited thereto. Similarly to the backup process, restoration of arbitrary backup data of the first data area, which is the data area except for the second data area that is the data area of the extended application execution platform, may be set to be executed. 
     In step S 805 , the backup restore application  211  creates a restore execution request file. The restore execution request file is used to restore the data area of the extended application. Since the data area of the extended application is not able to be restored during the operation of the extended application similarly to the backup process, in the present exemplary embodiment, the restoration is executed at the time of activating the image forming apparatus. 
     Therefore, the backup restore application  211  creates the restore execution request file. At the time of the activation of the image forming apparatus, the extended application data processing unit  207  determines whether or not the restoration should be executed on the basis of the restore execution request file. Specifically, in a case where the restore execution request file is present in a predetermined place, it is determined that the restoration of the backup data of the second data area is necessary. In other words, the restore execution request file is a file that causes a process of executing the restoration. 
     Note that, in the present exemplary embodiment, a case where the execution of the restoration is caused by creating a file such as the restore execution request file has been described, but the present invention is not limited thereto similarly to the backup process. That is, in step S 805 , information (second information) causing the process of executing the restoration of the backup data of the second data area may be created. 
     In step S 806 , the backup restore application  211  instructs the system control unit  205  to re-activate the image forming apparatus  100  in order to restore the data area of the extended application. 
       FIG. 9  is a flowchart for explaining the restore process of the data area of the extended application executed by the extended application data processing unit  207  during the activation process of the image forming apparatus. 
     In step S 901 , the activation processing unit  201  activates the extended application data processing unit  207  in the activation process of the image forming apparatus  100 . 
     In step S 902 , the extended application data processing unit  207  checks whether the restore execution request file is present in the predetermined place. In step S 903 , the extended application data processing unit  207  determines the checking result whether or not the restore execution request file is present, and in a case where the file is present, the process proceeds to step S 904 . 
     Note that, in a case where the file is not present, the extended application data processing unit  207  determines that the restore process of the data area of the extended application is unnecessary, and the process proceeds to step S 910 . In step S 910 , the activation processing unit  201  continues a normal activation process of the image forming apparatus  100 . 
     In step S 904  the extended application data processing unit  207  decrypts the encrypted backup data of the restore target. In step S 905 , the extended application data processing unit  207  checks the backup data of the restore target decrypted in step S 904 , and checks whether or not a sufficient development area is able to be secured. In a case where the extended application data processing unit  207  determines a sufficient development area is able to be secured in step S 906 , the process proceeds to step S 907 , and in a case where the extended application data processing unit  207  determines a sufficient development area is not able to be secured in step S 906 , the restore process is stopped, and the process proceeds to step S 909 . 
     In step S 907 , the backup data of the restore target is developed, and the developed data is substituted with the existing data. In step S 908 , a development instruction is performed to develop each extended application  212  again from an archive file of the extended application stored in the image forming apparatus  100 . Therefore, even in a case where there is a gap between the extended application at the time of the backup and the extended application at the time of the restoration, the extended application is able to be activated without any problem. 
     In step S 909 , the extended application data processing unit  207  creates an execution result file similarly to the backup process in order to notify an execution result of the restore process to the backup restore application  211 . In step S 910 , the activation processing unit  201  executes the activation process of the image forming apparatus  100  by receiving completion of the restoration of the data area of the extended application. Note that, similarly to step S 508 , the activation process of the extended application execution platform  208  is performed in step S 910  and the backup restore application  211  is activated. 
       FIG. 10  is a flowchart for explaining a transmission process of the execution result of the restore process executed by the backup restore application  211 . 
     In step S 1001 , the backup restore application  211  activated in step S 910  checks the execution result file created in step S 909 . In step S 1002 , the backup restore application  211  transmits the execution result file to the external server  101 . Note that the transmission destination is not limited to the external server  101  similarly to the backup process. 
     As described above, according to the present exemplary embodiment, it is possible to execute backup and restoration of various data stored in the image forming apparatus at an appropriate timing and to suppress downtime related to the backup and the restoration. 
     Second Exemplary Embodiment 
     In the first exemplary embodiment, the re-activation of the image forming apparatus  100  is executed in order to back up the data area of the extended application, and the backup data is acquired during the activation process. Therefore, it is possible to perform the backup of the data area in a state in which the extended application is stopped before the extended application is activated. On the other hand, in the present exemplary embodiment, a case where only the extended application execution platform  208  is stopped and the backup data is acquired rather than re-activating the image forming apparatus  100  will be described. 
       FIG. 11  is a flowchart for explaining the backup process according to the present exemplary embodiment. 
     Since processes of steps S 1101  to S 1104  are similar to the processes of steps S 401  to S 404  of the backup process ( FIG. 4 ) according to the first exemplary embodiment, descriptions thereof will be omitted. 
     In step S 1105 , the data management unit  204  instructs the activation processing unit  201  to stop the extended application execution platform  208 . 
     The activation processing unit  201  stops the extended application execution platform  208  by receiving the instruction. The extended application execution platform  208  stops also itself after stopping all the extended applications  212  that is being activated. 
     Since processes of steps S 1106  to S 1109  are similar to the processes of steps S 504  to S 507  of the backup process ( FIG. 5 ) of the data area of the extended application according to the first exemplary embodiment, descriptions thereof will be omitted. In step S 1110 , the data management unit  204  instructs the activation processing unit  201  to activate the extended application execution platform  208  by receiving completion of the backup of the data area of the extended application. 
     The activation processing unit  201  activates the extended application execution platform  208  by receiving the instruction. After the extended application execution platform  208  is activated, the extended application execution platform  208  sequentially activates the extended applications  212  that are stopped in step S 1105 . Since processes of steps S 1111  and S 1112  are similar to the processes of steps S 601  and S 602  of the transmission process ( FIG. 6 ) of the backup data in the first exemplary embodiment, descriptions thereof will be omitted. 
       FIG. 12  is a flowchart for explaining the restore process according to the present exemplary embodiment. 
     Since processes of steps S 1201  to S 1204  are similar to the processes of steps S 801  to S 804  of the restore process ( FIG. 8 ) according to the first exemplary embodiment, descriptions thereof will be omitted. In step S 1205 , the data management unit  204  instructs the activation processing unit  201  to stop the extended application execution platform  208 . 
     The activation processing unit  201  stops the extended application execution platform  208  by receiving the instruction. The extended application execution platform  208  also stops itself after stopping all the extended applications  212  that is being activated. 
     Since processes of steps S 1206  to S 1211  are similar to the processes of steps S 904  to S 909  of the restore process ( FIG. 9 ) of the data area of the extended application according to the first exemplary embodiment, descriptions thereof will be omitted. In step S 1212 , the data management unit  204  instructs the activation processing unit  201  to activate the extended application execution platform  208  by receiving completion of the restoration of the data area of the extended application. 
     The activation processing unit  201  activates the extended application execution platform  208  by receiving the instruction. After the extended application execution platform  208  is activated, the extended application execution platform  208  sequentially activates the extended applications  212  that are stopped in step S 1205 . Since processes of steps S 1213  and S 1214  are similar to the processes of steps S 1001  and S 1002  of the transmission process ( FIG. 10 ) of the execution result of the restore process in the first exemplary embodiment, descriptions thereof will be omitted. 
     As described above, according to the present exemplary embodiment, the same effects as those of the first exemplary embodiment can be obtained. In addition, in the present exemplary embodiment, since the backup of the data area of the extended application is able to be executed without the re-activation of the image forming apparatus  100 , it is possible to minimize downtime of the image forming apparatus  100  to the user. 
     Note that, in the first exemplary embodiment and the second exemplary embodiment, the example in which the backup restore application instructs the backup, transmits the acquired backup data to the external server, and manages the backup data is described, but the present invention is not limited thereto. For example, the backup may be instructed from a native application of the image forming apparatus. In addition, the instruction of the backup may be received from the external system. 
     In addition, the storage destination of the backup data may be not an external server but an external USB storage connected to the image forming apparatus or an HDD in the image forming apparatus. In addition, it is possible to arbitrarily combine the backup process and the restore process according to the first exemplary embodiment with the backup process and the restore process according to the second exemplary embodiment. 
     For example, it is assumed that the backup of the data area of the extended application execution platform is executed during the re-activation process of the image forming apparatus. Even in this case, when restoring the backup data, the extended application execution platform may be stopped and the restore process may be executed without the re-activation of the image forming apparatus. 
     In addition, for example, it is assumed that the extended application execution platform is stopped and the backup of the data area of the extended application execution platform is executed. Even in this case, when restoring the backup data, the restore process may be executed during the re-activation process of the image forming apparatus. 
     Other Embodiments 
     Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like. 
     While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions. 
     This application claims the benefit of Japanese Patent Application No. 2017-249786, filed Dec. 26 2017, which is hereby incorporated by reference wherein in its entirety.