Information processing apparatus

CN122928602APending Publication Date: 2026-10-16AICHUANG YILIAN CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511040432.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2025-04-04
Filing Date
2025-07-28
Publication Date
2026-10-16

AI Technical Summary

Technical Problem

始终向外部开放网络端口,将提高受到来自外部的攻击的可能性,存在安全风险变高的问题

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122928602A_ABST
    Figure CN122928602A_ABST
Patent Text Reader

Abstract

The present application provides an information processing device that can perform detailed communication control. According to an embodiment, the information processing device has a communication interface, a memory, and a processor. In a case where an application program existing in the memory communicates with another application program existing within the same device, the processor causes an internal communication server process to start up by a management program. In a case where an application program existing in the memory communicates with another application program existing in an external device connected through the communication interface, the processor causes an external communication server process to start up by the management program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to information processing apparatus. Background Technology

[0002] Previously, image forming apparatuses (image processing apparatuses) placed in the workplace, such as digital multifunction printers, have been known to have various functions. These image forming apparatuses perform various functions through application programs (hereinafter also referred to as "built-in applications") installed in the storage unit. Built-in applications sometimes have the function of communicating with other built-in applications (hereinafter referred to as "inter-application communication function"). Multiple built-in applications can cooperate to perform a series of functions through the inter-application communication function.

[0003] However, the inter-application communication functions based on the built-in applications used in conventional image forming apparatuses suffer from the problem of insufficient granular public control. For example, the built-in applications in conventional image forming apparatuses always keep network ports open for external access in order to respond to communication requests immediately. Constantly keeping network ports open increases the likelihood of external attacks, thus raising security risks.

[0004] Existing technical documents

[0005] Patent documents

[0006] Patent Document 1: Japanese Patent Application Publication No. 2016-130997 Summary of the Invention

[0007] The problem that the invention aims to solve

[0008] The problem to be solved by the present invention is to provide an information processing device capable of fine communication control.

[0009] Methods for solving problems

[0010] According to the embodiment, the information processing apparatus includes a communication interface, a memory, and a processor. When an application residing in the memory communicates with other applications residing within the same device, the processor starts an internal communication server process via a management program. When an application residing in the memory communicates with other applications residing in an external device connected via the communication interface, the processor starts an external communication server process via a management program. Attached Figure Description

[0011] Figure 1 This is a diagram illustrating a structural example of an image forming system, including the information processing apparatus according to the embodiment and the image forming apparatus as an image processing apparatus.

[0012] Figure 2 This is a diagram illustrating a structural example of the information processing apparatus and the image forming apparatus as an image processing apparatus according to the embodiment.

[0013] Figure 3 This is a diagram illustrating an example of a setting table in an information processing apparatus according to an embodiment and an image forming apparatus as an image processing apparatus.

[0014] Figure 4 This diagram schematically illustrates an example of an application of inter-application communication within the same apparatus of an image forming apparatus according to an embodiment.

[0015] Figure 5 This is a sequence diagram illustrating an example of operation in which inter-application communication is performed by an application within the same apparatus of the image forming apparatus according to the embodiment.

[0016] Figure 6 This is a sequence diagram illustrating an example of operation in which inter-application communication is performed by an application within the same apparatus of the image forming apparatus according to the embodiment.

[0017] Figure 7 This diagram schematically illustrates an example of inter-application communication within different devices of an image forming apparatus according to an embodiment.

[0018] Figure 8 This is a sequence diagram illustrating an example of operation in which inter-application communication is performed by applications within different devices of the image forming apparatus according to the embodiment.

[0019] Figure 9 This is a sequence diagram illustrating an example of operation in which applications within different devices of the image forming apparatus according to the embodiment communicate with each other. Detailed Implementation

[0020] The embodiments will now be described with reference to the accompanying drawings.

[0021] First, the image forming system (information processing system) 1 having the image forming apparatus (information processing apparatus, image processing apparatus) 11 according to the embodiment will be described.

[0022] Figure 1 This is a schematic diagram illustrating an example of the structure of an image forming system 1, including the image forming apparatus 11 according to the embodiments.

[0023] The image forming system 1 includes an image forming apparatus (MFP_A) 11, an image forming apparatus (MFP_B) 12, a LAN (Local Area Network) 13, a personal computer (PC) 15, a network 18, and a cloud server 19.

[0024] Image forming apparatus 11, image forming apparatus 12, and personal computer 15 are connected to LAN 13 and can communicate with each other via LAN 13. In addition, image forming apparatus 11, image forming apparatus 12, and personal computer 15 can also communicate with cloud server 19 via network 18.

[0025] Image forming apparatus 11 and image forming apparatus 12 are, for example, multifunction peripheral (MFP) machines with various functions. Hereinafter, the multifunction peripheral (MFP) machine, which is an image forming apparatus, will sometimes be abbreviated as MFP. The multifunction peripheral (MFP) machine, which is an image forming apparatus 11 and 12, has various functions that utilize images.

[0026] For example, image forming apparatuses 11 and 12 have basic image processing functions such as printing, scanning, copying, and faxing. The printing function is the function of printing an image onto paper. The scanning function is the function of reading an image from an original document, etc. The copying function, for example, is the function of printing an image read from an original document, etc., using the scanning function, onto paper. The faxing function, for example, is the function of sending an image read from an original document, etc., using the scanning function to an external source, or printing an image received from an external source onto paper using the printing function.

[0027] Furthermore, in this embodiment, the image forming apparatuses 11 and 12 are examples of information processing apparatuses (image processing apparatuses). As information processing apparatuses, the image forming apparatuses 11 and 12 include a processor for executing programs, a memory for storing programs, and a communication interface for transmitting and receiving data. In this embodiment, the image forming apparatus 11 is equipped with an application (application) that collaborates with other applications (applications) via a communication server process. The image forming apparatus 11 is also referred to as MFP_A. The image forming apparatus 12 is equipped with an application (an application from a different device) that collaborates with the application of the image forming apparatus 11. If the image forming apparatus 12 is an example of a device different from the image forming apparatus 11, it is also referred to as MFP_B.

[0028] The applications installed in the image forming apparatuses 11 and 12 are programs used to cause the image forming apparatuses to perform processing to achieve a specified task or purpose. For example, the applications are programs that cause the image forming apparatuses 11 and 12 to perform data processing functions associated with image processing functions such as scanning, printing, or copying. In addition, the applications are installed, for example, via a browser 16 of a PC 15 that is communicatively connected to the image forming apparatuses 11 and 12.

[0029] In such Figure 1 In the illustrated structural example, the image forming apparatus 11 is equipped with a management program (hereinafter referred to as the management framework) 20, application A (hereinafter referred to as built-in application A) 30, and application B (hereinafter referred to as built-in application B) 41. Furthermore, the image forming apparatus (MFP_B) 12 is equipped with application C (hereinafter referred to as built-in application C) 51. Built-in application A 30 is an example of an application that collaborates with built-in application B 41 and built-in application C 51.

[0030] The management framework 20 in the image forming apparatus 11 can enable application collaboration via an API (Application Programming Interface). For example, the management framework 20 provides an internal communication server process (hereinafter also referred to as the internal communication server) 21 and an external communication server process (hereinafter also referred to as the external communication server) 22 as server functions based on requests from applications.

