WO2010095731A1 - 情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体 - Google Patents

情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体 Download PDF

Info

Publication number
WO2010095731A1
WO2010095731A1 PCT/JP2010/052587 JP2010052587W WO2010095731A1 WO 2010095731 A1 WO2010095731 A1 WO 2010095731A1 JP 2010052587 W JP2010052587 W JP 2010052587W WO 2010095731 A1 WO2010095731 A1 WO 2010095731A1
Authority
WO
WIPO (PCT)
Prior art keywords
processing
processing means
application
processing system
information
Prior art date
Application number
PCT/JP2010/052587
Other languages
English (en)
French (fr)
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 EP10743854.1A priority Critical patent/EP2400395B1/en
Priority to US13/148,842 priority patent/US8805920B2/en
Priority to JP2011500669A priority patent/JP5445578B2/ja
Priority to CN201080008692.4A priority patent/CN102326150B/zh
Publication of WO2010095731A1 publication Critical patent/WO2010095731A1/ja
Priority to US14/289,881 priority patent/US20140344342A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

Definitions

  • the present invention relates to an information processing apparatus, an information processing system, an information processing method, and a program recording medium.
  • processing systems such as an operating system and middleware in the client terminal are open.
  • processing systems are becoming open, in order to protect the processing system from a malicious third party or to correct a malfunction of the processing system that has entered an abnormal state, the user must update the processing system. Or frequent reinstallation is required.
  • Such updating of the processing system is generally performed in a client terminal such as a server device or a PC (Personal Computer).
  • client terminal such as a server device or a PC (Personal Computer).
  • terminals with an open processing system have appeared in mobile terminals such as mobile phones (mobile communication terminals, mobile terminals). Examples of such mobile terminals include Google's Android and Apple's iPhone.
  • Japanese Patent Laid-Open No. 2008-210071 discloses a redundant processing system in either the client terminal or the server device. Is disclosed.
  • both the case where the processing system is made redundant on the server device side and the case where the processing system is made redundant on the client terminal side have the following problems.
  • a redundant configuration is constructed on the server device side
  • the user connects to the server device as a client terminal using, for example, a VNC (Virtual Network Computing) client or a remote connection client (screen transfer client) such as a remote desktop.
  • VNC Virtual Network Computing
  • remote connection client screen transfer client
  • An object is to provide an information processing method and a program recording medium.
  • a first information processing apparatus is an information processing apparatus that performs communication via a network with a server apparatus including a first processing portion in a second processing system including the first and second processing portions.
  • the first processing system includes a first processing system and a second processing part, and the first processing system switches the processing system for executing the application to one of the first and second processing systems, and the second processing system.
  • the processing part executes the process received from the first processing part when the processing system for executing the application is switched from the first processing system to the first processing part.
  • a second information processing apparatus of the present invention is an information processing apparatus that performs communication via a network with a client terminal that includes a first processing system, and includes a second processing system that includes first and second processing parts.
  • the first processing part switches the processing system for executing the application to one of the first and second processing systems in accordance with an instruction from the client terminal.
  • the processing part transmits a part of the process to the client terminal when the processing system for executing the application is switched from the first processing system to the second processing system.
  • the first information processing system of the present invention includes the first information processing apparatus as a client terminal and the second information processing apparatus as a server apparatus.
  • a first information processing method according to the present invention includes a client terminal having a second processing part of a second processing system including a first processing system and first and second processing parts, and a first processing part.
  • An information processing method for performing communication via a network with a server apparatus comprising: a processing system that executes an application is switched to one of a first processing system and a second processing system.
  • the processing system for executing the application is switched from the first processing system to the first processing part, the process received from the first processing part is executed.
  • the first program recording medium of the present invention communicates via a network with a server device including the first processing part of the second processing system including the first and second processing parts, and performs first processing.
  • a recording medium recording a program to be executed by an information processing apparatus including a system and a second processing portion, wherein the processing system for executing an application is set as one of the first and second processing systems A process for switching, and a process for executing the process received from the first process part when the process system for executing the application is switched from the first process system to the first process part. Is recorded on the information processing apparatus.
  • the second program recording medium of the present invention communicates via a network with a client terminal having a first processing system, and the first processing system is a first processing system among the second processing systems including the first and second processing parts.
  • a processing medium for recording a program to be executed by an information processing apparatus including a portion, wherein a processing system that executes an application according to an instruction from a client terminal according to an instruction from the client terminal Processing to switch to one of the systems, and processing to transmit a part of the processing to the client terminal when the processing system that executes the application is switched from the first processing system to the second processing system. Record a program to be executed by the device.
  • FIG. 1 is a diagram illustrating an example of a configuration of an information processing system according to the first embodiment of the present invention.
  • FIG. 2 is a sequence chart showing an example of the operation of the information processing system according to the first embodiment of the present invention.
  • FIG. 3 is a sequence chart showing an example of the operation of the information processing system according to the first embodiment of the present invention.
  • FIG. 4 is a block diagram showing the configuration of the information processing apparatus according to the second embodiment of the present invention.
  • the information processing system according to the first embodiment includes a processing system (application execution system) for executing an application on a client terminal when an operating system, middleware, or the like on the client terminal is updated. Is switched from the processing system to the processing system mainly of the server device.
  • a processing system application execution system
  • the information processing system also executes the switching when an abnormality occurs in the operating system, middleware, or the like, or when a specific environment (position, time, etc.) is reached.
  • the information processing system enables an update process or a recovery process from an abnormal state by continuously operating a processing system local to the client terminal in the background, and an application switched from the client terminal in the server device. Enables processing.
  • the information processing system performs switching of processing systems, the latest data can be used even after switching by performing data synchronization between the processing systems.
  • the client terminal 100 and the server device 200 can communicate via the network 300.
  • the client terminal 100 according to the first embodiment includes a processing system 101 and a processing system 102.
  • the client terminal 100 is an information processing apparatus used by a user (operator) when receiving the information processing service provided by the processing system 101 or the processing system 102.
  • the client terminal 100 is, for example, an electronic device mounted on an automobile or the like, a PC, a mobile phone, an electronic notebook, a PDA (Personal Digital Assistant), a game device, a wristwatch, a car navigation system, or the like.
  • the server device 200 according to the first embodiment is an information processing device that provides an information processing service to the user of the client terminal 100.
  • the server device 200 is, for example, an electronic device mounted on a car or the like, a PC, a mobile phone, an electronic notebook, a PDA, a game device, a wristwatch, a car navigation system, and the like, similar to the client terminal 100.
  • the client terminal 100 and the server device 200 include a memory (not shown) such as a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and a communication device.
  • the client terminal 100 and the server device 200 include a nonvolatile storage device such as a hard disk device, an input device such as a keyboard, a mouse, and a microphone, and an output device such as a display and a speaker, even if they are externally provided. Also good.
  • various functions as the client terminal 100 and the server apparatus 200 are realized by the CPU executing various control programs stored in the memory.
  • the control program executed by the CPU may be received from another information processing apparatus via the network 300, or may be read from a recording medium in which the control program is recorded in advance.
  • the network 300 is a communication path that connects the client terminal 100 and the server device 200 so that they can communicate with each other.
  • the network 300 may be at least partially configured by a wireless communication path.
  • the client terminal 100 includes a processing system 101 as a first processing system and a part of a processing system 102 as a second processing system.
  • the server apparatus 200 includes a processing system 102 as a second processing system.
  • the user can receive the provision of the information processing service via the application 140 or the application 240 by using either the processing system 101 or the processing system 102.
  • the processing system 101 includes a general-purpose operating system 130, an application 140, a database 150, a client synchronization module 160, a switching module 170, other file systems (not shown), and the like.
  • the application 140 provides a service to the user.
  • the database 150 stores data regarding users.
  • the processing system 101 is a processing system that performs all processing on the client terminal 100 including display to the user. In the processing system 102, some elements are provided in the client terminal 100, and other elements are provided in the server apparatus 200.
  • the processing system 102 in the client terminal 100 includes a lightweight client 220.
  • the processing system 102 in the server device 200 includes a general-purpose operating system 230, an application 240, a database 250, a server synchronization module 260, a lightweight client reception application 270, other file systems (not shown), and the like.
  • the client terminal 100 and the server device 200 are connected to each other via a lightweight client 220 and a lightweight client reception application 270, respectively.
  • processes other than some processes such as input / output are executed by the server device 200, and some processes such as display output of process results and instruction input from the user are executed by the client terminal 100.
  • Switching between the processing system 101 and the processing system 102 is performed in conjunction with the switching module 170 of the processing system 101 and the control system 110.
  • the control system 110 can observe and collect environmental information.
  • the environmental information includes, for example, information that can be read by near field communication such as GPS (Global Positioning System) position, current time, and RFID (Radio Frequency Identification).
  • the processing system 101 is normally used as a processing system (application execution system) for executing an application.
  • the application execution system is switched from the processing system 101 to the processing system 102. At this time, the processing system 101 continuously executes update processing or abnormality processing in the background.
  • the processing systems perform data synchronization with each other, so that the execution processing system after the switching can use the latest data.
  • the general-purpose operating system 130 of the processing system 101 for example, Windows, Linux, Symbian, or the like is used.
  • the lightweight client 220 in the processing system 102 for example, a VNC client that is a client for operating a remote PC or server, a remote desktop client, or the like is used. Further, as the lightweight client 220, for example, a browser may be used.
  • the user refers to the schedule data stored in the database 150 using the processing system 101 of the client terminal 100 via the application 140, thereby browsing his / her schedule content, adding or changing the schedule.
  • the schedule function the user can browse the schedule data stored in the database 250 by using the processing system 102 of the client terminal 100 and the server device 200 through the application 240, thereby viewing his / her schedule contents, and A schedule can be added or changed (hereinafter referred to as a schedule function). That is, the user can use the schedule function using either the processing system 101 or the processing system 102.
  • a case will be described in which the user can use the schedule function by using only the processing system 101 as an application execution system. This is called a normal state.
  • the control system 110 of the client terminal 100 determines whether or not it is necessary to switch the processing system (step A1). For example, when the operating system, middleware, or the like is updated, the control system 110 determines that the processing system needs to be switched when an abnormality occurs in the operating system, middleware, or the like. The control system 110 also determines that the processing system needs to be switched when environmental information (for example, GPS position and current time) that is regularly collected by the control system 110 matches a predetermined value. .
  • environmental information for example, GPS position and current time
  • the first embodiment prevents the user from temporarily using the processing system 101 and the application 140 by the following operation.
  • the control system 110 determines that the processing system needs to be switched (step A1 / YES)
  • the client synchronization module 160 and the server synchronization module 260 perform synchronization. (Steps A2, B1).
  • the client synchronization module 160 requests the server synchronization module 260 to receive data
  • synchronous communication is started.
  • the client synchronization module 160 transmits schedule data stored in the database 150 to the server synchronization module 260.
  • the server synchronization module 260 receives the schedule data and stores it in the database 250.
  • the server synchronization module 260 notifies the client synchronization module 160 of the completion of reception, whereby the synchronous communication is terminated.
  • the schedule data in the databases 150 and 250 are synchronized by the client synchronization module 160 and the server synchronization module 260, so that part or all of the schedule data is kept in the same state.
  • the reason why this synchronization is performed will be described.
  • the latest schedule data exists in the database 150 of the client terminal 100.
  • the server apparatus 200 provides a schedule function thereafter, but the latest schedule data exists on the client terminal 100 as described above.
  • the client terminal 100 and the server apparatus 200 perform the above-described synchronization, and the schedule data in the database 250 of the server apparatus 200 needs to be updated. That is, due to this synchronization, the change in the schedule data that occurred in the client terminal 100 before the switching of the processing system is reflected in the server device 200, and the server device 200 can use the latest schedule data after the switching.
  • step A3 switching from the processing system 101 to the processing system 102 is performed (step A3).
  • the switching module 170 stops the execution of the application 140. Further, the lightweight client 220 transfers the switching instruction to the server device 200 via the network 300.
  • the switching instruction is an instruction for switching the application execution system from the current processing system 101 to the processing system 102.
  • this is an instruction for switching the schedule function provided by the application 140 of the client terminal 100 to be provided by the application 240 of the server device 200.
  • the server device 200 when the lightweight client reception application 270 receives a switching instruction from the lightweight client 220, the application 240 starts providing a schedule function as an application execution system. Thereby, the switching of the processing system is completed.
  • the user can use the schedule function with the processing system 102 as an application execution system simultaneously with the update of the general-purpose operating system 130 of the processing system 101. This is called a switching state.
  • the general-purpose operating system 130 is updated in the processing system 101 in the background (step A4).
  • the client terminal 100 communicates with a server device (general operating system provider) different from the server device 200.
  • the lightweight client 220 and the lightweight client reception application 270 perform network communication, whereby the schedule function provided by the application 240 is realized on the client terminal 100.
  • the control system 110 determines that the processing system needs to be switched again.
  • This switching is a process of switching the application execution system from the processing system 102 to the processing system 101.
  • the client synchronization module 160 and the server synchronization module 260 synchronize again (steps A6 and B2).
  • the server synchronization module 260 transmits schedule data stored in the database 250 to the client synchronization module 160.
  • the client synchronization module 160 receives the schedule data and stores it in the database 150. Thereafter, when the client synchronization module 160 notifies the server synchronization module 260 of the completion of reception, the synchronous communication ends.
  • the client synchronization module 160 and the server synchronization module 260 synchronize the schedule data of the database 150 of the client terminal 100 and the schedule data of the database 250 of the server device 200, so that part or all of the schedule data can be obtained. Kept in the same state. Therefore, even after the application execution system is switched from the processing system 102 to the processing system 101 again, the client terminal 100 can use the contents of the latest schedule.
  • switching from the processing system 102 to the processing system 101 is performed (step A7).
  • the switching module 170 resumes the execution of the application 140.
  • the lightweight client 220 transfers the switching instruction to the server device 200 via the network 300.
  • the switching instruction is an instruction for switching the application execution system from the current processing system 102 to the processing system 101.
  • it is an instruction for switching the schedule function provided by the application 240 of the server device 200 so as to be provided by the application 140 of the client terminal 100.
  • the application 240 stops providing the schedule function. Thereby, the switching of the processing system is completed.
  • the user can use the schedule function with only the processing system 101 as the application execution system.
  • the information processing system returns to the normal state.
  • the above is the operation example in the information processing system of the first embodiment. In the above description, data synchronization is performed collectively when the processing system is switched.
  • FIG. 3 is a flowchart showing the operation in this case.
  • the same steps as those in FIG. 2 are denoted by the same reference numerals, and description thereof is omitted here.
  • the server synchronization module 260 and the client synchronization module 160 are synchronized each time the database 250 is changed (step B3 / YES). (Steps B2 and A6). That is, if the user uses the schedule function provided by the application 240 after switching to the processing system 102, for example, the schedule data is changed (step B3 / YES), the changed schedule data is as follows: To be processed.
  • the changed schedule data is stored in the database 250, transmitted to the client terminal 100 (step B2), and stored in the database 150 (step A6).
  • the control system 110 may be configured to include a minimum function necessary for the processing system 102 such as a network function. As a result, even when the general-purpose operating system 130 of the processing system 101 cannot be used, the functions can be executed only by the processing system 102 and the control system 110. Further, in the information processing system according to the first embodiment, the control system 110 provides a function for providing the processing system 101 with a device access device on the client terminal 100, and operates the processing system 101 and the processing system 102. What is necessary is just to have the minimum function.
  • the following effects can be obtained.
  • the reason is that the client terminal includes two processing systems for executing the application, and the other processing system can be used when one processing system is updated or abnormal.
  • the information processing system synchronizes data between the two processing systems, so that the latest data that was used before switching is continuously used in the processing system after switching. can do.
  • the processing system for executing the application is switched from the processing system local to the client terminal to the processing system mainly for the server, it can operate as follows.
  • the server-based processing system is executing the processing
  • the client terminal local processing system update processing or recovery processing from the abnormal state can be performed in the background of the client terminal.
  • the client terminal local processing system and the server-based processing system are configured as independent processing systems on the control system.
  • the server-based processing system of the two processing systems in the client terminal may be a lightweight processing system that performs only input / output on the client terminal.
  • the control system uses the environment information (for example, position information and current time) to switch between the two processing systems, so that the user can use an appropriate processing system according to the situation.
  • the user can use the local processing system of the client terminal when using it in the office, and can use the client terminal as a thin client terminal when going out of the office.
  • the reason is that the control system can switch the processing system from the local processing system of the client terminal to the server-based processing system using sensor information such as GPS and Felica as a trigger. Further, the user can easily ensure security outside the company. The user may erase the data on the client terminal when switching to the server-based processing system.
  • FIG. 4 is a block diagram illustrating a configuration of the information processing apparatus 10 according to the second embodiment.
  • the information processing apparatus 10 performs communication via a network with a server apparatus that includes the first processing portion of the second processing system including the first and second processing portions.
  • the information processing apparatus 10 includes a first processing system 11 and a second processing portion 12.
  • the first processing system 11 switches the processing system that executes the application to one of the first and second processing systems
  • the second processing part 12 includes the first processing system that executes the application.
  • the processing received from the first processing portion is executed.
  • the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments.
  • a program in which a processing sequence is recorded may be installed and executed in a memory in a computer incorporated in dedicated hardware.
  • the program may be installed and executed in a general-purpose computer that can execute various processes.
  • the program may be recorded in advance on a hard disk or a ROM (Read Only Memory) as a recording medium.
  • the program is temporarily or permanently stored on a removable recording medium such as a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto Optical) disc, a DVD (Digital Versatile Disc), a magnetic disc, and a semiconductor memory. It may be stored (recorded).
  • a removable recording medium may be provided as so-called package software.
  • the program may be installed on the computer from the removable recording medium as described above, or may be wirelessly transferred from the download site to the computer.
  • the data may be transferred to the computer by wire via a network such as a LAN (Local Area Network) or the Internet.
  • the computer may receive the transferred program and install it on a recording medium such as a built-in hard disk.
  • An information processing apparatus is, as a first aspect, an information processing apparatus that is used as a client terminal including a first processing system and performs communication via a network with a server apparatus including a second processing system. The processing system for executing the application is switched from the first processing system to the second processing system, and is switched from the second processing system to the first processing system.
  • An information processing apparatus is, as a second aspect, an information processing apparatus that is used as a server apparatus including a second processing system and performs communication via a network with a client terminal including the first processing system.
  • the processing system for executing the application is switched from the first processing system to the second processing system and the second processing system is switched to the first processing system in accordance with an instruction from the client terminal.
  • An information processing system according to the present invention includes the information processing apparatus according to the first aspect of the present invention as a client terminal, and the information processing apparatus according to the second aspect of the present invention as a server apparatus.
  • An information processing method is an information processing method in which a client terminal including a first processing system and a server apparatus including a second processing system perform communication via a network, the processing system executing an application Is switched from the first processing system to the second processing system, or switched from the second processing system to the first processing system.
  • the program of the present invention is a program for performing communication via a network with a server device including a second processing system, and causing a client terminal including the first processing system to execute the program.
  • the computer is caused to execute a process for switching the processing system for executing the process from the first processing system to the second processing system, or a process for switching from the second processing system to the first processing system.
  • a program for performing communication via a network with a client terminal including a first processing system and causing a server apparatus including the second processing system to execute the program.
  • a server apparatus including the second processing system to execute the program.
  • the computer In accordance with an instruction from the terminal, causes the computer to execute a process for switching the processing system for executing the application from the first processing system to the second processing system, or a process for switching from the second processing system to the first processing system. It is characterized by that.
  • This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2009-036483 for which it applied on February 19, 2009, and takes in those the indications of all here.
  • the present invention can be applied to an apparatus, device, system, method, program, or the like that needs to switch a subject that executes an application according to circumstances.
  • 100 client terminals 101 processing system (first processing system), 102 processing system (second processing system), 110 control system, 130 general-purpose operating system, 140 application, 150 database, 160 client synchronization module, 170 switching module, 200 server device, 220 lightweight client, 230 general-purpose operating system, 240 application, 250 database, 260 server synchronization module, 300 network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Processing Of Solid Wastes (AREA)

