WO2013146410A1 - 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム - Google Patents
情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム Download PDFInfo
- Publication number
- WO2013146410A1 WO2013146410A1 PCT/JP2013/057634 JP2013057634W WO2013146410A1 WO 2013146410 A1 WO2013146410 A1 WO 2013146410A1 JP 2013057634 W JP2013057634 W JP 2013057634W WO 2013146410 A1 WO2013146410 A1 WO 2013146410A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- information processing
- processing apparatus
- installation
- client
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/549—Remote execution
Definitions
- the present invention relates to a technology for entrusting execution of an acquired application to an external device when it cannot be executed.
- Patent Document 1 discloses a technology for improving communication efficiency between a thin client terminal and a server that executes an application by operating the thin client terminal.
- the client acquires the program, it cannot be installed on the client device or cannot be executed on the client device.
- the technology described in the above document is a technology for realizing virtual application execution by a thin client device by executing an application held by a server. Since the thin client device itself is not a technique based on the premise that an application is executed, the above-described problem cannot be solved.
- An object of the present invention is to solve the problem of enabling the client to enjoy the execution result of the program even when the program acquired by the client or the acquired program cannot be installed or executed on the client device. Is to provide.
- an information processing system provides: An information processing system in which a first information processing device and a second information processing device are communicatively connected, Installation request means for requesting the second information processing apparatus from the first information processing apparatus to install a program that cannot be executed even if acquired by the first information processing apparatus in the second information processing apparatus; Program installation means for installing the program requested by the installation request means in the second information processing apparatus; Synchronization means for synchronizing execution of the program installed in the second information processing apparatus and operation on the program in the first information processing apparatus; Is provided.
- an information processing method includes: An information processing method for an information processing system in which a first information processing apparatus and a second information processing apparatus are connected by communication, An installation requesting step for requesting the second information processing apparatus from the first information processing apparatus to install a program that cannot be executed even if the first information processing apparatus acquires the second information processing apparatus; A program installation step of installing the program requested in the installation request step into the second information processing apparatus; A synchronization step of synchronizing the execution of the program installed in the second information processing apparatus and the operation on the program in the first information processing apparatus; including.
- an information processing apparatus provides: Receiving means for receiving from the other information processing apparatus a request to install a program that cannot be executed by the other information processing apparatus; Program installation means for installing the program; Synchronization means for synchronizing the execution of the installed program with an operation on the program in the other information processing apparatus; Is provided.
- a method for controlling an information processing apparatus includes: A receiving step of receiving a request to install a program that cannot be executed by another information processing apparatus from the other information processing apparatus; A program installation step for installing the program; A synchronization step of synchronizing execution of the installed program with an operation on the program in the other information processing apparatus; including.
- a control program for an information processing apparatus provides: A receiving step of receiving a request to install a program that cannot be executed by another information processing apparatus from the other information processing apparatus; A program installation step for installing the program; A synchronization step of synchronizing execution of the installed program with an operation on the program in the other information processing apparatus; Is executed on the computer.
- an information processing apparatus provides: Installation request means for requesting installation of a program that cannot be executed by the own apparatus to another information processing apparatus; Synchronization means for synchronizing operations on the program in its own device with execution of the program installed by the other information processing device; Is provided.
- a method for controlling an information processing apparatus includes: An installation request step for requesting installation of a program that cannot be executed by the own device to another information processing device; A synchronization step of synchronizing operations on the program in its own device with execution of the program installed by the other information processing device; including.
- a control program for an information processing apparatus provides: An installation request step for requesting installation of a program that cannot be executed by the own device to another information processing device; A synchronization step of synchronizing operations on the program in its own device with execution of the program installed by the other information processing device; Is executed on the computer.
- the client can enjoy the execution result of the program.
- program in the present embodiment refers to an OS (operation system), a driver, an application program installed in a computer from a storage medium or via a communication medium, and a DB (used in the program). Database) and other data-containing concepts.
- installation program refers to a program that can already be installed and executed.
- program installation and “execution of installation program” are described separately in order to avoid complication, but it cannot be said that a program that cannot be executed has been installed, and it is actually clear. It is not separable.
- client device and “client” are different targets, and the term “client” uses a user who owns “client device” or “client device”. Represents a user.
- the information processing system 100 is a system in which a first information processing apparatus 101 and a second information processing apparatus 102 are connected for communication.
- the information processing system 100 includes an installation request unit 110, a program installation unit 120, and a synchronization unit 130.
- the installation request unit 110 requests the second information processing apparatus 102 from the first information processing apparatus 101 to install in the second information processing apparatus 102 a program 101a that cannot be executed even if the first information processing apparatus 101 acquires it.
- the program installation unit 120 installs the program 101 a requested by the installation request unit 110 in the second information processing apparatus 102.
- the synchronization unit 130 synchronizes the execution 102 a of the program 101 a installed in the second information processing apparatus 102 and the operation 101 b for the program 101 a in the first information processing apparatus 101.
- the client can enjoy the execution result of the program.
- the information processing system according to the present embodiment transmits a program from a client device to a cloud server (including an application server) when the client device cannot install the program or cannot execute the program. Then, the program is installed on the cloud server and executed.
- the program acquired by the client but could not be installed or executed is transmitted to the cloud server and installed in synchronization with the client device in the cloud server, so that the program is installed on the client device.
- the program can be executed virtually as if it had been done.
- FIG. 2 is a diagram for explaining processing of the information processing system 200 according to the present embodiment.
- the display screen displays a message 211a indicating that the program A231 has been purchased and installed from the storage medium 212a of the CD / DVD device 212 or the program distribution server 230, but has failed. It is desirable that the message 211a also displays software conditions (such as the OS and required software) and hardware conditions (such as CPU capability, memory capacity, input / output device and communication device capabilities) that have caused the failure. .
- software conditions such as the OS and required software
- hardware conditions such as CPU capability, memory capacity, input / output device and communication device capabilities
- the client informed that the purchased program A cannot be installed or executed by the client device 210 installs and executes the program A from the client device 210 to the cloud server 220 as shown in the central diagram. Ask to do.
- a request message 211 b is displayed on the display unit 211 of the client device 210.
- the program purchase information that proves that the client has purchased the program A is added to the installation request to the cloud server 220, and the program A is transmitted to the cloud server 220.
- the client device 210 can hold the program A, the program A held by the client device 210 is transmitted.
- the client device 210 may not be able to read the program A.
- the client apparatus 210 transmits the dead copy of the program A from the storage medium 212a of the CD / DVD device 212 or the program distribution server 230 to the cloud server 220 as it is.
- FIG. 2 illustrates an example of a display screen of the display unit 211 of the client apparatus 210 that is installing the program A221 transmitted to the cloud server 220 in the cloud server 220.
- 2 shows an example of program installation from the storage medium 212a of the CD / DVD device 212. In the case of installation from the program distribution server 230, a different message is displayed.
- the client device 210 virtually executes the program A.
- the program A installed in the cloud server 220 can be virtually executed if client authentication is performed.
- the keyboard 213 and the pointing device 214 indicate that they may be desktop PCs or notebook PCs which are different client apparatuses.
- FIG. 3 is a block diagram illustrating a configuration of the information processing system 200 according to the present embodiment.
- the information processing system 200 includes client apparatuses 311 to 316, a cloud server 220, and a program distribution server 230 connected via a network.
- the client devices 311 to 316 correspond to the client device 210 of FIG. 2, and are client devices 311 to 313 that are portable terminals, a client device 314 that is a notebook PC, a client device 315 that is a digital television, and a client that is a desktop PC.
- a device 316 is included.
- Each of the client apparatuses 311 to 316 is a first information processing apparatus that transmits a purchase program that cannot be installed or executed by itself to the cloud server 220 and requests the cloud server 220 to perform installation or execution.
- the cloud server 220 has a client DB 321 for registering clients (see FIG. 7).
- the cloud server 220 has a client device DB 322 that stores performance information of the client devices 311 to 316 (see FIG. 8).
- the cloud server 220 also has an installation program DB 323 that holds programs installed in response to requests from the client apparatuses 311 to 316 (see FIG. 9).
- the program distribution server 230 holds a program to be installed, and distributes and provides the program to the client apparatuses 311 to 316 or the cloud server 220. 2 shows only one program distribution server 230, the number is not limited.
- 4A and 4B are sequence diagrams illustrating an operation procedure of the information processing system 200 according to the present embodiment.
- the client apparatuses 311 to 316 will be described using the client apparatus 311 as a representative.
- step S401 the client apparatus 311 attempts to install a desired program from the DVD device 212 or the program distribution server 230.
- the client device is notified that installation or execution of the program has failed.
- the client apparatus 311 requests installation and execution to the cloud server 220 in step S403.
- step S ⁇ b> 405 the client device 311 transmits the program, capability information of the client device together with the client ID and client device ID, and program purchase information that proves that the program has been purchased to the cloud server 220.
- step S406 the client apparatus 311 erases from the client apparatus 311 a program that failed to install or that could not be executed after installation.
- the client is freed from the cumbersome operation of searching for and erasing the program.
- the client simply clicks (touches) the request button displayed on the client device, and the subsequent processing is automatically performed.
- the program can be installed on the server without adding a license.
- the cloud server 220 starts installing the program received from the client device 311 on the virtual PC in step S407.
- step S409 an installation processing procedure is executed.
- the program installation process for example, if it is necessary to input the product key of the client as shown in the right diagram of FIG. 2, a client instruction or input is inquired in step S411.
- step S 413 an inquiry screen is transmitted from the cloud server 220 to the client device 311.
- step S415 the client apparatus 311 displays the received inquiry screen.
- this inquiry screen is converted into a protocol and screen data according to the output capability of the client device 311 by the cloud server 220 if necessary. For example, when the client device 311 is a previous generation device, or when the program is an old generation program, conversion is essential.
- step S417 the client apparatus 311 acquires a response input to the client inquiry screen.
- step S419 the client apparatus 311 transmits the acquired response input data to the cloud server 220.
- the cloud server 220 receives the response data from the client device 311 in step S421. Also in this reception process, if necessary, the cloud server 220 performs conversion according to the protocol and input data of the cloud server 220 and the program based on the input capability of the client device 311.
- step S423 the completion of installation is determined. If the installation is not completed, the process returns to step S409 to proceed with the installation processing procedure. If the installation is complete, the process advances to step S425 to notify the client apparatus 311 of the installation completion.
- step S427 the installation completion information transmitted from the cloud server 220 to the client device 311 is displayed on the client device 311 in step S429. This completes the virtual installation (alternative installation) of the program on the cloud server 220.
- step S431 the client apparatus 311 instructs execution of the installation program.
- Other client apparatuses 312 to 316 may be used.
- step S433 a program start instruction is transmitted from the client apparatus 311 to the cloud server 220 together with the client apparatus ID and the client ID.
- step S435 the cloud server 220 authenticates the client and starts executing the installation program on the virtual PC.
- step S437 a program processing procedure is executed.
- step S439. the inquiry or output data is transmitted from the cloud server 220 to the client device 311.
- the client device 311 that has received the inquiry or output data displays the inquiry or outputs data in step S443.
- the cloud server 220 converts the protocol, screen data, and output data according to the output capability of the client device 311 if necessary.
- the client device 311 acquires the response to the inquiry and input data in step S445.
- a response to the inquiry or input data is transmitted from the client device 311 to the cloud server 220.
- the cloud server 220 that has received the response to the inquiry or the input data receives the response data or receives the input data. Also in this reception process, if necessary, the cloud server 220 performs conversion according to the protocol and input data of the cloud server 220 and the installation program based on the input capability of the client device 311.
- step S451 it is determined whether the execution of the program has ended. If not, the program returns to step S437 and proceeds with the program execution procedure. If the execution is completed, the process advances to step S453 to notify the client apparatus 311 of the completion of execution.
- the processing result transmitted from the cloud server 220 to the client device 311 in step S455 is output to the client device 311 in step S457. Also in this output process, if necessary, the cloud server 220 converts the protocol and data of the cloud server 220 and the installation program to match the client device 311 based on the output capability of the client device 311. This completes the virtual execution process (so-called virtual application) of the program to the cloud server 220.
- the “installation process” in the present embodiment includes a process of activating a program that has already been installed but has not been activated in response to an alternative installation request, in addition to the process of actually loading the program.
- the problem of the purchased license of the program can be dealt with by counting up by activation.
- the processing of steps S405 to S429 in FIG. 4A can be omitted.
- the installation program can be executed from any client device at a desired time to obtain a processing result.
- FIG. 5 is a block diagram showing a functional configuration of the cloud server 220 according to the present embodiment.
- the cloud server 220 includes a communication control unit 510 that communicates with other servers and client devices via the network 340.
- the request analysis unit 520 analyzes the request from the client device received by the communication control unit 510. In this example, a request from a client device requesting installation of a program or execution of an installation program is analyzed.
- the client registration / authentication / determination unit 530 registers client information included in the request in the client DB 321, refers to the client DB 321, and performs authentication based on the authentication information and determination of the client. As a result, a request for installation of the program from the client device and execution of the installation program is received.
- the client device registration unit 540 registers client device information including the capability of the client device included in the request in the client device DB 322.
- the program registration unit 550 receives the program requested for installation from the client device included in the request and receives the program, and registers it in the installation program DB 323 in association with the client ID.
- the installation execution unit 560 receives the client installation request included in the request, and executes the installation of the program transmitted from the client device to the cloud server 220.
- the transmission data conversion unit 580 and the reception data conversion unit 590 convert the input / output data of the client device into the input / output data of the program in the cloud server 220 at the time of inquiry / response to the client during the installation processing procedure.
- the installation program execution unit 570 receives the client installation program execution request included in the request and executes the installation program in the cloud server 220.
- the transmission data conversion unit 580 and the reception data conversion unit 590 are also in the case of an inquiry / response to the client during the installation program execution procedure.
- input / output data of the client device is converted into input / output data of an installation program in the cloud server 220.
- FIG. 6 is a block diagram showing a functional configuration of the client apparatuses 311 to 316 according to the present embodiment.
- the client devices 311 to 316 include an operation unit 610 including a touch panel and a keyboard, a display unit 671 and a voice output unit 672 as an output unit 670 for outputting information to the client, and a data input as an input unit 640 for the client to input information. Part 641 and voice input part 642.
- the client instruction input from the operation unit 610 is sent to the request transmission unit 620.
- the request transmission unit 620 receives a request for installing a program from the client or an execution request for the installation program, generates a corresponding request message, and transmits the request message to the cloud server 220 via the communication control unit 630.
- Necessary information such as a client ID, a client device ID, program purchase information, and program data is added to the request message.
- the transmission data generation unit converts the data input from the input unit 640 into transmission data, and transmits the transmission data to the cloud server 220 via the communication control unit 630.
- the reception data acquisition unit acquires the reception data received from the cloud server 220 via the communication control unit 630 and converts it into output data that can be output to the output unit 670.
- FIG. 7 is a diagram showing a configuration of the client DB 321 according to the present embodiment.
- the configuration of the client DB 321 in FIG. 7 is an example and is not limited to this.
- the client DB 321 includes a client information DB 710 that stores client information, and a contract level DB 720 that holds the contract level of the client.
- the client information DB 710 stores authentication information 712 such as a password and an authentication ID and a contract level 713 that is also a service level in the client cloud server 220 in association with the client ID 711.
- the contract level DB 720 stores a virtual application execution 722, a virtual installation of a program 723, a virtual PC construction 724, and a program / data storage period 725 in association with the contract level 721.
- a circle indicates that the service is provided, and a cross indicates that the service is not provided.
- FIG. 8 is a diagram showing a configuration of the client device DB 322 according to the present embodiment.
- the configuration of the client device DB 322 in FIG. 8 is an example, and the present invention is not limited to this.
- the client device DB 322 stores a system device 802 that is a component constituting the client device in association with the client device ID 801.
- the system device 802 includes devices such as input / output devices and components such as a CPU and a memory.
- Maker 803 in association with each system device 802.
- a model 804, hardware performance 805, software performance 806, and handleable data 807 are stored. These pieces of information are used for converting the communication protocol when the cloud server 220 communicates with the client device, the command system and the data format when inputting / outputting data, and the like according to the client device.
- FIG. 9 is a diagram showing a configuration of the installation program DB 323 according to the present embodiment.
- the configuration of the installation program DB 323 in FIG. 9 is an example, and the present invention is not limited to this.
- the installation program DB 323 stores installation program data 902, a client ID 903 having ownership of the program, a program provider 904, a purchase contract completed flag 905, an installation date and time 906, and a storage period 907 in association with the installation program ID 901.
- the program provider 904 may be the program distribution server 230.
- FIG. 10 is a block diagram illustrating a hardware configuration of the cloud server 220 according to the present embodiment.
- a CPU 1010 is a processor for arithmetic control, and implements each functional component of the cloud server 220 in FIG. 5 by executing a program.
- the ROM 1020 stores fixed data and programs such as initial data and programs.
- the communication control unit 510 is a communication control unit, and in this embodiment, communicates with the client devices 311 to 316 and the program distribution server 230 via the network 340.
- the number of CPUs 1010 is not limited to one, and may be a plurality of CPUs or may include a GPU (GraphicsGraphProcessing Unit) for image processing.
- the RAM 1040 is a random access memory used by the CPU 1010 as a temporary storage work area.
- the RAM 1040 has an area for storing data necessary for realizing the present embodiment.
- the client device ID 1041 is an identifier of the client device that is communicating.
- the client device information 1042 is information including the capability information of the client device in communication and the devices constituting the client device.
- the client ID / authentication information 1143 is data of a client ID and authentication information of a client who has requested installation of the program or execution of the installation program.
- a program 1044 is a program requested to be installed by a client.
- the program purchase information 1045 is information that proves that the client has purchased the program 1044.
- the program execution table 1046 is a table for managing execution of the installation program when it is executed.
- the data conversion table 1047 is a table for adjusting a difference in a protocol, a data format, and the like between client apparatuses communicating with the cloud server 220.
- the installation transmission / reception data 1048 is data transmitted / received to / from the client apparatus during installation of the program.
- the installation program transmission / reception data 1049 is data to be transmitted / received to / from the client apparatus during execution of the installation program.
- the storage 1050 stores a database, various parameters, or the following data or programs necessary for realizing the present embodiment.
- the client DB 321 is the database shown in FIG.
- the client device DB 322 is the database shown in FIG.
- the installation program DB 323 is the database shown in FIG.
- the data conversion DB 1051 is a database that stores conversions such as protocols and data formats between communicating apparatuses in association with combinations of apparatuses.
- the storage 1050 stores the following programs.
- the cloud server control program 1052 is a program that controls the entire cloud server 220.
- the program installation control module 1053 is a module for installing the client-owned program requested by the client in the cloud server control program 1052 into the cloud server 220 (see FIG. 13A).
- the installation program execution module 1054 is a module that virtually executes the installation program in place of the client device in the cloud server control program 1052 (see FIG. 13B).
- the client device data conversion module 1055 is a protocol conversion / data conversion that facilitates the exchange of information between the client device and the cloud server 220 during program installation and execution of the installation program. It is a module for.
- FIG. 10 shows data and programs related to the present embodiment, and general-purpose data and programs in the cloud server are not shown.
- FIG. 11A is a diagram showing a configuration of the data conversion DB 1051 according to the present embodiment.
- the data conversion DB 1051 stores a data conversion table 1103 for data conversion and a protocol conversion table 1104 for protocol conversion in association with the combination of the first device 1101 and the second device 1102.
- FIG. 11B is a diagram showing the configuration of the program execution table 1046 according to this embodiment.
- the program execution table 1046 is associated with the installation program ID 1111 and the client ID 1112, and the program status 1116 such as the currently used client device ID 1113, the execution start time 1114 and the end time 1115, and whether execution or waiting is interrupted.
- the program status 1116 such as the currently used client device ID 1113, the execution start time 1114 and the end time 1115, and whether execution or waiting is interrupted.
- FIG. 11C is a diagram showing the configuration of the data conversion table 1047 according to this embodiment.
- the data conversion table 1047 includes a conversion necessity table 1120 for storing whether or not data conversion is necessary between the installation program and the input / output devices constituting the client device, and a conversion data table for storing the data conversion table to be used. 1130.
- the conversion necessity table 1120 stores the input / output device 1122 constituting the client device in communication corresponding to the installation program ID 1121. Then, input / output data 1123 corresponding to the input / output device 1122 and data conversion necessity 1124 determined from the combination result are stored.
- the conversion data table 1130 stores a data conversion table 1133 to be used, which is determined by referring to the data conversion DB 1051 from the combination of the input / output data 1131 of the client device and the use data 1132 of the installation program.
- the data conversion table 1047 is also used in the program before installation when data conversion with the client device is necessary.
- FIG. 12 is a flowchart showing a processing procedure of the cloud server 220 according to the present embodiment. This flowchart is executed by the CPU 1010 of FIG. 10 using the RAM 1040, and implements the functional configuration unit of FIG. This flowchart starts when an event such as reception from a client device occurs.
- step S1211 the cloud server 220 determines whether a program installation instruction has been received from the client device.
- step S1231 the cloud server 220 determines whether execution of the installation program is received from the client device.
- step S1213 the cloud server 220 confirms whether the client owns the program instructed to install from the program purchase information included in the acquired client information. That is, the cloud server 220 confirms data indicating whether the client has purchased the program. If ownership cannot be confirmed, the process ends without installing the program.
- the cloud server 220 proceeds to step S1217 and receives the program to be installed from the client device. Subsequently, in step S1219, the cloud server 220 acquires the capability of the client device. The client information, the program, and the capabilities of the client device may be received from the client device in one message at the same time. Next, the cloud server 220 executes a program installation process in step S1221 (see FIG. 13A). When the program installation is completed, the cloud server 220 transmits an installation completion notification or an error notification to the client device in step S1223, and ends the installation process.
- step S1233 the cloud server 220 authenticates the client from the client authentication information included in the acquired client information. If the client authentication cannot be performed, the cloud server 220 ends the process without executing the installation program.
- the cloud server 220 proceeds to step S1237 and acquires the capability of the client device.
- the client information and the capability of the client device may be received from the client device in one message at the same time.
- the cloud server 220 executes an installation program execution process (see FIG. 13B).
- the cloud server 220 transmits the execution result to the client device in step S1241, and ends the execution process of the installation program.
- FIG. 13A is a flowchart showing the processing procedure of the program installation processing S1221 according to this embodiment.
- the client operating the client device performs the operation procedure as if it were installed on the client device. That is, in the present embodiment, all installation processes are not thrown to the cloud server 220.
- FIG. 13A shows only the initial procedure of the program installation process, but only the explanation thereof represents the characteristic process of the present embodiment, and the subsequent procedure is omitted. Further, in FIG. 13A, a step when data conversion is necessary between the cloud server 220 and the client device is illustrated by a broken line. If data exchange is possible without data conversion, the data conversion at the step shown by the broken line is skipped.
- step S1311 the cloud server 220 transmits an inquiry screen for a client operating the client device to instruct the start of installation. In this case, if data conversion is necessary, the cloud server 220 transmits the inquiry screen with data changed in step S1313.
- step S1315 the cloud server 220 waits for a client response, and if there is no response, the cloud server 220 stores an installation error in step S1335.
- the cloud server 220 proceeds to step S1319 and starts installing the program. Also in this case, if data conversion is necessary, the cloud server 220 converts the response data into data that can be analyzed by the program in step S1317. Next, if the program is installed from the CD / DVD, the cloud server 220 requests the client device to input a product key by the client in step S1321. Also in this case, if data conversion is necessary, the cloud server 220 changes and transmits the product key request screen in step S1323.
- step S1325 the cloud server 220 waits for reception of a product key input by the client, and when received, in step S1329, the cloud server 220 determines whether the product key corresponds to the product key associated with the program to be installed. Also in this case, if data conversion is necessary, the cloud server 220 converts the response data into data that can be analyzed by the program in step S1327.
- step S1329 the cloud server 220 transmits an installation error to the client device in step S1333. If the product key corresponds in the determination in step S1329, the cloud server 220 proceeds to the next installation procedure. As described above, the subsequent installation procedure is omitted. In step S1331, the cloud server 220 determines whether installation is complete. If completed, the cloud server 220 stores installation completion in step S1333 and returns.
- FIG. 13B is a flowchart showing a processing procedure of installation program execution processing S1239 according to the present embodiment.
- the client operation is required from the client device during the procedure of executing the installation program, or when there is data exchange with the client device, it is as if the client is operating the client device.
- steps when data conversion is necessary between the cloud server 220 and the client device are illustrated by broken lines. If data exchange is possible without data conversion, the data conversion at the step shown by the broken line is skipped.
- the cloud server 220 starts executing the installation program in step S1330.
- the cloud server 220 determines whether there is an inquiry to the client.
- the cloud server 220 determines whether data output to the client device is required.
- the cloud server 220 determines whether data input from the client device is required.
- the cloud server 220 transmits the inquiry to the client device in step S1343, and waits for a response from the client device in step S1345. If data conversion is necessary, the cloud server 220 converts the data and transmits it to the client device in step S1343. If there is a response to the inquiry, the cloud server 220 acquires the response in step S1347. Also in this case, when data conversion is necessary, the cloud server 220 performs data conversion in step S1347 and acquires the data.
- the cloud server 220 proceeds to step S1353 and outputs the data to the client device. If data conversion is necessary, the cloud server 220 converts the data in step S1353 and transmits it to the client device.
- step S 1363 If there is a data input request from the installation program to the client device, the cloud server 220 proceeds to step S 1363 and transmits a data input instruction to the client device. If data conversion is necessary, the cloud server 220 converts the data in step S 1363 and transmits it to the client device. The cloud server 220 waits for data input from the client device in step S1365, and if there is data input, acquires the input data in step S1367. Also in this case, when data conversion is necessary, the cloud server 220 performs data conversion in step S1367 and acquires it.
- FIG. 14 is a block diagram showing a hardware configuration of the client apparatuses 311 to 316 according to this embodiment.
- a CPU 1410 is a processor for arithmetic control, and implements each functional component of the client devices 311 to 316 in FIG. 6 by executing a program.
- the ROM 1420 stores fixed data and programs such as initial data and programs.
- the communication control unit 630 is a communication control unit, and in the present embodiment, communicates with the cloud server 220 via a network. Note that the CPU 1410 is not limited to one, and may be a plurality of CPUs or may include a GPU for image processing.
- the RAM 1440 is a random access memory used by the CPU 1410 as a work area for temporary storage.
- the RAM 1440 has an area for storing data necessary for realizing the present embodiment.
- the own device ID 1441 is an identifier of the own client device.
- the own device information 1442 is information such as the configuration and performance of the own device.
- the client ID / authentication information 1443 is data of a client ID and authentication information input by the client.
- the program 1444 is a program that requests the cloud server 220 to install.
- the program purchase information 1445 is information that proves that the client has already purchased the program 1444.
- Input / output data 1446 indicates input / output data input / output via the input / output interface 1460.
- Transmission / reception data 1447 indicates transmission / reception data transmitted / received via the communication control unit 630.
- the storage 1450 stores a database, various parameters, or the following data or programs necessary for realizing the present embodiment.
- the own device performance table 1451 is a table for storing the performance of the components constituting the own device (see FIG. 15).
- the program 1452 is a program stored when the client device can read a program to be installed.
- the storage 1450 stores the following programs.
- the client device control program 1453 is a control program that controls the entire client devices 311 to 316.
- the installation determination module 1454 is a module for determining whether or not the client apparatus control program 1453 can install the program on the own apparatus.
- the installation request module 1455 is a module that requests the cloud server 220 to install a program in the client device control program 1453.
- the data input / output control module 1456 is a module that controls data input / output of the input / output device via the input / output interface 1460.
- the input / output interface 1460 interfaces input / output data with input / output devices.
- the input / output interface 1460 includes a touch panel and a microphone.
- An input unit 640 such as a camera and a GPS (Global Positioning System) position generation unit is connected.
- the input / output interface 1460 is connected to an output unit 670 such as a display unit or a speaker.
- a DVD device 212 that calls a program from a storage medium 212a storing a program to be installed.
- FIG. 14 shows data and programs related to the present embodiment, and general-purpose data and programs in the client device are not shown.
- FIG. 15 is a diagram showing a configuration of the own device performance table 1451 of the client devices 311 to 316 according to the present embodiment.
- the own device performance table 1451 includes an operation condition table 1510 indicating the operation conditions of the own device as performance, and a device performance table 1520 indicating the performance of each device constituting the own device.
- the operation condition table 1510 stores performance data 1512 for each item 1511.
- the device performance table 1520 stores a manufacturer 1522, model and version 1523, and performance data 1524 in association with each device 1521.
- FIG. 16 is a flowchart showing a processing procedure of the client apparatuses 311 to 316 according to this embodiment. This flowchart is executed by the CPU 1410 of FIG. 14 using the RAM 1440, and implements the functional configuration unit of FIG. The flowchart starts when an event such as the start of program installation or an instruction to execute the installation program occurs.
- step S1611 the client apparatus determines whether or not installation of a desired program has started.
- step S1631 the client apparatus determines whether or not an instruction to execute the installation program is given.
- step S1613 determines whether the installation is possible. If installation is possible, the client apparatus proceeds to step S1615 and executes the installation process on the own apparatus.
- step S1617 the client apparatus determines whether or not the client has performed an operation for requesting the cloud server 220 to install a program that cannot be installed (see the central diagram in FIG. 2).
- step S1619 the client device determines whether or not the client has performed an operation for requesting the cloud server 220 to install a program that cannot be installed (see the central diagram in FIG. 2).
- the client device ends the process.
- step S 1621 When the client requests installation on the cloud server 220, the client apparatus proceeds to step S 1621, and transmits program purchase information certifying purchase of the program to the cloud server 220. Then, the client device transmits a program for requesting installation. Note that the program purchase information and the program may be transmitted in one message.
- step S1625 the client device performs an operation process necessary for installation on the cloud server 220 (see FIG. 17A). Note that if the cloud server 220 performs automatic installation processing without a client operation from the client device, step S1625 is skipped.
- step S1633 the client apparatus proceeds to step S1633 and transmits the client ID and client authentication information to the cloud server 220. Then, in step S1635, the client device performs an operation process necessary for executing the installation program on the cloud server 220 (see FIG. 17B). When the cloud server 220 performs the automatic program execution process without the client operation from the client device, step S1635 is skipped.
- FIG. 17A is a flowchart showing a processing procedure of installation operation processing S1625 for the cloud server according to the present embodiment.
- the client apparatus waits for reception of an inquiry from the cloud server 220 in step S1711. If the inquiry is received, the client apparatus proceeds to step S1713 and displays the inquiry on the display unit 671 (see the right diagram in FIG. 2). In step S1715, the client apparatus waits for a client response input to the inquiry. If there is a response input from the client, the client apparatus proceeds to step S1717 and transmits the response input to the cloud server 220. Thereafter, the client apparatus repeats necessary inquiries / responses, which are omitted in FIG. 17A.
- step S1719 the client apparatus waits for an installation completion notification from the cloud server 220. If the installation completion notification is received, the client apparatus proceeds to step S1721, and displays the installation completion on the display unit 671.
- client device may perform audio output in steps S1713 and S1721.
- FIG. 17B is a flowchart showing the processing procedure of the program execution operation processing S1635 for the cloud server according to the present embodiment.
- step S1731 the client apparatus determines whether it has received an inquiry from the cloud server 220 during execution of the installation program. In step S1741, the client apparatus determines whether output data is received from the cloud server 220 to the client apparatus. In step S1751, the client apparatus determines whether the request is for input data from the cloud server 220.
- step S1733 displays the inquiry on the display unit 671.
- step S1735 the client apparatus waits for a client response input to the inquiry. If there is a client response input, the client apparatus proceeds to step S1737 and transmits the response input to the cloud server 220. Note that the client device may perform audio output in step S1733.
- the client apparatus proceeds to step S7431 and outputs the output data to the output unit 670 connected to the client apparatus.
- step S1753 If it is an input data request from the cloud server 220, the client apparatus goes to step S1753 and displays the input data request on the display unit 671. In step S1755, the client apparatus waits for an input operation of the client in response to the input data request. If there is a client input operation, the client apparatus proceeds to step S1757, and transmits input data from the input unit 640 to the cloud server 220. Note that the client device may perform audio output in step S1753.
- the information processing system according to this embodiment does not transmit a program from the client device to the cloud server, but directly installs and executes the program that the client intends to purchase on the cloud server. It is different in point to do. Since other configurations and operations are the same as those of the second embodiment, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the program acquired by the client but not likely to be installed or not likely to be executed is installed by the alternative distribution by the cloud server, it is virtually as if the program is installed on the client device. Can be executed.
- FIG. 18A is a diagram for explaining processing of the information processing system 1800 according to this embodiment.
- the same reference number is attached
- the 18A is a display screen of the display unit 211 that configures the client device 210.
- a condition message 1811 for installing and executing the program A is transmitted from the program distribution server 230 that distributes the program A 231 and displayed.
- the condition message 1811 displays software conditions (such as OS and required software) and hardware conditions (such as CPU capacity, memory capacity, input / output device and communication device capabilities).
- the client can obtain the conditions for installation and execution not via the program distribution server 230 but via other media.
- the client that recognizes that the program A cannot be installed or executed by the client device 210 requests that the client device 210 install and execute the program A on the cloud server 220 as shown in the central diagram. To do.
- a request message 1812 is displayed on the display unit 211 of the client device 210.
- the program to be installed by the client device 210 is not acquired as in the second embodiment, the program is downloaded from the program distribution server 230 to the cloud server 220. Therefore, it is necessary for the client to notify the program distribution server 230 of information for purchasing the program A.
- the program A is installed in the cloud server 1820 by purchasing the program A from the client device 210 via the cloud server 1820.
- the client permission information that the client has permitted to purchase the program A for example, the credit card No.
- the program purchase information for certifying the purchase is transmitted from the client device 210 to the cloud server 1820.
- the cloud server 1820 transmits the client permission information and program purchase information received from the client device 210 to the program distribution server 230 using the cloud server 1820 as a contract partner.
- installation of the program A from the program distribution server 230 to the cloud server 1820 is realized.
- the right figure of FIG. 18A illustrates an example of a display screen of the display unit 211 of the client device 210 when the execution of the program A 1821 installed in the cloud server 1820 is started.
- a message 1813 requesting the client to input a client ID and a mass word is displayed.
- the program A installed in the cloud server 220 can be executed if client authentication is performed.
- the keyboard 213 and the pointing device 214 indicate that they may be desktop PCs or notebook PCs which are different client apparatuses.
- FIG. 18B is a sequence diagram illustrating an operation procedure of the information processing system 1800 according to the present embodiment.
- the same steps as those in FIG. 4 of the second embodiment are denoted by the same step numbers, and description thereof is omitted.
- step S1801 the client apparatus inquires of the program distribution server 230 about the installation conditions for a desired program.
- step S1803 the program distribution server 230 that has received the matching transmits the installation conditions for the desired program in step S1805.
- step S1809 the client device that has received the installation conditions in step S1807 displays the received installation conditions.
- the client If the client sees the installation conditions of the desired program displayed on the client device and determines that the client device cannot be installed, the client requests the cloud server 1820 to perform an alternative installation in step S1811.
- the alternative installation request to the cloud server 1820 includes client information, client device information, program information including a client desired program and a program purchase intention.
- the cloud server 1820 authenticates the client based on the received client information in step S1815, the cloud server 1820 requests the program distribution server 230 to install the program in step S1817.
- the program installation request includes client information, program information, and a cloud server address as an installation request source.
- the program distribution server 230 recognizes the client from the client information received from the cloud server 1820 in step S1819. If client authentication is possible, installation is started in the program corresponding to the program information in step S1821.
- the installation destination of the program is the cloud server 1820, and it is the client of the client device that performs the operation in the installation procedure.
- the cloud server 1820 is instructed to start installation from the program distribution server 230 in step S1823, and starts installing the program in the virtual PC of the cloud server 1820 in step S407.
- the installation processing procedure sequentially proceeds between the program distribution server 230 and the cloud server 1820.
- step S1829 If there is an inquiry including a program purchase contract from the program distribution server 230 to the client while the installation processing procedure is in progress, the inquiry is transmitted to the cloud server 1820 in step S1829.
- the inquiry is transmitted to the client device via the cloud server 1820 and displayed as in step S1831.
- a response to the inquiry in step S417 is also transmitted to the program distribution server 230 via the cloud server 1820 as in step S1833.
- step S1835 the program distribution server 230 receives the client response from the client device. Then proceed to the next installation procedure.
- step S1837 the program distribution server 230 determines whether or not the installation is complete. If the installation is not completed, the process returns to step S1825 and proceeds to the next installation procedure. If the installation is completed, an installation completion notification is transmitted to the cloud server 1820 in step S2839. The installation completion notification is transmitted to the client device via the cloud server 1820 as in step S1841. In step S429, the client device displays installation completion and notifies the client.
- the information processing system according to the present embodiment differs from the third embodiment in that a program purchased by a client is transferred to a cloud server, installed on the cloud server, and executed. Since other configurations and operations are the same as those in the third and third embodiments, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the virtual machine since the contract is transferred so that the program acquired by the client but not likely to be installed or likely to be executed is installed on the cloud server, the virtual machine appears as if the program is installed on the client device. Can be executed.
- FIG. 19A is a diagram for explaining processing of the information processing system according to the present embodiment.
- the same reference numerals are assigned to the processes similar to those in FIG. 18A of the third embodiment, and the description thereof is omitted.
- the left diagram in FIG. 19A is the same as the left diagram in FIG. 18A.
- the client that recognizes that the program A cannot be installed or executed by the client device 210 requests that the client device 210 install and execute the program A on the cloud server 220 as shown in the central diagram. To do.
- a request message 1912 is displayed on the display unit 211 of the client device 210.
- a program purchase contract is made in advance between the client device 210 and the program distribution server 230.
- the client transmits the purchase contract information from the client device to the program distribution server 230 via the cloud server 1920, whereby the program is installed on the cloud server 1920. Therefore, as shown in the central diagram of FIG. 19A, the client device 210 exchanges a purchase contract for the desired program with the program distribution server 230. Thereafter, the purchase contract information is transmitted to the program distribution server 230 via the cloud server 1920, thereby realizing installation of the program on the cloud server 1920.
- the right diagram in FIG. 19A illustrates an example of the display screen of the display unit 211 of the client device 210 when the execution of the program A 1821 installed in the cloud server 1820 is started, and is the same as the right diagram in FIG. 18A.
- FIG. 19B is a sequence diagram illustrating an operation procedure of the information processing system according to the present embodiment.
- the same steps as those in FIG. 4 of the second embodiment or FIG. 18B of the third embodiment are denoted by the same step numbers, and description thereof is omitted.
- FIG. 19B shows the procedure up to the start of installation, and will be omitted hereinafter.
- Steps S1801 to S1809 are installation condition inquiry processing corresponding to the left diagram of FIG. 19A.
- the client operates the client device to exchange a purchase contract for the desired program with the program distribution server 230. Then, the client acquires program purchase contract information.
- step S1911 the client apparatus requests the cloud server 1920 for alternative installation.
- the program purchase contract information and the client device information are transmitted to the cloud server 1920 in step S 1913.
- step S1915 the cloud server 1920 transmits the program purchase contract information and the cloud server address to the program distribution server 230, and thereafter, the installation procedure similar to FIG. 18B is started.
- the information processing system according to the present embodiment is different from the second to fourth embodiments in that a client device divides and executes a part of a program installed in a cloud server.
- the client can select whether to perform the shared execution or to have the cloud server execute all of them. Since other configurations and operations are the same as those of the second to fourth embodiments, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the client device and the cloud server divide the program and perform cooperative processing, it can be executed virtually as if the program was installed on the client device. It is also possible to prevent leakage of client authentication information and client device infection as much as possible.
- FIG. 20A is a sequence diagram showing an operation procedure 2000-1 of the information processing system 2000 according to the present embodiment.
- FIG. 20A shows an execution procedure of the installation program after the installation of the program on the cloud server 2020 is completed.
- the same step numbers are assigned to the same operation procedures as those of FIG. 4 of the second embodiment, and the description thereof is omitted.
- step S2001 the cloud server 2020 that has received the installation program execution instruction from the client device acquires the client device information.
- the client device information may be acquired from the client device DB registered in advance based on the client device ID, or may be received from the client device.
- step S2003 a portion that can be executed by the client apparatus is selected from the installation program based on the acquired client apparatus information (see FIG. 22).
- step S2005 the part of the selected installation program is downloaded to the client device.
- step S435 the execution part of the cloud server 2020 is started on the virtual PC.
- step S2007 the client apparatus receives the selection program downloaded from the cloud server 2020 and starts executing it.
- indispensable control in this embodiment is to synchronize the program execution of the cloud server 2020 and the program execution of the client device.
- the synchronization may be performed by a control signal or message, or may be performed by data input / output.
- the execution of the program processing procedure in step S437 of the cloud server 2020 is synchronized with the execution of the program processing procedure in step S2009 of the client device.
- Synchronization by transmission / reception of the synchronization signal in step S2011 and input / output information transmission / reception in step S2013 are performed. Note that steps S2011 and S2013 symbolize the respective synchronization processes.
- step S2015 the client apparatus waits for a client program end instruction. If there is no program end instruction, the process returns to step S2009 to continue the processing. If there is a program end instruction, the process advances to step S2017 to transmit end information to the cloud server 2020. Receiving the end information in step S2019, the cloud server 2020 ends the installation program processing.
- FIG. 20B is a sequence diagram showing an operation procedure 2000-2 of the information processing system 2000 according to the present embodiment.
- the operation procedure after step S435 or S2005 similar to FIG. 20A is omitted.
- step S2021 the cloud server 2020 inquires of the client apparatus whether or not the dividing process is performed by the client apparatus.
- step S2023 the client inputs a response as to whether or not the division processing is to be executed by the client device. If the response from the client device is approval for split execution in step S2025, the cloud server 2020 performs the process of FIG. 20A below. However, if the divided execution is rejected, the installation program is all executed in the cloud server 2020 without downloading the selected program portion.
- the cloud server 2020 since the response of the client that rejects the division execution also has a meaning of preventing leakage of the authentication information of the client and the infection of the client device, the cloud server 2020 thereafter uses the authentication information of the quad server 2020 if the authentication information is necessary. It is desirable to use it as temporary authentication information and operate to minimize information exchange with the client device.
- FIG. 21 is a block diagram illustrating a functional configuration of the cloud server 2020 according to the present embodiment.
- the same functional components as those in FIG. 5 of the second embodiment are denoted by the same reference numerals, and the description thereof is omitted.
- 21 shows a configuration (see the third and fourth embodiments) where the program is installed directly on the cloud server 2020 from the program distribution server 230, it may be an upload from a client device. .
- the program installation unit 2151 installs a program from the program distribution server 230 in cooperation with the program registration unit 2150 and the installation execution unit 2160. When uploading from a client device, the program installation unit 2151 is not provided, as in FIG.
- the installation program division unit 2171 has a program processing division table 2171a (see FIG. 22), and divides a part of the installation program that can be executed by the client device.
- the divided install program portion is downloaded to the client device by the divided program download unit 2172.
- the installation program is uploaded from the client device, only the identifier for identifying the divided program may be transmitted to the client device without downloading the divided program.
- the division execution inquiry unit 2173 is an optional function configuration unit that performs processing corresponding to the operation procedure in FIG. 20B.
- the division execution inquiry unit 2173 inquires of the client device whether or not to execute division when division execution is possible. If the client response from the client device is to execute the split process, the split program is downloaded and the install program is split. However, if the client response from the client device does not execute the division process, the cloud server 2020 executes the entire installation program without downloading the division program.
- the installation program execution unit 2170 executes the installation program by synchronizing the execution of the divided program downloaded to the client device with the client device and the execution of the remaining installation program with the cloud server 2020.
- the install program dividing unit 2171, the install program executing unit 2170, and the split execution inquiry unit 2173 constitute a split execution control unit.
- FIG. 22 is a diagram showing a configuration of the program processing division table 2171a according to the present embodiment.
- the program processing division table 2171a stores the client device ID 2202 of the client device instructed to execute the installation program and the capability information 2203 included in the client device information in association with the installation program ID 2201. Then, a division program 2204 for the client device divided based on the capability information 2203 of the client device, and a downloaded flag 2205 to the client device for the division program 2204 are stored.
- FIG. 23 is a flowchart showing a processing procedure of installation program division processing according to the present embodiment.
- the left side of FIG. 23 is a flowchart of the client device, and the right side of FIG. 23 is a flowchart of the cloud server 2020.
- FIG. 23 is a flowchart for mainly explaining the synchronization between the client device and the cloud server 2020 and shows a special procedure. However, this procedure can be applied to different processes.
- step S2311 the client apparatus executes the downloaded sharing program.
- the cloud server 2020 executes the remaining sharing program in step S2351.
- the client device waits for input from the input device is shown. If the input from the input device is also necessary for the cloud server 2020, the cloud server 2020 waits for input data from the client device. If neither device input waiting nor data transmission to the cloud server 2020 is performed, the client apparatus proceeds to step S2321.
- the client apparatus proceeds from step S2313 to S2315 and acquires the device input. If the data is transmitted to the cloud server 2020, the process proceeds from step S2317 to S2319, and the device input data is transmitted to the cloud server 2020. On the other hand, if waiting for data reception from the client device, the cloud server 2020 proceeds from step S2353 to S2355, and receives data from the client device in synchronization with step S2319 of the client device.
- the client device waits for the output from the output device.
- the cloud server 2020 waits for transmission of output data to the client device. If neither device output waiting nor data reception from the cloud server 2020 is received, the client apparatus proceeds to step S2329.
- the cloud server 2020 advances from step S2357 to S2359 and transmits data to the client device.
- the client apparatus proceeds from step S2321 to S2323 and receives data from the cloud server 2020 in synchronization with step S2359 of the cloud server 2020. If the device is waiting for device output, the client apparatus proceeds from step S2325 to step S2327 and performs device output.
- step S2329 the client apparatus waits for a program end instruction from the client. If there is an end instruction, the end information is transmitted to the cloud server 2020 in step S2331. In step S2361, the cloud server 2020 receives the end information from the client device and ends the execution of the installation program.
- the information processing system according to the present embodiment starts from the client device when the client device does not satisfy the communication condition with the external device as the communication capability required for executing the program to be installed. The difference is that the program can be executed virtually. Since other configurations and operations are the same as those of the second to fifth embodiments, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the cloud server since the cloud server installs and executes a program that does not satisfy the communication capability of the client device, the communication capability necessary for the client device to execute the program can be virtually realized.
- FIG. 24 is a block diagram illustrating a configuration of an information processing system 2400 according to the present embodiment.
- the same components as those in FIG. 3 of the second embodiment are denoted by the same reference numerals, and description thereof is omitted.
- the cloud server 2420 has a protocol conversion table 2424 for converting the communication protocol of the client devices 311 to 316 into a communication protocol from the cloud server 2420 to an external device.
- an external device for example, a website server 2450 and an SNS server 2460 are connected to the network 340.
- the external device is not limited to this.
- FIG. 25 is a sequence diagram showing an operation procedure of the information processing system 2400 according to the present embodiment. Note that FIG. 25 shows the execution procedure of the installation program after the installation of the program on the cloud server 2020 is completed. In FIG. 25, the same operation steps as those in FIG. 4 of the second embodiment and FIG. 20 of the fifth embodiment are denoted by the same step numbers, and description thereof is omitted.
- step S2501 communication is realized between the transmission / reception of the communication information of the client device and the transmission / reception of the communication information of the cloud server 2420 by a communication protocol or data conversion if necessary.
- step S2503 the communication protocol and data are converted so that communication exchange with an external communication destination apparatus is possible.
- an installation program installed in the cloud server 2020 can be realized regardless of the communication capability of the client device.
- FIG. 26 is a block diagram illustrating a functional configuration of the cloud server 2420 according to the present embodiment.
- the same functional components as those in FIG. 5 of the second embodiment are denoted by the same reference numerals, and description thereof is omitted.
- the protocol conversion unit 2610 has a protocol conversion table (see FIG. 27), and performs protocol conversion so that data can be transmitted and received in accordance with the communication protocol of the external communication destination device according to the communication protocol of the client device. Then, the installation program execution unit 2670 implements communication between the client device and the external communication destination device using the communication protocol converted by the protocol conversion unit 2610.
- FIG. 27 is a diagram showing the configuration of the protocol conversion table 2424 according to this embodiment.
- the protocol conversion table 2424 is associated with a combination of the communication capability 2701 of the client device, the communication capability 2702 of the cloud server, and the communication capability 2703 of the external communication destination, and protocol conversion information 2704 and input / output data conversion information. 2705 is stored.
- the information processing system according to the present embodiment is virtually programmed from the client device when the client device does not satisfy the input / output capability of the device targeted by the program to be installed. It is different in that it is configured to execute. Since other configurations and operations are the same as those of the second embodiment, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the quad server since the quad server installs and executes a program whose client device does not satisfy the input / output capability, the client device can virtually realize input / output of the program.
- FIG. 28 is a sequence diagram showing an operation procedure of the information processing system 2800 according to this embodiment. Note that FIG. 28 shows an installation program execution procedure after the installation of the program on the cloud server 2020 is completed. In FIG. 28, the same operation steps as those in FIG. 4 of the second embodiment and FIG. 20 of the fifth embodiment are denoted by the same step numbers, and description thereof is omitted.
- step S2801 the cloud server 2820 that has received the installation program execution instruction acquires client device information.
- client device information In this example, the configuration and capability of the input / output device of the client apparatus are acquired.
- step S2803 the input / output device of the client apparatus that can be substituted for the input / output device intended by the installation program is determined from the installation program and the input / output device information of the client apparatus. For example, the display device and the voice input / output device can be replaced.
- step S2805 the cloud server 2820 performs input / output device substitution processing by transmitting and receiving input / output information. Specifically, control signal conversion and data format conversion corresponding to the device are performed.
- FIG. 29 is a block diagram illustrating a functional configuration of the cloud server 2820 according to the present embodiment.
- the same functional components as those in FIG. 5 of the second embodiment are denoted by the same reference numerals, and description thereof is omitted.
- the input / output device replacement determination unit 2970 has an input / output device replacement table (see FIG. 30), and replaces the input / output device used by the installation program with the input / output device of the client apparatus.
- the input device substitution control unit 2980 converts and controls a control signal and input data with the input device of the client apparatus so that the input device of the installation program can process in accordance with an instruction from the input / output device substitution determination unit 2970.
- the output device substitution control unit 2990 converts and controls the control signal and the output data in accordance with the instruction from the input / output device substitution determination unit 2970 so that the output to the output device by the installation program can be processed by the output device of the client apparatus.
- FIG. 30 is a diagram showing a configuration of the input / output device substitution table 2971 according to the present embodiment.
- the input / output device substitution table 2971 stores an installation program ID 3001, an input / output device 3002 used by the installation program, a client apparatus ID 3003, and an input device 3004 included in the client apparatus. Then, the device replacement information 3005 and the device replacement parameter 3006 to be replaced are stored in association with the information.
- the information processing system according to the present embodiment allows a cloud server in which a program is installed instead of the client device to directly pass through the client device to the input / output device.
- input / output control is performed so as to perform input / output processing. Since other configurations and operations are the same as those of the second embodiment, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the cloud server processes data input / output even for input / output devices that cannot be recognized by the client device, the input / output device connected to the client device virtually has the input / output capability of the program to be installed. realizable.
- FIG. 31 is a block diagram illustrating the configuration of the information processing system 3100 according to this embodiment.
- the same components as those in FIG. 2 of the second embodiment are denoted by the same reference numerals, and description thereof is omitted.
- the processing up to the alternative installation of the program on the cloud server 3120 is the same as in FIG.
- the client device 312 that is a mobile terminal cannot process input / output data related to the execution of the installed program A. Therefore, the cloud server 3120 directly inputs / outputs to / from the client device 315, which is a digital television, the keyboard 3180, and the pointing device 3190 via the router 3170 connected to the client device 312 via a USB (Universal Serial Bus) 312a.
- USB Universal Serial Bus
- This process enables communication between the cloud server 3120 and the client regardless of the performance of the client device.
- the interface between the client device 312 and the input / output device is not limited to USB.
- FIG. 32 is a sequence diagram showing an operation procedure of the information processing system 3100 according to this embodiment.
- FIG. 32 shows an installation program execution procedure after the installation of the program on the cloud server 2020 is completed.
- the same step numbers are assigned to the same operation procedures as those in FIG. 4 of the second embodiment, and the description thereof is omitted.
- step S3201 the client devices 311 to 316 that acquire the processing result are connected to the input / output device group via the router 3170 with a USB cable.
- step S431 an instruction to execute the installation program is issued to the cloud server 3120 from the client device.
- the cloud server 3120 acquires client device information in step S3203, and determines the capability of the client device in step S3205. In this example, it is determined whether input / output data can be processed in the installation program executed by the cloud server 3120. The processing is shown below when input / output data processing is impossible.
- step S3207 the cloud server 3120 passes the client device and inquires of the input / output device about the capability directly via the router 3170.
- the input / output device returns a response directly to the cloud server 3120 in step S3209.
- the cloud server 3120 starts executing the installation program on the virtual PC in step S435, and then activates the USB compatible input / output driver in step S3211.
- the cloud server 3120 transmits and receives directly with the input / output device.
- step S3213 synchronization by a control signal or the like is taken.
- step S3215 the input / output information is synchronized.
- step S3217 the input / output device waits for a program end instruction from the client. If there is a program end instruction, the process advances to step S3219, and the end information is directly transmitted to the cloud server 3120.
- the program end information in step S3221 is received, and the execution of the installation program ends.
- FIG. 33 is a diagram showing a communication protocol stack according to the present embodiment.
- a USB protocol stack 3310 is a basic configuration of a USB packet that is taken between an input / output device and a router on a USB cable.
- the protocol stack 3320 in which Ethernet (registered trademark) is added to the USB packet is transmitted over a LAN (Local Area Network) between the router 3170 and the requesting client apparatus.
- the protocol stack 3330 to which the IP layer is further added is transmitted over the IP network between the request source client device and the cloud server 3120.
- the processing result can be output or edited regardless of the processing performance of the requesting client device.
- the information processing system according to the present embodiment accumulates the related information of programs installed by the cloud server in place of the client device and the history of information related to the installation. This is different in providing information from other clients. Since other configurations and operations are the same as those of the second embodiment, the same configurations and operations are denoted by the same reference numerals, and detailed description thereof is omitted.
- the cloud server since the cloud server accumulates the history of information related to the program and information related to the installation, the program information and the information related to the installation of the program can be shared by the clients.
- FIG. 34 is a block diagram showing the configuration of the information processing system 3400 according to this embodiment.
- the same functional components as those in FIG. 3 of the second embodiment are denoted by the same reference numerals, and description thereof is omitted.
- the cloud server 3420 in the information processing system 3400 has an installation related information DB 3424 and a program infection information DB 3425 that are associated with the installation program DB 323 that stores the history of programs that the cloud server 3420 installs and executes.
- the installation related information DB 3424 stores information such as installation conditions at the time of program installation and desirable installation methods in association with programs.
- information such as installation conditions at the time of program installation and desirable installation methods in association with programs.
- a history of reasons why the program could not be installed on the client device and why the program could not be executed is accumulated.
- hints as to how the installation and program execution were possible even with the current client device are accumulated as subsequent information. Therefore, an appropriate client installation process can be supported by accessing from a client device or by providing information from the cloud server 3420.
- infection information at the time of installation of the program accumulated in the installation program DB 323 and execution information during execution include infection information by communication with an external device or data transfer with other programs. History is accumulated. Accumulation of completed information in the cloud server 3420 is not a personal experience but collective knowledge of information from all clients. Therefore, an objective evaluation with a wider field of view is possible. Therefore, by accessing from the client device or by providing information from the cloud server 3420, it is possible to acquire appropriate information for preventing the client from infecting the client device.
- the present invention may be applied to a system composed of a plurality of devices, or may be applied to a single device. Furthermore, the present invention can also be applied to a case where a control program that realizes the functions of the embodiments is supplied directly or remotely to a system or apparatus. Therefore, in order to realize the functions of the present invention on a computer, a control program installed in the computer, a medium storing the control program, and a WWW (World Wide Web) server that downloads the control program are also included in the scope of the present invention. include.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
Description
第1情報処理装置と第2情報処理装置とが通信接続される情報処理システムであって、
前記第1情報処理装置が取得しても実行できないプログラムを前記第2情報処理装置にインストールすることを、前記第1情報処理装置から前記第2情報処理装置に依頼するインストール依頼手段と、
前記インストール依頼手段によって依頼された前記プログラムを、前記第2情報処理装置にインストールするプログラムインストール手段と、
前記第2情報処理装置にインストールした前記プログラムの実行と前記第1情報処理装置における前記プログラムに対する操作とを同期させる同期手段と、
を備える。
第1情報処理装置と第2情報処理装置とが通信接続される情報処理システムの情報処理方法であって、
前記第1情報処理装置が取得しても実行できないプログラムを前記第2情報処理装置にインストールすることを、前記第1情報処理装置から前記第2情報処理装置に依頼するインストール依頼ステップと、
前記インストール依頼ステップにおいて依頼された前記プログラムを、前記第2情報処理装置にインストールするプログラムインストールステップと、
前記第2情報処理装置にインストールした前記プログラムの実行と前記第1情報処理装置における前記プログラムに対する操作とを同期させる同期ステップと、
を含む。
他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信手段と、
前記プログラムをインストールするプログラムインストール手段と、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期手段と、
を備える。
他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信ステップと、
前記プログラムをインストールするプログラムインストールステップと、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期ステップと、
を含む。
他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信ステップと、
前記プログラムをインストールするプログラムインストールステップと、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期ステップと、
をコンピュータに実行させる。
自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼手段と、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期手段と、
を備える。
自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼ステップと、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期ステップと、
を含む。
自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼ステップと、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期ステップと、
をコンピュータに実行させる。
本発明の第1実施形態としての情報処理システム100について、図1を用いて説明する。情報処理システム100は、第1情報処理装置101と第2情報処理装置102とが通信接続されるシステムである。
次に、本発明の第2実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、クアイアント装置がプログラムをインストールできない場合、あるいはプログラムを実行できない場合に、当該プログラムをクライアント装置からクラウドサーバ(アプリケーションサーバを含む)へプログラム送信する。そして、当該プログラムをクラウドサーバにインストールして実行する。
図2は、本実施形態に係る情報処理システム200の処理を説明する図である。
図3は、本実施形態に係る情報処理システム200の構成を示すブロック図である。
図4A及び図4Bは、本実施形態に係る情報処理システム200の動作手順を示すシーケンス図である。以下、クライアント装置311~316は、クライアント装置311を代表させて説明する。
の動作手順を説明する。
図5は、本実施形態に係るクラウドサーバ220の機能構成を示すブロック図である。
図6は、本実施形態に係るクライアント装置311~316の機能構成を示すブロック図である。
図7は、本実施形態に係るクライアントDB321の構成を示す図である。なお、図7のクライアントDB321の構成は一例であって、これに限定されない。
図8は、本実施形態に係るクライアント装置DB322の構成を示す図である。なお、図8のクライアント装置DB322の構成は一例であって、これに限定されない。
図9は、本実施形態に係るインストールプログラムDB323の構成を示す図である。なお、図9のインストールプログラムDB323の構成は一例であって、これに限定されない。
図10は、本実施形態に係るクラウドサーバ220のハードウェア構成を示すブロック図である。
図11Aは、本実施形態に係るデータ変換DB1051の構成を示す図である。
図11Bは、本実施形態に係るプログラム実行テーブル1046の構成を示す図である。
図11Cは、本実施形態に係るデータ変換用テーブル1047の構成を示す図である。
図12は、本実施形態に係るクラウドサーバ220の処理手順を示すフローチャートである。このフローチャートは、図10のCPU1010がRAM1040を使用して実行し、図5の機能構成部を実現する。また、このフローチャートは、クライアント装置からの受信などのイベント発生によりスタートする。
図13Aは、本実施形態に係るプログラムインストール処理S1221の処理手順を示すフローチャートである。本実施形態においては、プログラムインストールの手順中、クライアント装置を操作するクライアントは、あたかもクライアント装置にインストールしているかのように操作手順を行なう。すなわち、本実施形態では、クラウドサーバ220にインストール処理を全て投げてしまうことはない。
図13Bは、本実施形態に係るインストールプログラム実行処理S1239の処理手順を示すフローチャートである。本実施形態においては、インストールプログラム実行の手順中、クライアント装置からのクライアントの操作が必要な場合、あるいは、クライアント装置とのデータ交換がある場合、あたかもクライアントはクライアント装置に操作しているかのように処理する。なお、図13Aと同様に、図13Bにおいては、クラウドサーバ220とクライアント装置との間でテータ変換が必要な場合のステップを破線で図示している。データ変換をしなくてもデータ交換が可能な場合には破線で図示したステップのデータ変換はスキップする。
図14は、本実施形態に係るクライアント装置311~316のハードウェア構成を示すブロック図である。
図15は、本実施形態に係るクライアント装置311~316の自装置性能テーブル1451の構成を示す図である。
図16は、本実施形態に係るクライアント装置311~316の処理手順を示すフローチャートである。このフローチャートは、図14のCPU1410がRAM1440を使用して実行し、図6の機能構成部を実現する。また、このフローチャートは、プログラムのインストール開始やインストールプログラムの実行指示などのイベント発生によりスタートする。
図17Aは、本実施形態に係るクラウドサーバに対するインストール操作処理S1625の処理手順を示すフローチャートである。
図17Bは、本実施形態に係るクラウドサーバに対するプログラム実行操作処理S1635の処理手順を示すフローチャートである。
次に、本発明の第3実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態と比べると、クライアント装置からクラウドサーバにプログラムを送信するのでなく、クライアントが購入契約しようとするプログラムを直接、クラウドサーバにインストールして実行する点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図18Aは、本実施形態に係る情報処理システム1800の処理を説明する図である。なお、第2実施形態の図2と同様の構成要素には同じ参照番号を付して、説明を省略する。
図18Bは、本実施形態に係る情報処理システム1800の動作手順を示すシーケンス図である。なお、図18Bにおいて、第2実施形態の図4と同様の手順には同じステップ番号を付して、説明は省略する。
次に、本発明の第4実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第3実施形態と比べると、クライアントが購入契約したプログラムをクラウドサーバに譲渡して、クラウドサーバにインストールして実行する点で異なる。その他の構成および動作は、第および第3実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図19Aは、本実施形態に係る情報処理システムの処理を説明する図である。なお、図19Aの処理において、第3実施形態の図18Aと同様の処理には同じ参照番号を付して、説明を省略する。
図19Bは、本実施形態に係る情報処理システムの動作手順を示すシーケンス図である。なお、図19Bにおいて、第2実施形態の図4あるいは第3実施形態の図18Bと同様の手順には同じステップ番号を付して、説明は省略する。また、本実施形態のインストール手順処理は、第3実施形態の図18Bと同様であるので、図19Bには、インストール開始までの手順を示し、以降は省略する。
次に、本発明の第5実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2乃至第4実施形態と比べると、クラウドサーバにインストールされたプログラムの一部を分割してクライアント装置が分担実行する点で異なる。また、その分担実行を行なうか/クラウドサーバに全て実行させるかをクライアントが選択できる。その他の構成および動作は、第2乃至第4実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図20Aは、本実施形態に係る情報処理システム2000の動作手順2000-1を示すシーケンス図である。なお、図20Aにおいては、プログラムのクラウドサーバ2020へのインストールを完了した後の、インストールプログラムの実行手順を示す。また、図20Aの処理において、第2実施形態の図4と同様の動作手順には同じステップ番号を付して、説明を省略する。
図21は、本実施形態に係るクラウドサーバ2020の機能構成を示すブロック図である。なお、図21においては、第2実施形態の図5と同様の機能構成部は同じ参照番号を付して、説明は省略する。また、図21においては、プログラムがプログラム配信サーバ230から直接、クラウドサーバ2020にインストールされる場合の構成(第3および第4実施形態参照)を示すが、クライアント装置からのアップロードであってもよい。
図22は、本実施形態に係るプログラム処理分割テーブル2171aの構成を示す図である。
図23は、本実施形態に係るインストールプログラム分割処理の処理手順を示すフローチャートである。図23の左側はクライアント装置のフローチャートであり、図23の右側はクラウドサーバ2020のフローチャートである。図23は、クライアント装置とクラウドサーバ2020との同期を主に説明するフローチャートであり、特殊な手順を示しているが、この手順を異なる処理にも敷衍可能である。
次に、本発明の第6実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2乃至5実施形態と比べると、インストールしたいプログラム実行において必要となる通信能力として外部装置との通信条件をクライアント装置が満たさない場合に、クライアント装置から仮想的にプログラムを実行できるよう構成した点で異なる。その他の構成および動作は、第2乃至第5実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図24は、本実施形態に係る情報処理システム2400の構成を説明するブロック図である。なお、図24において、第2実施形態の図3と同様の構成要素には同じ参照番号を付して、説明は省略する。
図25は、本実施形態に係る情報処理システム2400の動作手順を示すシーケンス図である。なお、図25においては、プログラムのクラウドサーバ2020へのインストールを完了した後の、インストールプログラムの実行手順を示す。また、図25においては、第2実施形態の図4および第5実施形態の図20と同様の動作手順には同じステップ番号を付して、説明は省略する。
図26は、本実施形態に係るクラウドサーバ2420の機能構成を示すブロック図である。なお、図26においては、第2実施形態の図5と同様の機能構成部は同じ参照番号を付して、説明は省略する。
図27は、本実施形態に係るプロトコル変換テーブル2424の構成を示す図である。
次に、本発明の第7実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2乃至第6実施形態と比べると、インストールしたいプログラムが対象とする装置の入出力能力をクライアント装置が満たさない場合に、クライアント装置から仮想的にプログラムを実行できるよう構成した点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図28は、本実施形態に係る情報処理システム2800の動作手順を示すシーケンス図である。なお、図28においては、プログラムのクラウドサーバ2020へのインストールを完了した後の、インストールプログラムの実行手順を示す。また、図28においては、第2実施形態の図4および第5実施形態の図20と同様の動作手順には同じステップ番号を付して、説明は省略する。
図29は、本実施形態に係るクラウドサーバ2820の機能構成を示すブロック図である。なお、図26においては、第2実施形態の図5と同様の機能構成部は同じ参照番号を付して、説明は省略する。
図30は、本実施形態に係る入出力デバイス代替テーブル2971の構成を示す図である。
次に、本発明の第8実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2乃至第7実施形態と比べると、クライアント装置に代わってプログラムをインストールしたクラウドサーバが、クライアント装置をスルーして入出力機器に対して、直接、入出力処理をするように入出力制御を行なう点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図31は、本実施形態に係る情報処理システム3100の構成を説明するブロック図である。なお、図31において、第2実施形態の図2と同様の構成要素には同じ参照番号を付して、説明は省略する。
図32は、本実施形態に係る情報処理システム3100の動作手順を示すシーケンス図である。なお、図32においては、プログラムのクラウドサーバ2020へのインストールを完了した後の、インストールプログラムの実行手順を示す。また、図32においては、第2実施形態の図4と同様の動作手順には同じステップ番号を付して、説明は省略する。
図33は、本実施形態に係る通信プロトコルスタックを示す図である。
次に、本発明の第9実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2乃至第8実施形態と比べると、クラウドサーバが、クライアント装置に代替してインストールしたプログラムの関連情報や、インストールに関連する情報の履歴を蓄積することで、他のクライアントの情報提供する点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図34は、本実施形態に係る情報処理システム3400の構成を示すブロック図である。なお、図34において、第2実施形態の図3と同様の機能構成部には同じ参照番号を付して、説明を省略する。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されものではない。本発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。
Claims (31)
- 第1情報処理装置と第2情報処理装置とが通信接続される情報処理システムであって、
前記第1情報処理装置が取得しても実行できないプログラムを前記第2情報処理装置にインストールすることを、前記第1情報処理装置から前記第2情報処理装置に依頼するインストール依頼手段と、
前記インストール依頼手段によって依頼された前記プログラムを、前記第2情報処理装置にインストールするプログラムインストール手段と、
前記第2情報処理装置にインストールした前記プログラムの実行と前記第1情報処理装置における前記プログラムに対する操作とを同期させる同期手段と、
を備える情報処理システム。 - 前記インストール依頼手段は、前記第1情報処理装置が取得しても実行できない前記プログラムを前記第1情報処理装置から消去する請求項1に記載の情報処理システム。
- 前記プログラムインストール手段は、前記第1情報処理装置が取得しても実行できなかった場合、前記第1情報処理装置から前記第2情報処理装置に、前記プログラムを送信するプログラム送信手段を有する請求項1または2に記載の情報処理システム。
- 前記プログラムインストール手段は、前記第1情報処理装置が取得しても実行できそうにない場合、前記第1情報処理装置からの指示にしたがって、前記第2情報処理装置に前記プログラムをインストールするインストール指示手段を有する請求項1または2に記載の情報処理システム。
- 前記同期手段は、前記プログラムのうち、前記第1情報処理装置が実行可能な部分は前記第1情報処理装置で実行させる分割実行制御手段を有し、
前記分割実行制御手段は、前記第1情報処理装置からの分割実行の承認を受けた場合に分割処理を実行させる請求項1乃至4のいずれか1項に記載の情報処理システム。 - 前記第1情報処理装置が取得しても実行できないプログラムは、前記第1情報処理装置が前記プログラムを実行するためのソフトウェア条件やハードウェア条件を満たしていないプログラムである請求項1乃至5のいずれか1項に記載の情報処理システム。
- 前記第1情報処理装置が取得しても実行できないプログラムは、前記第1情報処理装置が前記プログラムによる外部装置との通信条件を満たしていないプログラムである請求項1乃至6のいずれか1項に記載の情報処理システム。
- 前記同期手段は、
前記第1情報処理装置の性能を保持する第1情報処理装置データベースと、
前記第1情報処理装置データベースを参照して、前記プログラムの実行中の操作および入出力を前記第1情報処理装置の性能に合わせて変換する変換手段と、
を有する請求項1乃至7のいずれか1項に記載の情報処理システム。 - 前記第1情報処理装置データベースは、前記第1情報処理装置の構成をさらに保持し、
前記同期手段は、前記第1情報処理装置データベースを参照して、前記プログラムの実行中に、前記プログラムが対象とする装置の構成を前記第1情報処理装置の構成に合わせて変更する変更手段を有する請求項8に記載の情報処理システム。 - 前記同期手段は、前記第1情報処理装置が前記プログラムの実行結果を処理する能力が無い場合に、前記第1情報処理装置に接続された入出力機器と情報のやり取りを直接に行なうよう制御する入出力制御手段を有する請求項1乃至9のいずれか1項に記載の情報処理システム。
- 前記第2情報処理装置におけるプログラムおよびインストールに関連する履歴を蓄積する蓄積手段と、
前記蓄積手段に蓄積された履歴を前記第1情報処理装置に提供する提供手段と、
をさらに備える請求項1乃至10のいずれか1項に記載の情報処理システム。 - 第1情報処理装置と第2情報処理装置とが通信接続される情報処理システムの情報処理方法であって、
前記第1情報処理装置が取得しても実行できないプログラムを前記第2情報処理装置にインストールすることを、前記第1情報処理装置から前記第2情報処理装置に依頼するインストール依頼ステップと、
前記インストール依頼ステップにおいて依頼された前記プログラムを、前記第2情報処理装置にインストールするプログラムインストールステップと、
前記第2情報処理装置にインストールした前記プログラムの実行と前記第1情報処理装置における前記プログラムに対する操作とを同期させる同期ステップと、
を含む情報処理方法。 - 他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信手段と、
前記プログラムをインストールするプログラムインストール手段と、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期手段と、
を備える情報処理装置。 - 前記プログラムインストール手段は、前記第1情報処理装置から送信された前記プログラムを受信するプログラム受信手段を有する請求項13に記載の情報処理装置。
- 前記プログラムインストール手段は、前記他の情報処理装置からの指示にしたがって、配信された前記プログラムを受信してインストールする請求項13に記載の情報処理装置。
- 前記同期手段は、前記プログラムのうち、前記他の情報処理装置が実行可能な部分は前記他の情報処理装置で実行させる分割実行制御手段を有する請求項13乃至15のいずれか1項に記載の情報処理装置。
- 前記同期手段は、
前記第1情報処理装置の性能を保持する第1情報処理装置データベースと、
前記第1情報処理装置データベースを参照して、前記プログラムの実行中の操作および入出力を前記第1情報処理装置の性能に合わせて変換する変換手段と、
を有する請求項13乃至16のいずれか1項に記載の情報処理装置。 - 前記第1情報処理装置データベースは、前記第1情報処理装置の構成をさらに保持し、
前記同期手段は、前記第1情報処理装置データベースを参照して、前記プログラムの実行中に、前記プログラムが対象とする装置の構成を前記第1情報処理装置の構成に合わせて変更する変更手段を有する請求項17に記載の情報処理装置。 - 前記同期手段は、前記第1情報処理装置が前記プログラムの実行結果を処理する能力が無い場合に、前記第1情報処理装置に接続された入出力機器と情報のやり取りを直接に行なうよう制御する入出力制御手段を有する請求項13乃至18のいずれか1項に記載の情報処理装置。
- 前記プログラムおよび前記プログラムのインストールに関連する履歴を蓄積する蓄積手段と、
前記蓄積手段に蓄積された履歴を前記第1情報処理装置に提供する提供手段と、
をさらに備える請求項13乃至19のいずれか1項に記載の情報処理装置。 - 他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信ステップと、
前記プログラムをインストールするプログラムインストールステップと、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期ステップと、
を含む情報処理装置の制御方法。 - 他の情報処理装置が実行できないプログラムをインストールする依頼を、前記他の情報処理装置から受信する受信ステップと、
前記プログラムをインストールするプログラムインストールステップと、
インストールした前記プログラムの実行を前記他の情報処理装置における前記プログラムに対する操作に同期させる同期ステップと、
をコンピュータに実行させる情報処理装置の制御プログラム。 - 自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼手段と、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期手段と、
を備える情報処理装置。 - 前記インストール依頼手段は、前記第1情報処理装置が取得しても実行できない前記プログラムを消去する請求項23に記載の情報処理装置。
- 前記自装置が実行できなかった場合、前記他の情報処理装置に、前記プログラムを送信するプログラム送信手段をさらに備える請求項23または24に記載の情報処理装置。
- 前記自装置が実行できなかった場合、前記他の情報処理装置に、配信された前記プログラムを受信してインストールするよう指示する請求項23乃至25のいずれか1項に記載の情報処理装置。
- 前記同期手段は、前記プログラムのうち、前記自装置が実行可能な部分を分割処理する請求項23乃至26のいずれか1項に記載の情報処理装置。
- 前記自装置が取得しても実行できないプログラムは、前記自装置が前記プログラムを実行するためのソフトウェア条件やハードウェア条件を満たしていないプログラムである請求項23乃至27のいずれか1項に記載の情報処理装置。
- 前記自装置が取得しても実行できないプログラムは、前記自装置が前記プログラムによる外部装置との通信条件を満たしていないプログラムである請求23乃至28のいずれか1項に記載の情報処理システム。
- 自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼ステップと、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期ステップと、
を含む情報処理装置の制御方法。 - 自装置が実行できないプログラムを、他の情報処理装置にインストール依頼するインストール依頼ステップと、
前記他の情報処理装置がインストールした前記プログラムの実行に自装置における前記プログラムに対する操作を同期する同期ステップと、
をコンピュータに実行させる情報処理装置の制御プログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380016338.XA CN104205074A (zh) | 2012-03-24 | 2013-03-18 | 信息处理系统、信息处理方法、信息处理设备以及控制方法及其控制程序 |
US14/387,685 US10037200B2 (en) | 2012-03-24 | 2013-03-18 | Synchronizing installation and execution of a program on a second information processing apparatus with a first information processing apparatus which failed installation of the program |
EP13769095.4A EP2829982A1 (en) | 2012-03-24 | 2013-03-18 | Information processing system, information processing method, information processing device, and control method and control program therefor |
CA 2867559 CA2867559A1 (en) | 2012-03-24 | 2013-03-18 | Information processing system, information processing method, information processing apparatus, and control methods and control programs thereof |
AU2013238101A AU2013238101A1 (en) | 2012-03-24 | 2013-03-18 | Information processing system, information processing method, information processing apparatus, and control methods and control programs thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012068507A JP6095091B2 (ja) | 2012-03-24 | 2012-03-24 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム |
JP2012-068507 | 2012-03-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013146410A1 true WO2013146410A1 (ja) | 2013-10-03 |
Family
ID=49259671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/057634 WO2013146410A1 (ja) | 2012-03-24 | 2013-03-18 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US10037200B2 (ja) |
EP (1) | EP2829982A1 (ja) |
JP (1) | JP6095091B2 (ja) |
CN (1) | CN104205074A (ja) |
AU (1) | AU2013238101A1 (ja) |
CA (1) | CA2867559A1 (ja) |
WO (1) | WO2013146410A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077168A (zh) * | 2014-07-15 | 2014-10-01 | 深圳市金立通信设备有限公司 | 一种为终端更新操作系统的方法及设备 |
CN104090805A (zh) * | 2014-07-15 | 2014-10-08 | 深圳市金立通信设备有限公司 | 一种更新终端操作系统的方法、设备及系统 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6155555B2 (ja) * | 2012-05-30 | 2017-07-05 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置、携帯端末およびその制御方法と制御プログラム |
US9525586B2 (en) * | 2013-03-15 | 2016-12-20 | Intel Corporation | QoS based binary translation and application streaming |
JP6357813B2 (ja) * | 2014-03-12 | 2018-07-18 | 富士通株式会社 | 配信方法、リソース取得方法、配信サーバ、及び端末装置 |
JP6570232B2 (ja) * | 2014-10-08 | 2019-09-04 | 株式会社オービックビジネスコンサルタント | サーバ装置、端末装置、情報処理方法、およびプログラム |
US10802811B2 (en) * | 2015-04-14 | 2020-10-13 | Sony Corporation | Information processing device, information processing method, computer program, and server device |
JP6661409B2 (ja) * | 2016-03-01 | 2020-03-11 | キヤノン株式会社 | 自動設置システム、情報処理装置、情報処理装置の制御方法、及びプログラム |
JP6825303B2 (ja) * | 2016-10-27 | 2021-02-03 | 富士ゼロックス株式会社 | 情報処理装置およびプログラム |
CN109460277B (zh) * | 2018-10-30 | 2022-08-05 | 北京小米移动软件有限公司 | 商品抢购流程的展示方法及装置 |
CN112732286B (zh) * | 2019-10-14 | 2024-05-24 | 纬联电子科技(中山)有限公司 | 显示装置与其固件更新方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08221372A (ja) * | 1995-02-10 | 1996-08-30 | Fuji Facom Corp | 分散処理システムにおける空き資源管理装置 |
JP2004234345A (ja) * | 2003-01-30 | 2004-08-19 | Ntt Docomo Inc | アプリケーションプログラム実行装置およびプログラム |
JP2005228183A (ja) * | 2004-02-16 | 2005-08-25 | Hitachi Ltd | プログラム実行方法、および、プログラム実行のための計算機システム |
JP2005228227A (ja) | 2004-02-16 | 2005-08-25 | Nippon Telegr & Teleph Corp <Ntt> | シンクライアントシステム及びその通信方法 |
JP2008059519A (ja) * | 2006-09-04 | 2008-03-13 | Nec Corp | 情報処理システムと情報処理方法およびそのプログラム |
JP2012014688A (ja) * | 2010-06-30 | 2012-01-19 | Internatl Business Mach Corp <Ibm> | プラットフォームに依存しない情報処理システム、通信方法、及びそのコンピュータ・プログラム |
JP2012058837A (ja) * | 2010-09-06 | 2012-03-22 | Sony Corp | 端末装置、情報処理システム、依頼先選択方法、及びプログラム |
JP2012068507A (ja) | 2010-09-24 | 2012-04-05 | Sekisui Chem Co Ltd | エレクトロウェッティングデバイス用エマルジョンインク及びエレクトロウェッティングデバイス |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0659994A (ja) * | 1992-08-10 | 1994-03-04 | Fuji Xerox Co Ltd | リモートインストールシステム |
US6412082B1 (en) * | 1997-12-17 | 2002-06-25 | Sony Corporation | Method and apparatus for selecting computer programs based on an error detection mechanism |
US7143067B1 (en) * | 1999-02-09 | 2006-11-28 | Lenovo (Singapore) Pte. Ltd. | System and method for installing personal computer software |
US8429630B2 (en) * | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
US20070174429A1 (en) * | 2006-01-24 | 2007-07-26 | Citrix Systems, Inc. | Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment |
EP1953995A1 (en) | 2007-01-30 | 2008-08-06 | Seiko Epson Corporation | Application execution system, computer, application execution device, and control method and program for an application execution system |
JP5341317B2 (ja) * | 2007-01-30 | 2013-11-13 | セイコーエプソン株式会社 | アプリケーション実行システム、コンピュータ、アプリケーション実行システムのアプリケーション実行方法およびプログラム |
US7769693B2 (en) * | 2007-03-30 | 2010-08-03 | Cisco Technology, Inc. | Mechanism for secure rehosting of licenses |
JP5047870B2 (ja) * | 2008-04-17 | 2012-10-10 | 株式会社日立製作所 | マスタ管理システム、マスタ管理方法、およびマスタ管理プログラム |
JP5175159B2 (ja) * | 2008-10-24 | 2013-04-03 | 株式会社日立ソリューションズ | 利用者端末装置、及びその制御方法 |
CN101783737A (zh) * | 2009-01-21 | 2010-07-21 | 华为终端有限公司 | 一种配置命令应用结果上报方法、获取方法及装置 |
JP5335504B2 (ja) | 2009-03-19 | 2013-11-06 | キヤノン株式会社 | アプリケーションパッケージング装置、その制御方法、プログラム |
JP5454102B2 (ja) * | 2009-11-25 | 2014-03-26 | 株式会社リコー | ライセンス更新管理装置、ライセンス管理システム、ライセンス更新方法、およびプログラム |
JP5678508B2 (ja) | 2010-07-29 | 2015-03-04 | 日本電気株式会社 | シンクライアントシステム、管理サーバ、仮想マシン作成管理方法及び仮想マシン作成管理プログラム |
JP5703648B2 (ja) * | 2010-09-14 | 2015-04-22 | 株式会社リコー | 情報処理装置、画像処理装置管理システム、情報処理方法およびそのプログラム |
US9021015B2 (en) * | 2010-10-18 | 2015-04-28 | Code Systems Corporation | Method and system for publishing virtual applications to a web server |
US9524179B2 (en) * | 2011-05-05 | 2016-12-20 | Microsoft Technology Licensing, Llc | Virtual-machine-deployment-action analysis |
-
2012
- 2012-03-24 JP JP2012068507A patent/JP6095091B2/ja not_active Expired - Fee Related
-
2013
- 2013-03-18 US US14/387,685 patent/US10037200B2/en active Active
- 2013-03-18 CA CA 2867559 patent/CA2867559A1/en active Pending
- 2013-03-18 EP EP13769095.4A patent/EP2829982A1/en not_active Withdrawn
- 2013-03-18 CN CN201380016338.XA patent/CN104205074A/zh active Pending
- 2013-03-18 WO PCT/JP2013/057634 patent/WO2013146410A1/ja active Application Filing
- 2013-03-18 AU AU2013238101A patent/AU2013238101A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08221372A (ja) * | 1995-02-10 | 1996-08-30 | Fuji Facom Corp | 分散処理システムにおける空き資源管理装置 |
JP2004234345A (ja) * | 2003-01-30 | 2004-08-19 | Ntt Docomo Inc | アプリケーションプログラム実行装置およびプログラム |
JP2005228183A (ja) * | 2004-02-16 | 2005-08-25 | Hitachi Ltd | プログラム実行方法、および、プログラム実行のための計算機システム |
JP2005228227A (ja) | 2004-02-16 | 2005-08-25 | Nippon Telegr & Teleph Corp <Ntt> | シンクライアントシステム及びその通信方法 |
JP2008059519A (ja) * | 2006-09-04 | 2008-03-13 | Nec Corp | 情報処理システムと情報処理方法およびそのプログラム |
JP2012014688A (ja) * | 2010-06-30 | 2012-01-19 | Internatl Business Mach Corp <Ibm> | プラットフォームに依存しない情報処理システム、通信方法、及びそのコンピュータ・プログラム |
JP2012058837A (ja) * | 2010-09-06 | 2012-03-22 | Sony Corp | 端末装置、情報処理システム、依頼先選択方法、及びプログラム |
JP2012068507A (ja) | 2010-09-24 | 2012-04-05 | Sekisui Chem Co Ltd | エレクトロウェッティングデバイス用エマルジョンインク及びエレクトロウェッティングデバイス |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077168A (zh) * | 2014-07-15 | 2014-10-01 | 深圳市金立通信设备有限公司 | 一种为终端更新操作系统的方法及设备 |
CN104090805A (zh) * | 2014-07-15 | 2014-10-08 | 深圳市金立通信设备有限公司 | 一种更新终端操作系统的方法、设备及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2829982A1 (en) | 2015-01-28 |
JP2013200703A (ja) | 2013-10-03 |
CA2867559A1 (en) | 2013-10-03 |
AU2013238101A1 (en) | 2014-10-30 |
CN104205074A (zh) | 2014-12-10 |
JP6095091B2 (ja) | 2017-03-15 |
US20150082299A1 (en) | 2015-03-19 |
US10037200B2 (en) | 2018-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6095091B2 (ja) | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム | |
US8307058B2 (en) | Apparatus, method, and computer program product for processing information | |
CN102202078A (zh) | 用于远程呈现会话服务器场的集中式管理工具 | |
JP5743724B2 (ja) | 管理装置及び管理方法、管理システムとネットワークデバイス | |
JP2010218049A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2006107185A (ja) | オフライン作業可能な端末を有する計算機システム | |
CN110532106B (zh) | 进程间的通讯方法、装置、设备和存储介质 | |
WO2013146084A1 (ja) | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム | |
KR20190110082A (ko) | 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법 | |
US9229699B2 (en) | Method, system and device for execution of a software application | |
US11659059B2 (en) | Parallel sharing of hardware | |
JP2008152553A (ja) | データ更新処理装置、データ更新処理方法及びデータ更新処理プログラム | |
WO2011039887A1 (ja) | 計算機装置 | |
KR20130066419A (ko) | 단말 및 단말에 설치된 프리로드 애플리케이션의 관리 방법 | |
JP7217376B2 (ja) | ブロックチェーンシステム起動方法、装置、機器および記憶媒体 | |
KR101585508B1 (ko) | 군상황도 처리 장치 및 그것의 데이터 처리 방법 | |
KR100759816B1 (ko) | 임베디드 리눅스 커널 및 응용 프로그램의 통합 설정을위한 웹 기반의 개발환경 제공 시스템 및 방법 | |
JP6285579B2 (ja) | ロングポーリング処理方法およびシステム、並びに記録媒体 | |
TWI588661B (zh) | 硬體匯流排重新導向技術 | |
JP4909332B2 (ja) | 情報処理装置およびデバイス認識方法 | |
JP7106778B1 (ja) | ブロックチェーンシステム実行方法、装置、機器、および記憶媒体 | |
JP2011227810A (ja) | リモートデスクトップシステムおよび携帯通信端末 | |
JP2010237977A (ja) | マルチプロセッサ及び制御プログラム | |
KR20170061993A (ko) | 업데이트 상태 제공 방법 및 장치 | |
WO2013128531A1 (ja) | 計算機システム、その処理方法、及びコンピュータ可読媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13769095 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2867559 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14387685 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013769095 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2013238101 Country of ref document: AU Date of ref document: 20130318 Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |