WO2013146410A1 - 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム - Google Patents

情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム Download PDF

Info

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
Application number
PCT/JP2013/057634
Other languages
English (en)
French (fr)
Japanese (ja)
Inventor
小林 佳和
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to CN201380016338.XA priority Critical patent/CN104205074A/zh
Priority to US14/387,685 priority patent/US10037200B2/en
Priority to EP13769095.4A priority patent/EP2829982A1/en
Priority to CA 2867559 priority patent/CA2867559A1/en
Priority to AU2013238101A priority patent/AU2013238101A1/en
Publication of WO2013146410A1 publication Critical patent/WO2013146410A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/549Remote 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)
PCT/JP2013/057634 2012-03-24 2013-03-18 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム WO2013146410A1 (ja)

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 (US20070167479A1-20070719-C00034.png)
EP (1) EP2829982A1 (US20070167479A1-20070719-C00034.png)
JP (1) JP6095091B2 (US20070167479A1-20070719-C00034.png)
CN (1) CN104205074A (US20070167479A1-20070719-C00034.png)
AU (1) AU2013238101A1 (US20070167479A1-20070719-C00034.png)
CA (1) CA2867559A1 (US20070167479A1-20070719-C00034.png)
WO (1) WO2013146410A1 (US20070167479A1-20070719-C00034.png)

Cited By (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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