Abstract

クライアント端末のアプリケーションが一時的に利用停止にされることがなく、継続して利用されることを可能にするため、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備えるサーバ装置とネットワークを介した通信を行う情報処理装置は、第1の処理系と、第2の処理部分を備え、第1の処理系は、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替え、第2の処理部分は、アプリケーションを実行する処理系が第1の処理系から第1の処理部分へ切り替えられたときに、第1の処理部分から受信した処理を実行する。

Description

情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体
 本発明は、情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体に関する。
 従来、クライアント端末とサーバ装置とで通信を行う情報処理システムでは、クライアント端末におけるオペレーティングシステムやミドルウェア等の処理系はオープンになっている。これにより、処理系の変更やアプリケーションの追加などが容易に行われる。
 このような処理系のオープン化が進む一方で、処理系を悪意ある第3者から保護したり、異常状態に陥った処理系の不具合を修正したりするために、ユーザは、処理系の更新又は再インストールを頻繁に行う必要がある。このような処理系の更新は、サーバ装置やPC(Personal Computer)等のクライアント端末において一般的に行われている。現在では、携帯電話等のモバイル端末(移動体通信端末、携帯端末)の中にも、処理系がオープンになっている端末が出現している。このようなモバイル端末には、例えば、Google社のAndroidやApple社のiPhoneなどがある。よって、今後は、ユーザは、モバイル端末をクライアント端末として使用する場合にも、処理系の更新が必要になることが予想される。
 ほとんどの処理系の更新や再インストールは、再起動を伴う。再起動中はユーザは処理系を利用できないので、その処理系上で動作するアプリケーションも利用できないという問題がある。モバイル端末においては、特に、電話機能や電子メール機能などの基本機能はユーザが常時利用できることが望まれる。よって、PCやサーバ装置と同様に、モバイル端末においてユーザが頻繁に処理系を更新する必要が生じると、再起動等により上記基本機能等が一時的に利用できなくなることが多くなるので、ユーザビリティの低下が懸念される。なお、処理系とその処理系上で動作するアプリケーションが利用できなくなる場合として、上述した処理系の更新や再インストールのときの他に、例えば、処理系に異常が発生したとき、特定の環境に到達したときなどがある。
 このような、処理系の更新によってクライアント端末の機能が一時的に利用できなくなる問題を解決するために、例えば特開2008−210071号公報に、クライアント端末又はサーバ装置のいずれかにおいて処理系を冗長化(二重化)する方法が開示される。
 しかしながら、処理系をサーバ装置側にて冗長化する場合、及び、クライアント端末側にて冗長化する場合のいずれにも、以下のような問題がある。
 サーバ装置側にて冗長化構成が構築される場合、ユーザはクライアント端末として、例えばVNC(Virtual Network Computing)クライアントや、リモートデスクトップ等のリモート接続クライアント(画面転送クライアント)を用いて、サーバ装置に接続する。しかし、この構成では、ネットワークが常時接続されていることが前提であるため、ユーザはネットワークが利用できない環境では処理系を利用できないという問題がある。
 クライアント端末側にて冗長化構成が構築される場合、クライアント端末は多くの冗長化のためのメモリやハードディスク等のリソースを備える必要がある。しかしながら、携帯電話等のモバイル端末は、備えられるリソースが制約されるので、処理系全体を冗長化することは困難であるという問題がある。
 本発明は、上記事情に鑑みてなされたものであり、クライアント端末のアプリケーションが一時的に利用停止にされることがなく、継続して利用されることが可能な情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体を提供することを目的とする。
 本発明の第1の情報処理装置は、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備えるサーバ装置とネットワークを介した通信を行う情報処理装置であって、第1の処理系と、第2の処理部分を備え、第1の処理系は、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替え、第2の処理部分は、アプリケーションを実行する処理系が第1の処理系から第1の処理部分へ切り替えられたときに、第1の処理部分から受信した処理を実行する。
 本発明の第2の情報処理装置は、第1の処理系を備えるクライアント端末とネットワークを介した通信を行う情報処理装置であって、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備え、第1の処理部分は、クライアント端末からの指示に従って、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替え、第1の処理部分は、アプリケーションを実行する処理系が第1の処理系から第2の処理系へ切り替えられたときに、処理の一部をクライアント端末に送信する。
 本発明の第1の情報処理システムは、上記第1の情報処理装置をクライアント端末として備え、上記第2の情報処理装置をサーバ装置として備える。
 本発明の第1の情報処理方法は、第1の処理系と第1および第2の処理部分を含む第2の処理系のうち第2の処理部分を備えるクライアント端末と、第1の処理部分を備えるサーバ装置とがネットワークを介した通信を行う情報処理方法であって、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替え、第2の処理部分は、アプリケーションを実行する処理系が第1の処理系から第1の処理部分へ切り替えられたときに、第1の処理部分から受信した処理を実行する。
 本発明の第1のプログラム記録媒体は、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備えるサーバ装置とネットワークを介した通信を行い、第1の処理系と、第2の処理部分とを備える情報処理装置に実行させるためのプログラムを記録した記録媒体であって、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替える処理と、第2の処理部分が、アプリケーションを実行する処理系が第1の処理系から第1の処理部分へ切り替えられたときに、第1の処理部分から受信した処理を実行する処理とを情報処理装置に実行させるためのプログラムを記録する。
 本発明の第2のプログラム記録媒体は、第1の処理系を備えるクライアント端末とネットワークを介した通信を行い、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備える情報処理装置に実行させるためのプログラムを記録した記録媒体であって、クライアント端末からの指示に従って、クライアント端末からの指示に従って、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替える処理と、アプリケーションを実行する処理系が第1の処理系から第2の処理系へ切り替えられたときに、処理の一部をクライアント端末に送信する処理とを情報処理装置に実行させるためのプログラムを記録する。
 本発明によれば、クライアント端末のアプリケーションが一時的に利用停止にされることがなく、継続して利用されることが可能であるという効果が得られる。
 図1は、本発明の第1の実施形態に係る情報処理システムの構成の一例を示す図である。
 図2は、本発明の第1の実施形態に係る情報処理システムの動作の一例を示すシーケンスチャートである。
 図3は、本発明の第1の実施形態に係る情報処理システムの動作の一例を示すシーケンスチャートである。
 図4は、本発明の第2の実施形態に係る情報処理装置の構成を示すブロック図である。
第1の実施形態.
 以下、本発明を実施するための形態(実施形態)について添付図面を参照して詳細に説明する。
 まず、第1の実施形態の情報処理システムの概要について説明する。第1の実施形態の情報処理システムにおいて、クライアント端末とサーバ装置は互いに通信可能である。この第1の実施形態の情報処理システムは、クライアント端末でのオペレーティングシステムやミドルウェア等が更新されるときに、クライアント端末でのアプリケーションを実行するための処理系(アプリケーション実行系)を、クライアント端末ローカルの処理系からサーバ装置主体の処理系へと切り替える。情報処理システムはまた、上記切り替えを、オペレーティングシステムやミドルウェア等に異常が発生したとき、あるいは、特定の環境(位置、時間等)へ到達したときに、実行する。これにより、情報処理システムは、クライアント端末ローカルの処理系をバックグランドで継続して動作させることにより更新処理又は異常状態からの回復処理を可能にするとともに、サーバ装置においてクライアント端末から切り替えられたアプリケーションの処理を可能にする。また、情報処理システムは、処理系の切り替えを実行するときに、処理系間でデータ同期を行うことにより、切り替え後も最新のデータを利用可能にする。
 次に、第1の実施形態の情報処理システムの構成について、図1を参照しながら説明する。第1の実施形態の情報処理システムは、図1に示すように、クライアント端末100とサーバ装置200を備える。クライアント端末100とサーバ装置200は、ネットワーク300を介して通信可能である。
 第1の実施形態のクライアント端末100は、処理系101および処理系102を備える。クライアント端末100は、処理系101または処理系102による情報処理サービスの提供を受けるときに、ユーザ(操作者)により使用される情報処理装置である。クライアント端末100は、例えば、自動車等に搭載される電子機器、PC、携帯電話機、電子手帳、PDA(Personal Digital Assistant)、ゲーム機器、腕時計、カーナビゲーションシステム、などである。
 第1の実施形態のサーバ装置200は、クライアント端末100のユーザへ情報処理サービスを提供する情報処理装置である。サーバ装置200は、例えば、クライアント端末100と同様に、自動車等に搭載される電子機器、PC、携帯電話機、電子手帳、PDA、ゲーム機器、腕時計、カーナビゲーションシステム、などである。
 クライアント端末100及びサーバ装置200は、図示しないCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等のメモリ、通信装置を備える。また、クライアント端末100及びサーバ装置200は、ハードディスク装置等の不揮発性の記憶装置や、キーボード、マウス、マイク等の入力装置、ディスプレイ、スピーカ等の出力装置を、外付けで備えても内蔵してもよい。
 クライアント端末100及びサーバ装置200では、CPUがメモリに記憶される各種制御プログラムを実行することにより、クライアント端末100やサーバ装置200としての各種機能が実現される。なお、CPUにより実行される上記制御プログラムは、ネットワーク300を介して他の情報処理装置から受信されてもよいし、予め制御プログラムを記録した記録媒体から読み出されてもよい。
 ネットワーク300は、クライアント端末100とサーバ装置200とを互いに通信可能に接続する通信路である。ネットワーク300は、少なくとも一部が無線の通信路により構成されてもよい。
 クライアント端末100は、第1の処理系としての処理系101と、第2の処理系としての処理系102の一部とを備える。サーバ装置200は、第2の処理系としての処理系102を備える。ユーザは、処理系101又は処理系102のどちらか一方を利用することにより、情報処理サービスの提供を、アプリケーション140又はアプリケーション240を介して、受けることができる。
 処理系101は、汎用オペレーティングシステム130、アプリケーション140、データベース150、クライアント同期モジュール160、切替モジュール170、図示しないその他ファイルシステム等を備える。アプリケーション140は、ユーザへサービスを提供する。データベース150は、ユーザに関するデータを格納する。処理系101は、ユーザへの表示も含め、全ての処理をクライアント端末100上で行う処理系である。
 処理系102は、一部の要素がクライアント端末100に備えられ、その他の要素がサーバ装置200に備えられる。クライアント端末100における処理系102は軽量クライアント220を備える。サーバ装置200における処理系102は、汎用オペレーティングシステム230、アプリケーション240、データベース250、サーバ同期モジュール260、軽量クライアント受付アプリ270、図示しないその他ファイルシステム等を備える。処理系102においては、クライアント端末100とサーバ装置200は、互いにそれぞれ軽量クライアント220及び軽量クライアント受付アプリ270を介して接続される。処理系102のうち、入出力等の一部の処理以外の処理がサーバ装置200により実行され、処理結果の表示出力、ユーザからの指示入力等の一部の処理がクライアント端末100により実行される。
 処理系101と処理系102の切り替えは、処理系101の切替モジュール170と制御システム110とが連動して行う。なお、制御システム110は、環境情報を観測および収集できる。環境情報には、例えば、GPS(Global Positioning System)位置、現在時刻、RFID(Radio Frequency Identification)等の近距離通信により読取可能な情報などがある。
 クライアント端末100において、通常は、アプリケーションを実行する処理系(アプリケーション実行系)として処理系101が用いられる。一方、クライアント端末100において、例えば処理系101を更新するとき又は処理系101に異常が発生したときに、アプリケーション実行系は処理系101から処理系102に切り替えられる。このとき、処理系101は、更新処理もしくは異常処理をバックグランドで継続して実行する。また、アプリケーションを実行する処理系が処理系101から処理系102に切り替えられるときに、各処理系が互いにデータ同期を行うことにより、切り替え後の実行処理系は最新のデータを利用できる。
 なお、処理系101の汎用オペレーティングシステム130としては、例えば、Windows、Linux、Symbian等が用いられる。また、処理系102における軽量クライアント220としては、例えば、遠隔地のPCやサーバを操作するためのクライアントであるVNCクライアントや、リモートデスクトップクライアント等が用いられる。また、軽量クライアント220として、例えばブラウザが用いられてもよい。
 次に、第1の実施形態の情報処理システムの動作例について、図1及び図2を参照しながら説明する。ここでは、例として、スケジュール機能について説明する。ユーザは、クライアント端末100の処理系101を用いて、データベース150に保存されているスケジュールデータを、アプリケーション140を介して参照することにより、自分のスケジュール内容の閲覧、スケジュールの追加、変更などを行うことができる(以下、スケジュール機能という)。また、ユーザは、クライアント端末100及びサーバ装置200の処理系102を用いて、データベース250に保存されているスケジュールデータを、アプリケーション240を介して参照することにより、自分のスケジュール内容の閲覧、及び、スケジュールの追加、変更などを行うことができる(以下、スケジュール機能という)。つまり、ユーザは、処理系101もしくは処理系102のどちらか一方を用いて、スケジュール機能を利用できる。
 ここでは、例えば、ユーザは、処理系101のみをアプリケーション実行系として使用することにより、上記スケジュール機能を利用できる場合を説明する。これを通常状態と呼ぶ。通常状態のとき、ユーザは、クライアント端末100がネットワーク300に接続されていない状態でもスケジュール機能を利用できる。
 通常状態において、クライアント端末100の制御システム110は、処理系を切り替える必要があるか否かを判断する(ステップA1)。制御システム110は、例えば、オペレーティングシステムやミドルウェア等が更新されるとき、オペレーティングシステムやミドルウェア等に異常が発生したときに、処理系を切り替える必要があると判断する。制御システム110は、また、制御システム110が定期的に収集している環境情報(例えばGPS位置や現在時刻)が予め定められた値と一致したときに、処理系を切り替える必要があると判断する。
 ここでは、例えば、処理系101に含まれる汎用オペレーティングシステム130が更新される必要が生じた場合を説明する。このとき、ユーザが処理系101及びアプリケーション140を一時的に利用できなくなることを、第1の実施形態では以下の動作により防止する。
 汎用オペレーティングシステム130が更新される必要が生じたとき、制御システム110が、処理系を切り替える必要があると判断すると(ステップA1/YES)、クライアント同期モジュール160とサーバ同期モジュール260とが同期を行う(ステップA2、B1)。このとき、クライアント同期モジュール160が、サーバ同期モジュール260に対してデータの受信を要求することにより、同期通信が開始される。クライアント同期モジュール160は、データベース150に格納されているスケジュールデータをサーバ同期モジュール260に送信する。サーバ同期モジュール260は、そのスケジュールデータを受信し、データベース250に格納する。その後、サーバ同期モジュール260が、クライアント同期モジュール160に対して受信完了を通知することにより、同期通信は終了される。このように、データベース150および250内のスケジュールデータを、クライアント同期モジュール160およびサーバ同期モジュール260が同期させることにより、スケジュールデータの一部または全てが同じ状態に保たれる。
 ここで、この同期が行われる理由について説明する。通常状態のとき、最新のスケジュールデータはクライアント端末100のデータベース150に存在する。処理系が処理系101から処理系102へ切り替えられると、その後はサーバ装置200がスケジュール機能を提供するが、上述したように最新のスケジュールデータはクライアント端末100上に存在する。よって、処理系が切り替えられる前にクライアント端末100とサーバ装置200とが上述した同期を行い、サーバ装置200のデータベース250のスケジュールデータを最新にする必要がある。すなわち、この同期により、処理系の切り替え前までにクライアント端末100で生じたスケジュールデータの変更をサーバ装置200に反映させ、切り替え後にサーバ装置200が最新のスケジュールデータを利用できるようになる。
 同期の終了後、処理系101から処理系102への切り替えが行われる(ステップA3)。このとき、切替モジュール170はアプリケーション140の実行を停止させる。また、軽量クライアント220は、切替指示を、ネットワーク300を介してサーバ装置200へ転送する。切替指示とは、アプリケーション実行系を、現在の処理系101から処理系102へ切り替えるための指示である。言い換えると、クライアント端末100のアプリケーション140にて提供されているスケジュール機能を、サーバ装置200のアプリケーション240にて提供されるように切り替えるための指示である。サーバ装置200において、軽量クライアント受付アプリ270が、軽量クライアント220から切替指示を受信すると、アプリケーション240は、アプリケーション実行系としてスケジュール機能の提供を開始する。これにより、処理系の切替が終了する。このとき、ユーザは、処理系101の汎用オペレーティングシステム130の更新と同時に、処理系102をアプリケーション実行系とする上記スケジュール機能の利用を実施できる。これを切替状態と呼ぶ。このように、第1の実施形態では、オペレーティングシステムの更新を原因としてユーザがアプリケーションを一時的に利用できなくなることを防ぐことができる。
 処理系の切り替えの後、処理系101において、汎用オペレーティングシステム130の更新がバックグラウンドで実行される(ステップA4)。この更新において、クライアント端末100はサーバ装置200とは別のサーバ装置(汎用オペレーティングシステムの提供元)と通信を行う。また、ステップA4におけるフォアグラウンドでは、軽量クライアント220と軽量クライアント受付アプリ270とがネットワーク通信を行うことにより、アプリケーション240にて提供されるスケジュール機能がクライアント端末100上で実現される。
 上記切替状態のときに、バックグラウンドで実行されていた汎用オペレーティングシステム130の更新が終了したとき(ステップA5/YES)、制御システム110は、再び処理系の切り替えが必要であると判断する。この切り替えは、アプリケーション実行系を処理系102から処理系101へ切り替える処理である。
 クライアント同期モジュール160と、サーバ同期モジュール260とは、再び同期を行う(ステップA6、B2)。このとき、クライアント同期モジュール160が、サーバ同期モジュール260に対してデータの送信を要求することにより、同期通信が開始される。サーバ同期モジュール260はデータベース250に格納されているスケジュールデータをクライアント同期モジュール160に送信する。クライアント同期モジュール160はそのスケジュールデータを受信し、データベース150に格納する。その後、クライアント同期モジュール160が、サーバ同期モジュール260に対して受信完了を通知することにより、同期通信は終了する。このように、クライアント端末100のデータベース150のスケジュールデータと、サーバ装置200のデータベース250のスケジュールデータとを、クライアント同期モジュール160とサーバ同期モジュール260が同期させることにより、スケジュールデータの一部または全てが同じ状態に保たれる。よって、アプリケーション実行系が再び処理系102から処理系101へ切り替えられた後にも、クライアント端末100が最新のスケジュールの内容を利用することができる。
 同期の終了後、処理系102から処理系101への切り替えが行われる(ステップA7)。このとき、切替モジュール170はアプリケーション140の実行を再開する。また、軽量クライアント220は、切替指示を、ネットワーク300を介してサーバ装置200へ転送する。切替指示とは、アプリケーション実行系を、現在の処理系102から処理系101へ切り替えるための指示である。言い換えると、サーバ装置200のアプリケーション240にて提供されているスケジュール機能を、クライアント端末100のアプリケーション140にて提供されるように切り替えるための指示である。サーバ装置200において、軽量クライアント受付アプリ270が、軽量クライアント220から切替指示を受信すると、アプリケーション240は、スケジュール機能の提供を停止する。これにより、処理系の切替が終了する。このとき、ユーザは、処理系101のみをアプリケーション実行系として、上記スケジュール機能を利用できる。以上の動作により、情報処理システムは通常状態に戻る。
 以上が第1の実施形態の情報処理システムにおける動作例である。なお、上記説明では、処理系が切り替えられるときにまとめてデータの同期が行われるが、データが変更される度にデータの同期が行われてもよい。図3は、この場合の動作を示すフローチャートである。図3において図2と同じステップには同符号を付し、ここでの説明は省略する。図3では、処理系101から処理系102への切り替え後(ステップA3の後)、データベース250が変更される度に(ステップB3/YES)、サーバ同期モジュール260と、クライアント同期モジュール160とが同期を行う(ステップB2、A6)。つまり、処理系102への切り替え後に、ユーザがアプリケーション240により提供されるスケジュール機能を利用して、例えばスケジュールデータを変更したとすると(ステップB3/YES)、変更されたスケジュールデータは、以下のように処理される。すなわち、変更されたスケジュールデータは、データベース250に格納されるとともに、クライアント端末100へ送信され(ステップB2)、データベース150に格納される(ステップA6)。
 なお、第1の実施形態の情報処理システムにおいて、制御システム110は、ネットワーク機能などの処理系102に必要な最低限の機能を含めるように構成されてもよい。これにより、処理系101の汎用オペレーティングシステム130が利用できない場合でも、処理系102及び制御システム110のみで機能の実行が可能になる。
 また、第1の実施形態の情報処理システムにおいて、制御システム110は、クライアント端末100上のデバイスへのアクセス手段を処理系101へ提供する機能や、処理系101及び処理系102を動作させるための最低限の機能を有していればよい。
 以上説明したように、第1の実施形態によれば、以下の効果を奏することができる。
 第1に、クライアント端末のオペレーティングシステム等の更新時や異常時に、アプリケーションを実行するための処理系が、クライアント端末ローカルの処理系からサーバ主体の処理系へと切り替えられるという効果が得られる。そして、切り替え後の処理系にて最新のデータが継続して利用できるという効果が得られる。その理由は、クライアント端末が、アプリケーションを実行するための処理系を2つ備え、一方の処理系の更新時又は異常時に、他方の処理系を利用できるためである。また、情報処理システムは、処理系を切り替えるときに、2つの処理系間でデータの同期を行うことにより、切り替え後の処理系においても切り替え前に利用していた最新のデータを継続して利用することができる。
 第2に、アプリケーションを実行する処理系がクライアント端末ローカルの処理系からサーバ主体の処理系へと切り替えられたのちに以下のように動作できる。すなわち、サーバ主体の処理系が処理を実行中に、クライアント端末ローカルの処理系の更新処理又は異常状態からの回復処理が、クライアント端末のバックグランドで実施できるという効果が得られる。その理由は、クライアント端末ローカルの処理系と、サーバ主体の処理系とが、制御システム上の独立した処理系として構成されるためである。
 第3に、携帯電話やPDAのようなリソースが制約されるモバイル端末においても、省リソースでシステムの冗長系が構築できるという効果が得られる。その理由は、クライアント端末における2つの処理系のうち、サーバ主体の処理系は、クライアント端末上では入出力のみを行う軽量な処理系でよいためである。
 第4に、制御システムが環境情報(例えば位置情報や現在時刻など)を用いて、2つの処理系を切り替えることにより、ユーザは状況に応じて適切な処理系を利用できる効果が得られる。例えば、ユーザは社内で利用するときにはクライアント端末ローカルの処理系を利用し、社外へ外出するときにはクライアント端末をシンクライアント端末として利用することができる。その理由は、制御システムがGPSやFelica等のセンサ情報をトリガとして、処理系をクライアント端末ローカルの処理系からサーバ主体の処理系に切り替えることができるためである。また、ユーザは社外でのセキュリティ確保を容易に行うことができる。ユーザは、サーバ主体の処理系へ切り替える際に、クライアント端末上のデータは消去してもよい。
 第2の実施形態.
 図4は、第2の実施形態に係る情報処理装置10の構成を示すブロック図である。図に示すように、情報処理装置10は、第1および第2の処理部分を含む第2の処理系のうち第1の処理部分を備えるサーバ装置とネットワークを介した通信を行う。情報処理装置10は、第1の処理系11と、第2の処理部分12を備える。第1の処理系11は、アプリケーションを実行する処理系を、第1および第2の処理系のいずれか一方に切り替え、第2の処理部分12は、アプリケーションを実行する処理系が第1の処理系から第1の処理部分へ切り替えられたときに、第1の処理部分から受信した処理を実行する。
 以上のように、第2の実施形態によれば、クライアント端末のアプリケーションが一時的に利用停止にされることがなく、継続して利用されることが可能であるという効果が得られる。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
 例えば、上述した実施形態における動作は、ハードウェア、又は、ソフトウェア、あるいは、両者の複合構成によって実行されてもよい。
 ソフトウェアにより処理が実行される場合には、処理シーケンスを記録したプログラムが、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールされ実行されてもよい。あるいは、各種処理を実行可能な汎用コンピュータにプログラムがインストールされ実行されてもよい。
 例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録されてもよい。あるいは、プログラムは、CD−ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)されてもよい。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供されてもよい。
 なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールされてもよいし、ダウンロードサイトからコンピュータに無線転送されてもよい。又は、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送されてもよい。コンピュータは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールしてもよい。
 また、上記実施形態で説明したシステムは、処理を上記実施形態で説明した手順に従って時系列的に実行するのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように、構築されてもよい。
 また、上記実施形態で説明したシステムは、複数の装置の論理的集合として構成されてもよいし、各装置の機能を混在させて構成されてもよい。
 本発明の情報処理装置は、第1の態様として、第1の処理系を備えるクライアント端末として用いられ、第2の処理系を備えるサーバ装置とネットワークを介した通信を行う情報処理装置であって、アプリケーションを実行する処理系を、第1の処理系から第2の処理系へ切り替える、及び、第2の処理系から第1の処理系へ切り替えることを特徴とする。
 本発明の情報処理装置は、第2の態様として、第2の処理系を備えるサーバ装置として用いられ、第1の処理系を備えるクライアント端末とネットワークを介した通信を行う情報処理装置であって、クライアント端末からの指示に従って、アプリケーションを実行する処理系を、第1の処理系から第2の処理系へ切り替える、及び、第2の処理系から第1の処理系へ切り替えることを特徴とする。
 本発明の情報処理システムは、本発明の第1の態様としての情報処理装置をクライアント端末として備え、本発明の第2の態様としての情報処理装置をサーバ装置として備えることを特徴とする。
 本発明の情報処理方法は、第1の処理系を備えるクライアント端末と、第2の処理系を備えるサーバ装置とがネットワークを介した通信を行う情報処理方法であって、アプリケーションを実行する処理系を、第1の処理系から第2の処理系へ切り替える、又は、第2の処理系から第1の処理系へ切り替えることを特徴とする。
 本発明のプログラムは、第1の態様として、第2の処理系を備えるサーバ装置とネットワークを介した通信を行い、第1の処理系を備えるクライアント端末に実行させるためのプログラムであって、アプリケーションを実行する処理系を、第1の処理系から第2の処理系へ切り替える処理、又は、第2の処理系から第1の処理系へ切り替える処理をコンピュータに実行させることを特徴とする。
 本発明のプログラムは、第2の態様として、第1の処理系を備えるクライアント端末とネットワークを介した通信を行い、第2の処理系を備えるサーバ装置に実行させるためのプログラムであって、クライアント端末からの指示に従って、アプリケーションを実行する処理系を、第1の処理系から第2の処理系へ切り替える処理、又は、第2の処理系から第1の処理系へ切り替える処理をコンピュータに実行させることを特徴とする。
 この出願は、2009年2月19日に出願された日本出願特願2009−036483を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、場合に応じてアプリケーションを実行する主体を切り替える必要がある装置、機器、システム、方法、プログラム等に適用できる。
 100 クライアント端末、101 処理系(第1の処理系)、102 処理系(第2の処理系)、110 制御システム、130 汎用オペレーティングシステム、140 アプリケーション、150 データベース、160 クライアント同期モジュール、170 切替モジュール、200 サーバ装置、220 軽量クライアント、230 汎用オペレーティングシステム、240 アプリケーション、250 データベース、260 サーバ同期モジュール、300 ネットワーク

Claims (20)

  1.  第1および第2の処理部分を含む第2の処理手段のうち前記第1の処理部分を備えるサーバ装置とネットワークを介した通信を行う情報処理装置であって、
     第1の処理手段と、前記第2の処理部分を備え、
     前記第1の処理手段は、アプリケーションを実行する処理手段を、前記第1および第2の処理手段のいずれか一方に切り替え、
     前記第2の処理部分は、前記アプリケーションを実行する処理手段が前記第1の処理手段から前記第1の処理部分へ切り替えられたときに、前記第1の処理部分から受信した処理を実行する
    ことを特徴とする情報処理装置。
  2.  前記第1の処理手段が、アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、及び、前記第2の処理手段から前記第1の処理手段へ切り替えたとき、前記サーバ装置との間で、前記アプリケーションに関するデータを同期することを特徴とする請求項1記載の情報処理装置。
  3.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記情報処理装置が収集した情報が予め定められた条件を満たしたときに行われることを特徴とする請求項1又は2記載の情報処理装置。
  4.  前記第1の処理手段が、アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、前記第1の処理手段では前記アプリケーションとは別の処理が実行されることを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。
  5.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記第1の処理手段で実行されるオペレーティングシステム又はミドルウェアが更新されるときに行われ、
     前記第1の処理手段では、前記アプリケーションとは別の処理として、前記第1の処理手段で実行されるオペレーティングシステム又はミドルウェアの更新が実行されることを特徴とする請求項4記載の情報処理装置。
  6.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記第1の処理手段で実行されるオペレーティングシステム又はミドルウェアに異常が発生したときに行われ、
     前記第1の処理手段では、前記アプリケーションとは別の処理として、前記異常からの回復処理が実行されることを特徴とする請求項4記載の情報処理装置。
  7.  第1の処理手段を備えるクライアント端末とネットワークを介した通信を行う情報処理装置であって、
     第1および第2の処理部分を含む第2の処理手段のうち前記第1の処理部分を備え、
     前記第1の処理部分は、前記クライアント端末からの指示に従って、アプリケーションを実行する処理手段を、前記第1および第2の処理手段のいずれか一方に切り替え、
     前記第1の処理部分は、アプリケーションを実行する処理手段が前記第1の処理手段から前記第2の処理手段へ切り替えられたときに、処理の一部を前記クライアント端末に送信する
    ことを特徴とする情報処理装置。
  8.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、および、前記第2の処理手段から前記第1の処理手段へ切り替えたとき、前記クライアント端末との間で、前記アプリケーションに関するデータを同期することを特徴とする請求項7記載の情報処理装置。
  9.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記情報処理装置が収集した情報が予め定められた条件を満たしたときに行われることを特徴とする請求項7又は8記載の情報処理装置。
  10.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記第1の処理手段で実行されるオペレーティングシステム又はミドルウェアが更新されるときに行われることを特徴とする請求項7又は8記載の情報処理装置。
  11.  前記第1の処理手段から前記第2の処理手段への切り替えは、前記第1の処理手段で実行されるオペレーティングシステム又はミドルウェアに異常が発生したときに行われることを特徴とする請求項7又は8記載の情報処理装置。
  12.  請求項1から6のいずれか1項に記載の情報処理装置をクライアント端末として備え、
     請求項7から11のいずれか1項に記載の情報処理装置をサーバ装置として備えることを特徴とする情報処理システム。
  13.  第1の処理手段と第1および第2の処理部分を含む第2の処理手段のうち前記第2の処理部分を備えるクライアント端末と、前記第1の処理部分を備えるサーバ装置とがネットワークを介した通信を行う情報処理方法であって、
     アプリケーションを実行する処理手段を、前記第1および第2の処理手段のいずれか一方に切り替え、
     前記第2の処理部分は、前記アプリケーションを実行する処理手段が前記第1の処理手段から前記第1の処理部分へ切り替えられたときに、前記第1の処理部分から受信した処理を実行する
    ことを特徴とする情報処理方法。
  14.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、及び、前記第2の処理手段から前記第1の処理手段への切り替えたとき、前記クライアント端末と前記サーバ装置との間で、前記アプリケーションに関するデータを同期することを特徴とする請求項13記載の情報処理方法。
  15.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、前記第1の処理手段では前記アプリケーションとは別の処理が実行されることを特徴とする請求項13又は14記載の情報処理方法。
  16.  第1および第2の処理部分を含む第2の処理手段のうち前記第1の処理部分を備えるサーバ装置とネットワークを介した通信を行い、第1の処理手段と、前記第2の処理部分とを備える情報処理装置に実行させるためのプログラムを記録した記録媒体であって、
     アプリケーションを実行する処理手段を、前記第1および第2の処理手段のいずれか一方に切り替える処理と、
     前記第2の処理部分が、前記アプリケーションを実行する処理手段が前記第1の処理手段から前記第1の処理部分へ切り替えられたときに、前記第1の処理部分から受信した処理を実行する処理と
    を情報処理装置に実行させるためのプログラムを記録した記録媒体。
  17.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、及び、前記第2の処理手段から前記第1の処理手段へ切り替えたとき、前記サーバ装置との間で、前記アプリケーションに関するデータを同期する処理を情報処理装置に実行させるためのプログラムを記録したことを特徴とする請求項16記載の記録媒体。
  18.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、前記第1の処理手段で前記アプリケーションとは別の処理を実行させる処理を情報処理装置に実行させるためのプログラムを記録したことを特徴とする請求項16又は17記載の記録媒体。
  19.  第1の処理手段を備えるクライアント端末とネットワークを介した通信を行い、第1および第2の処理部分を含む第2の処理手段のうち前記第1の処理部分を備える情報処理装置に実行させるためのプログラムを記録した記録媒体であって、
     前記クライアント端末からの指示に従って、前記クライアント端末からの指示に従って、アプリケーションを実行する処理手段を、前記第1および第2の処理手段のいずれか一方に切り替える処理と、
     前記アプリケーションを実行する処理手段が前記第1の処理手段から前記第2の処理手段へ切り替えられたときに、処理の一部を前記クライアント端末に送信する処理とを情報処理装置に実行させるためのプログラムを記録した記録媒体。
  20.  アプリケーションを実行する処理手段を、前記第1の処理手段から前記第2の処理手段へ切り替えたとき、及び、前記第2の処理手段から前記第1の処理手段へ切り替えたとき、前記クライアント端末との間で、前記アプリケーションに関するデータを同期する処理を情報処理装置に実行させるためのプログラムを記録したことを特徴とする請求項19記載の記録媒体。
