JPWO2013168221A1 - Synchronization program, synchronization server, and synchronization method - Google Patents

Synchronization program, synchronization server, and synchronization method Download PDF

Info

Publication number
JPWO2013168221A1
JPWO2013168221A1 JP2014514251A JP2014514251A JPWO2013168221A1 JP WO2013168221 A1 JPWO2013168221 A1 JP WO2013168221A1 JP 2014514251 A JP2014514251 A JP 2014514251A JP 2014514251 A JP2014514251 A JP 2014514251A JP WO2013168221 A1 JPWO2013168221 A1 JP WO2013168221A1
Authority
JP
Japan
Prior art keywords
component
application
synchronization
information
unit
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
JP2014514251A
Other languages
Japanese (ja)
Inventor
那由他 石井
那由他 石井
泰大 山本
泰大 山本
恭平 倉世古
恭平 倉世古
拓嗣 島田
拓嗣 島田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Synclogue
Original Assignee
Synclogue
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 Synclogue filed Critical Synclogue
Publication of JPWO2013168221A1 publication Critical patent/JPWO2013168221A1/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

同期対象のアプリケーションの構成要素の特定精度を向上させる。コンピュータが、アプリケーションの実行時に必要となる構成要素を特定し、アプリケーションの構成要素を示す構成要素情報を同期サーバから取得し、構成要素の特定結果と構成要素情報とに応じた構成要素を同期サーバに送信する。Improve the accuracy of identifying the components of the application to be synchronized. The computer identifies the components that are required when the application is executed, acquires the component information indicating the components of the application from the synchronization server, and synchronizes the components according to the component identification results and the component information. Send to.

Description

本発明は、同期プログラム、同期サーバ、及び同期方法に関する。   The present invention relates to a synchronization program, a synchronization server, and a synchronization method.

パーソナルコンピュータ(PC)や携帯端末等の情報処理装置では、文書作成ソフトウェアやウェブブラウザなどの様々なアプリケーションを実行することが可能である。通常、このようなアプリケーションは、情報処理装置ごとにインストールされたうえで使用される。そのため、例えば複数のPCを保有しているユーザが、これら複数のPC上で同じアプリケーションを使用する場合は、各PCに対して個別にアプリケーションをインストールする必要がある。さらに、アプリケーションを使用する際のユーザ設定についても、各PCにおいて個別に行う必要がある。このように、複数のPCで同一のアプリケーションを使用するのは非常に煩雑となる場合が多い。   An information processing apparatus such as a personal computer (PC) or a portable terminal can execute various applications such as document creation software and a web browser. Normally, such an application is used after being installed for each information processing apparatus. Therefore, for example, when a user who has a plurality of PCs uses the same application on the plurality of PCs, it is necessary to individually install the application on each PC. Further, user settings for using the application need to be individually made in each PC. As described above, it is often very complicated to use the same application on a plurality of PCs.

また、近年普及しつつある、SaaS(Software as a Service)などのサービスを用いることにより、各PCに対して個別にアプリケーションをインストールしない構成も考えられる(例えば、特許文献1)。しかしながら、このようなサービスを用いる場合、利用可能なアプリケーションはサービス事業者から提供されるものに限られてしまう。   In addition, a configuration in which an application is not individually installed on each PC by using a service such as SaaS (Software as a Service), which has been spreading in recent years, can be considered (for example, Patent Document 1). However, when such a service is used, available applications are limited to those provided by service providers.

特開2009−277089号公報JP 2009-277089 A

そこで、例えば、各PCに対して個別にアプリケーションをインストールするのではなく、1台のPCにインストールされたアプリケーションを複数のPC間で同期させることが考えられる。この場合、同期対象のアプリケーションを実行する際に必要となる、実行ファイルやデータファイル、設定情報などの構成要素をPC間で同期させなければならない。しかしながら、構成要素は様々なフォルダやレジストリなどに格納されていることが多く、全ての構成要素を特定することが困難な場合がある。   Therefore, for example, it is conceivable to synchronize the applications installed on one PC among a plurality of PCs, instead of installing the applications individually on each PC. In this case, components such as an execution file, a data file, and setting information necessary for executing the synchronization target application must be synchronized between the PCs. However, the constituent elements are often stored in various folders, registries, etc., and it may be difficult to specify all the constituent elements.

そこで、本発明は、同期対象のアプリケーションの構成要素の特定精度を向上させることを目的とする。   Therefore, an object of the present invention is to improve the identification accuracy of components of an application to be synchronized.

本発明の一側面に係る同期プログラムは、コンピュータを、アプリケーションの実行時に必要となる構成要素を特定する構成要素特定部、アプリケーションの構成要素を示す構成要素情報を同期サーバから取得する構成要素情報取得部、構成要素特定部による特定結果と、構成要素情報とに応じた構成要素を同期サーバに送信する構成要素送信部、として機能させる。   A synchronization program according to an aspect of the present invention provides a component identification unit that identifies a component necessary for execution of an application from a computer, and component information acquisition that acquires component information indicating a component of the application from a synchronization server And a component transmission unit that transmits a component according to the identification result by the component identification unit and the component element information to the synchronization server.

また、本発明の一側面に係る同期サーバは、アプリケーションの識別子と、該アプリケーションの実行時に必要となる構成要素とを対応づけて記憶する構成要素記憶部と、第1のコンピュータから、アプリケーションの構成要素を示す構成要素情報の取得要求を受信する構成要素情報取得要求受信部と、構成要素情報の取得要求に応じて、構成要素記憶部を参照し、構成要素情報を第1のコンピュータに送信する構成要素情報送信部と、第1のコンピュータから、アプリケーションの識別子と、該アプリケーションの構成要素とを受信して構成要素記憶部を更新する構成要素受信部と、第2のコンピュータから、アプリケーションの構成要素の取得要求を受信する構成要素取得要求受信部と、構成要素の取得要求に応じて、構成要素記憶部を参照し、構成要素を第2のコンピュータに送信する構成要素送信部と、を備える。   The synchronization server according to one aspect of the present invention includes: a component storage unit that stores an identifier of an application and a component necessary for executing the application in association with each other; and a configuration of the application from the first computer A component element acquisition request receiving unit that receives a component element information acquisition request indicating an element, and refers to the component element storage unit in response to the component element acquisition request, and transmits the component element information to the first computer A component information transmission unit, a component reception unit that receives an application identifier and a component of the application from the first computer, and updates the component storage unit, and a configuration of the application from the second computer A component acquisition request receiving unit that receives an element acquisition request, and a component storage unit in response to the component acquisition request Irradiation and comprises a component transmitting unit that transmits the components to the second computer, a.

また、本発明の一側面に係る同期方法では、コンピュータが、アプリケーションの実行時に必要となる構成要素を特定し、アプリケーションの構成要素を示す構成要素情報を同期サーバから取得し、構成要素の特定結果と構成要素情報とに応じた構成要素を同期サーバに送信する。   Further, in the synchronization method according to one aspect of the present invention, the computer specifies a component necessary for executing the application, acquires component information indicating the component of the application from the synchronization server, and specifies the component identification result. And the component according to the component information are transmitted to the synchronization server.

また、本発明の一側面に係る同期方法では、同期サーバが、アプリケーションの識別子と、該アプリケーションの実行時に必要となる構成要素とを対応づけて構成要素記憶部に記憶し、第1のコンピュータから、アプリケーションの構成要素を示す構成要素情報の取得要求を受信し、構成要素情報の取得要求に応じて、構成要素記憶部を参照し、構成要素情報を第1のコンピュータに送信し、第1のコンピュータから、アプリケーションの識別子と、該アプリケーションの構成要素とを受信して構成要素記憶部を更新し、第2のコンピュータから、アプリケーションの構成要素の取得要求を受信し、構成要素の取得要求に応じて、構成要素記憶部を参照し、構成要素を第2のコンピュータに送信する。   Further, in the synchronization method according to one aspect of the present invention, the synchronization server stores the identifier of the application and the component necessary for executing the application in the component storage unit in association with each other, from the first computer Receiving the component element information acquisition request indicating the component element of the application, referring to the component element storage unit in response to the component element information acquisition request, transmitting the component element information to the first computer, The application identifier and the application component are received from the computer to update the component storage unit, the application component acquisition request is received from the second computer, and the component acquisition request is received. Then, referring to the component storage unit, the component is transmitted to the second computer.

なお、本発明において、「部」とは、単に物理的手段を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や装置が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や装置の機能が1つの物理的手段や装置により実現されてもよい。   In the present invention, the “part” does not simply mean a physical means, but includes a case where the function of the “part” is realized by software. Also, even if the functions of one “unit” or device are realized by two or more physical means or devices, the functions of two or more “units” or devices are realized by one physical means or device. May be.

本発明によれば、同期対象のアプリケーションの構成要素の特定精度を向上させることができる。   According to the present invention, it is possible to improve the identification accuracy of components of an application to be synchronized.

本発明の一実施形態であるアプリケーション同期システムの構成例を示す図である。It is a figure which shows the structural example of the application synchronization system which is one Embodiment of this invention. 同期サーバが有する機能の一例を示すブロック図である。It is a block diagram which shows an example of the function which a synchronous server has. ユーザ別構成要素記憶部の構成の一例を示す図である。It is a figure which shows an example of a structure of the structural element memory | storage part classified by user. 構成要素情報記憶部の構成の一例を示す図である。It is a figure which shows an example of a structure of a component information storage part. 構成要素情報の集約の一例を説明するための図である。It is a figure for demonstrating an example of aggregation of component element information. PCが有する機能の一例を示すブロック図である。It is a block diagram which shows an example of the function which PC has. 同期設定記憶部の構成の一例を示す図である。It is a figure which shows an example of a structure of a synchronous setting memory | storage part. アプリケーション記憶部から同期アプリケーション記憶部へのコピーの一例を示す図である。It is a figure which shows an example of the copy from an application memory | storage part to a synchronous application memory | storage part. 同期設定の際に表示される画面の一例を示す図である。It is a figure which shows an example of the screen displayed in the case of a synchronous setting. 同期アプリケーションを起動する際に表示される画面の一例を示す図である。It is a figure which shows an example of the screen displayed when starting a synchronous application. ファイル検出部の構成の一例を示す図である。It is a figure which shows an example of a structure of a file detection part. ファイル検出部を構成する各部の関連を示す図である。It is a figure which shows the relationship of each part which comprises a file detection part. アプリケーション情報の一例を示す図である。It is a figure which shows an example of application information. アクセス情報の一例を示す図である。It is a figure which shows an example of access information. 特定情報の一例を示す図である。It is a figure which shows an example of specific information. 構成要素送信部によって送信される構成要素の一例を示す図である。It is a figure which shows an example of the component transmitted by the component transmission part. PCにおける各部の関連を示す図である。It is a figure which shows the relationship of each part in PC. PCにおける処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a process in PC. PCにおける同期処理の一例を示すフローチャートである。It is a flowchart which shows an example of the synchronous process in PC. PCにおけるアプリケーション実行処理の一例を示すフローチャートである。It is a flowchart which shows an example of the application execution process in PC.

以下、図面を参照して本発明の一実施形態について説明する。図1は、本発明の一実施形態であるアプリケーション同期システムの構成例を示す図である。図1に示すように、アプリケーション同期システムは、同期サーバ10、及び複数台のパーソナルコンピュータ(PC)20を含んで構成される。同期サーバ10は、ユーザに対してアプリケーションを複数のPC20間で同期可能とするためのサービスを提供するものであり、1台または複数台の情報処理装置を用いて構成される。PC20は、ユーザがアプリケーションを実行させるための情報処理装置であり、同期サーバ10とインターネット等のネットワークを介して通信可能である。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram illustrating a configuration example of an application synchronization system according to an embodiment of the present invention. As shown in FIG. 1, the application synchronization system includes a synchronization server 10 and a plurality of personal computers (PCs) 20. The synchronization server 10 provides a service for enabling a user to synchronize an application among a plurality of PCs 20, and is configured using one or a plurality of information processing apparatuses. The PC 20 is an information processing apparatus that allows a user to execute an application, and can communicate with the synchronization server 10 via a network such as the Internet.

ここで、例えばユーザ「USER001」は、PC20−1及びPC20−2の2台のPCを保有しているとする。このユーザ「USER001」は、同期サーバ10により提供されるアプリケーション同期システムを用いることにより、各PCに個別にアプリケーションをインストールしたり、手動でデータを同期させたりする必要なく、PC20−1及びPC20−2において同期された状態でアプリケーションを実行することが可能である。ここで、アプリケーションの同期とは、アプリケーションの実行環境を同一の状態にすることをいう。なお、実行環境には、アプリケーションを実行するために必要となる構成要素が含まれる。アプリケーションの構成要素には、例えば、実行ファイルやユーザファイル、設定情報などが含まれる。複数のPC間でアプリケーションが同期されることにより、ユーザはどのPCを用いる場合においても同じ状態でアプリケーションを実行することが可能となる。   Here, for example, it is assumed that the user “USER001” has two PCs, PC20-1 and PC20-2. By using the application synchronization system provided by the synchronization server 10, the user “USER001” does not need to install an application individually on each PC or manually synchronize data, and the PC 20-1 and the PC 20- It is possible to execute the application in a synchronized state in FIG. Here, the application synchronization means that the execution environment of the application is in the same state. The execution environment includes components necessary for executing the application. The application components include, for example, an execution file, a user file, setting information, and the like. By synchronizing applications among a plurality of PCs, the user can execute the applications in the same state regardless of which PC is used.

図2は、同期サーバ10が有する機能の一例を示すブロック図である。図2に示すように、同期サーバ10は、アカウント情報記憶部30、構成要素記憶部32、及び同期通信部34を含んで構成される。これらの各部は、例えば、メモリや記憶装置等の記憶領域を用いたり、記憶領域に格納されているプログラムをプロセッサが実行したりすることにより実現することができる。   FIG. 2 is a block diagram illustrating an example of functions that the synchronization server 10 has. As shown in FIG. 2, the synchronization server 10 includes an account information storage unit 30, a component storage unit 32, and a synchronization communication unit 34. These units can be realized, for example, by using a storage area such as a memory or a storage device, or by executing a program stored in the storage area by a processor.

アカウント情報記憶部30は、アプリケーション同期システムを利用するユーザのアカウント情報を記憶するものである。例えば、アカウント情報には、ユーザIDやパスワード、メールアドレスなどが含まれる。   The account information storage unit 30 stores account information of users who use the application synchronization system. For example, the account information includes a user ID, a password, an email address, and the like.

構成要素記憶部32は、同期対象のアプリケーション(同期アプリケーション)の構成要素を記憶するものである。構成要素は、前述したように、同期アプリケーションを実行するために必要となるものであり、実行ファイルやユーザファイル、設定情報などを含む。図2に示すように、構成要素記憶部32は、ユーザ別構成要素記憶部40及び構成要素情報記憶部42を含むことができる。   The component storage unit 32 stores components of a synchronization target application (synchronization application). As described above, the component is necessary for executing the synchronization application, and includes an execution file, a user file, setting information, and the like. As shown in FIG. 2, the component storage unit 32 can include a user-specific component storage unit 40 and a component information storage unit 42.

ユーザ別構成要素記憶部40は、同期アプリケーションの構成要素をユーザ別に記憶する。図3には、ユーザ別構成要素記憶部40の構成の一例が示されている。図3に示す例では、ユーザ別構成要素記憶部40は、ユーザ別構成要素テーブル及びデータストレージを含んで構成されている。   The user-specific component storage unit 40 stores the components of the synchronization application for each user. FIG. 3 shows an example of the configuration of the user-specific component storage unit 40. In the example shown in FIG. 3, the user-specific component storage unit 40 includes a user-specific component table and data storage.

ユーザ別構成要素テーブルには、ユーザID、アプリケーションID、アプリケーション・ファイルID、ユーザファイル・ファイルID、同期設定情報、及び更新日時が格納され、データストレージには、アプリケーション及びユーザファイルが格納されている。   The user-specific component table stores a user ID, an application ID, an application file ID, a user file / file ID, synchronization setting information, and an update date / time, and the data storage stores an application and a user file. .

ユーザIDは、各ユーザを識別するためのものであり、アカウント情報記憶部30に登録されている情報と同じものが使用されている。アプリケーションIDは、各ユーザが選択した同期アプリケーションを識別するためのものである。このアプリケーションIDは、例えば、ユーザが同期アプリケーションを同期サーバ10に登録する際に設定することとしてもよいし、同期サーバ10側で生成されることとしてもよい。   The user ID is for identifying each user, and the same information as that registered in the account information storage unit 30 is used. The application ID is for identifying the synchronous application selected by each user. This application ID may be set, for example, when the user registers the synchronization application in the synchronization server 10 or may be generated on the synchronization server 10 side.

アプリケーションファイルは、同期アプリケーションを実行するためのアプリケーションデータを有するファイルであり、実行ファイルやDLL(Dynamic Link Library)などを含んでいる。また、アプリケーションファイルには、PC20において同期アプリケーションのアプリケーションファイルを格納するフォルダを指定するための情報も含まれている。さらに、アプリケーションファイルには、PC20においてアプリケーションがインストールされた際にアプリケーションファイルが格納されていたフォルダを示す情報も含まれる。アプリケーション・ファイルIDは、データストレージ内におけるアプリケーションファイルの格納場所を示すものである。   The application file is a file having application data for executing the synchronous application, and includes an execution file, a DLL (Dynamic Link Library), and the like. The application file also includes information for designating a folder for storing the application file of the synchronous application in the PC 20. Further, the application file includes information indicating a folder in which the application file is stored when the application is installed on the PC 20. The application file ID indicates the storage location of the application file in the data storage.

ユーザファイルは、同期アプリケーションの実行時に必要となるユーザデータを有するファイルである。ここで、ユーザデータとは、アプリケーションの実行時に参照されるユーザごとのデータであり、例えば、電子メールの送受信を行うための電子メールアプリケーションにおける各ユーザの電子メールデータや、Webブラウザにおける各ユーザのブックマークデータなどである。また、ユーザファイルには、PC20において同期アプリケーション用のユーザファイルを格納するフォルダを指定するための情報も含まれている。さらに、ユーザファイルには、PC20においてアプリケーションがインストールされた際にユーザファイルが格納されていたフォルダを示す情報も含まれる。ユーザファイル・ファイルIDは、データストレージ内におけるユーザファイルの格納場所を示すものである。   The user file is a file having user data required when executing the synchronization application. Here, the user data is data for each user that is referred to when the application is executed. For example, each user's e-mail data in an e-mail application for sending and receiving e-mails and each user's data in a web browser For example, bookmark data. The user file also includes information for designating a folder for storing the user file for the synchronization application in the PC 20. Further, the user file includes information indicating a folder in which the user file is stored when the application is installed on the PC 20. The user file / file ID indicates the storage location of the user file in the data storage.

同期設定情報は、同期アプリケーションの実行に必要な情報であり、例えば、PC20のレジストリに格納される設定情報と同等の内容を有する情報である。また、同期設定情報には、PC20において同期アプリケーション用の同期設定情報を格納するフォルダを指定するための情報も含まれている。さらに、同期設定情報には、PC20においてアプリケーションがインストールされた際に設定情報が格納されていた場所(レジストリキー)を示す情報も含まれる。なお、同期設定情報についても、アプリケーションファイルやユーザファイルと同様にデータストレージに格納されていることとしてもよい。   The synchronization setting information is information necessary for executing the synchronization application, for example, information having contents equivalent to the setting information stored in the registry of the PC 20. The synchronization setting information also includes information for designating a folder for storing synchronization setting information for the synchronization application in the PC 20. Further, the synchronization setting information includes information indicating a location (registry key) where the setting information was stored when the application was installed in the PC 20. Note that the synchronization setting information may also be stored in the data storage in the same manner as the application file and user file.

更新日時には、アプリケーションファイル、ユーザファイル、または同期設定情報が更新された日時が設定される。この更新日時は、例えば、アプリケーションファイル、ユーザファイル、または同期設定情報がPC20から同期サーバ10に送信されることにより更新される。   The date and time when the application file, user file, or synchronization setting information is updated is set as the update date and time. This update date and time is updated by, for example, transmitting an application file, a user file, or synchronization setting information from the PC 20 to the synchronization server 10.

図2に戻り、構成要素情報記憶部42は、同期アプリケーションの構成要素を示す構成要素情報をアプリケーションごとに記憶する。図4には、構成要素情報記憶部42の構成の一例が示されている。図4に示す例では、構成要素情報記憶部42には、アプリケーションIDと構成要素情報とが対応づけられて記憶されている。そして、構成要素情報には、アプリケーション・ファイルID、ユーザファイル・ファイルID、及び同期設定情報IDが含まれている。   Returning to FIG. 2, the component information storage unit 42 stores component information indicating the components of the synchronization application for each application. FIG. 4 shows an example of the configuration of the component element information storage unit 42. In the example illustrated in FIG. 4, the component ID information storage unit 42 stores an application ID and component information in association with each other. The component information includes an application file ID, a user file / file ID, and a synchronization setting information ID.

アプリケーション・ファイルIDは、同期アプリケーションのアプリケーションファイルを識別するための情報である。なお、アプリケーション・ファイルIDは、PC20においてアプリケーションがインストールされた際にアプリケーション・ファイルが格納されていた場所、すなわちオリジナルの格納場所を示す情報を含むことができる。   The application file ID is information for identifying the application file of the synchronous application. The application file ID can include information indicating a location where the application file is stored when the application is installed on the PC 20, that is, an original storage location.

ユーザファイル・ファイルIDは、同期アプリケーションのユーザファイルを識別するための情報である。なお、ユーザファイル・ファイルIDは、PC20においてアプリケーションがインストールされた際にユーザファイルが格納されていた場所、すなわちオリジナルの格納場所を示す情報を含むことができる。   The user file / file ID is information for identifying the user file of the synchronization application. The user file / file ID can include information indicating a location where the user file is stored when the application is installed on the PC 20, that is, an original storage location.

同期設定情報IDは、同期アプリケーションの同期設定情報を識別するための情報である。例えば、同期設定情報がレジストリに格納されたデータに対応する情報である場合、同期設定情報IDは、例えば、レジストリのキーを示す情報とすることができる。   The synchronization setting information ID is information for identifying the synchronization setting information of the synchronization application. For example, when the synchronization setting information is information corresponding to data stored in the registry, the synchronization setting information ID can be information indicating a key of the registry, for example.

なお、構成要素情報は、ユーザ別構成要素記憶部40に記憶されている構成要素を示す構成要素情報を、アプリケーションごとに集約したものである。図5は、構成要素情報の集約の一例を説明するための図である。図5に示す例では、アプリケーションAPL001について、ユーザUSER001のアプリケーション・ファイルIDがA,B、ユーザUSER002のアプリケーション・ファイルIDがA,Cとなっている。そして、ユーザUSER001の構成要素情報とユーザUSER002の構成要素情報とが集約されることにより、アプリケーションAPL001に対する構成要素情報には、アプリケーション・ファイルIDとして、A,B,Cが含まれることとなる。ユーザファイル・ファイルIDや設定情報IDなどの他の構成要素情報についても同様に集約される。   Note that the component information is obtained by collecting the component information indicating the components stored in the user-specific component storage unit 40 for each application. FIG. 5 is a diagram for explaining an example of aggregation of component element information. In the example illustrated in FIG. 5, for the application APL001, the application file ID of the user USER001 is A and B, and the application file ID of the user USER002 is A and C. Then, by integrating the component element information of the user USER001 and the component element information of the user USER002, the component element information for the application APL001 includes A, B, and C as application file IDs. Other constituent element information such as user file / file ID and setting information ID is also aggregated in the same manner.

このように、同一アプリケーションであってもユーザによって構成要素が一致していないことがあるのは、後述する構成要素の特定手法では、各PC20においてアプリケーションの構成要素を全て特定することができるとは限らないからである。そこで、構成要素情報記憶部42は、1ユーザにおける構成要素の特定もれを補完するために、複数のユーザのPC20において特定された構成要素を示す構成要素情報をアプリケーションごとに記憶する。   In this way, even if the application is the same, the components may not match depending on the user. In the component component identification method described later, it is possible to identify all component components of the application in each PC 20. It is not limited. Therefore, the component element information storage unit 42 stores, for each application, component element information indicating the component elements specified in the PCs 20 of a plurality of users, in order to complement the component leak of one user.

同期通信部34は、ネットワークを介してPC20等の他の情報処理装置との間でデータの送受信を行うことが可能である。そして、同期通信部34は、複数のPC20間でアプリケーションを同期させるための各種制御を行うことが可能である。図2に示すように、同期通信部34は、ユーザ認証部50、構成要素情報取得要求受信部52、構成要素情報送信部54、構成要素受信部56、構成要素取得要求受信部58、及び構成要素送信部60を含むことができる。   The synchronous communication unit 34 can transmit / receive data to / from another information processing apparatus such as the PC 20 via the network. And the synchronous communication part 34 can perform various control for synchronizing an application between several PC20. As shown in FIG. 2, the synchronous communication unit 34 includes a user authentication unit 50, a component element information acquisition request reception unit 52, a component element information transmission unit 54, a component element reception unit 56, a component element acquisition request reception unit 58, and a configuration. An element transmission unit 60 can be included.

ユーザ認証部50は、PC20からの認証要求に応じてユーザ認証を行う。認証要求には、例えば、ユーザIDやパスワードなどのアカント情報が含まれる。ユーザ認証部50は、PC20から受信するアカウント情報を、アカウント情報記憶部30に記憶されているアカウント情報と照合することによりユーザ認証を行うことができる。   The user authentication unit 50 performs user authentication in response to an authentication request from the PC 20. The authentication request includes, for example, account information such as a user ID and a password. The user authentication unit 50 can perform user authentication by checking account information received from the PC 20 with account information stored in the account information storage unit 30.

構成要素情報取得要求受信部52は、PC20から構成要素取得要求を受信する。構成要素取得要求には、アプリケーションIDが含まれている。また、構成要素取得要求には、アプリケーションIDの代わりにユーザIDが含まれていてもよい。   The component element information acquisition request receiving unit 52 receives a component element acquisition request from the PC 20. The component acquisition request includes an application ID. In addition, the component acquisition request may include a user ID instead of the application ID.

構成要素情報送信部52は、構成要素情報取得要求に含まれるアプリケーションIDに対応する構成要素情報を構成要素情報記憶部42から取得し、要求元のPC20に送信する。なお、構成要素取得要求にユーザIDが含まれている場合、構成要素情報送信部52は、該ユーザIDと対応づけられているアプリケーションIDをユーザ別構成要素記憶部40から取得することにより、該アプリケーションIDに対応する構成要素情報を構成要素情報記憶部42から取得することとしてもよい。   The component element information transmission unit 52 acquires the component element information corresponding to the application ID included in the component element information acquisition request from the component element information storage unit 42 and transmits the component element information to the requesting PC 20. When the user ID is included in the component acquisition request, the component information transmission unit 52 acquires the application ID associated with the user ID from the user-specific component storage unit 40, thereby obtaining the user ID. The component element information corresponding to the application ID may be acquired from the component element information storage unit 42.

構成要素受信部56は、PC20から構成要素を受信し、構成要素記憶部32を更新する。具体的には、構成要素受信部56は、ユーザID、アプリケーションID、及び構成要素が対応づけられた情報をPC20から受信する。構成要素受信部56は、ユーザ別構成要素記憶部40における、該ユーザID及びアプリケーションIDに対応する構成要素を更新する。また、構成要素受信部56は、ユーザ別構成要素テーブルの更新日時を更新する。さらに、構成要素受信部56は、構成要素情報記憶部42を参照し、該構成要素を示す構成要素情報が該アプリケーションIDと対応づけられていない場合は、該構成要素を示す構成要素情報を該アプリケーションIDと対応づけて記憶する。   The component reception unit 56 receives the component from the PC 20 and updates the component storage unit 32. Specifically, the component receiving unit 56 receives information associated with the user ID, application ID, and component from the PC 20. The component reception unit 56 updates the component corresponding to the user ID and application ID in the user-specific component storage unit 40. In addition, the component reception unit 56 updates the update date and time of the user-specific component table. Further, the component receiving unit 56 refers to the component element information storage unit 42, and when the component element information indicating the component is not associated with the application ID, the component element information indicating the component is It is stored in association with the application ID.

構成要素取得要求受信部58は、PC20から構成要素取得要求を受信する。構成要素取得要求には、ユーザID及びアプリケーションIDが含まれている。なお、構成要素取得要求には、アプリケーションIDが含まれていなくてもよい。   The component acquisition request receiver 58 receives a component acquisition request from the PC 20. The component acquisition request includes a user ID and an application ID. The component acquisition request does not need to include the application ID.

構成要素送信部60は、構成要素取得要求に含まれるユーザID及びアプリケーションIDに対応する構成要素をユーザ別構成要素記憶部40から取得し、要求元のPC20に送信する。なお、構成要素取得要求にアプリケーションIDが含まれていない場合、構成要素送信部60は、構成要素取得要求に含まれるユーザIDに対応する複数のアプリケーションの構成要素を、アプリケーションIDと対応づけて要求元のPC20に送信することとしてもよい。   The component transmission unit 60 acquires the component corresponding to the user ID and application ID included in the component acquisition request from the user-specific component storage unit 40 and transmits the component to the requesting PC 20. If the application ID is not included in the component acquisition request, the component transmission unit 60 requests a plurality of application components corresponding to the user ID included in the component acquisition request in association with the application ID. It may be transmitted to the original PC 20.

図6は、PC20が有する機能の一例を示すブロック図である。図6に示すように、PC20は、ファイル記憶部80、設定情報領域82、ファイルシステムドライバ84、アプリケーション実行部86、設定情報参照部88、同期設定部90、同期アプリケーション起動部92、構成要素特定部94、及び同期通信部96を含んで構成される。これらの各部は、例えば、メモリや記憶装置等の記憶領域を用いたり、記憶領域に格納されているプログラムをプロセッサが実行したりすることにより実現することができる。特に、アプリケーション同期システムを利用するために必要となる、同期設定部90、同期アプリケーション起動部92、構成要素特定部94、及び同期通信部96は、アプリケーション同期システム用のプログラムを実行することにより実現される。各PC20には、このプログラムが例えば同期サーバ10からダウンロードされ、インストールされていることとする。   FIG. 6 is a block diagram illustrating an example of functions that the PC 20 has. As shown in FIG. 6, the PC 20 includes a file storage unit 80, a setting information area 82, a file system driver 84, an application execution unit 86, a setting information reference unit 88, a synchronization setting unit 90, a synchronization application activation unit 92, and component identification. Unit 94 and a synchronous communication unit 96. These units can be realized, for example, by using a storage area such as a memory or a storage device, or by executing a program stored in the storage area by a processor. In particular, the synchronization setting unit 90, the synchronization application activation unit 92, the component identification unit 94, and the synchronization communication unit 96 that are necessary for using the application synchronization system are realized by executing a program for the application synchronization system. Is done. It is assumed that this program is downloaded and installed in each PC 20 from, for example, the synchronization server 10.

ファイル記憶部80は、PC20において用いられる各種ファイルを記憶している。各種ファイルには、例えば、オペレーティングシステム(OS)やアプリケーションで用いられるプログラムやデータが含まれる。各ファイルは、ファイルパス名やファイル名などを含むファイルID(ファイル識別子)により識別することができる。   The file storage unit 80 stores various files used in the PC 20. Various files include, for example, programs and data used in an operating system (OS) and applications. Each file can be identified by a file ID (file identifier) including a file path name and a file name.

図6に示すように、ファイル記憶部80は、アプリケーション記憶部100、ユーザファイル記憶部102、同期設定記憶部104、同期アプリケーション記憶部106、同期ユーザファイル記憶部108、及び同期設定情報記憶部110を含むことができる。   As shown in FIG. 6, the file storage unit 80 includes an application storage unit 100, a user file storage unit 102, a synchronization setting storage unit 104, a synchronization application storage unit 106, a synchronization user file storage unit 108, and a synchronization setting information storage unit 110. Can be included.

アプリケーション記憶部100には、PC20において実行される各種アプリケーションの実行ファイルやDLLなどのアプリケーションファイルが格納される。アプリケーションファイルの格納場所は、例えば、アプリケーションがPC20にインストールされる際にユーザによって指定されたり、インストーラによってあらかじめ定められていたりする。   The application storage unit 100 stores execution files of various applications executed on the PC 20 and application files such as DLL. The storage location of the application file is specified by the user when the application is installed on the PC 20, or predetermined by the installer, for example.

ユーザファイル記憶部102には、アプリケーションで用いられるユーザデータを含むファイルであるユーザファイルが格納される。ユーザファイルは、例えば、各種アプリケーション用の共通のフォルダの下に設けられた、アプリケーションごとのフォルダに格納することができる。この場合、例えば、共通のフォルダの情報は、環境変数に設定されていることとすることができる。アプリケーションは、環境変数を参照することにより、ユーザファイルの格納場所を特定することができる。また、このように共通のフォルダの配下ではなく、アプリケーションで独自に定められた場所にユーザファイルが格納されることとしてもよい。   The user file storage unit 102 stores a user file that is a file including user data used in an application. The user file can be stored, for example, in a folder for each application provided under a common folder for various applications. In this case, for example, information on the common folder can be set in the environment variable. The application can specify the storage location of the user file by referring to the environment variable. In addition, the user file may be stored in a location uniquely determined by the application, not under the common folder as described above.

同期設定記憶部104には、アプリケーション同期システムを利用するための設定である同期設定が記憶される。図7は、同期設定記憶部104の構成の一例を示す図である。図7に示す例では、同期設定記憶部104は、ユーザIDやパスワードなどのアカウント情報に加えて、同期アプリケーションに関する情報を記憶する。同期アプリケーションに関する情報としては、例えば、アプリケーション情報や、ユーザファイルフォルダ情報、同期設定情報フォルダ情報、更新日時が含まれる。   The synchronization setting storage unit 104 stores synchronization settings that are settings for using the application synchronization system. FIG. 7 is a diagram illustrating an example of the configuration of the synchronization setting storage unit 104. In the example illustrated in FIG. 7, the synchronization setting storage unit 104 stores information related to the synchronization application in addition to account information such as a user ID and a password. Examples of the information related to the synchronization application include application information, user file folder information, synchronization setting information folder information, and update date / time.

ユーザIDやパスワードなどのアカウント情報は、アプリケーション同期システムを用いるためのものであり、例えば、本システムの利用開始時に同期設定部90により登録される。   Account information such as a user ID and password is for using the application synchronization system, and is registered by the synchronization setting unit 90 at the start of use of the system, for example.

アプリケーション情報は、例えば、同期アプリケーションの実行ファイルの格納場所を示す情報を含んでいる。本実施形態では、同期アプリケーションのアプリケーションファイルは、アプリケーション記憶部100から同期アプリケーション記憶部106にコピーされて使用される。図8には、アプリケーション記憶部100から同期アプリケーション記憶部106へのコピーの一例が示されている。図8に示すように、アプリケーション記憶部100に格納されているアプリケーションファイルを、例えばフォルダ単位で、同期アプリケーション記憶部106にコピーすることができる。同期設定記憶部104のアプリケーション情報は、例えば、同期アプリケーション記憶部106におけるフォルダの情報や、該フォルダ内に格納されている実行ファイルの情報を含むことができる。また、同期設定のアプリケーション情報は、例えば、アプリケーション記憶部100におけるアプリケーションファイルの格納場所、すなわちオリジナルの格納場所を示す情報を含むことができる。   The application information includes, for example, information indicating the storage location of the execution file of the synchronization application. In the present embodiment, the application file of the synchronous application is copied from the application storage unit 100 to the synchronous application storage unit 106 and used. FIG. 8 shows an example of copying from the application storage unit 100 to the synchronous application storage unit 106. As shown in FIG. 8, the application file stored in the application storage unit 100 can be copied to the synchronous application storage unit 106, for example, in folder units. The application information in the synchronization setting storage unit 104 can include, for example, information on a folder in the synchronization application storage unit 106 and information on an executable file stored in the folder. Further, the application information of the synchronization setting can include, for example, information indicating an application file storage location in the application storage unit 100, that is, an original storage location.

また、本実施形態では、同期アプリケーションで用いられるユーザファイルは、ユーザファイル記憶部102から同期ユーザファイル記憶部108にコピーされて使用される。例えば、アプリケーション記憶部100に格納されているアプリケーションを、本システムを用いずに通常通り起動した場合、ユーザファイル記憶部102に格納されているユーザファイルが用いられる。一方、本システムを用いることにより同期アプリケーション記憶部108に格納されているアプリケーションが起動される場合は、同期ユーザファイル記憶部102に格納されているユーザファイルが用いられる。同期設定に含まれるユーザファイルフォルダ情報は、同期ユーザファイル記憶部108に格納されているユーザファイルの格納場所を特定するための情報を含むことができる。また、同期設定のユーザファイルフォルダ情報は、例えば、ユーザファイル記憶部102におけるユーザファイルの格納場所、すなわちオリジナルの格納場所を示す情報を含むことができる。   In this embodiment, the user file used in the synchronization application is copied from the user file storage unit 102 to the synchronization user file storage unit 108 and used. For example, when an application stored in the application storage unit 100 is started normally without using this system, the user file stored in the user file storage unit 102 is used. On the other hand, when an application stored in the synchronous application storage unit 108 is activated by using this system, the user file stored in the synchronous user file storage unit 102 is used. The user file folder information included in the synchronization setting can include information for specifying the storage location of the user file stored in the synchronization user file storage unit 108. Further, the user file folder information of the synchronization setting can include, for example, information indicating the storage location of the user file in the user file storage unit 102, that is, the original storage location.

また、本実施形態では、同期アプリケーションの実行時には、設定情報領域(レジストリ)82に格納されている設定情報のかわりに、同期設定情報記憶部110に格納されている同期設定情報が参照される。設定情報領域82は、例えばレジストリなどの特殊なデータ領域であり、アプリケーションのインストール時やアプリケーションの実行時に生成される各種設定情報が格納される。同期設定記憶部104の同期設定情報フォルダ情報は、例えば、同期設定情報記憶部110において同期設定情報が格納されているフォルダの情報を含むことができる。   In the present embodiment, when the synchronization application is executed, the synchronization setting information stored in the synchronization setting information storage unit 110 is referred to instead of the setting information stored in the setting information area (registry) 82. The setting information area 82 is a special data area such as a registry, for example, and stores various setting information generated at the time of application installation or application execution. The synchronization setting information folder information in the synchronization setting storage unit 104 can include, for example, information on a folder in which the synchronization setting information is stored in the synchronization setting information storage unit 110.

例えばアプリケーション記憶部100に格納されているアプリケーションを、本システムを用いずに通常通り起動した場合、設定情報領域82に格納されている設定情報が用いられる。一方、本システムを用いることにより同期アプリケーション記憶部106に格納されているアプリケーションが起動される場合は、同期設定情報記憶部110に格納されている同期設定情報が用いられる。同期設定に含まれる同期設定情報フォルダに関する情報は、同期設定情報記憶部110に格納されている同期設定情報の格納場所を特定するための情報を含むことができる。なお、同期設定情報は、設定情報領域82に格納されている設定情報と同等の内容を含む所定のデータ形式のファイルとすることができる。例えば、同期設定情報は、シリアライズされたメッセージパックなど、構造化されたデータとすることができる。なお、同期設定情報は、設定情報領域82にリストアすることなく参照することができる。   For example, when an application stored in the application storage unit 100 is started normally without using this system, the setting information stored in the setting information area 82 is used. On the other hand, when an application stored in the synchronization application storage unit 106 is activated by using this system, the synchronization setting information stored in the synchronization setting information storage unit 110 is used. The information regarding the synchronization setting information folder included in the synchronization setting may include information for specifying the storage location of the synchronization setting information stored in the synchronization setting information storage unit 110. The synchronization setting information can be a file having a predetermined data format including the same contents as the setting information stored in the setting information area 82. For example, the synchronization setting information can be structured data such as a serialized message pack. The synchronization setting information can be referred to without being restored to the setting information area 82.

同期設定記憶部104の更新日時には、同期アプリケーションのアプリケーションファイルやユーザファイル、同期設定情報が更新された日時を示す情報が設定される。   In the update date and time of the synchronization setting storage unit 104, information indicating the date and time when the application file and user file of the synchronization application and the synchronization setting information are updated is set.

図6に戻り、設定情報領域82は、例えばレジストリなどの特殊なデータ領域であり、アプリケーションのインストール時やアプリケーションの実行時に生成される各種設定情報が格納される。   Returning to FIG. 6, the setting information area 82 is a special data area such as a registry, for example, and stores various setting information generated at the time of application installation or application execution.

ファイルシステムドライバ84は、ファイル記憶部80に格納されている各種ファイルにアクセスするためのドライバである。具体的には、例えば、PC20のOSがWindows(登録商標)の場合であれば、プロセスからファイルへのアクセスが行われる際には入出力要求パケット(IRP:I/O Request Packet)が発行される。ファイルシステムドライバ84はこのIRPをプロセスから受け取ることにより、IRPによって特定されるファイルへのアクセスを実行する。なお、本実施形態では、ファイルシステムドライバ84は、カーネルモードで実行されることとする。   The file system driver 84 is a driver for accessing various files stored in the file storage unit 80. Specifically, for example, if the OS of the PC 20 is Windows (registered trademark), an input / output request packet (IRP: I / O Request Packet) is issued when a process accesses a file. The By receiving this IRP from the process, the file system driver 84 executes access to the file specified by the IRP. In the present embodiment, the file system driver 84 is executed in the kernel mode.

アプリケーション実行部86は、ユーザ操作に応じて、アプリケーション記憶部100または同期アプリケーション記憶部106に格納されているアプリケーションを実行する。   The application execution unit 86 executes an application stored in the application storage unit 100 or the synchronous application storage unit 106 in accordance with a user operation.

設定情報参照部88は、アプリケーション実行時に設定情報領域82に格納されている設定情報を参照するための機能を提供する。例えば、設定情報参照部88は、DLLによって実現されるものであり、アプリケーションの起動時に動的にリンクすることが可能である。   The setting information reference unit 88 provides a function for referring to the setting information stored in the setting information area 82 when the application is executed. For example, the setting information reference unit 88 is realized by DLL, and can be dynamically linked when the application is activated.

同期設定部90は、複数のPC20間でアプリケーションを同期させるための設定を行うものである。図9には、同期設定の際に表示される画面の一例が示されている。この画面は、例えば、アプリケーション同期システム用のプログラムが起動されることにより表示される。ユーザは、この画面を用いることにより、同期アプリケーションを登録したり、同期アプリケーションを起動したりすることができる。例えば、ユーザが、PC20のデスクトップ等にある、あるアプリケーション「APL001」のショートカット210をドラッグアンドドロップによって画面200の表示領域212に移動させると、同期設定部90は、このショートカットにより特定されるアプリケーションを同期アプリケーションとして認識する。なお、ドラッグアンドドロップに限らず、同期アプリケーションを同期設定部90に認識させるための任意の手法を用いることができる。例えば、図9に示すように、アプリケーション追加ボタン214を押下してファイル参照用のインタフェースを表示させることにより、登録対象のアプリケーションが認識されることとしてもよい。そして、同期設定部90は、認識した同期アプリケーションに関する情報を同期設定記憶部104に格納する。なお、同期設定部90は、同期アプリケーションに関する情報を同期設定記憶部104に格納するのではなく、同期サーバ10のユーザ別構成要素記憶部40に格納することとしてもよい。   The synchronization setting unit 90 performs settings for synchronizing applications among a plurality of PCs 20. FIG. 9 shows an example of a screen displayed at the time of synchronization setting. This screen is displayed, for example, when an application synchronization system program is started. By using this screen, the user can register the synchronization application or start the synchronization application. For example, when the user moves a shortcut 210 of an application “APL001” on the desktop of the PC 20 to the display area 212 of the screen 200 by drag and drop, the synchronization setting unit 90 selects the application specified by the shortcut. Recognize as a synchronous application. In addition, not only drag and drop but the arbitrary methods for making the synchronous setting part 90 recognize a synchronous application can be used. For example, as shown in FIG. 9, the application to be registered may be recognized by pressing the application addition button 214 to display a file reference interface. Then, the synchronization setting unit 90 stores information regarding the recognized synchronization application in the synchronization setting storage unit 104. Note that the synchronization setting unit 90 may store information on the synchronization application in the user-specific component storage unit 40 of the synchronization server 10 instead of storing the information about the synchronization application in the synchronization setting storage unit 104.

例えば、同期設定部90は、図9に示した画面200で同期対象のアプリケーションが指定されると、このアプリケーションのアプリケーションファイルをアプリケーション記憶部100から同期アプリケーション記憶部106にコピーすることができる。例えば、図9に示すように、アプリケーション「APL001」が同期対象として指定された場合、同期設定部90は、アプリケーション記憶部100に記憶されている「APL001」のアプリケーションファイルをフォルダごと同期アプリケーション記憶部106にコピーすることができる。   For example, when a synchronization target application is designated on the screen 200 shown in FIG. 9, the synchronization setting unit 90 can copy the application file of this application from the application storage unit 100 to the synchronization application storage unit 106. For example, as illustrated in FIG. 9, when the application “APL001” is designated as a synchronization target, the synchronization setting unit 90 stores the application file “APL001” stored in the application storage unit 100 for each folder. 106 can be copied.

なお、あるユーザが複数のPC20を保有する場合に、アプリケーション記憶部100にアプリケーションファイルが格納されている必要があるのは1台のPC20のみである。すなわち、はじめにユーザがアプリケーションを同期対象として登録するPC20においてアプリケーション記憶部100にアプリケーションデータが格納されていればよい。ユーザファイルおよび設定情報についても同様である。   When a certain user has a plurality of PCs 20, only one PC 20 needs to store an application file in the application storage unit 100. That is, it is only necessary that application data is stored in the application storage unit 100 in the PC 20 where the user first registers the application as a synchronization target. The same applies to user files and setting information.

また、同期設定部90は、同期設定記憶部104に格納されている同期設定の更新日時を更新することができる。例えば、同期設定部90は、同期アプリケーションが登録された際の日時を更新日時の初期情報として設定することができる。また、同期設定部90は、同期アプリケーションの実行によって、アプリケーションファイル、ユーザファイル、または同期設定情報が更新された際には、同期設定に含まれる更新日時を更新することができる。   In addition, the synchronization setting unit 90 can update the update date and time of the synchronization setting stored in the synchronization setting storage unit 104. For example, the synchronization setting unit 90 can set the date and time when the synchronization application is registered as the initial information of the update date and time. The synchronization setting unit 90 can update the update date and time included in the synchronization setting when the application file, the user file, or the synchronization setting information is updated by executing the synchronization application.

図6に戻り、同期アプリケーション起動部92は、ユーザ操作に応じて同期アプリケーションを起動する。例えば、同期アプリケーション起動部92は、図10に示す画面200において、アプリケーション「APL001」に割り当てられた表示領域220が選択されると、同期設定記憶部104に格納されている同期設定を参照し、同期アプリケーション記憶部106に格納されている同期アプリケーションを起動する。   Returning to FIG. 6, the synchronous application starting part 92 starts a synchronous application according to user operation. For example, when the display area 220 assigned to the application “APL001” is selected on the screen 200 shown in FIG. 10, the synchronization application activation unit 92 refers to the synchronization setting stored in the synchronization setting storage unit 104, The synchronous application stored in the synchronous application storage unit 106 is activated.

このとき、同期アプリケーション起動部92は、ユーザファイルの参照先が、ユーザファイル記憶部102ではなく、同期ユーザファイル記憶部108となるように、同期アプリケーションを起動する。具体的には、同期アプリケーション起動部92は、同期設定記憶部104に格納されている同期設定を参照し、起動対象のアプリケーションに対応づけられているユーザファイルフォルダ情報を取得する。そして、同期アプリケーション起動部92は、この情報によって示されるフォルダがユーザファイルの参照先となるように同期アプリケーションを起動する。例えば、同期アプリケーション起動部92は、同期アプリケーションが実行される際の環境変数に、ユーザファイルの参照先としてこのフォルダの情報を設定する。   At this time, the synchronization application activation unit 92 activates the synchronization application so that the user file reference destination is not the user file storage unit 102 but the synchronization user file storage unit 108. Specifically, the synchronization application activation unit 92 refers to the synchronization setting stored in the synchronization setting storage unit 104 and acquires user file folder information associated with the activation target application. And the synchronous application starting part 92 starts a synchronous application so that the folder shown with this information may become a reference destination of a user file. For example, the synchronous application activation unit 92 sets information of this folder as a reference destination of the user file in an environment variable when the synchronous application is executed.

また、同期アプリケーション起動部92は、設定情報の参照先が、設定情報領域82ではなく、同期設定情報記憶部110となるように、同期アプリケーションを起動する。設定情報の参照先を同期設定情報記憶部110とするための手法については後述する。   Further, the synchronization application activation unit 92 activates the synchronization application so that the setting information reference destination is not the setting information area 82 but the synchronization setting information storage unit 110. A method for setting the reference destination of the setting information as the synchronization setting information storage unit 110 will be described later.

構成要素特定部94は、同期アプリケーションの実行時に必要となる構成要素を特定することができる。図6に示すように、構成要素特定部94は、フォルダ特定部120、設定情報検出部122、及びファイル検出部124を含んで構成される。   The component specifying unit 94 can specify a component required when executing the synchronization application. As shown in FIG. 6, the component specifying unit 94 includes a folder specifying unit 120, a setting information detecting unit 122, and a file detecting unit 124.

フォルダ特定部120は、同期アプリケーションの実行時に必要となる構成要素が格納されたフォルダを特定することができる。例えば、フォルダ特定部120は、同期設定記憶部104を参照することにより、アプリケーションファイルやユーザファイル、同期設定情報が格納されたフォルダを特定することができる。そして、フォルダ特定部120は、このように特定されたフォルダに格納されているファイルを構成要素として特定することができる。   The folder specifying unit 120 can specify a folder in which components necessary for executing the synchronization application are stored. For example, the folder specifying unit 120 can specify a folder in which application files, user files, and synchronization setting information are stored by referring to the synchronization setting storage unit 104. Then, the folder specifying unit 120 can specify the file stored in the folder specified in this way as a component.

設定情報検出部122(同期設定情報参照部)は、設定情報領域82に格納されている設定情報の中から、同期アプリケーションの実行時に必要となる設定情報を検出することができる。設定情報検出部122は、検出した設定情報を同期設定情報として同期設定情報記憶部110に格納することができる。また、設定情報検出部122は、同期アプリケーションの実行時に、同期設定情報記憶部110に格納されている同期設定情報を参照することができる。設定情報検出部122は、例えば、設定情報参照部88と同様にDLLによって実現されるものであり、同期アプリケーションの起動時に動的にリンクすることが可能である。   The setting information detection unit 122 (synchronization setting information reference unit) can detect setting information required when executing the synchronization application from the setting information stored in the setting information area 82. The setting information detection unit 122 can store the detected setting information in the synchronization setting information storage unit 110 as synchronization setting information. Further, the setting information detection unit 122 can refer to the synchronization setting information stored in the synchronization setting information storage unit 110 when executing the synchronization application. The setting information detection unit 122 is realized by, for example, a DLL like the setting information reference unit 88, and can be dynamically linked when the synchronous application is activated.

例えば、設定情報検出部122は、同期アプリケーション起動部92が同期アプリケーションを起動する際に、設定情報参照部88の代わりに同期アプリケーションに動的にリンクされることとなる。これにより、アプリケーション実行部86において実行される処理で、設定情報領域82に格納されている設定情報にアクセスするための関数が呼び出されると、設定情報検出部122が起動され、同期設定情報記憶部110に格納されている設定情報が参照されることとなる。つまり、設定情報検出部122は、アプリケーション実行部86による設定情報参照部88の関数の呼び出しをフック(横取り)し、設定情報参照部88の代わりに処理を実行することとなる。このような手法は一般的にDLLインジェクションと言われている。   For example, the setting information detection unit 122 is dynamically linked to the synchronization application instead of the setting information reference unit 88 when the synchronization application activation unit 92 activates the synchronization application. As a result, when a function for accessing the setting information stored in the setting information area 82 is called in the process executed by the application execution unit 86, the setting information detection unit 122 is activated, and the synchronization setting information storage unit The setting information stored in 110 is referred to. That is, the setting information detection unit 122 hooks (interprets) a function call of the setting information reference unit 88 by the application execution unit 86 and executes processing instead of the setting information reference unit 88. Such a method is generally called DLL injection.

また、設定情報検出部122は、アプリケーション実行部86からの指示により同期設定情報記憶部110を参照した際に、対象の設定情報が同期設定情報記憶部110に格納されていない場合は、この設定情報を設定情報領域82から取得してアプリケーション実行部86に返すことができる。そして、設定情報検出部122は、この設定情報を同期設定情報記憶部110に同期設定情報として格納する。これは、同期アプリケーションを登録する際には、設定情報領域82のどこに格納されている設定情報がこのアプリケーションで用いられるかを特定することができないからである。そのため、設定情報検出部122は、アプリケーションの実行時に指定された設定情報を設定情報領域82から抽出して同期設定情報記憶部110に格納する。なお、設定情報検出部122は、設定情報領域82から設定情報を抽出する際に、設定情報参照部88を呼び出すことができる。   In addition, when the setting information detection unit 122 refers to the synchronization setting information storage unit 110 according to an instruction from the application execution unit 86, if the target setting information is not stored in the synchronization setting information storage unit 110, the setting information detection unit 122 performs this setting. Information can be acquired from the setting information area 82 and returned to the application execution unit 86. Then, the setting information detection unit 122 stores this setting information in the synchronization setting information storage unit 110 as synchronization setting information. This is because, when registering a synchronous application, it is impossible to specify where the setting information stored in the setting information area 82 is used by this application. Therefore, the setting information detection unit 122 extracts setting information designated at the time of executing the application from the setting information area 82 and stores it in the synchronization setting information storage unit 110. The setting information detection unit 122 can call the setting information reference unit 88 when extracting setting information from the setting information area 82.

ファイル検出部124は、同期アプリケーションにおいてアクセスされたファイルを検出する。このようにファイル検出部124によってファイルを検出するのは、フォルダ特定部120によって特定されるファイルだけでは、同期アプリケーションで使用されるファイルを全て特定することができるとは限らないからである。   The file detection unit 124 detects a file accessed in the synchronization application. The reason why the file is detected by the file detection unit 124 in this way is that it is not always possible to specify all the files used in the synchronization application by the file specified by the folder specifying unit 120 alone.

図11には、ファイル検出部124の構成の一例が示されている。図11に示す例では、ファイル検出部124は、アプリケーション監視部150、アプリケーション情報記憶部152、ファイルシステムフィルタドライバ154、アクセス情報記憶部156、ファイル特定部158、及び特定情報記憶部160を含んで構成されている。図12は、ファイル検出部124を構成する各部の関連を示す図である。図11及び図12を参照して、ファイル検出部124の構成について説明する。なお、本実施形態では、同期アプリケーションのプロセスを監視対象プロセス100、それ以外のアプリケーションのプロセスを監視対象外プロセス310という。   FIG. 11 shows an example of the configuration of the file detection unit 124. In the example illustrated in FIG. 11, the file detection unit 124 includes an application monitoring unit 150, an application information storage unit 152, a file system filter driver 154, an access information storage unit 156, a file specification unit 158, and a specific information storage unit 160. It is configured. FIG. 12 is a diagram illustrating the relationship between the respective units constituting the file detection unit 124. The configuration of the file detection unit 124 will be described with reference to FIGS. 11 and 12. In this embodiment, the process of the synchronous application is referred to as the monitoring target process 100, and the process of the other application is referred to as the non-monitoring process 310.

アプリケーション監視部150は、PC20におけるアプリケーションの実行状態を監視する。アプリケーション監視部150は、同期設定記憶部104に登録されている同期アプリケーションが実行されている場合には、当該アプリケーションのプロセスIDを取得する。例えば、PC20のOSがWindows(登録商標)の場合であれば、アプリケーション監視部150は、ToolHelp32等のAPI(Application Program Interface)関数を用いることによって、アプリケーションの実行状態の監視や、プロセスIDの取得を行うことができる。同期アプリケーションのプロセスIDが取得された場合、アプリケーション監視部150は、アプリケーションIDとプロセスIDとを対応づけたアプリケーション情報を生成し、アプリケーション情報記憶部152に格納する。図13には、アプリケーション情報の一例が示されている。   The application monitoring unit 150 monitors the execution state of the application on the PC 20. When the synchronous application registered in the synchronous setting storage unit 104 is being executed, the application monitoring unit 150 acquires the process ID of the application. For example, if the OS of the PC 20 is Windows (registered trademark), the application monitoring unit 150 uses an API (Application Program Interface) function such as ToolHelp32 to monitor the execution state of the application and obtain the process ID. It can be performed. When the process ID of the synchronous application is acquired, the application monitoring unit 150 generates application information in which the application ID is associated with the process ID, and stores the application information in the application information storage unit 152. FIG. 13 shows an example of application information.

また、アプリケーション監視部150は、同期アプリケーションのプロセスIDが取得された場合、当該プロセスIDを、ファイルシステムフィルタドライバ154に通知する。なお、アプリケーション監視部150がプロセスIDをファイルシステムフィルタドライバ154に通知するのではなく、ファイルシステムフィルタドライバ154がアプリケーション情報記憶部152を参照することとしてもよい。   When the process ID of the synchronous application is acquired, the application monitoring unit 150 notifies the file system filter driver 154 of the process ID. Note that the application monitoring unit 150 does not notify the file system filter driver 154 of the process ID, but the file system filter driver 154 may refer to the application information storage unit 152.

ファイルシステムフィルタドライバ154(アクセス情報出力部)は、ファイルに対するアクセス要求をフィルタリングすることにより、監視対象プロセス300からアクセスされたファイルを特定する。本実施形態では、ファイルシステムフィルタドライバ154は、カーネルモードで実行されることとする。例えば、PC20のOSがWindows(登録商標)の場合であれば、プロセスからファイルへのアクセスが行われる際には入出力要求パケット(IRP:I/O Request Packet)が発行される。IRPには、アクセス対象のファイルと、アクセス要求を行っているプロセスのプロセスIDとを特定可能な情報が含まれている。なお、ファイルIDやプロセスIDそのものがIRPに含まれている必要はなく、IRPに含まれる情報に基づいて、ファイルIDやプロセスIDを特定可能であればよい。また、本実施形態ではIRPをアクセス要求の一例として説明するが、アクセス要求はIRPに限定されず、OSに応じた任意の形式とすることができる。   The file system filter driver 154 (access information output unit) specifies a file accessed from the monitoring target process 300 by filtering an access request for the file. In the present embodiment, the file system filter driver 154 is executed in the kernel mode. For example, if the OS of the PC 20 is Windows (registered trademark), an input / output request packet (IRP: I / O Request Packet) is issued when a process accesses a file. The IRP includes information that can specify the file to be accessed and the process ID of the process making the access request. Note that the file ID and process ID itself do not need to be included in the IRP, and it is sufficient that the file ID and process ID can be specified based on the information included in the IRP. In this embodiment, IRP is described as an example of an access request. However, the access request is not limited to the IRP, and can be in any format according to the OS.

ファイルシステムフィルタドライバ154が存在しない構成においては、IRPがファイルシステムドライバ84に出力されることにより、ファイルアクセスが実行される。ファイルシステムフィルタドライバ154は、ファイルシステムドライバ84に出力されるIRPを横取りし、監視対象プロセス300においてアクセスされたファイルを特定することができる。具体的には、ファイルシステムフィルタドライバ154は、IRPを発行したプロセスのプロセスIDが、アプリケーション監視部150から通知されたプロセスIDに含まれる場合、当該IRPによるアクセス対象のファイルのファイルIDを特定する。なお、ファイルシステムフィルタドライバ154は、アプリケーション監視部150から通知されたプロセスIDを記憶しておくことができる。そして、ファイルシステムフィルタドライバ154は、プロセスID及びファイルIDを対応づけたアクセス情報を生成し、アクセス情報記憶部156に格納する。図14には、アクセス情報の一例が示されている。   In a configuration in which the file system filter driver 154 does not exist, file access is executed by outputting the IRP to the file system driver 84. The file system filter driver 154 can intercept the IRP output to the file system driver 84 and specify the file accessed in the monitored process 300. Specifically, when the process ID of the process that issued the IRP is included in the process ID notified from the application monitoring unit 150, the file system filter driver 154 specifies the file ID of the file to be accessed by the IRP. . The file system filter driver 154 can store the process ID notified from the application monitoring unit 150. Then, the file system filter driver 154 generates access information in which the process ID and the file ID are associated with each other, and stores the access information in the access information storage unit 156. FIG. 14 shows an example of access information.

ファイルシステムフィルタドライバ154は、アクセス情報の生成後に、IRPをファイルシステムドライバ84に出力する。また、IRPを発行したプロセスのプロセスIDが、アプリケーション監視部150から通知されたプロセスIDに含まれない場合、すなわち、IPRを発行したプロセスが監視対象外プロセス310である場合、ファイルシステムフィルタドライバ154は、アクセス情報を生成せずにIRPをファイルシステムドライバ84に出力する。   The file system filter driver 154 outputs the IRP to the file system driver 84 after the access information is generated. If the process ID of the process that issued the IRP is not included in the process ID notified from the application monitoring unit 150, that is, if the process that issued the IPR is the non-monitoring process 310, the file system filter driver 154 Outputs the IRP to the file system driver 84 without generating access information.

ファイル特定部158は、アプリケーション情報記憶部152に記憶されているアプリケーション情報と、アクセス情報記憶部156に記憶されているアクセス情報とに基づいて、同期アプリケーションにおいてアクセスされたファイルを特定する。具体的には、ファイル特定部158は、アプリケーション情報におけるアプリケーションID及びプロセスIDの対応関係と、アクセス情報におけるプロセスID及びファイルIDの対応関係とに基づいて、アプリケーションID及びファイルIDの対応関係を判定する。そして、ファイル特定部158は、アプリケーションID及びファイルIDを対応づけた特定情報を生成し、特定情報記憶部160に格納する。図15には、特定情報の一例が示されている。   The file specifying unit 158 specifies a file accessed in the synchronous application based on the application information stored in the application information storage unit 152 and the access information stored in the access information storage unit 156. Specifically, the file specifying unit 158 determines the correspondence between the application ID and the file ID based on the correspondence between the application ID and the process ID in the application information and the correspondence between the process ID and the file ID in the access information. To do. Then, the file specifying unit 158 generates specific information in which the application ID and the file ID are associated with each other, and stores the specific information in the specific information storage unit 160. FIG. 15 shows an example of the specific information.

図6に戻り、同期通信部96は、複数のPC20の間でアプリケーションを同期させるためのデータ通信を行うものである。図6に示すように、同期通信部96は、認証要求部130、構成要素情報取得部132、構成要素情報記憶部134、構成要素送信部136、及び構成要素受信部138を含んで構成することができる。   Returning to FIG. 6, the synchronous communication unit 96 performs data communication for synchronizing applications among a plurality of PCs 20. As shown in FIG. 6, the synchronous communication unit 96 includes an authentication request unit 130, a component element information acquisition unit 132, a component element information storage unit 134, a component element transmission unit 136, and a component element reception unit 138. Can do.

認証要求部130は、同期設定記憶部104に記憶されているアカウント情報を用いることにより、アプリケーション同期システムを利用するための認証要求を同期サーバ10に送信する。なお、認証要求部130は、同期設定記憶部104からアカウント情報を取得するのではなく、例えば、アカウント情報を入力するための画面を出力することにより、アカウント情報をユーザから受け付けることとしてもよい。   The authentication request unit 130 transmits an authentication request for using the application synchronization system to the synchronization server 10 by using the account information stored in the synchronization setting storage unit 104. Note that the authentication request unit 130 does not acquire the account information from the synchronization setting storage unit 104, but may accept the account information from the user, for example, by outputting a screen for inputting the account information.

構成要素情報取得部132は、同期処理を行うタイミングにおいて、同期アプリケーションの構成要素を示す構成要素情報を同期サーバ10から取得し、構成要素情報記憶部134に格納する。例えば、構成要素情報取得部132は、同期アプリケーションのアプリケーションIDを含む、構成要素情報取得要求を同期サーバ10に送信することにより、同期アプリケーションの構成要素を示す構成要素情報を取得することができる。前述したように、この構成要素情報は、複数のユーザが同期サーバ10に送信した構成要素を示す情報を集約したものである。構成要素情報は、PC20においてアプリケーションがインストールされた状態における構成要素の格納場所を示す情報を含むことができる。   The component element information acquisition unit 132 acquires component element information indicating the component elements of the synchronization application from the synchronization server 10 at the timing of performing the synchronization process, and stores the component element information in the component element information storage unit 134. For example, the constituent element information acquisition unit 132 can acquire constituent element information indicating the constituent elements of the synchronization application by transmitting a constituent element information acquisition request including the application ID of the synchronous application to the synchronization server 10. As described above, this component information is a collection of information indicating components transmitted by a plurality of users to the synchronization server 10. The component information can include information indicating a storage location of the component in a state where the application is installed on the PC 20.

構成要素送信部136は、同期処理を行うタイミングにおいて、同期アプリケーションの構成要素を同期サーバ10に送信する。具体的には、構成要素送信部136は、構成要素特定部94による特定結果と、同期サーバ10から取得する構成要素情報とに応じた構成要素を同期サーバ10に送信する。   The component transmission unit 136 transmits the component of the synchronization application to the synchronization server 10 at the timing of performing the synchronization process. Specifically, the component transmission unit 136 transmits a component according to the identification result by the component identification unit 94 and the component element information acquired from the synchronization server 10 to the synchronization server 10.

図16は、構成要素送信部136によって送信される構成要素の一例を示す図である。図16に示す例では、構成要素特定部94により特定された構成要素には、A,B,Cが含まれている。また、同期サーバ10から取得された構成要素情報によって示される構成要素には、A,B,Dが含まれている。この場合、構成要素送信部136は、特定結果によって示される構成要素と、構成要素情報によって示される構成要素との両方(A,B,C,D)を同期サーバ10への送信対象とすることができる。   FIG. 16 is a diagram illustrating an example of a component transmitted by the component transmission unit 136. In the example illustrated in FIG. 16, the constituent elements specified by the constituent element specifying unit 94 include A, B, and C. The constituent elements indicated by the constituent element information acquired from the synchronization server 10 include A, B, and D. In this case, the component transmission unit 136 sets both the component indicated by the specific result and the component indicated by the component information (A, B, C, D) as transmission targets to the synchronization server 10. Can do.

つまり、構成要素送信部136は、あるユーザのPC20において特定された構成要素に加えて、他のユーザのPC20において特定された構成要素についても同期サーバ10に送信することができる。これにより、あるユーザのPC20において特定された構成要素のみを同期サーバ10に送信する場合と比較して、同期アプリケーションの構成要素の特定精度を向上させることができる。   That is, the component transmission part 136 can transmit to the synchronization server 10 not only the component specified in the PC 20 of a certain user but also the component specified in the PC 20 of another user. Thereby, compared with the case where only the component specified in PC20 of a certain user is transmitted to the synchronous server 10, the specific precision of the component of a synchronous application can be improved.

構成要素受信部138は、同期処理を行うタイミングにおいて、同期サーバ10から構成要素を受信し、同期アプリケーション記憶部106、同期ユーザファイル記憶部108、及び同期設定情報記憶部110を更新する。例えば、構成要素受信部138は、同期アプリケーションのアプリケーションIDを含む構成要素取得要求を同期サーバ10に送信することにより、同期アプリケーションの構成要素を取得することができる。   The component reception unit 138 receives the component from the synchronization server 10 at the timing of performing the synchronization process, and updates the synchronization application storage unit 106, the synchronization user file storage unit 108, and the synchronization setting information storage unit 110. For example, the component reception unit 138 can acquire the component of the synchronization application by transmitting a component acquisition request including the application ID of the synchronization application to the synchronization server 10.

図17は、PC20における各部の関連を示す図である。図18は、PC20における処理の流れの一例を示すフローチャートである。図19は、PC20における同期処理の一例を示すフローチャートである。図20は、PC20におけるアプリケーション実行処理の一例を示すフローチャートである。図17〜図20を参照して、アプリケーション同期処理について説明する。   FIG. 17 is a diagram illustrating the relationship between the units in the PC 20. FIG. 18 is a flowchart illustrating an example of a processing flow in the PC 20. FIG. 19 is a flowchart illustrating an example of synchronization processing in the PC 20. FIG. 20 is a flowchart illustrating an example of application execution processing in the PC 20. The application synchronization process will be described with reference to FIGS.

アプリケーション同期システム用のプログラムが起動されると、同期通信部96は、同期サーバ10にアクセスして同期処理を実行する(S1801)。同期処理によってPC20内の同期アプリケーションの構成要素の状態が同期サーバ10と同期される。つまり、あるユーザが有する複数のPC20間において、同期アプリケーションの構成要素の状態が同期されることとなる。同期処理が行われた後、アプリケーション実行部86は、同期アプリケーションを実行する(S1802)。同期アプリケーションの実行終了後、同期通信部96は、同期サーバ10にアクセスして同期処理を実行する(S1803)。同期アプリケーションの実行後に同期処理を実行することにより、同期通信部96は、同期アプリケーションの実行によって更新されたユーザファイルや設定情報などの構成要素を同期サーバ10に送信することができる。   When the program for the application synchronization system is activated, the synchronization communication unit 96 accesses the synchronization server 10 and executes synchronization processing (S1801). The state of the components of the synchronization application in the PC 20 is synchronized with the synchronization server 10 by the synchronization process. That is, the states of the components of the synchronization application are synchronized among a plurality of PCs 20 possessed by a certain user. After the synchronization process is performed, the application execution unit 86 executes the synchronization application (S1802). After completing the execution of the synchronization application, the synchronization communication unit 96 accesses the synchronization server 10 and executes synchronization processing (S1803). By executing the synchronization process after the execution of the synchronization application, the synchronization communication unit 96 can transmit components such as user files and setting information updated by the execution of the synchronization application to the synchronization server 10.

図19を参照して、同期処理の一例について説明する。構成要素情報取得部132は、同期アプリケーションの構成要素情報を取得するための構成要素情報取得要求を同期サーバ10に送信する(S1901)。構成要素情報取得部132は、該要求に応じて同期サーバ10から送信されてくる、同期アプリケーションの更新日時及び構成要素情報を受信する(S1802)。ここで、同期サーバ10から送信されてくる、同期アプリケーションの更新日時は、ユーザ別構成要素記憶部40に記憶されている更新日時を示すものである。なお、構成要素情報取得部132は、受信した構成要素情報を構成要素情報記憶部134に格納する。   An example of the synchronization process will be described with reference to FIG. The component element information acquisition unit 132 transmits a component element information acquisition request for acquiring the component element information of the synchronization application to the synchronization server 10 (S1901). The component information acquisition unit 132 receives the update date and component information of the synchronization application transmitted from the synchronization server 10 in response to the request (S1802). Here, the update date and time of the synchronization application transmitted from the synchronization server 10 indicates the update date and time stored in the user-specific component storage unit 40. Note that the component element information acquisition unit 132 stores the received component element information in the component element information storage unit 134.

構成要素受信部138は、同期アプリケーションについて、同期サーバ10から受信した更新日時と、同期設定記憶部104に記憶されている更新日時とを比較する(S1903)。これらが同じ場合(S1903:A)、構成要素受信部138は、PC20内の同期アプリケーションの構成要素が同期サーバ10に記憶されている構成要素と同期された状態になっている判断し、同期処理を終了する。   The component reception unit 138 compares the update date and time received from the synchronization server 10 with the update date and time stored in the synchronization setting storage unit 104 for the synchronization application (S1903). When these are the same (S1903: A), the component reception unit 138 determines that the component of the synchronization application in the PC 20 is synchronized with the component stored in the synchronization server 10, and performs synchronization processing. Exit.

一方、PC20における更新日時が同期サーバ10における更新日時より古い場合(S1903:B)、構成要素受信部138は、PC20内の同期アプリケーションの構成要素が最新の状態になっていないと判断する。そこで、構成要素受信部138は、当該同期アプリケーションの構成要素を取得するための構成要素取得要求を同期サーバ10に送信する(S1904)。構成要素受信部138は、該要求に応じて同期サーバ10から送信されてくる、同期アプリケーションの構成要素を受信し、同期設定記憶部104、同期アプリケーション記憶部106、同期ユーザファイル記憶部108、及び同期設定情報記憶部110を更新する(S1905)。   On the other hand, when the update date / time in the PC 20 is older than the update date / time in the synchronization server 10 (S1903: B), the component reception unit 138 determines that the component of the synchronization application in the PC 20 is not up-to-date. Therefore, the component receiving unit 138 transmits a component acquisition request for acquiring the component of the synchronization application to the synchronization server 10 (S1904). The component reception unit 138 receives the synchronization application components transmitted from the synchronization server 10 in response to the request, and receives the synchronization setting storage unit 104, the synchronization application storage unit 106, the synchronization user file storage unit 108, and The synchronization setting information storage unit 110 is updated (S1905).

PC20における更新日時が同期サーバ10における更新日時より新しい場合(S1903:C)、構成要素送信部136は、PC20内の同期アプリケーションの構成要素の方が、同期サーバ10に記憶されている構成要素よりも新しいと判断し、PC20内の同期アプリケーションの構成要素を同期サーバ10に送信する(S1906)。このとき、構成要素送信部136は、構成要素特定部94によって特定された構成要素に加えて、構成要素情報記憶部134に記憶されている構成要素情報に対応する構成要素を、同期アプリケーションの構成要素として同期サーバ10に送信する。つまり、構成要素送信部136は、あるユーザのPC20において特定された構成要素に加えて、他のユーザのPC20において特定された構成要素も同期サーバ10に送信することができる。これにより、同期アプリケーションの構成要素の特定精度を向上させることができる。   When the update date and time in the PC 20 is newer than the update date and time in the synchronization server 10 (S1903: C), the component transmission unit 136 is such that the component of the synchronization application in the PC 20 is more than the component stored in the synchronization server 10. The component of the synchronization application in the PC 20 is transmitted to the synchronization server 10 (S1906). At this time, in addition to the component specified by the component specifying unit 94, the component transmission unit 136 converts the component corresponding to the component information stored in the component information storage unit 134 into the configuration of the synchronization application. It transmits to the synchronous server 10 as an element. That is, the component transmission unit 136 can transmit the component specified in the PC 20 of another user to the synchronization server 10 in addition to the component specified in the PC 20 of a certain user. Thereby, the identification precision of the component of a synchronous application can be improved.

図20を参照して、アプリケーション実行処理の一例について説明する。同期アプリケーション起動部92は、ユーザファイル及び設定情報の参照先を同期用に設定して同期アプリケーションを起動する(S2001)。具体的には、例えば図17に示すように、同期アプリケーション起動部92は、ユーザファイルの格納先を示す環境変数に、同期ユーザファイル記憶部108内の同期ユーザファイルが格納されたフォルダを設定することができる。また、同期アプリケーション起動部92は、設定情報参照部88の代わりに設定情報検出部122を同期アプリケーションに動的にリンクすることができる。   An example of application execution processing will be described with reference to FIG. The synchronous application starting unit 92 sets the reference destination of the user file and the setting information for synchronization and starts the synchronous application (S2001). Specifically, for example, as shown in FIG. 17, the synchronization application activation unit 92 sets the folder storing the synchronization user file in the synchronization user file storage unit 108 in the environment variable indicating the storage location of the user file. be able to. Further, the synchronous application activation unit 92 can dynamically link the setting information detection unit 122 to the synchronous application instead of the setting information reference unit 88.

アプリケーション監視部150は、同期アプリケーション起動部92により起動されたアプリケーションの実行状態を監視することにより、当該アプリケーションのプロセスID(PID)を取得する(S2002)。なお、アプリケーション監視部150は、同期設定記憶部104に設定されている同期アプリケーションを監視対象のアプリケーションとすることができる。   The application monitoring unit 150 acquires the process ID (PID) of the application by monitoring the execution state of the application started by the synchronous application starting unit 92 (S2002). Note that the application monitoring unit 150 can set a synchronization application set in the synchronization setting storage unit 104 as a monitoring target application.

続いて、アプリケーション監視部150は、アプリケーションID(AID)及びプロセスIDを対応づけたアプリケーション情報を生成し、アプリケーション情報記憶部152に格納する(S2003)。また、アプリケーション監視部150は、取得したプロセスIDをファイルシステムフィルタドライバ154に通知する(S2004)。   Subsequently, the application monitoring unit 150 generates application information in which the application ID (AID) and the process ID are associated with each other, and stores the application information in the application information storage unit 152 (S2003). The application monitoring unit 150 notifies the file system filter driver 154 of the acquired process ID (S2004).

アプリケーション実行部86は、処理が終了するまでアプリケーションを実行する(S2005,S2006)。   The application execution unit 86 executes the application until the processing is completed (S2005, S2006).

ここで、アプリケーションの実行中に設定情報領域82に格納された設定情報が必要となった場合、設定情報検出部124が、設定情報領域82ではなく、同期設定情報記憶部110を参照する。そして、同期設定情報記憶部110に対象の同期設定情報があれば、設定情報検出部124は、該同期設定情報を用いて処理を実行する(S2007:N)。   Here, when the setting information stored in the setting information area 82 becomes necessary during execution of the application, the setting information detection unit 124 refers to the synchronization setting information storage unit 110 instead of the setting information area 82. If there is target synchronization setting information in the synchronization setting information storage unit 110, the setting information detection unit 124 executes processing using the synchronization setting information (S2007: N).

一方、同期設定情報記憶部110に対象の同期設定情報がない場合(S2007:Y)、設定情報検出部124は、設定情報領域82から対象の設定情報を取得し、同期設定情報記憶部110に同期設定情報として格納する(S2008)。これにより、同期設定情報記憶部110には、同期アプリケーションによって使用される同期設定情報が格納されることとなる。   On the other hand, when there is no target synchronization setting information in the synchronization setting information storage unit 110 (S2007: Y), the setting information detection unit 124 acquires the target setting information from the setting information area 82 and stores it in the synchronization setting information storage unit 110. Stored as synchronization setting information (S2008). As a result, the synchronization setting information storage unit 110 stores the synchronization setting information used by the synchronization application.

ファイルシステムフィルタドライバ154は、アプリケーション監視部150から通知されたプロセスIDを記憶する(S2010)。そして、ファイルシステムフィルタドライバ154は、IRP(アクセス要求)を受信すると(S2011:Y)、当該IRPに含まれる情報に基づいて、実行中のアプリケーションのプロセスIDを取得する(S2012)。取得したプロセスIDが、アプリケーション監視部150から通知されたプロセスIDに含まれる場合、すなわち、監視対象プロセスである場合(S2013:Y)、ファイルシステムフィルタドライバ154は、IRPに含まれる情報に基づいて、アクセス対象のファイルのファイルID(FID)を取得する(S2014)。そして、ファイルシステムフィルタドライバ154は、プロセスID及びファイルIDを対応づけたアクセス情報を生成し、アクセス情報記憶部156に格納する(S2015)。その後、ファイルシステムフィルタドライバ154は、IRPをファイルシステムドライバ84へ出力する(S2016)。なお、監視対象プロセスではない場合(S2013:N)、ファイルシステムフィルタドライバ154は、アクセス情報を生成せずにIRPをファイルシステムドライバ84へ出力する(S2016)。   The file system filter driver 154 stores the process ID notified from the application monitoring unit 150 (S2010). When the file system filter driver 154 receives an IRP (access request) (S2011: Y), the file system filter driver 154 acquires the process ID of the application being executed based on the information included in the IRP (S2012). When the acquired process ID is included in the process ID notified from the application monitoring unit 150, that is, when it is a process to be monitored (S2013: Y), the file system filter driver 154 is based on information included in the IRP. Then, the file ID (FID) of the file to be accessed is acquired (S2014). Then, the file system filter driver 154 generates access information in which the process ID and the file ID are associated with each other and stores the access information in the access information storage unit 156 (S2015). Thereafter, the file system filter driver 154 outputs the IRP to the file system driver 84 (S2016). If the process is not a monitoring target process (S2013: N), the file system filter driver 154 outputs the IRP to the file system driver 84 without generating access information (S2016).

同期アプリケーションの実行が終了すると(S2006:Y)、ファイル特定部158は、アプリケーション情報記憶部152に格納されているアプリケーション情報と、アクセス情報記憶部156に記憶されているアクセス情報とに基づいて、同期アプリケーションにおいてアクセスされたファイルを特定する(S2020)。そして、ファイル特定部158は、アプリケーションID及びファイルIDを対応づけた特定情報を生成し、特定情報記憶部160に格納する(S2021)。   When the execution of the synchronous application ends (S2006: Y), the file specifying unit 158, based on the application information stored in the application information storage unit 152 and the access information stored in the access information storage unit 156, A file accessed in the synchronization application is specified (S2020). Then, the file specifying unit 158 generates specific information in which the application ID and the file ID are associated with each other, and stores the specific information in the specific information storage unit 160 (S2021).

このように、本実施形態によれば、同期アプリケーションによって使用された設定情報やファイルを同期アプリケーションの構成要素として特定することができる。さらに、前述したように、本実施形態によれば、同期サーバ10から取得した構成要素情報によっても、同期アプリケーションの構成要素を特定することができる。これにより、同期アプリケーションの構成要素の特定精度を向上させることができる。   As described above, according to the present embodiment, setting information and files used by the synchronization application can be specified as components of the synchronization application. Furthermore, as described above, according to the present embodiment, the constituent elements of the synchronization application can be specified also by the constituent element information acquired from the synchronization server 10. Thereby, the identification precision of the component of a synchronous application can be improved.

なお、本実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更/改良され得るととともに、本発明にはその等価物も含まれる。   Note that this embodiment is intended to facilitate understanding of the present invention and is not intended to limit the present invention. The present invention can be changed / improved without departing from the spirit thereof, and the present invention includes equivalents thereof.

例えば、本実施形態では、アプリケーション同期システムにおいてアプリケーションを実行するクライアントをPCとしたが、クライアントはPCに限られず、携帯端末等の任意の情報処理装置を用いることが可能である。   For example, in this embodiment, a client that executes an application in the application synchronization system is a PC. However, the client is not limited to a PC, and any information processing apparatus such as a portable terminal can be used.

また、例えば、本実施形態では、参照対象となった同期設定情報が同期設定情報記憶部110に格納されていない場合に、設定情報領域82から設定情報が抽出されて同期設定情報記憶部110に格納されることとしたが、はじめに同期アプリケーションを登録するPCにおいて、設定情報領域82に格納されている全ての設定情報を抽出して同期設定情報記憶部110に格納することとしてもよい。ただし、本実施形態に示したように、同期設定情報へのはじめての参照が発生したタイミングで、設定情報領域82から設定情報を抽出して同期設定情報記憶部110に格納することにより、同期設定情報のデータサイズを小さくすることが可能となる。   Further, for example, in the present embodiment, when the synchronization setting information to be referenced is not stored in the synchronization setting information storage unit 110, the setting information is extracted from the setting information area 82 and stored in the synchronization setting information storage unit 110. However, all setting information stored in the setting information area 82 may be extracted and stored in the synchronization setting information storage unit 110 in the PC that first registers the synchronization application. However, as shown in the present embodiment, when the first reference to the synchronization setting information occurs, the setting information is extracted from the setting information area 82 and stored in the synchronization setting information storage unit 110, thereby synchronizing setting. It becomes possible to reduce the data size of information.

また、例えば、本実施形態では、図18に示した処理において、アプリケーション同期システム用のプログラムが起動されたタイミングや、同期アプリケーションが終了されるタイミングでPC20と同期サーバ10との間で同期処理が実行されることとしたが、同期処理のタイミングはこれに限られず任意のタイミングを採用することができる。   Further, for example, in the present embodiment, in the processing shown in FIG. 18, synchronization processing is performed between the PC 20 and the synchronization server 10 at the timing when the application synchronization system program is started or when the synchronization application is terminated. However, the timing of the synchronization processing is not limited to this, and any timing can be adopted.

また、例えば、本実施形態では、図7に示したように、アプリケーションファイル、ユーザファイル、及び設定情報の全てに対して1つの更新日時を保持し、この更新日時に基づいて同期処理が実行されることとしたが、アプリケーションファイル、ユーザファイル、及び設定情報の各々について個別に更新日時が判定され、個別に同期処理が実行されることとしてもよい。また、ファイル単位で更新日時の判定が行われることとしてもよい。なお、更新日時の情報は、同期設定に含まれる情報として保持するのではなく、OSによって保持されている、フォルダやファイルの更新日時を示す情報を用いることとしてもよい。   Further, for example, in this embodiment, as shown in FIG. 7, one update date and time is held for all of the application file, user file, and setting information, and synchronization processing is executed based on this update date and time. However, the update date and time may be individually determined for each of the application file, the user file, and the setting information, and the synchronization process may be individually executed. Further, the update date / time may be determined in units of files. Note that the update date and time information is not held as information included in the synchronization setting, but information indicating the update date and time of a folder or file that is held by the OS may be used.

10 同期サーバ
20 パーソナルコンピュータ
30 アカウント情報記憶部
32 構成要素記憶部
34 同期通信部
40 ユーザ別構成要素記憶部
42 構成要素情報記憶部
50 ユーザ認証部
52 構成要素情報取得要求受信部
54 構成要素情報送信部
56 構成要素受信部
58 構成要素取得要求受信部
60 構成要素送信部
80 ファイル記憶部
82 設定情報領域
84 ファイルシステムドライバ
86 アプリケーション実行部
88 設定情報参照部
90 同期設定部
92 同期アプリケーション起動部
94 構成要素特定部
96 同期通信部
100 アプリケーション記憶部
102 ユーザファイル記憶部
104 同期設定記憶部
106 同期アプリケーション記憶部
108 同期ユーザファイル記憶部
110 同期設定情報記憶部
120 フォルダ特定部
122 設定情報検出部
124 ファイル検出部
130 認証要求部
132 構成要素情報取得部
134 構成要素情報記憶部
136 構成要素送信部
138 構成要素受信部
150 アプリケーション監視部
152 アプリケーション情報記憶部
154 ファイルシステムフィルタドライバ
156 アクセス情報記憶部
158 ファイル特定部
160 特定情報記憶部
DESCRIPTION OF SYMBOLS 10 Synchronous server 20 Personal computer 30 Account information memory | storage part 32 Component element memory | storage part 34 Synchronous communication part 40 User-specific component memory | storage part 42 Component element information memory | storage part 50 User authentication part 52 Component element information acquisition request receiving part 54 Component element information transmission Unit 56 Component element reception unit 58 Component element acquisition request reception unit 60 Component element transmission unit 80 File storage unit 82 Setting information area 84 File system driver 86 Application execution unit 88 Setting information reference unit 90 Synchronization setting unit 92 Synchronization application activation unit 94 Configuration Element specifying unit 96 Synchronization communication unit 100 Application storage unit 102 User file storage unit 104 Synchronization setting storage unit 106 Synchronization application storage unit 108 Synchronization user file storage unit 110 Synchronization setting information storage unit 120 Identification unit 122 Setting information detection unit 124 File detection unit 130 Authentication request unit 132 Component element information acquisition unit 134 Component element information storage unit 136 Component element transmission unit 138 Component element reception unit 150 Application monitoring unit 152 Application information storage unit 154 File system filter Driver 156 Access information storage unit 158 File identification unit 160 Specific information storage unit

Claims (8)

コンピュータを、
アプリケーションの実行時に必要となる構成要素を特定する構成要素特定部、
前記アプリケーションの構成要素を示す構成要素情報を同期サーバから取得する構成要素情報取得部、
前記構成要素特定部による特定結果と、前記構成要素情報とに応じた構成要素を前記同期サーバに送信する構成要素送信部、
として機能させるためのプログラム。
Computer
A component identification unit that identifies the components required when the application is executed,
A component information acquisition unit that acquires component information indicating the components of the application from the synchronization server;
A component transmission unit that transmits a component according to the identification result by the component identification unit and the component element information to the synchronization server;
Program to function as.
前記コンピュータを、さらに、
他のコンピュータから前記同期サーバに送信されたアプリケーションの構成要素を該同期サーバから受信する構成要素受信部、
前記同期サーバから受信した構成要素に基づいてアプリケーションを実行するアプリケーション実行部、
として機能させるためのプログラム。
Said computer further
A component reception unit that receives a component of an application transmitted from another computer to the synchronization server;
An application execution unit that executes an application based on components received from the synchronization server;
Program to function as.
請求項1または2に記載のプログラムであって、
前記コンピュータを、さらに、前記アプリケーションの実行時に使用されるファイルを検出するファイル検出部として機能させ、
前記構成要素特定部は、検出された前記ファイルを前記アプリケーションの構成要素として特定する、
プログラム。
The program according to claim 1 or 2,
The computer is further caused to function as a file detection unit that detects a file used when the application is executed,
The component specifying unit specifies the detected file as a component of the application.
program.
請求項1〜3の何れか一項に記載のプログラムであって、
前記コンピュータを、さらに、前記アプリケーションの実行時に使用される設定情報を検出する設定情報検出部として機能させ、
前記構成要素特定部は、検出された前記設定情報を前記アプリケーションの構成要素として特定する、
プログラム。
The program according to any one of claims 1 to 3,
The computer is further caused to function as a setting information detection unit that detects setting information used when the application is executed,
The component specifying unit specifies the detected setting information as a component of the application.
program.
アプリケーションの識別子と、該アプリケーションの実行時に必要となる構成要素とを対応づけて記憶する構成要素記憶部と、
第1のコンピュータから、前記アプリケーションの前記構成要素を示す構成要素情報の取得要求を受信する構成要素情報取得要求受信部と、
前記構成要素情報の取得要求に応じて、前記構成要素記憶部を参照し、前記構成要素情報を前記第1のコンピュータに送信する構成要素情報送信部と、
前記第1のコンピュータから、前記アプリケーションの識別子と、該アプリケーションの構成要素とを受信して前記構成要素記憶部を更新する構成要素受信部と、
第2のコンピュータから、前記アプリケーションの構成要素の取得要求を受信する構成要素取得要求受信部と、
前記構成要素の取得要求に応じて、前記構成要素記憶部を参照し、前記構成要素を前記第2のコンピュータに送信する構成要素送信部と、
を備える同期サーバ。
A component storage unit that stores an identifier of an application and a component necessary for executing the application in association with each other;
A component information acquisition request receiving unit that receives a component element information acquisition request indicating the component of the application from the first computer;
In response to the component element information acquisition request, the component element storage unit is referred to, and the component element information transmission unit that transmits the component element information to the first computer;
A component reception unit that receives the identifier of the application and the component of the application from the first computer and updates the component storage unit;
A component acquisition request receiver for receiving an acquisition request for the component of the application from a second computer;
In response to the component acquisition request, the component storage unit refers to the component storage unit, and transmits the component to the second computer.
A synchronization server comprising:
請求項5に記載の同期サーバであって、
前記構成要素記憶部は、
前記アプリケーションの識別子と前記構成要素とをユーザ別に対応づけて記憶するユーザ別構成要素記憶部と、
前記アプリケーションの識別子と前記構成要素情報とを複数のユーザ分集約して記憶する構成要素情報記憶部と、
を含み、
前記構成要素情報送信部は、前記構成要素情報の取得要求に応じて、前記構成要素情報記憶部を参照し、前記構成要素情報を前記第1のコンピュータに送信する、
同期サーバ。
The synchronization server according to claim 5,
The component storage unit
A user-specific component storage unit that stores the application identifier and the component in association with each other;
A component information storage unit that aggregates and stores the identifier of the application and the component information for a plurality of users;
Including
The component element information transmitting unit refers to the component element information storage unit in response to the component element information acquisition request, and transmits the component element information to the first computer.
Sync server.
コンピュータが、
アプリケーションの実行時に必要となる構成要素を特定し、
前記アプリケーションの構成要素を示す構成要素情報を同期サーバから取得し、
前記構成要素の特定結果と前記構成要素情報とに応じた構成要素を前記同期サーバに送信する、
同期方法。
Computer
Identify the components needed when running the application,
Obtaining component information indicating the components of the application from the synchronization server;
Transmitting a component corresponding to the result of specifying the component and the component information to the synchronization server;
Synchronization method.
同期サーバが、
アプリケーションの識別子と、該アプリケーションの実行時に必要となる構成要素とを対応づけて構成要素記憶部に記憶し、
第1のコンピュータから、前記アプリケーションの前記構成要素を示す構成要素情報の取得要求を受信し、
前記構成要素情報の取得要求に応じて、前記構成要素記憶部を参照し、前記構成要素情報を前記第1のコンピュータに送信し、
前記第1のコンピュータから、前記アプリケーションの識別子と、該アプリケーションの構成要素とを受信して前記構成要素記憶部を更新し、
第2のコンピュータから、前記アプリケーションの構成要素の取得要求を受信し、
前記構成要素の取得要求に応じて、前記構成要素記憶部を参照し、前記構成要素を前記第2のコンピュータに送信する、
同期方法。
Sync server is
Associating the identifier of the application with the component necessary for executing the application and storing it in the component storage unit,
Receiving an acquisition request for component information indicating the component of the application from the first computer;
In response to the acquisition request of the component element information, the component element storage unit is referred to, and the component element information is transmitted to the first computer,
Receiving the identifier of the application and the component of the application from the first computer, and updating the component storage unit;
Receiving an acquisition request for a component of the application from a second computer;
In response to the component acquisition request, refer to the component storage unit and transmit the component to the second computer.
Synchronization method.
JP2014514251A 2012-05-08 2012-05-08 Synchronization program, synchronization server, and synchronization method Ceased JPWO2013168221A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/061717 WO2013168221A1 (en) 2012-05-08 2012-05-08 Synchronization program, synchronization server, and synchronization method

Publications (1)

Publication Number Publication Date
JPWO2013168221A1 true JPWO2013168221A1 (en) 2015-12-24

Family

ID=49550306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014514251A Ceased JPWO2013168221A1 (en) 2012-05-08 2012-05-08 Synchronization program, synchronization server, and synchronization method

Country Status (2)

Country Link
JP (1) JPWO2013168221A1 (en)
WO (1) WO2013168221A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104166711B (en) * 2014-08-12 2017-07-14 小米科技有限责任公司 The method and apparatus for controlling router plug

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070283049A1 (en) * 2006-06-02 2007-12-06 Google Inc. Resolving Conflicts While Synchronizing Configuration Information Among Multiple Clients
JP2008065409A (en) * 2006-09-05 2008-03-21 Fujitsu Ltd Software management program, software management method and software management device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101583940B (en) * 2006-01-17 2012-10-31 基达罗(以色列)有限公司 Seamless integration of multiple computing environments
JP2009064115A (en) * 2007-09-04 2009-03-26 Vision Arts Kk File synchronization between mobile terminal device and server device
JP5236352B2 (en) 2008-05-15 2013-07-17 株式会社日立製作所 Application distribution control system, application distribution control method, information processing apparatus, and client terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070283049A1 (en) * 2006-06-02 2007-12-06 Google Inc. Resolving Conflicts While Synchronizing Configuration Information Among Multiple Clients
JP2008065409A (en) * 2006-09-05 2008-03-21 Fujitsu Ltd Software management program, software management method and software management device

Also Published As

Publication number Publication date
WO2013168221A1 (en) 2013-11-14

Similar Documents

Publication Publication Date Title
KR102105636B1 (en) Installing application remotely
US10740299B2 (en) Systems and methods for providing continuing access to a remote computer program
EP2942703A1 (en) Application sharing method and apparatus
US10209976B2 (en) Automated application installation
WO2006021835A1 (en) Device-to-device software distribution
WO2014012449A1 (en) Method, device, processing center and system for desktop synchronization
US8799355B2 (en) Client server application manager
US9535666B2 (en) Dynamic agent delivery
JP5500704B2 (en) Application synchronization method and program
JP2017107307A (en) Apparatus, information processing system, information processing method, and program
JP2016186777A (en) Mash-up method, mash-up program, and terminal
JP6478026B2 (en) Information processing apparatus, program, and recording medium
CN108055141B (en) Contextual interaction with an application
JP2024083510A (en) Transmission device, method, and program
US10209868B2 (en) Display terminal and display method for displaying application images based on display information
JPWO2014156825A1 (en) Log output control device, method and program
WO2013168221A1 (en) Synchronization program, synchronization server, and synchronization method
EP2928158B1 (en) Distribution apparatus and distribution method
US9128738B2 (en) Information processing program and information processing method
US20190129670A1 (en) Information processing apparatus
US10298516B2 (en) System and methods for sharing resources among application modules
WO2013183099A1 (en) Synchronization program and synchronization method
JP2014229056A (en) Electronic apparatus, control method and program
JP2014135070A (en) Application synchronization method and program
WO2013190685A1 (en) Synchronization server, synchronization method, and program

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151222

A045 Written measure of dismissal of application

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20160421