[0031] The internal communication server 21 is a server function used for data communication between applications within the same image forming apparatus 11. The internal communication server 21 enables communication within the image forming apparatus 11 without exposing its network port to the outside. Since the internal communication server 21 sends and receives data within the image forming apparatus 11 without exposing it to the outside, it suppresses the risk of data leakage during communication to the outside.

[0032] The external communication server 22 is a server function used for data communication between applications within the image forming apparatus 11 and applications within other image forming apparatuses 12 that are external devices. The external communication server 22 enables communication between applications of different image forming apparatuses 11 through an externally exposed network port. The external communication server 22 can also communicate with applications of multiple different image forming apparatuses connected via LAN 13 through the externally exposed network port.

[0033] The built-in application A30 in the image forming apparatus 11 consists of a main application 31 and a BG application 32. The main application 31 functions as a client-side application (client application) in the built-in application A30 through the communication client API 311. The BG application 32 functions as a server-side application (server application) that communicates with the client-side application through the communication server API 321.

[0034] The BG application 32 of the built-in application A30 in the image forming apparatus 11 starts the internal communication server 21 provided by the management framework 20. The BG application 32 of the built-in application A30 uses the internal communication server 21 to perform data communication between applications within the image forming apparatus 11. For example, in... Figure 1 In the example structure shown, the BG application 32 of the built-in application A communicates with the main application 31 or the built-in application B41 existing in the same image forming apparatus (MFP_A) 11 via the internal communication server 21.

[0035] The built-in application B41 in the image forming apparatus 11 is an example of a built-in application that collaborates with the built-in application A30 existing in the image forming apparatus 11 and resides within the same image forming apparatus 11. Built-in application B41 functions as a client application via communication client API 411. Built-in application B41 communicates with built-in application A30 via an internal communication server 21 initiated by BG application 32.

[0036] Furthermore, the BG application 32 of the built-in application A30 in the image forming apparatus 11 starts the external communication server 22 provided by the management framework 20. The BG application 32 of the built-in application A30 uses the external communication server 22 to communicate data with built-in applications of different image forming apparatuses. (The last sentence appears to be incomplete and possibly refers to a different application.) Figure 1 In the structural example shown, the BG application 32 of the built-in application A30 communicates with the built-in application C51 of another image forming apparatus (MFP_B) 12, which is an external device, via the external communication server 22 and the internal communication server 21.

[0037] The built-in application C51 in the image forming apparatus 12 is an example of an application that collaborates with the built-in application A in the image forming apparatus 11 and exists within the image forming apparatus 12, which is different from the image forming apparatus 11. The built-in application C51 functions as a client application via the communication client API 511. The built-in application C51 of the image forming apparatus 12 communicates with the built-in application A30 of the image forming apparatus 11 via the external communication server 22 and the internal communication server 21, which are initiated by the BG application 32.

[0038] Personal computer 15 is an example of a user terminal device operated by an operator. Personal computer 15, for example, sends printing requests such as image printing to image forming apparatus 11, or receives image data processed by image forming apparatus 11. Furthermore, personal computer 15 is equipped with a browser 16 for accessing the Web. Personal computer 15 accesses cloud server 19 via network 18 through browser 16. In addition, personal computer 15 also has the function of installing applications on image forming apparatuses 11 and 12 through browser 16.

[0039] The cloud server 19 is a server device that communicates with the image forming apparatuses 11 and 12 or the PC 15 via the wide area network 18. The cloud server 19 provides various services to the image forming system 1, including the image forming apparatuses 11 and 12, such as data storage. For example, the cloud server 19 stores image data according to requests from the image forming apparatuses 11 and 12. Furthermore, the cloud server 19 performs data processing such as image processing of image data and data format transformation of files according to requests from the image forming apparatuses 11 and 12.

[0040] Next, an example of the structure of the control system in the image forming apparatus 11 of the information processing apparatus according to the embodiment will be described.

[0041] Figure 2 This is a block diagram that schematically illustrates an example of the structure of the control system in the image forming apparatus 11 according to the embodiment.

[0042] The image forming apparatus 11 includes a processor 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a local storage device 104, operation keys 105, a touch panel 106, a display unit 107, a scanner 108, an image forming unit 109, a fax machine (FAX) 110, a communication interface (I / F) 111, a device interface (I / F) 112, and a system bus 113.

[0043] Processor 101 is an arithmetic element that performs arithmetic operations. Processor 101 executes programs stored in memory such as ROM 102 and local storage device 104. Processor 101 is, for example, a CPU (Central Processing Unit). In addition, processor 101 may also include GPU (Graphical Processing Unit), etc.

[0044] ROM 102 is a non-volatile memory that forms part of the main memory. ROM 102 non-temporarily stores programs such as the startup program required to start the image forming apparatus 11. ROM 102 may, for example, include EPROM (Electrically Erasable Programmable Read Only Memory). In addition to storing the startup program, ROM 102 may also store various setting data during startup.

[0045] RAM 103 is a volatile memory that forms part of the main memory. RAM 103 temporarily stores programs required for processing by the processor 101 and data required for program execution. RAM 103 functions, for example, as the working memory of the processor 101.

[0046] Local storage device 104 is, for example, a rewritable non-volatile memory composed of an HDD (Hard Disk Drive) or an SSD (Solid State Drive). Local storage device 104 non-transitorily stores the program executed by processor 101 and the data required for the execution of the program. The program stored in local storage device 104 will be described later.

[0047] Operation key 105 is an input device that receives instructions from the user. Operation key 105 may consist of, for example, multiple push keys assigned to various functions, and instructions are received from the user via key operation.

[0048] The touch panel 106 is an input device that receives instructions from the user. The touch panel 106 receives instructions from the user by detecting touch operations based on fingers or styluses.

[0049] Display unit 107 is an output device for providing prompts to the user. More specifically, display unit 107 is a display device that displays prompts to the user. Display unit 107 may be composed of a liquid crystal display, an organic EL display, or the like.

[0050] The display unit 107 and the touch panel 106 can also be configured as a combined input / output device. For example, the touch panel 106 can be superimposed on the display screen of the display unit 107.

[0051] Scanner 108 is an example of an image processing unit that performs scanning functions. Scanner 108 is a device that reads images from original documents. Scanner 108 includes, for example, an original document glass and a reading module. The reading module reads images from original documents placed on the original document glass or sent to the original document glass by an original document transport device. The reading module illuminates the original document being read with illumination light, receives the reflected light through an image sensor, and converts it into a digital signal. Thus, the reading module reads an image from the original document.

[0052] The image forming unit 109 is an example of an image processing unit that performs printing functions. The image forming unit 109 is a printer that forms images on paper (media). Based on supplied printing data, the image forming unit 109 prints an image on paper fed by a paper transport device, based on image data included in the printing data. For example, when performing a copying function, the printing data includes image data read from the original by the scanner 108. Furthermore, the printing data may also include image data sent from an external device (e.g., PC 15). Additionally, the printing data may include image data received via a fax machine 110. Furthermore, the printing data may also include image data stored on an external device connected to the device interface 112 of the image forming apparatus 11.