PCT/JP2010/052587 2009-02-19 2010-02-16 情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体 WO2010095731A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP10743854.1A EP2400395B1 (en) 2009-02-19 2010-02-16 Information processing device, information processing system, information processing method, and program recording medium
US13/148,842 US8805920B2 (en) 2009-02-19 2010-02-16 Information processing apparatus, information processing system, information processing method and program storage medium
JP2011500669A JP5445578B2 (ja) 2009-02-19 2010-02-16 情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体
CN201080008692.4A CN102326150B (zh) 2009-02-19 2010-02-16 信息处理装置、信息处理系统、信息处理方法和程序存储介质
US14/289,881 US20140344342A1 (en) 2009-02-19 2014-05-29 Information processing apparatus, information processing system, information processing method and program storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-036483 2009-02-19
JP2009036483 2009-02-19

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/148,842 A-371-Of-International US8805920B2 (en) 2009-02-19 2010-02-16 Information processing apparatus, information processing system, information processing method and program storage medium
US14/289,881 Continuation US20140344342A1 (en) 2009-02-19 2014-05-29 Information processing apparatus, information processing system, information processing method and program storage medium

Publications (1)

Publication Number Publication Date
WO2010095731A1 true WO2010095731A1 (ja) 2010-08-26

Family

ID=42634006

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/052587 WO2010095731A1 (ja) 2009-02-19 2010-02-16 情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体

Country Status (5)

Country Link
US (2) US8805920B2 (ja)
EP (1) EP2400395B1 (ja)
JP (2) JP5445578B2 (ja)
CN (1) CN102326150B (ja)
WO (1) WO2010095731A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013152545A (ja) * 2012-01-24 2013-08-08 Nippon Telegr & Teleph Corp <Ntt> アプリケーション実行装置、システム、及びプログラム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009212B2 (en) * 2011-06-29 2015-04-14 Cisco Technology, Inc. Optimized transfer of applications between computing environments
JP6268174B2 (ja) 2013-06-12 2018-01-24 株式会社ソニー・インタラクティブエンタテインメント 出力データ提供サーバおよび出力データ提供方法
CN105094871B (zh) * 2014-05-15 2018-08-31 林保成 游戏机挂载可携式储存装置内游戏的本地化系统及其方法
JP6378057B2 (ja) * 2014-11-13 2018-08-22 株式会社東芝 接続制御装置、接続制御方法、接続制御システムおよびコンピュータプログラム
CN106021020B (zh) * 2016-05-12 2019-03-12 中国工商银行股份有限公司 一种双活数据站点应用数据挂载方法及装置
CN108427545B (zh) * 2018-02-01 2021-07-09 广州视源电子科技股份有限公司 截屏数据的处理方法、装置、系统、存储介质及处理器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034687A (ja) * 2005-07-27 2007-02-08 Fuji Xerox Co Ltd シンクライアントシステム
JP2007133713A (ja) * 2005-11-11 2007-05-31 Hitachi Electronics Service Co Ltd 作業環境切り替えシステム、サービスセンタサーバ及び情報処理装置
WO2008111448A1 (ja) * 2007-03-09 2008-09-18 Nec Corporation サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7263698B2 (en) * 2002-08-29 2007-08-28 Sap Aktiengesellschaft Phased upgrade of a computing environment
CN100552633C (zh) * 2006-07-25 2009-10-21 株式会社Ntt都科摩 多个操作系统切换控制装置以及计算机系统
JP4342576B2 (ja) * 2006-07-25 2009-10-14 株式会社エヌ・ティ・ティ・ドコモ 複数オペレーティングシステム切替制御装置及びコンピュータシステム
JP5154057B2 (ja) * 2006-10-27 2013-02-27 Ntn株式会社 動圧軸受装置
JP2008210071A (ja) 2007-02-26 2008-09-11 Hitachi Ltd クライアントサーバシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034687A (ja) * 2005-07-27 2007-02-08 Fuji Xerox Co Ltd シンクライアントシステム
JP2007133713A (ja) * 2005-11-11 2007-05-31 Hitachi Electronics Service Co Ltd 作業環境切り替えシステム、サービスセンタサーバ及び情報処理装置
WO2008111448A1 (ja) * 2007-03-09 2008-09-18 Nec Corporation サーバ機能切替え装置、方法及びプログラム、並びにシンクライアントシステム及びサーバ装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2400395A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013152545A (ja) * 2012-01-24 2013-08-08 Nippon Telegr & Teleph Corp <Ntt> アプリケーション実行装置、システム、及びプログラム