[0053] The image forming unit 109 can also form an image in any image forming method. For example, when forming an image by an electrophotographic method, the image forming unit 109 forms an image on paper by transferring a tonal image formed according to image data onto the paper. Furthermore, when forming an image by an inkjet head, the image forming unit 109 forms an image on the paper by jetting ink onto the paper according to image data.

[0054] Fax machine 110 is a device that performs the function of sending and receiving data (FAX data) via telephone lines. Fax machine 110 is an example of an image processing unit that processes images. Fax machine 110 may send FAX data, including image data read by scanner 108, or receive image data from external devices or the cloud.

[0055] Communication interface 111 is a communication unit used for communicating with external devices. For example, communication interface 111 communicates with the image forming apparatus 12 or PC 15, which are external devices, via LAN 13. Furthermore, communication interface 111 includes interfaces for communicating with LAN 13, network 18, and cloud server 19. LAN 13, to which communication interface 111 is connected, can be configured in a wired or wireless manner. For example, communication interface 111 transmits image data read by scanner 108 to external devices or the cloud, or receives image data printed by image forming unit 109 from external devices or the cloud.

[0056] Device interface 112 is an interface for connecting external devices, such as those storing data, to other devices. For example, device interface 112 may include USB (Universal Serial Bus). Examples of external devices connected to device interface 112 include USB memory, digital cameras, and smartphones.

[0057] The system bus 113 is a communication path connecting the processor 101, ROM 102, RAM 103, local storage device 104, operation keys 105, touch panel 106, display unit 107, scanner 108, image forming unit 109, fax machine 110, communication interface 111, and device interface 112, etc. For example, the processor 101 is connected to each other via the system bus 113 to send and receive data, control signals, instructions, responses, etc.

[0058] The processor 101, ROM 102, RAM 103, local storage device 104, and communication interface 111 constitute a computer that functions as an information processing device (image processing device) for executing programs. For example, when the computer starts up, the processor 101 executes the boot program in ROM 102 to start the operating system (OS). Under OS-based control, the processor 101 sets up program and data areas in RAM 103. For example, the processor 101 executes various applications by using APIs provided by the hypervisor, thereby performing various application-based processing functions.

[0059] In such Figure 2 In the structural example shown, the local storage device 104 has storage areas 131-137 for storing various programs and data used in the programs.

[0060] Storage area 131 is the area where the operating system (OS) is stored. The operating system stored in storage area 131 is system software that provides the operating platform for applications.

[0061] Storage area 132 is a storage area for storing the MFP control program. The MFP control program stored in storage area 132 is a program that executes various functions of the image forming apparatus 11. Storage area 132 also stores various files, setting information, etc., required for the execution of the program.

[0062] Storage area 133 is the storage area of ​​the management framework 20 that stores data as a management program. The management framework storing data in storage area 133 enables data communication between applications by providing APIs.

[0063] Storage area 134 is the storage area for built-in application A. Storage area 135 is the storage area for various files, settings, and other information required for the execution of built-in application A. Furthermore, storage area 136 is the storage area for built-in application B41. Storage area 137 is the storage area for various files, settings, and other information required for the execution of built-in application B.

[0064] Here, as Figure 1 As shown, the built-in application A30 includes a main application 31 and a background application (BG: Background) 32 (hereinafter referred to as BG application). BG application 32 starts the internal communication server 21 or the external communication server 22 provided by the management framework 20. BG application 32 performs communication based on the resident internal communication server and the external communication server 22 before being instructed to stop the service.

[0065] For example, when the built-in application A30 collaborates with an application (main application 31 or built-in application B41) within the same image forming apparatus 11, the BG application 32 activates the internal communication server 21. In this case, the BG application 32 and the main application 31 or the built-in application B41 communicate via the internal communication server 21.

[0066] Furthermore, when the built-in application A30 collaborates with the built-in application C51 of the other image forming apparatus 12, the BG application 32 activates the internal communication server 21 and the external communication server 22. In this case, the BG application 32 and the built-in application C51 communicate via the internal communication server 21 and the external communication server 22.

[0067] Additionally, the program installed on the local storage device 104 can be provided to the image forming apparatus 11 via any path. For example, the program can also be provided to the image forming apparatus 11 from the browser 16 of the PC 15. Furthermore, the program can also be provided to the image forming apparatus 11 by downloading it from a server on the network 18. Additionally, the program can also be provided to the image forming apparatus 11 from a storage device connected to the device interface 112.

[0068] Next, the communication (inter-application communication) function between the built-in application and other applications in the image forming apparatus 11 according to the embodiment will be described.

[0069] In such Figure 1 as well as Figure 2In the illustrated structural example, the built-in application A30 of the image forming apparatus 11 has an inter-application communication function that allows the BG application 32 to communicate with other applications. This inter-application communication based on the BG application 32 is implemented through a server process based on the management framework 20. When the built-in application A's BG application 32 communicates with applications within the same image forming apparatus 11, it activates the internal communication server 21. Furthermore, when the built-in application A's BG application 32 communicates between applications in different image forming apparatuses, it activates both the internal communication server 21 and the external communication server.

[0070] The image forming apparatus 11 according to the embodiment has a setting table that determines which server process should initiate inter-application communication based on the communication content (communication type) of the inter-application communication request. The inter-application communication setting table is stored, for example, in the local storage device 104 of the image forming apparatus 11.

[0071] Figure 3 This is a diagram illustrating an example of the structure of an inter-application communication setting table stored in the local storage device 104 of the image forming apparatus 11 according to the embodiment.

[0072] like Figure 3 The configuration table shown stores information such as the application's image forming apparatus (MFP), application identification information (AppID), inter-application communication server, and access public status, categorized by communication type. Figure 3 The settings table shown illustrates the settings information related to the three communication types.

[0073] The first communication type (Type 1) is the communication method between built-in applications installed in the same image forming device and having the same AppID. For example, in... Figure 1 In the example structure shown, the first communication type is the communication between the main application 31, which constitutes the built-in application A30, and the background application (BG) 32. The main application 31 and the BG application 32 constitute the same built-in application A30, and therefore have the same AppID.

[0074] The main application 31 is a built-in application executed by instruction via the operation key 105 or touch panel 106 of the image forming apparatus 11. The main application 31 executes content through user operation. The main application 31 uses the communication client API 311 to perform client-side processing of communication. Furthermore, the BG application 32 is a built-in application within the image forming apparatus 11 that is operated without user instruction. The BG application 32 resides as a process within the image forming apparatus 11. The BG application 32 uses the communication server API 321 to perform server-side processing based on requests from the client (client-side application).

[0075] In the first communication type (Type 1), since it becomes communication between built-in applications within the same image forming apparatus, therefore, as Figure 3 As shown, an internal communication server 21 is used. The internal communication server 21 does not expose its network port to the outside world, and access from clients is restricted to localhost (the same image forming apparatus).

[0076] The second communication type (Type 2) is a communication method between built-in applications installed in the same image forming device but with different AppIDs. For example, in... Figure 1 In the illustrated structural example, the second communication type is the communication method between BG application 32 of built-in application A30 and built-in application B41. Built-in application A30 and built-in application B41 are different built-in applications, therefore built-in application A30's BG application 32 and built-in application B41 have different AppIDs.

[0077] In the inter-application communication between built-in application B41 and BG application 32, built-in application B41 uses communication client API 411 to perform client-side processing. In contrast, BG application 32 of built-in application A30 uses communication server API 321 to perform server-side processing based on requests from the client.

[0078] The second communication type (Type 2) becomes communication between built-in applications within the same image forming apparatus (MFP_A) 11, therefore, as Figure 3 As shown, an internal communication server 21 is used. The internal communication server 21 is configured to not expose network ports to the outside and to restrict access from clients to localhost (the same image forming apparatus).

[0079] The third type of communication (Type 3) is a communication method between different built-in applications installed in different image forming devices. For example, in... Figure 1 In the structural example shown, the third communication type becomes the communication between the BG application 32 of the image forming apparatus 11 and the built-in application C51 of the image forming apparatus 12. That is, the communication between the BG application 32 and the built-in application C51 becomes the communication between built-in applications across different devices (image forming apparatus (MFP_A) 11 and image forming apparatus (MFP_B) 12).

[0080] The built-in application C51 installed in the image forming apparatus 12 uses the communication client API 511 to perform client-side processing of communication. The BG application 32 of the built-in application A30 installed in the image forming apparatus 11 uses the communication server API 321 to perform server-side processing based on requests from the client. In the third communication type (Type 3), since it becomes communication between built-in applications of different devices, an external communication server 22 is used. In the third communication type, the BG application 32 is accessed from the communication client API 511 of the built-in application C51 existing in different devices. Therefore, the external communication server 22 exposes its network port to the outside.

[0081] Next, a specific example of an application of inter-application communication (type 1 or type 2) in which the image forming apparatus 11 of the embodiment cooperates within the same image forming apparatus 11 will be described.

[0082] Figure 4 This is a diagram illustrating an example of an application that communicates between built-in applications within the same image forming apparatus (MFP).

[0083] like Figure 4 The application shown provides image processing functions including processing of images read by scanner 108 and processing of OCR data on the image data read by scanner 108. Image reading processing based on scanner 108 is performed by a main application (HomeApp) that is a built-in application (client-side application) initiated according to user instructions. OCR processing of images read by scanner 108 is performed by a background (BG) application (BG App) that is a resident built-in application (server-side application). The main application as a client-side application and the BG application as a server-side application communicate within the same image forming apparatus.

[0084] For example, when the image forming apparatus is started (or according to an instruction to enable this function), the BG application, which is a server-side application, starts the internal communication server 21. The main application, which is a client-side application, performs image reading processing based on the scanner 108 according to the user's instructions. The main application sends an execution request for OCR processing of the scanned image read by the scanner 108 to the BG application, which is a server-side application, via the internal communication server 21. The BG application receives the OCR processing execution request from the main application in the background via the internal communication server 21 and performs OCR processing on the scanned image.

[0085] Therefore, the BG application, as a server-side application, can perform OCR processing in the background. For example, if the scanned image is image data in a specified format, the BG application can set the OCR result for that image data into other specified text data formats.

[0086] Next, the process of communication (inter-application communication) between multiple applications based on the image forming apparatus 11 according to the embodiment will be described.

[0087] First, the process of inter-application communication (type 1 or 2 inter-application communication) in which the image forming apparatus 11 of the embodiment communicates with each other within the same image forming apparatus 11 will be described.

[0088] Figure 5 as well as Figure 6 This is a sequence diagram illustrating an example of inter-application communication between built-in applications within the same image forming apparatus (MFP) 11.

[0089] In such Figure 1 In the structural example shown, as inter-application communication within the same image forming apparatus 11, there is communication between the main application 31 of the built-in application A and the BG application 32 (Type 1), or communication between the BG application 32 and the built-in application B41 (Type 2). Here, we will describe the case where the BG application 32 of the built-in application A30 of the image forming apparatus 11 communicates with the built-in application B41 of the image forming apparatus 11.

[0090] When the processor 101 of the image forming apparatus 11 begins to perform communication services based on the BG application 32 of the built-in application A30, it starts the BG application 32 as a server-side application. For example, when the main power supply of the image forming apparatus 11 is turned on, the processor 101 starts to perform communication services based on the BG application 32 of the built-in application A30.

[0091] Since the BG application 32, executed by the processor 101, begins communication services upon startup, it invokes the "Server Service Start API" of the communication server API 321 as a server service start request (ACT11). In the server service start request, the communication server API 321 of the BG application 32 specifies the communication type as an input parameter. This is inter-application communication within the same image forming apparatus 11. Therefore, the communication server API 321 of the BG application 32 sets a value indicating "same apparatus" as the communication type using the input parameter in the server service start request. The communication server API 321 of the BG application 32 then notifies the management framework 20 of the server service start request that the communication type is set to "same apparatus" (ACT12).

[0092] The management framework 20, executed by processor 101, provides the server-side communication framework. The server-side communication framework initiates the internal communication server process (internal communication server) 21 (ACT13) upon triggering a server service start request (API call). The server-side communication framework is configured to make the internal communication server 21 private and not accept external access. Specifically, the internal communication server 21 is configured such that its network port rejects access from external IP addresses, allowing only internal (localhost) access.

[0093] If the server-side communication framework starts the internal communication server 21, it will notify the BG application 32 of the start of the server service via the communication server API 321 (ACT14-15).

[0094] Through the processing of ACT11-15, the built-in applications of the image forming apparatus 11 can use the internal communication server 21 for inter-application communication with other built-in applications within the same image forming apparatus 11. The internal communication server 21 is not exposed to the outside and does not accept access from external devices. Therefore, it becomes a state in which inter-application communication within the image forming apparatus 11 can be carried out without data flowing out to the outside.

[0095] Next, the generation of the communication client API 411 based on the built-in application B41, which becomes a client-side application in the image forming apparatus 11, will be explained (ACT16).

[0096] After the communication server based on BG application 32 starts, the processor 101 of the image forming apparatus 11 receives a startup instruction for the built-in application B41, which becomes a client-side application. For example, in the image forming apparatus 11, the user receives the startup instruction for the built-in application B41, which becomes a client-side application, via operation key 105 or touch panel 106. The processor 101 of the image forming apparatus 11 starts the built-in application B41 as a client-side application that cooperates with BG application 32 according to the startup instruction of the built-in application B41.

[0097] Upon startup, the built-in application B41, executed by processor 101, calls the "Generate API" of communication client API 411 as a client generation request (ACT16). The built-in application B41 specifies the server-side application and the server's address in the generation request of communication client API 411.

[0098] For example, the communication client API 411 specifies the AppID (serverAppID) of BG application 32 (built-in application A) as the server-side application. Furthermore, the communication client API 411 specifies the IP address (serverIPAddress) of the image forming apparatus 11 where the server-side application resides as the server's address. Here, BG application 32 exists within the same image forming apparatus 11, therefore the server's address (serverIPAddress) is specified as "localhost".

[0099] If the communication client API 411 is generated, the built-in application B41 becomes a communicable state as a client-side application for BG application 32, which is a server-side application.

[0100] Next, the process of communication between the built-in application B41 as a client-side application and the built-in application A30 as a server-side application will be explained (ACT17-26).

[0101] When the built-in application B41, executed by the processor 101, communicates with the BG application 32, it calls the "Open Communication API" (ACT17) of the communication client API 411. The communication client API 411 requests communication with the BG application 32 via the internal communication server 21 for the client-side communication framework (ACT18). The client-side communication framework is provided by the management framework 20 executed by the processor 101 of the image forming apparatus 12.

[0102] The communication client API 411 specifies the same location (localhost) within the same image forming apparatus 11 as the server address (serverIPAddress). Therefore, the client-side communication framework determines that it is sufficient to notify the internal communication server 21 located within the same image forming apparatus 11 of the request to open communication. Based on this determination, the client-side communication framework notifies the internal communication server 21 located within the image forming apparatus 11 of the request to open communication (ACT19).

[0103] If the internal communication server 21 receives a request to open communication, it opens communication between the built-in application B41 (actually a client-side application) and the BG application 32 (actually a server-side application) of the built-in application A. If the internal communication server 21 opens communication, it notifies the server-side communication framework that communication between the built-in application B41 and the BG application 32 has been opened (ACT20). The server-side communication framework then notifies the server-side application BG application 32 that communication with the built-in application B41 has been opened (ACT21).

[0104] If BG application 32 receives a notification that communication with built-in application B41 has been opened, it recognizes that it can communicate with built-in application B41. BG application 324 sends a response to the notification that communication has been opened to the server-side communication framework (ACT22). The server-side communication framework sends a response from BG application 32 to internal communication server 21 (ACT23).

[0105] If the internal communication server 21 receives a response from the BG application 32, it notifies the built-in application B41, which is the client-side application, via the client-side communication framework and the communication client API 411 that it has opened communication with the BG application 32 (ACT24-26). Thus, the built-in application B41 recognizes that it has become capable of communicating with the BG application 32.

[0106] Next, the data communication process based on the built-in application B41 as a client-side application and the built-in application A as a server-side application will be described (ACT27-36).

[0107] When the built-in application B41, executed by processor 101, sends data to BG application 32, it calls the "Communication Request API" (ACT27) of communication client API 411. Communication client API 411 notifies the client-side communication framework of the communication request, including communication data, from built-in application B41 to BG application 32 (ACT28). The client-side communication framework sends the communication request, including communication data, from communication client API 411 to BG application 32 to internal communication server 21 (ACT29).

[0108] If the internal communication server 21 receives a communication request from the built-in application B41 to the BG application 32, it notifies the server-side communication framework of the notification request (ACT30). The server-side communication framework sends a communication request including communication data to the BG application 32, which is the built-in application A30, which is the server-side application (ACT31).

[0109] If BG application 32 of built-in application A receives a communication request from built-in application B41, it sends a response (ACT32-33) to internal communication server 21 via the server-side communication framework, indicating that it has received the communication request including communication data.

[0110] If the internal communication server 21 receives a response from the BG application 32, it sends a response (ACT34) to the client-side communication framework indicating that the BG application 32 has received the communication data. The client-side communication framework notifies the built-in application B41, which is the client-side application, of the response to the communication request via the communication client API 411 (ACT35-36). Through these processes, the built-in application B41 and the BG application 32 of the built-in application A30 perform data communication.

[0111] Next, the process of handling the case where communication between the built-in application B41 (as a client-side application) and the BG application 32 (as a server-side application) is closed will be explained (ACT37-46).

[0112] When built-in application B41 terminates communication with BG application 32, it calls the "Close Communication API" (ACT37) of communication client API 411. Communication client API 411 sends a request to close communication with BG application 32 to internal communication server 21 via the client-side communication framework (ACT38-39).

[0113] If the internal communication server 21 receives a request to close communication, it terminates the communication between the built-in application B41 and the BG application 32 of the built-in application A30. If the internal communication server 21 terminates the communication between the BG application 32 and the built-in application B41, it notifies the BG application 32, which is a server-side application, of the communication termination via the server-side communication framework (ACT40-41).

[0114] If BG application 32 receives a notification that communication with built-in application B41 has been closed, it recognizes that communication with built-in application B41 has ended. If BG application 32 of built-in application A30 recognizes that communication with built-in application B41 has ended, it sends a response (ACT42-43) to the internal communication server 21 via the server-side communication framework to the notification that communication has been closed.

[0115] If the internal communication server 21 receives a response from the BG application 32, it sends a response (ACT44) to the client-side communication framework indicating that communication with the BG application 32 has been closed. The client-side communication framework then sends the response from the BG application 32 to the built-in application B41, which is the client-side application, via the communication client API (ACT45-46). Through the above processing, communication between the built-in application B41 and the BG application 32 ends.

[0116] Next, the process for handling the case where BG application 32, as a server-side application, stops communication services to other applications (built-in application B) within the same image forming apparatus will be explained (ACT47-51).

[0117] When BG application 32 stops the communication service based on internal communication server 21, it calls the "Communication Service Stop API" (ACT47) of communication server API 321. Communication server API 321 notifies the server-side communication framework of the termination request of internal communication server 21 (ACT48). The server-side communication framework terminates the process of server service based on internal communication server 21 according to the termination request from communication server API (ACT49).

[0118] Additionally, the server-side communication framework can also determine whether the process can be terminated based on the status of the internal communication server 21. For example, the server-side communication framework can also determine whether the process can be terminated based on whether data communication is currently being performed. If the server-side communication framework determines that the process of the internal communication server 21 cannot be terminated, it can notify the BG application 32 of a response indicating that termination is not possible.

[0119] If the server-side communication framework causes the internal communication server 21 to stop, it notifies the BG application 32 via the communication server API 321 that the server service process has ended (ACT50-51). Thus, the BG application 32 recognizes that the internal communication server 21 has stopped.

[0120] Next, a specific example of an application of inter-application communication (type 3) that enables different built-in applications of the image forming apparatus 11 to cooperate will be described.

[0121] Figure 7 This is a diagram illustrating an example of a server-side application, which is a built-in application of an image forming apparatus (MFP), and has the function of sending data to external devices.

[0122] like Figure 7 The application shown provides image processing functions including image reading via scanner 108 and image data saved on an external device. Image reading via scanner 108 is performed by a scanning application (ScanApp) that is initiated as a client-side application based on user instructions. Saving the scanned images from scanner 108 to an external device (cloud server) is performed by a cloud storage application (CloudStore) that is a resident server-side application.

[0123] For example, the server-side application initiates an external communication server for uploading data to the cloud server 19. The client-side application, according to the user's instructions, performs image reading based on the scanner 108, providing the server-side application with the scanned image (scanned file) read by the scanner 108. The server-side application then uploads the scanned image to a pre-designated cloud storage device, such as the cloud server 19, via the external communication server. Thus, the scanned image read by the scanning application can be stored in the cloud storage.

[0124] Next, the process of inter-application communication (type 3 inter-application communication) for communication between applications of the image forming apparatus 11 in the embodiment and applications in other image forming apparatus 12 will be described.

[0125] Figure 8 as well as Figure 9 This is a sequence diagram illustrating an example of inter-application communication between an application within an image forming apparatus (MFP) 11 and an application within another image forming apparatus 12.

[0126] Here, let's imagine... Figure 1 The BG application 32 of the built-in application A30 of the image forming apparatus 11 shown is described in the case of inter-application communication between the built-in application C51 of the other image forming apparatus 12.

[0127] When providing communication services between the BG application 32 of the image forming apparatus 11 and the built-in application C of the other image forming apparatus 12, the BG application 32 calls the "Server Service Start API" of the communication server API to request the start of server service (ACT111). Here, the BG application 32 sets the communication type represented by the value indicating "different device" as an input parameter in the server service start request.

[0128] The communication server API 321 notifies the server-side communication framework that a server service start request (ACT 112) has been specified as a "different device" as the communication type via BG application 32. The server-side communication framework is provided by the management framework 20 executed by the processor 101 of the image forming apparatus 11.

[0129] The server-side communication framework is triggered by a server service start request (API call), which initiates the internal communication server process (internal communication server) 21 and the external communication server process (external communication server) 22 (ACT113, 114). Based on the input parameters of the server service start request, the server-side communication framework determines that the communication type is "different devices." If the communication type is "different devices," the server-side communication framework determines that internal communication server 21 and external communication server 22 should be initiated.

[0130] When the server process of the internal communication server 21 is started, the server-side communication framework is configured as follows: the network port of the internal communication server 21 denies access from external IP addresses, allowing only access from internal (localhost) addresses. Furthermore, when the server process of the external communication server is started, the server-side communication framework is configured to allow access from external IP addresses to the network port of the external communication server. Additionally, the external communication server is configured to act as a reverse proxy server (relaying communication from the external Internet to the external communication server to the internal communication server).

[0131] If the server-side communication framework starts the internal communication server 21 and the external communication server 22, it will notify the BG application 32 of the start of the server service via the communication server API 321 (ACT115, 116).

[0132] Through the processing of ACT111~116, the internal communication server 21 and the external communication server 22 for inter-application communication between the BG application 32 of the image forming apparatus 11 and other applications within the image forming apparatus 12 become available.

[0133] Next, the generation of the communication client API 511 based on the built-in application C51 in the other image forming apparatus 12 as a client-side application will be described (ACT117).

[0134] After the processor 101 of the image forming apparatus 11 starts the communication servers (internal communication server 21 and external communication server 22), it generates a communication client API 511 as a built-in application C51, which is a client-side application. For example, in the image forming apparatus 12, the user inputs a start instruction based on the operation key 105 or the touch panel 106 to start the built-in application C51. According to the start instruction, the processor 101 of the image forming apparatus 12 starts the built-in application C51 as a client-side application that cooperates with the BG application 32 of the image forming apparatus 11.

[0135] When the built-in application C51 executed by the processor 101 of the other image forming apparatus 12 starts up, it calls the "Generation API" (ACT117) of the communication client API 511. The built-in application C51 specifies the server application and the server address as a generation request for the communication client 511 that communicates with the BG application 32 of the image forming apparatus 11.

[0136] Here, the communication client API 511 specifies the AppID (serverAppID) of the BG application 32 of the image forming apparatus 11 as the server-side application. Furthermore, the communication client API 511 specifies the IP address (serverIPAddress) of the image forming apparatus 11 containing the BG application 32 as the server-side application as the server address. Here, the BG application 32 of built-in application A exists within other image forming apparatuses 11. Therefore, the server address (serverIPAddress) is specified as the actual IP address of the server-side image forming apparatus 11.

[0137] Through the above processing, the built-in application C51 of the image forming apparatus 12 is generated as a communication client API 511. If the communication client API 511 is generated, the built-in application C51 becomes a communicable client-side application for the BG application 32, which is a server-side application. The built-in application C51 accepts the start and end of communication with the BG application 32, which is a server-side application, through the communication client API 511.

[0138] Next, the process of communication between the built-in application B41 as a client-side application and the BG application 32 as a built-in application A30 as a server-side application will be explained (ACT118-129).

[0139] When the built-in application C51 communicates with the BG application 32, it calls the "Open Communication API" (ACT118) of the communication client API 511. The communication client API 511 requests communication with the BG application 32 via the internal communication server 21 for the client-side communication framework (ACT119). The client-side communication framework is provided by the management framework 20 executed by the processor 101 of the image forming apparatus 12.

[0140] In the communication client API 511, the actual IP address of the other image forming apparatus 11 is specified as the server address. Therefore, the client-side communication framework determines that it is sufficient to notify the external communication server 22 located at the specified image forming apparatus 11 of the request to open communication. Based on this determination, the client-side communication framework notifies the external communication server 22 located at the image forming apparatus 11 of the request to open communication (ACT 120).

[0141] The external communication server 22 of the image forming apparatus 11 relays the request to open communication from the built-in application 51 of another image forming apparatus 12 to the internal communication server 21 existing in the same image forming apparatus 11 (ACT121).

[0142] The external communication server 22 and the internal communication server 21 of the image forming apparatus 11 initiate communication between the built-in application C51 of the other image forming apparatus 12 and the BG application 32 upon receiving a request to initiate communication. If the internal communication server 21 initiates communication with the built-in application C51, it notifies the server-side communication framework that communication with the built-in application C51 has been initiated (ACT122). If the server-side communication framework receives the notification that communication with the built-in application C51 has been initiated, it notifies the BG application 32, which is the server-side application, that communication has been initiated (ACT123).

[0143] If the BG application 32 of the image forming apparatus 11 receives a notification that communication with the built-in application C51 of another image forming apparatus 12 has been opened, it recognizes that communication with the built-in application C51 is possible. The BG application 32 sends a response to the notification that communication has been opened to the communication framework on the server side (ACT124). The communication framework on the server side sends a response from the BG application 32 to the internal communication server 21 (ACT125). The internal communication server 21 of the image forming apparatus 11 notifies the external communication server 22, which is located in the same image forming apparatus 11, of the response from the BG application 32 (ACT126).

[0144] The external communication server 22 of the image forming apparatus 11 sends a response (ACT127) to the communication framework of the image forming apparatus 12, which acts as a client, indicating that communication with the BG application 32 has been opened. The communication framework of the image forming apparatus 12 sends the response received from the external communication server 22 of the image forming apparatus 11 via the communication client API 511 to the built-in application C51 (ACT128-129). Thus, the built-in application C51 of the image forming apparatus 12 recognizes that it has entered a state where it can communicate with the BG application 32 of the image forming apparatus 11.

[0145] Next, the data communication process based on the built-in application C51 as a client-side application and the BG application 32 as a server-side application will be explained (ACT130-141).

[0146] When the built-in application C51 of the image forming apparatus 12 sends data to the BG application 32 of the image forming apparatus 11, it calls the "communication request API" (ACT130) of the communication client API 511.

[0147] Here, the built-in application C51 notifies the communication client API511 of a communication request, including communication data, to be sent to the BG application 32 of the image forming apparatus 11. The communication client API511 notifies the client-side communication framework of the communication request, including communication data, to the BG application 32 (ACT131). The client-side communication framework sends the communication request, including communication data, to the external communication server 22 of the image forming apparatus 11 where the BG application 32 is located (ACT132).

[0148] If the external communication server 22 of the image forming apparatus 11 receives a communication request from the built-in application C51 of the image forming apparatus 12, it relays the communication request to the internal communication server 21 (ACT133). If the internal communication server 21 receives a communication request from the external communication server 22 to the BG application 32, it notifies the server-side communication framework of the communication request, including communication data, to the BG application 32 (ACT134). The server-side communication framework notifies the BG application 32 of the communication request from the built-in application C51 received by the external communication server 22 and relayed by the internal communication server 21 (ACT135).

[0149] The BG application 32 of the image forming apparatus 11 receives a communication request, including communication data, from the built-in application C51 of another image forming apparatus 12 via the server-side communication framework. If the BG application 32 receives the communication request including communication data from the built-in application C51, it notifies the server-side communication framework of the response indicating receipt of the communication request (ACT136). The server-side communication framework notifies the internal communication server 21 of the response from the BG application 32 (ACT137). The internal communication server 21 notifies the external communication server 22 of the response received from the BG application 32 via the server-side communication framework (ACT138).

[0150] The external communication server 22 of the image forming apparatus 11 sends a response from the BG application 32 to the client-side communication framework of the image forming apparatus 12 (ACT139). If the client-side communication framework of the image forming apparatus 12 receives the response from the BG application 32 of the image forming apparatus 11, it sends the response from the BG application 32 to the built-in application C51, which is a client-side application, via the communication client API 511 (ACT140-141). Through these processes, the built-in application C51 of the image forming apparatus 12 and the BG application 32 of the image forming apparatus 11 perform data communication.

[0151] Next, the processing flow of the built-in application C51 of the image forming apparatus 12 and the BG application 32 of the image forming apparatus 11 when communication is closed will be explained (ACT142-153).

[0152] When communication with BG application 32 ends, the built-in application C51 of image forming apparatus 12 calls the "Closing Communication API" (ACT142) of communication client API 511. Communication client API 511 notifies the client-side communication framework of the request to close communication with BG application 32 (ACT143). The client-side communication framework sends a request to close communication with BG application 32 to the external communication server 22 of image forming apparatus 11 (ACT144).

[0153] The external communication server 22 of the image forming apparatus 11 receives a request to close communication from other image forming apparatuses 12. The external communication server 22 relays the request to close communication received from other image forming apparatuses 12 to the internal communication server 21 (ACT145). Based on the request to close communication, the external communication server 22 and the internal communication server 21 of the image forming apparatus 11 close communication between the built-in application C51 and the BG application 32 of other image forming apparatuses 12.

[0154] If the internal communication server 21 closes communication with the built-in application C51, it notifies the server-side communication framework that communication with the built-in application C51 has been closed (ACT146). If the server-side communication framework receives the notification that communication with the built-in application C51 has been closed, it notifies the BG application 32, which is the server-side application, that communication with the built-in application C51 has been closed (ACT147).

[0155] If BG application 32 receives a notification that communication with built-in application C51 has been closed, it recognizes that communication with built-in application C51 has ended. If BG application 32 recognizes that communication with built-in application C51 has ended, it notifies the server-side communication framework of its response to the notification of closed communication (ACT148). The server-side communication framework then sends a response from BG application 32 to internal communication server 21 (ACT149).

[0156] Internal communication server 21 notifies external communication server 22 of the response from BG application 32 (ACT150). External communication server 22 sends a response to the client-side communication frame in image forming apparatus 12 indicating that communication with BG application 32 has been closed (ACT151).

[0157] If the client-side communication framework receives a response from the external communication server 22, it sends a response (ACT152-153) to the built-in application C51, which is the client-side application, via the communication client API 511, indicating that communication with the BG application 32 has been closed. Thus, communication between the BG application 32 of the image forming apparatus 11 and the built-in application C51 of the image forming apparatus 12 ends.

[0158] Next, the process of handling the case where BG application 32, as a server-side application, stops communication services to applications in other image forming apparatuses (built-in application B) will be explained (ACT154-159).

[0159] When BG application 32 stops the communication service based on internal communication server 21 and external communication server 22, it calls the "Communication Service Stop API" (ACT154) of communication server API 321. Communication server API 321 notifies the server-side communication framework of the communication service prompt (ACT155).

[0160] The server-side communication framework terminates the server processes (ACT156, 157) based on the communication service stop request from the communication server API 321, which are based on the external communication server 22 and the internal communication server 21. For example, the server-side communication framework first stops the external communication server 22 based on the communication service stop request. If the external communication server 22 terminates, the network port exposed to the outside world by the image forming apparatus 11 is closed. After stopping the external communication server 22, the server-side communication framework stops the internal communication server 21. Thus, not only the external communication server 22 but also the internal communication server 21 is stopped.

[0161] If the server-side communication framework stops external communication server 22 and internal communication server 21, it notifies the communication server API 321 that the server process has ended (ACT158). Correspondingly, the communication server API 321's "Communication Service Stop API" will return a response indicating the server process has ended to the BG application (server-side application) 32, which is the API call source (ACT159). Thus, the BG application 32, as the server-side application, confirms the communication service notification.

[0162] Additionally, the server-side communication framework can also determine whether to stop the server process in response to a communication service stop request. For example, if the server-side communication framework has established communication between the client and server, it may not need to stop the server process. In the case of not stopping the server process in response to a communication service stop request, the "Communication Service Stop API" of the communication server API 321 only needs to return an error response to the BG application (server-side application) 32, which is the source of the API call.

[0163] Specifically, when the "Communication Service Stop API" of the communication server API 321 is called, and the processing of ACT 130-141 or ACT 142-153 is in progress, the server process may not need to be stopped. Therefore, when the server-side application (BG application 32) communicates with two or more built-in applications (client-side applications) located in different image forming devices, the server-side communication framework can stop the server process even when communication with all client-side applications is cut off.

[0164] Furthermore, the server-side communication framework can also determine whether the external communication server 22 and the internal communication server 21 can be stopped separately. For example, if the external communication server 22 cannot be stopped, the server-side communication framework can also determine whether the internal communication server 21 can be stopped. Thus, the server-side communication framework can maintain only the internal communication server 21 after stopping the external communication server 22.

[0165] As described above, the image forming apparatus according to the embodiment allows for fine-grained control over the public access of inter-application communication services based on the configuration location of the built-in applications performing inter-application communication. Furthermore, the image forming apparatus can control the public access of network ports by setting internal and external communication servers according to the communication type of the inter-application communication. Moreover, the image forming apparatus can maintain the state of externally opened network ports at a minimum level in service provision, depending on the usage method. As a result, the image forming apparatus can reduce the possibility of external attacks on internal communications and other components, thereby mitigating security risks.

[0166] The program executed by the processor of the image forming apparatus, which is part of the information processing apparatus according to this embodiment, can be transferred either in a state where it is stored in an electronic device or in a state where it is not stored in an electronic device. In the latter case, the program can be transferred via a network or in a state where it is stored in a storage medium. The storage medium is a non-transitory tangible medium. The storage medium is a computer-readable medium. The storage medium is any medium capable of storing a program and being readable by a computer, such as a CD-ROM or a memory card, and the type is not limited.

[0167] Several embodiments of the present invention have been described, but these embodiments are provided by way of example and are not intended to limit the scope of the invention. These new embodiments can be implemented in a wide variety of other ways, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, and are included within the scope of the invention and its equivalents as described in the protection scope of the present invention.

[0168] As described above, the implementation can be carried out by the following information processing apparatus, image processing apparatus, and non-transitory storage medium storing the program, according to the detailed description of the embodiments. [1]

[0170] An information processing device, comprising:

[0171] Communication interface for communicating with external devices;

[0172] Memory, storage applications and management programs; and

[0173] The processor uses the hypervisor to execute the application.

[0174] When an application residing in the memory communicates with other applications residing in the same device, the processor starts an internal communication server process via the management program. When an application residing in the memory communicates with other applications residing in an external device connected via the communication interface, the processor starts an external communication server process via the management program. [2]

[0176] The information processing apparatus as described in [1], wherein,

[0177] If the communication type specified by the start request of the communication service generated by the application is communication within the same device, the processor starts the internal communication server process; if the communication type specified by the start request of the communication service is communication including communication with external devices, the processor starts both the internal communication server process and the external communication server process. [3]

[0179] The information processing device as described in [2], wherein,

[0180] When the application communicates with other applications existing on external devices, the processor performs data communication via the external communication server process and the internal communication server process. [4]

[0182] The information processing device as described in [2], wherein,

[0183] When the application communicates with other applications existing on an external device, the processor stops the external communication server process based on a stop request for the communication service generated by the application. [5]

[0185] The information processing apparatus as described in [4], wherein,

[0186] When the application communicates with other applications within the same device, the processor, based on a stop request for the communication service generated by the application, causes the internal communication server process to stop.

[0187] When the application communicates with other applications existing on an external device, the processor stops the external communication server process and the internal communication server process based on a stop request for the communication service generated by the application. [6]

[0189] The information processing apparatus as described in [4], wherein,

[0190] When the application communicates with other applications existing on an external device, the processor determines whether communication with the external device can be stopped based on a stop request for the communication service generated by the application. If communication with the external device can be stopped, the processor stops the external communication server process. [7]

[0192] The information processing apparatus as described in [5], wherein,

[0193] If a stop request for the communication service based on the application is generated, the processor determines that the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process. [8]

[0195] The information processing apparatus as described in [7], wherein,

[0196] If a stop request for the communication service based on the application is generated, the processor, after stopping the external communication server process, determines whether the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process. [9]

[0198] An image processing apparatus comprising:

[0199] Image processing unit, processes images;

[0200] Communication interface for communicating with external devices;

[0201] Memory, storage applications and management programs; and

[0202] The processor uses the hypervisor to execute the application.

[0203] When an application residing in the memory communicates with other applications residing in the same device, the processor starts an internal communication server process via the management program. When an application residing in the memory communicates with other applications residing in an external device connected via the communication interface, the processor starts an external communication server process via the management program.

[10]

[0205] The image processing apparatus as described in [9], wherein,

[0206] If the communication type specified by the start request of the communication service generated by the application is communication within the same device, the processor starts the internal communication server process; if the communication type specified by the start request of the communication service is communication including communication with external devices, the processor starts both the internal communication server process and the external communication server process.

[11]

[0208] The image processing apparatus as described in

[10] , wherein,

[0209] When the application communicates with other applications existing on external devices, the processor performs data communication via the external communication server process and the internal communication server process.

[12]

[0211] The image processing apparatus as described in

[10] , wherein,

[0212] When the application communicates with other applications existing on an external device, the processor stops the external communication server process based on a stop request for the communication service generated by the application.

[13]

[0214] The image processing apparatus as described in

[12] , wherein,

[0215] When the application communicates with other applications within the same device, the processor, based on a stop request for the communication service generated by the application, causes the internal communication server process to stop.

[0216] When the application communicates with other applications existing on an external device, the processor stops the external communication server process and the internal communication server process based on a stop request for the communication service generated by the application.

[14]

[0218] The image processing apparatus as described in

[12] , wherein,

[0219] When the application communicates with other applications existing on an external device, the processor determines whether communication with the external device can be stopped based on a stop request for the communication service generated by the application. If communication with the external device can be stopped, the processor stops the external communication server process.

[15]

[0221] The image processing apparatus as described in

[13] , wherein,

[0222] If a stop request for the communication service based on the application is generated, the processor determines that the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process.

[16]

[0224] The image processing apparatus as described in

[15] , wherein,

[0225] If a stop request for the communication service based on the application is generated, the processor, after stopping the external communication server process, determines whether the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process.

[17]

[0227] The image processing apparatus as described in [9], wherein,

[0228] The image processing unit is an image forming unit.

[18]

[0230] The image processing apparatus as described in [9], wherein,

[0231] The image processing unit is a scanner.

[19]

[0233] A non-transitory storage medium storing a program that is executed by a processor of an information processing device having a communication interface:

[0234] In cases where an application communicates with other applications existing on the same device, the internal communication server process is started.

[0235] When an application communicates with other applications existing on external devices connected through the communication interface, the external communication server process is started.

[20]

[0237] As described in

[19] , a non-transitory storage medium stores the program.

[0238] If the communication type specified in the start request of the communication service generated by the application is the same as intra-device communication, then the intra-communication server process is started.

[0239] If the communication type specified in the start request of the communication service is communication including communication with external devices, then the internal communication server and the external communication server processes are started.

Claims

1. An information processing device, comprising: Communication interface for communicating with external devices; Memory, which stores applications and management programs; as well as The processor uses the hypervisor to execute the application. When an application residing in the memory communicates with other applications residing in the same device, the processor starts an internal communication server process via the management program. When an application residing in the memory communicates with other applications residing in an external device connected via the communication interface, the processor starts an external communication server process via the management program.

2. The information processing apparatus as described in claim 1, wherein, If the communication type specified by the start request of the communication service generated by the application is communication within the same device, the processor starts the internal communication server process; if the communication type specified by the start request of the communication service is communication including communication with external devices, the processor starts both the internal communication server process and the external communication server process.

3. The information processing apparatus as described in claim 2, wherein, When the application communicates with other applications existing on external devices, the processor performs data communication via the external communication server process and the internal communication server process.

4. The information processing apparatus as described in claim 2, wherein, When the application communicates with other applications existing on an external device, the processor stops the external communication server process based on a stop request for the communication service generated by the application.

5. The information processing apparatus as described in claim 4, wherein, When the application communicates with other applications within the same device, the processor, based on a stop request for the communication service generated by the application, causes the internal communication server process to stop. When the application communicates with other applications existing on an external device, the processor stops the external communication server process and the internal communication server process based on a stop request for the communication service generated by the application.

6. The information processing apparatus as described in claim 4, wherein, When the application communicates with other applications existing on an external device, the processor determines whether communication with the external device can be stopped based on a stop request for the communication service generated by the application. If communication with the external device can be stopped, the processor stops the external communication server process.

7. The information processing apparatus as described in claim 5, wherein, If a stop request for the communication service based on the application is generated, the processor determines that the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process.

8. The information processing apparatus as claimed in claim 7, wherein, If a stop request for the communication service based on the application is generated, the processor, after stopping the external communication server process, determines whether the internal communication server process can be stopped. If the internal communication server process can be stopped, the processor stops the internal communication server process.

9. The information processing apparatus according to any one of claims 1 to 8, wherein, The information processing device further includes an image forming unit that forms an image on a medium. The application is a program for performing data processing associated with image formation based on the image forming unit.

10. The information processing apparatus according to any one of claims 1 to 8, wherein, The information processing device also includes: an image scanner. The application is a program for performing data processing associated with reading images based on the scanner.

Citation Information

Patent Citations

  • Information processor, policy management unit, management method of security policy and computer program

    JP2016130997A