Also Published As

Publication number Publication date
EP2400395A1 (en) 2011-12-28
JP2014013616A (ja) 2014-01-23
CN102326150A (zh) 2012-01-18
JP5445578B2 (ja) 2014-03-19
EP2400395A4 (en) 2013-03-20
JPWO2010095731A1 (ja) 2012-08-30
US20140344342A1 (en) 2014-11-20
US8805920B2 (en) 2014-08-12
US20110314076A1 (en) 2011-12-22
JP5585708B2 (ja) 2014-09-10
EP2400395B1 (en) 2014-05-14
CN102326150B (zh) 2015-05-13

Similar Documents

Publication Publication Date Title
JP5585708B2 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム記録媒体
US10972529B2 (en) Page jump method and apparatus
US10515056B2 (en) API for resource discovery and utilization
KR101635030B1 (ko) 데이터 동기화 방법 및 이를 이용하는 이동 단말기
US20130297563A1 (en) Timestamp management method for data synchronization and terminal therefor
KR20200140555A (ko) 전자 장치 및 전자 장치의 듀얼 스탠바이 모드 및 싱글 스탠바이 모드의 전환 방법
CN113110939A (zh) 运行数据的处理方法、装置、计算机设备及存储介质
CN107533604B (zh) 用于无经纪人应用的单次登录的方法和设备
US11741175B2 (en) Performance metrics collection and promulgation from within a mobile application
US20240086180A1 (en) Safe modular upgrades
EP3129883B1 (en) Method and apparatus for repairing dynamic link library file
CA2805273A1 (en) Mobile wireless communications device with search shortcut and related methods
CN105453518B (zh) 计量网络的同步
US8971154B2 (en) Synchronization of system time in electronic device
JP2012014444A (ja) 配信サーバ、携帯端末装置、システム、及び方法
US10291498B1 (en) Mobile communication device diagnostic client and error remediation sharing
US9219754B2 (en) Determining security factors associated with an operating environment
CN112817701B (zh) 定时器处理方法、装置、电子设备和计算机可读介质
JP2006277204A (ja) 携帯通信端末装置
US10631177B1 (en) Mobile phone chipset parameter adaptation framework
WO2017073050A1 (ja) サーバ端末装置、クライアント端末装置、シンクライアントシステム、制御方法およびプログラム記録媒体
JP2008016047A (ja) 個人情報管理装置、個人情報管理方法、記録媒体およびプログラム
US10924280B1 (en) Digital notary use in distributed ledger technology (DLT) for block construction and verification
KR20220131142A (ko) 분산 시스템의 데이터 처리 방법 및 이를 위한 전자 장치
CN112083934A (zh) 一种终端和处理方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080008692.4

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10743854

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011500669

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13148842

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2010743854

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE