(57)【要約】アプリケーションの稼働方法、装置及びシステムである。上記方法は、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードすることと、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定することと、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得することと、上記データブロックをメモリにロードすることとを含む。本発明によれば、専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。【選択図】図１
2013517578.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションの稼働方法であって、
上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードすることと、
上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定することと、
上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得することと、
上記データブロックをメモリにロードすることと、
を含むことを特徴とするアプリケーションの実行方法。
【請求項２】
上記の予め生成した上記アプリケーションのデータファイル記述情報をロードすることは、
上記アプリケーションのデータファイル記述情報を上記サーバサイドからロードすることを含むことを特徴とする請求項１に記載の方法。
【請求項３】
さらに、
上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報がローカルの指定ディレクトリに格納されたか否かをチェックすることと、
格納された場合、上記指定ディレクトリから上記データファイル記述情報をロードすることと、
格納されていない場合、上記の上記アプリケーションのデータファイル記述情報を上記サーバサイドからロードするステップを実行することと、
を含むことを特徴とする請求項２に記載の方法。
【請求項４】
さらに、
上記アプリケーションのデータファイルを抽出し、上記データファイル記述情報を生成することと、
上記データファイル記述情報をローカルの指定ディレクトリ及び／又は上記サーバサイドに格納し、上記データファイルを上記サーバサイドに格納することと、
を含むことを特徴とする請求項３に記載の方法。
【請求項５】
上記の上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタすることは、
上記プロセスによってＩ／Ｏフック関数をロードすることと、
上記アプリケーションの稼働時に、上記Ｉ／Ｏフック関数によって上記アプリケーションのＩ／Ｏ要求をモニタすることと、
を含むことを特徴とする請求項１ないし４のいずれか一項に記載の方法。
【請求項６】
上記の上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて上記サーバサイドから取得することは、
上記データファイルが存在するか否かを上記データファイル記述情報に基づいてチェックすることと、
上記データファイルが存在する場合、データブロックダウンロード要求を上記サーバサイドに送信することと、
上記サーバサイドから配信された上記アプリケーションに必要なデータブロックを受信することと、
を含むことを特徴とする請求項１ないし４のいずれか一項に記載の方法。
【請求項７】
さらに、
データブロックダウンロード要求を上記サーバサイドに送信する前に、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックすることと、
格納された場合、上記アプリケーションに必要なデータブロックを上記マッピングファイルから取得することと、
格納されていない場合、データブロックダウンロード要求を上記サーバサイドに送信するステップを実行することと、
を含むことを特徴とする請求項６に記載の方法。
【請求項８】
さらに、
上記サーバサイドから配信された上記アプリケーションに必要なデータブロックを受信すると、上記データブロックを上記マッピングファイルに格納し、上記マッピングファイルのヘッダ情報を更新することを含み、
上記の上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックことは、
上記マッピングファイルのヘッダ情報をチェックすることによって、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かを特定することを含むことを特徴とする請求項７に記載の方法。
【請求項９】
さらに、
サーバサイドが上記データブロックダウンロード要求を受信すると、上記要求に対して検証を行い、要求されるデータブロックが存在するか否かをチェックすることと、
検証を通過し且つ上記データブロックが存在する場合、上記データブロックを要求元に送信することと、
を含むことを特徴とする請求項６に記載の方法。
【請求項１０】
アプリケーションの稼働装置であって、
上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードするためのプロセスビルド手段と、
上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定するためのモニタ手段と、
上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段が特定すると、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得するためのネットワーク通信手段と、
上記データブロックをメモリにロードするためのロード手段と、
を含むことを特徴とするアプリケーションの稼働装置。
【請求項１１】
ネットワーク通信手段は、さらに、上記データファイル記述情報を上記サーバサイドからダウンロードし、上記データファイル記述情報を上記プロセスビルド手段に送信することを特徴とする請求項１０に記載の装置。
【請求項１２】
さらに、上記データファイル記述情報をローカルに格納するための記憶手段を含み、
上記ネットワーク通信手段は、さらに、ダウンロードした上記データファイル記述情報を上記記憶手段に格納し、
上記プロセスビルド手段は、さらに、上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報が上記記憶手段に格納されたか否かをチェックし、格納された場合、上記記憶手段から上記アプリケーションのデータファイル記述情報を抽出してロードし、格納されていない場合、上記ネットワーク通信手段に通知を送信し、
上記ネットワーク通信手段は、上記プロセスビルド手段から送信された通知を受信すると、上記データファイル記述情報を上記サーバサイドからダウンロードすることを特徴とする請求項１１に記載の装置。
【請求項１３】
さらに、
上記アプリケーションのデータファイルを抽出して上記データファイル記述情報を生成し、上記データファイル記述情報を上記記憶手段に格納し、及び／又は、上記データファイル記述情報を上記ネットワーク通信手段を介して上記サーバサイドにアップロードするためのデータファイル抽出手段を含むことを特徴とする請求項１２に記載の装置。
【請求項１４】
さらに、
上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段が特定すると、上記データファイルが存在するか否かを上記データファイル記述情報に基づいてチェックするためのチェック手段を含み、
上記ネットワーク通信手段は、具体的に、上記データファイルが存在すると上記チェック手段がチェックした後、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得することを特徴とする請求項１０ないし１３のいずれか一項に記載の装置。
【請求項１５】
さらに、
データブロックのマッピングファイルを格納するためのマッピング手段と、
上記アプリケーションに必要なデータブロックを上記マッピング手段から抽出するためのデータブロック抽出手段と、
を含み、
上記チェック手段は、さらに、上記データファイルの存在をチェックした後、上記アプリケーションに必要なデータブロックが上記マッピングファイルに格納されたか否かをさらにチェックし、格納された場合、上記データブロック抽出手段に通知を送信し、格納されていない場合、上記ネットワーク通信手段に通知を送信し、
上記データブロック抽出手段は、具体的に、上記チェック手段から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを、上記マッピング手段に格納されたマッピングファイルから抽出し、上記データを上記ロード手段に送信し、
上記ネットワーク通信手段は、具体的に、上記チェック手段から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得し、上記データブロックを上記ロード手段に送信するとともに、上記データブロックを上記マッピングファイルに格納し、上記マッピングファイルのヘッダ情報を同期更新し、
上記チェック手段は、上記マッピングファイルのヘッダ情報をチェックすることによって、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納するか否かを特定することを特徴とする請求項１４に記載の装置。
【請求項１６】
クライアントサイドとサーバサイドとを含むアプリケーションのロードシステムであって、
上記サーバサイドは、アプリケーションに必要なデータファイルの各データブロックを格納し、
上記クライアントサイドは、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて上記サーバサイドから取得し、上記データブロックをメモリにロードすることを特徴とするアプリケーションのロードシステム。
【請求項１７】
上記クライアントサイドは、上記サーバサイドにデータファイル要求を送信することによって、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得し、
上記サーバサイドは、上記データファイル要求を受信すると、上記要求に対して検証を行い、要求されるデータファイルが存在するか否かをチェックし、
検証を通過しかつ上記データファイルが存在する場合、上記データファイルを上記クライアントサイドに送信することを特徴とする請求項１６に記載のシステム。
【請求項１８】
上記クライアントサイドは、請求項１０ないし１５のいずれか一項に記載のアプリケーションの稼働装置であることを特徴とする請求項１６又は１７に記載のシステム。
【請求項１９】
コンピュータが読み取り可能な記憶媒体であって、
コンピュータプログラムコードを含み、
該コンピュータプログラムコードは、一つのコンピュータ手段によって実行され、該コンピュータ手段に、
上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードし、
上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、
上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、
上記データブロックをメモリにロードする、
ことを行なわせることを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１０年１月２２日に中国特許局に出願され、出願番号が２０１０１０１００３３６．７、発明の名称が「アプリケーションの稼働方法、装置及びシステム」の中国特許出願の優先権を主張し、その全内容が引用により本願に取り入れられる。
【０００２】
本発明は、ソフトウェア処理技術に係り、具体的にアプリケーションの稼働方法、装置及びシステムに関する。
【背景技術】
【０００３】
一つのアプリケーションは、その稼働時に必要とするファイルが通常プログラムファイルとデータファイルとの二つの部分を含む。大部分のアプリケーションの場合、そのデータファイルの体積のほうは、通常プログラムモジュールファイルの体積より大きくなっている。
【０００４】
アプリケーションの体積が過大となると、過多の記憶空間を占用するだけではなく、ユーザによるソフトウェア使用の時間コストが高くなる。従って、異なるユーザの応用需要を満足させるために、ソフトウェアのスリム化バージョン、即ち簡略版がたくさん市販されている。それらの製品の多くは、ソースファイルに対してスリム化を図ったものであり、一般的に言えば、特別なカスタマイズを経たものである。また、元のプログラムのソースコードを修正して新しいプログラムファイルを新たにコンパイルするとともに、一部のプログラムファイルとデータファイルを削除することにより、スリム化の目的を達成するような一部の簡略版のソフトウェアもある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このような手法には、主として下記の欠点を有する。
１．異なるアプリケーションに対して特別なカスタマイズをすることが必要となり、汎用方法の提供ができない。
２．簡略版のソフトウェアは、機能が限られており、ユーザが他の機能を体験したければ、改めてインストールする必要がある。
【課題を解決するための手段】
【０００６】
本発明の実施例によりアプリケーションの稼働方法、装置及びシステムを提供し、専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効率的に縮減し、ユーザが必要とする機能を提供することができる。
そのため、本発明の実施例は、下記の技術案を提供する。
【０００７】
アプリケーションの稼働方法であって、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードすることと、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定することと、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得することと、上記データブロックをメモリにロードすることとを含む。
【０００８】
好ましくは、上記の予め生成した上記アプリケーションのデータファイル記述情報をロードすることは、上記アプリケーションのデータファイル記述情報を上記サーバサイドからロードすることを含む。
【０００９】
好ましくは、上記方法は、さらに、上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報がローカルの指定ディレクトリに格納されたか否かをチェックすることと、格納された場合、上記指定ディレクトリから上記データファイル記述情報をロードすることと、格納されていない場合、上記アプリケーションのデータファイル記述情報を上記サーバサイドからロードするステップを実行することとを含む。
【００１０】
好ましくは、上記方法は、さらに、上記アプリケーションのデータファイルを抽出し、上記データファイル記述情報を生成することと、上記データファイル記述情報をローカルの指定ディレクトリ及び／又は上記サーバサイドに格納し、上記データファイルを上記サーバサイドに格納することとを含む。
【００１１】
好ましくは、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタすることは、上記プロセスによってＩ／Ｏフック関数をロードすることと、上記アプリケーションの稼働時に、上記Ｉ／Ｏフック関数によって上記アプリケーションのＩ／Ｏ要求をモニタすることとを含む。
【００１２】
好ましくは、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて上記サーバサイドから取得することは、上記データファイルが存在するか否かを上記データファイル記述情報に基づいてチェックすることと、上記データファイルが存在する場合、データブロックダウンロード要求を上記サーバサイドに送信することと、上記サーバサイドから配信された上記アプリケーションに必要なデータブロックを受信することとを含む。
【００１３】
好ましくは、上記方法は、さらに、データブロックダウンロード要求を上記サーバサイドに送信する前に、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックすることと、格納された場合、上記アプリケーションに必要なデータブロックを上記マッピングファイルから取得することと、格納されていない場合、データブロックダウンロード要求を上記サーバサイドに送信するステップを実行することとを含む。
【００１４】
好ましくは、上記方法は、さらに、上記サーバサイドから配信された上記アプリケーションに必要なデータブロックを受信すると、上記データブロックを上記マッピングファイルに格納し、上記マッピングファイルのヘッダ情報を更新することを含み、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックことは、上記マッピングファイルのヘッダ情報をチェックすることによって、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かを特定することを含む。
【００１５】
好ましくは、上記方法は、さらに、サーバサイドが上記データブロックダウンロード要求を受信すると、上記要求に対して検証を行い、要求されるデータブロックが存在するか否かをチェックすることと、検証を通過し且つ上記データブロックが存在する場合、上記データブロックを要求元に送信することとを含む。
【００１６】
アプリケーションの稼働装置であって、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードするためのプロセスビルド手段と、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定するためのモニタ手段と、上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段が特定すると、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得するためのネットワーク通信手段と、上記データブロックをメモリにロードするためのロード手段とを含む。
【００１７】
好ましくは、ネットワーク通信手段は、さらに、上記データファイル記述情報を上記サーバサイドからダウンロードし、上記データファイル記述情報を上記プロセスビルド手段に送信する。
【００１８】
好ましくは、上記装置は、上記データファイル記述情報をローカルに格納するための記憶手段をさらに含み、上記ネットワーク通信手段は、さらに、ダウンロードした上記データファイル記述情報を上記記憶手段に格納し、上記プロセスビルド手段は、さらに、上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報が上記記憶手段に格納されたか否かをチェックし、格納された場合、上記記憶手段から上記アプリケーションのデータファイル記述情報を抽出してロードし、格納されていない場合、上記ネットワーク通信手段に通知を送信し、上記ネットワーク通信手段は、上記プロセスビルド手段から送信された通知を受信すると、上記データファイル記述情報を上記サーバサイドからダウンロードする。
【００１９】
好ましくは、上記装置は、さらに、上記アプリケーションのデータファイルを抽出して上記データファイル記述情報を生成し、上記データファイル記述情報を上記記憶手段に格納し、及び／又は、上記データファイル記述情報を上記ネットワーク通信手段を介して上記サーバサイドにアップロードするためのデータファイル抽出手段を含む。
【００２０】
好ましくは、上記装置は、さらに、上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段が特定すると、上記データファイルが存在するか否かを上記データファイル記述情報に基づいてチェックするためのチェック手段を含み、上記ネットワーク通信手段は、具体的に、上記データファイルが存在すると上記チェック手段がチェックした後、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得する。
【００２１】
好ましくは、上記装置は、さらに、データブロックのマッピングファイルを格納するためのマッピング手段と、上記アプリケーションに必要なデータブロックを上記マッピング手段から抽出するためのデータブロック抽出手段とを含み、上記チェック手段は、さらに、上記データファイルの存在をチェックした後、上記アプリケーションに必要なデータブロックが上記マッピングファイルに格納されたか否かをチェックし、格納された場合、上記データブロック抽出手段に通知を送信し、格納されていない場合、上記ネットワーク通信手段に通知を送信し、上記データブロック抽出手段は、具体的に、上記チェック手段から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを、上記マッピング手段に格納されたマッピングファイルから抽出し、上記データを上記ロード手段に送信し、上記ネットワーク通信手段は、具体的に、上記チェック手段から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得し、上記データブロックを上記ロード手段に送信するとともに、上記データブロックを上記マッピングファイルに格納し、上記マッピングファイルのヘッダ情報を同期更新する。
【００２２】
上記チェック手段は、上記マッピングファイルのヘッダ情報をチェックすることによって、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納するか否かを特定する。
【００２３】
クライアントサイドとサーバサイドとを含むアプリケーションのロードシステムであって、上記サーバサイドは、アプリケーションに必要なデータファイルの各データブロックを格納し、上記クライアントサイドは、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて上記サーバサイドから取得し、上記データブロックをメモリにロードする。
【００２４】
好ましくは、上記クライアントサイドは、上記サーバサイドにデータファイル要求を送信することによって、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得し、上記サーバサイドは、上記データファイル要求を受信すると、上記要求に対して検証を行い、要求されるデータファイルが存在するか否かをチェックし、検証を通過しかつ上記データファイルが存在する場合、上記データファイルを上記クライアントサイドに送信する。
【００２５】
コンピュータが読み取り可能な記憶媒体であって、コンピュータプログラムコードを含み、該コンピュータプログラムコードは、一つのコンピュータ手段によって実行され、該コンピュータ手段に、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、上記データブロックをメモリにロードすることを行なわせる。
【００２６】
本発明の実施例によるアプリケーションの稼働方法、装置及びシステムでは、クライアントサイドにおいて、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記アプリケーションのＩ／Ｏ要求をモニタし、アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、上記データブロックをメモリにロードする。これにより、アプリケーションのプログラムファイルとデータファイルとを隔離して格納でき、ユーザ端末にアプリケーションのプログラムモジュールファイルのみをインストールさせる一方、データファイルが外部ネットワークに格納可能であり、ユーザの所望に応じてダウンロードしてインストールすることで、アプリケーションの体積を効果的に減少させ、ユーザ端末の記憶空間を節約した。本発明の実施例の方法によれば、ソフトウェア簡略版の専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施例によるアプリケーションの稼働方法のフロー図である。
【図２】本発明の実施例によるアプリケーションの稼働装置の一種の構造を模式的に示す図面である。
【図３】本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
【図４】本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
【図５】本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
【発明を実施するための形態】
【００２８】
当技術分野の者に本発明の実施例の技術案をよりよく理解してもらうために、以下、図面と実施の形態を参照して本発明の実施例について更なる詳細な説明をする。
【００２９】
本発明の実施例によるアプリケーションの稼働方法、装置及びシステムは、上記の従来技術に存在している欠点に対して、アプリケーションの体積の過大が主にデータファイルの体積の過大により引き起こされるという特徴を考慮し、アプリケーションのプログラムファイルとデータファイルとを隔離して格納する。クライアントサイドにおいて、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記アプリケーションのＩ／Ｏ要求をモニタし、アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、上記データブロックをメモリにロードする。これにより、ユーザ端末にアプリケーションのプログラムファイルのみをインストールさせる一方、データファイルが外部ネットワークに格納可能であり、ユーザの所望に応じてダウンロードしてインストールすることで、アプリケーションの体積を効果的に減少させ、ユーザ端末の記憶空間を節約した。また、ソフトウェア簡略版の専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。
【００３０】
図１は、本発明の実施例によるアプリケーションの稼働方法のフロー図である。下記のステップを含む。
ステップ１０１において、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードする。
【００３１】
上記データファイル記述情報は、予め上記アプリケーションのデータファイルを抽出して生成してもよい。該抽出過程は、上記アプリケーションをインストール済みの一つの端末において行なってもよい。上記端末は、上記アプリケーションを稼働させる端末であってもよいし、その他の端末であってもよい。
【００３２】
例えば、仮に一つの端末にｗｐｓのインストールパッケージを配置し、ｗｐｓのインストールディレクトリがＣ：￥Ｐｒｏｇｒａｍ  Ｆｉｌｅｓ￥Ｋｉｎｇｓｏｆｔ￥ＷＰＳ  Ｏｆｆｉｃｅ  Ｐｅｒｓｏｎａｌとすると、下記の過程によって、該ｗｐｓに対応するデータファイル記述情報を生成することができる。
【００３３】
まず、該ディレクトリの配下にあるフォルダ及びファイルをエルゴードし、該ディレクトリの配下に具体的にどのぐらいのファイルを有することや、どのファイルがデータファイルであり、どのファイルがプログラムファイルであることを分析する。具体的に、ファイル名及びその拡張子に基づいてプログラムファイルとデータファイルを区別できる。例えば、ディレクトリのＣ：￥Ｐｒｏｇｒａｍ  Ｆｉｌｅｓ￥Ｋｉｎｇｓｏｆｔ￥ＷＰＳ  Ｏｆｆｉｃｅ  Ｐｅｒｓｏｎａｌ￥ｏｆｆｉｃｅ６の配下の大部分のｄｌｌファイルとｅｘｅファイルがプログラムファイルであり、ディレクトリのＣ：￥Ｐｒｏｇｒａｍ  Ｆｉｌｅｓ￥Ｋｉｎｇｓｏｆｔ￥ＷＰＳ  Ｏｆｆｉｃｅ  Ｐｅｒｓｏｎａｌ￥ｍｅｄｉａの配下の大部分のファイルがデータファイルである。
他に、ファイルの二進数形式を分析することによりファイルのタイプを特定してもよい。
【００３４】
エルゴード解析の後に、一つの記述ファイル、即ちデータファイル記述情報を生成する。この記述ファイルには、主に、アプリケーションにどのぐらいのデータファイルを含むことや、各データファイルのファイル名、サイズ、ＭＤ５検査コードなどの情報が含まれている。他にも、上記データファイル記述情報には、各データファイルのマッピングファイル名をさらに含んでもよい。ただし、上記マッピングファイルは、ユーザ端末に格納されるデータファイルのマッピング情報を示し、詳しくは後で詳細に説明する。
もちろん、応用需要に応じて他の情報を有してもよい。本発明の実施例はこれについて限定をしない。
【００３５】
本発明の実施例では、上記データファイル記述情報をローカル及び／又はサーバサイドに格納し、上記データファイルをサーバサイドに格納する。
【００３６】
上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報が既にローカルの指定ディレクトリに格納されたか否かをチェックする必要がある。格納された場合、直接ローカルから上記データファイル記述情報をロードすることができる。格納されていない場合、サーバサイドから上記データファイル記述情報をダウンロードしてロードすることができる。さらに、ダウンロードしたデータファイル記述情報をローカルの指定ディレクトリに格納してもよい。よって、今後、上記アプリケーションのデータファイル記述情報のロードが必要となるとき、再びサーバサイドからダウンロードする必要はなく、直接ローカルの指定ディレクトリから直接ロードすればよい。
【００３７】
ステップ１０２において、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定する。
【００３８】
具体的に、上記プロセスによって、上記アプリケーションのファイルのＩ／Ｏアプリケーションインタフェース（例えば、ＣｒｅａｔｅＦｉｌｅ、ＧｅｔＦｉｌｅＡｔｔｒｉｂｕｔｅｓ、ＳｅｔＦｉｌｅＰｏｉｎｔｅｒ、ＣｌｏｓｅＨａｎｄｌｅ、ＧｅｔＦｉｌｅＳｉｚｅ、ＲｅａｄＦｉｌｅ、ＷｒｉｔｅＦｉｌｅ）などの関数に対してフック（Ｈｏｏｋ）を掛け、即ちＩ／Ｏフック関数をロードし、アプリケーションのＩ／Ｏ要求をモニタする。上記アプリケーションの稼働後に、Ｉ／Ｏ要求があれば、Ｉ／Ｏフック関数がそれをモニタして遮断する。
【００３９】
コンピュータプログラミング分野において、フックを使用して、ソフトウェアのコンポーネント間の関数呼び出し及びメッセージの受け渡しを遮断し、さらに関数呼び出しの実行結果又はメッセージの受け渡しの内容を変更することができる。
【００４０】
本発明の実施例では、Ｉ／Ｏフック関数で上記アプリケーションのＩ／Ｏ要求をモニタすると、上記Ｉ／Ｏ要求に基づいて、上記アプリケーションのアクセス先のファイルハンドルを取得し、該ファイルハンドルに基づいて、例えばファイル名、サイズ、リードオンリー／読み書きといった属性など、該ファイルの関連情報を取得でき、これらの情報に基づいて、アクセス先のファイルのタイプを特定できる。例えば、上記アプリケーションのデータファイル記述情報に該ファイル名が含まれると、上記アプリケーションのアクセス先のファイルがデータファイルであることを表す。
【００４１】
ステップ１０３において、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得する。
【００４２】
前に言及したが、上記データファイル記述情報には、各データファイルのファイル名、サイズ、ＭＤ５検査コードなどの情報が含まれてもよい。従って、上記Ｉ／Ｏフック関数が上記データファイル記述情報に基づき、上記アプリケーションのアクセス先のデータファイルが存在するか否かをチェックできる。上記データファイル記述情報に上記アプリケーションのアクセス先のデータファイルのファイル名が含まれると、該データファイルが存在することを表し、逆の場合、該データファイルが存在しないことを表す。
【００４３】
上記データファイルが存在しないとチェックすると、エラー提示メッセージをユーザに返送できる。
上記データファイルが存在するとチェックすると、上記アプリケーションに必要なデータブロックをサーバサイドから取得できる。具体的に、上記サーバサイドにデータブロックダウンロード要求を送信し、上記サーバサイドから配信された上記アプリケーションに必要なデータブロックを受信する。上記のデータブロックは、上記データファイルの中の一部のデータ又は全てのデータである。
【００４４】
上記サーバサイドが上記データファイル要求を受信すると、上記要求に対して検証を行い、要求されるデータファイルが存在するか否かをチェックする。検証を通過し且つ上記データファイルが存在すると、上記データファイルを要求元に送信する。これによって、データの安全性をより保証できる。
【００４５】
同様に、後続のアプリケーションの再度稼働時における上記データブロックのロード需要の便利を図り、ロード時間コストを節約するために、上記アプリケーションに必要なデータブロックをサーバサイドから取得した後、それをローカルのマッピングファイルにマッピングしてもよい。
【００４６】
対応して、本発明の実施例では、上記アプリケーションに必要なデータブロックをサーバサイドから取得する前に、さらに上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックしてもよい。上記データブロックがローカルのマッピングファイルに格納された場合、上記アプリケーションに必要なデータブロックを直接上記マッピングファイルから抽出できる。逆の場合、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得する。
【００４７】
上記マッピングファイルにはヘッダ情報とデータ情報との二つの部分の内容が含まれてもよい。ヘッダ情報には、名称、オフセットアドレスなど、上記マッピングファイルに含まれる各データブロックのインデックス情報を含む。すると、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックするときに、全マッピングファイルをエルゴードする必要はなく、該ヘッダ情報中の内容のみで特定でき、上記マッピングファイルに格納された情報の検索を便利にした。
【００４８】
対応して、マッピングファイルにおけるヘッダ情報とデータ情報との対応を保証するために、上記サーバサイドから取得したデータブロックを上記マッピングファイルに格納した後、さらに上記マッピングファイルのヘッダ情報を同時更新する。
【００４９】
もちろん、本発明の実施例では、上記のような実現方式に限定することはなく、例えば、ユーザ端末のメモリ空間をさらに節約するために、上記データブロックをローカルに格納しなくてもよい。アプリケーションが毎回稼働するときに、データファイルへのアクセスが必要とする場合、対応するデータブロックをサーバサイドからダウンロードすればよい。
【００５０】
また、アプリケーションがデータファイルにアクセスするときに、該データファイルにおけるいずれか一つ又は複数のデータブロックだけをアクセスすればよい場合がある。従って、毎回サーバサイドからダウンロードするときに、アプリケーションのアクセス先のデータファイルを完全にローカルにダウンロードしてもよいし、上記データファイルのうち、上記アプリケーションに必要なデータブロックのみをダウンロードしてもよい。もちろん、アプリケーションがデータブロックの境界に従ったアクセスをしなくてもよく、一つのデータブロックの一部の内容のみをアクセスする場合もあるし、連続した複数のデータブロックをアクセスする場合もある。そのため、一定のアルゴリズムでアプリケーションのアクセス先のファイルオフセット及びデータサイズに基づいて特定し、対応するデータブロックに変換して上記マッピングファイルにマッピングする。つまり、ローカルで格納するマッピングファイルにおけるデータブロックは、ダウンロードしたデータブロックとは形式が異なってもよく、一定のマッピング関係が存在する。
【００５１】
ステップ１０４において、上記データブロックをメモリにロードし、上記アプリケーションの使用に供する。
【００５２】
本発明の実施例によるアプリケーションの稼働方法は、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記アプリケーションのＩ／Ｏ要求をモニタし、アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて取得し、上記データブロックをメモリにロードする。これにより、ユーザ端末にアプリケーションのプログラムモジュールファイルのみをインストールさせる一方、データファイルが外部ネットワークに格納可能であり、ユーザの所望に応じてダウンロードしてインストールすることで、アプリケーションの体積を効果的に減少させ、ユーザ端末の記憶空間を節約した。また、ソフトウェア簡略版の専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。
【００５３】
プログラムによって関連するハードウェアを指令することにより、上記実施例による方法の全て又は一部のステップを実現できることは、当分野の一般技術者が理解できる。上記のプログラムは、コンピュータが読み取り可能な記憶媒体に格納してもよい。上記の記憶媒体は、例えばＲＯＭ／ＲＡＭ、磁気ディスク、光ディスクなどである。
【００５４】
対応して、本発明の実施例は、さらにアプリケーションの稼働装置を提供する。図２は、該装置の一種の構造を模式的に示す図面である。
【００５５】
該実施例において、上記装置は、プロセスビルド手段２０１、モニタ手段２０２、ネットワーク通信手段２０３及びロード手段２０４を含む。
【００５６】
プロセスビルド手段２０１は、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードする。
【００５７】
上記データファイル記述情報は、ローカルに格納されてもよいし、サーバサイドに格納されてもよい。もちろん、同時にローカルとサーバサイドに格納されてもよい。
【００５８】
上述のように、上記データファイル記述情報は、上記アプリケーションをインストールするユーザ端末が上記アプリケーションのデータファイルを抽出することにより生成され、ローカル及び／又はサーバサイドに格納されてもよいし、他のユーザ端末で生成されてからサーバサイドに格納されてもよい。上記データファイル記述情報の具体的な内容及び生成過程は、前文の本発明の実施例によるアプリケーションの稼働方法における記載を参照でき、ここでは贅言しない。
【００５９】
対応して、上記プロセスビルド手段２０１は、上記データファイル記述情報をロードするときに、ローカルからロードするか、上記サーバサイドから取得してロードする。具体的な過程は、後で詳細に説明する。
なお、上記アプリケーションのデータファイルも、予め上記サーバサイドに格納される必要がある。
【００６０】
モニタ手段２０２は、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定する。
【００６１】
具体的に、上記プロセスによって、上記アプリケーションのファイルのＩ／Ｏアプリケーションインタフェース（例えば、ＣｒｅａｔｅＦｉｌｅ、ＧｅｔＦｉｌｅＡｔｔｒｉｂｕｔｅｓ、ＳｅｔＦｉｌｅＰｏｉｎｔｅｒ、ＣｌｏｓｅＨａｎｄｌｅ、ＧｅｔＦｉｌｅＳｉｚｅ、ＲｅａｄＦｉｌｅ、ＷｒｉｔｅＦｉｌｅ）などの関数に対してフック（Ｈｏｏｋ）を掛け、即ちＩ／Ｏフック関数をロードし、アプリケーションのＩ／Ｏ要求をモニタする。上記アプリケーションの稼働後に、Ｉ／Ｏ要求があれば、Ｉ／Ｏフック関数がそれをモニタして遮断する。
Ｉ／Ｏフック関数で上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定する。
【００６２】
ネットワーク通信手段２０３は、上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段２０２が特定すると、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得する。
【００６３】
前に言及したが、上記アプリケーションのデータファイルが予めサーバサイドに格納されている。通常一つのデータファイルに一つ又は複数のデータブロックが含まれるが、アプリケーションがいずれのデータファイルにアクセスするときに、そのうちの一部のデータブロックしか必要としないかもしれない。従って、本発明の実施例において、上記データブロック取得手段２０３は、上記アプリケーションに必要なデータブロックを上記サーバサイドのみから取得してもよい。
ロード手段２０４は、上記データブロックをメモリにロードする。
【００６４】
以上から分かるように、本発明の実施例によるアプリケーションの稼働装置は、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記アプリケーションのＩ／Ｏ要求をモニタし、アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、上記データブロックをメモリにロードする。これにより、ユーザ端末にアプリケーションのプログラムモジュールファイルのみをインストールさせる一方、データファイルを外部ネットワークに格納し、ユーザの所望に応じてダウンロードしてインストールすることで、アプリケーションの体積を効果的に減少させ、ユーザ端末の記憶空間を節約した。また、ソフトウェア簡略版の専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。
【００６５】
前に言及したが、上記データファイル記述情報は、他のユーザ端末で予め生成されてからサーバサイドに格納されてもよい。そのため、本発明のアプリケーションの稼働装置の一つの実施例において、上記ネットワーク通信手段２０３は、上記データファイル記述情報を上記サーバサイドからダウンロードし、上記データファイル記述情報を上記プロセスビルド手段２０３に送信する。
【００６６】
図３は、本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
図２に示す実施例と異なる点として、該実施例において、上記装置は、上記データファイル記述情報をローカルに格納するための記憶手段３０１をさらに含み、上記ネットワーク通信手段２０３は、さらに、ダウンロードした上記データファイル記述情報を上記記憶手段３０１に格納することである。
【００６７】
該実施例において、上記プロセスビルド手段２０１は、初回で上記データファイル記述情報をロードするときに、上記ネットワーク通信手段２０３を介してしか上記データファイル記述情報を上記サーバサイドからダウンロードしてロードできないが、後続の上記アプリケーションの再度稼働時に、上記データファイル記述情報を直接上記記憶手段３０１からロードできる。
【００６８】
対応して、上記プロセスビルド手段２０１は、さらに、上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報が上記記憶手段３０１に格納されたか否かをチェックし、格納された場合、上記記憶手段３０１から上記アプリケーションのデータファイル記述情報を抽出してロードし、格納されていない場合、上記ネットワーク通信手段２０３に通知を送信する。上記ネットワーク通信手段２０３は、上記プロセスビルド手段２０１から送信された通知を受信すると、上記データファイル記述情報を上記サーバサイドからダウンロードし、上記データファイル記述情報を上記プロセスビルド手段２０１に返送し、上記データファイル記述情報を上記記憶手段３０１に格納する。
前に言及したが、上記データファイル記述情報は、上記アプリケーションをインストールするユーザ端末が上記アプリケーションのデータファイルを抽出して生成してもよい。
【００６９】
図４は、本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
図３に示す実施例と異なる点として、該実施例において、上記装置は、上記アプリケーションのデータファイルを抽出して上記データファイル記述情報を生成し、上記データファイル記述情報を上記記憶手段３０１に格納するためのデータファイル抽出手段４０１をさらに含むことである。
【００７０】
もちろん、本発明のアプリケーションの稼働装置の別の実施例において、上記データファイル抽出手段４０１は、上記ネットワーク通信手段２０３を介して上記データファイル記述情報を上記サーバサイドにアップロードしてもよい。
【００７１】
もちろん、上記データファイル抽出手段４０１は、上記データファイル記述情報を上記記憶手段３０１に格納すると同時に、上記ネットワーク通信手段２０３を介して上記サーバサイドにアップロードしてもよい。
【００７２】
該実施例において、上記プロセスビルド手段２０１は、初回で上記データファイル記述情報をロードするときに、上記データファイル記述情報を直接上記記憶手段３０１からロードできる。
【００７３】
対応して、上記プロセスビルド手段２０１は、さらに、上記アプリケーションに対応するプロセスをビルドする前に、上記アプリケーションのデータファイル記述情報が上記記憶手段３０１に格納されたか否かをチェックし、格納された場合、上記記憶手段３０１から上記アプリケーションのデータファイル記述情報を抽出してロードし、格納されていない場合、上記ネットワーク通信手段２０３に通知を送信する。上記ネットワーク通信手段２０３は、上記プロセスビルド手段２０１から送信された通知を受信すると、上記データファイル記述情報を上記サーバサイドからダウンロードし、上記データファイル記述情報を上記プロセスビルド手段２０１に返送し、上記データファイル記述情報を上記記憶手段３０１に格納する。
【００７４】
図５は、本発明の実施例によるアプリケーションの稼働装置の別種の構造を模式的に示す図面である。
図２に示す実施例と異なる点として、該実施例において、上記装置は、上記アプリケーションのアクセス先のファイルのタイプがデータファイルであると上記モニタ手段２０２が特定すると、上記データファイルが存在するか否かを上記プロセスビルド手段２０１によってロードしたデータファイル記述情報に基づいてチェックするためのチェック手段５０１をさらに含むことである。
【００７５】
該実施例において、上記ネットワーク通信手段２０３は、上記データファイルが存在すると上記チェック手段５０１がチェックした後、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得する必要がある。
【００７６】
もちろん、上記チェック手段５０１は、同様に上記図３及び図４に示す実施例にも適用できる。
【００７７】
後続のアプリケーション稼働時における、前にロードしたデータブロックのロード需要をさらに便利にするために、本発明の実施例において、マッピング手段５０２とデータブロック抽出手段５０３をさらに含んでもよい。
マッピング手段５０２は、データブロックのマッピングファイルを格納する。
データブロック抽出手段５０３は、上記アプリケーションに必要なデータブロックを上記マッピング手段５０２から抽出する。
【００７８】
該実施例において、上記チェック手段５０１は、さらに、上記データファイルの存在をチェックした後、上記アプリケーションに必要なデータブロックが上記マッピングファイルに格納されたか否かをさらにチェックし、格納された場合、上記データブロック抽出手段５０３に通知を送信し、格納されていない場合、上記ネットワーク通信手段２０３に通知を送信する。
【００７９】
対応して、上記データブロック抽出手段５０３は、具体的に、上記チェック手段５０１から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを、上記マッピング手段５０２に格納されたマッピングファイルから抽出し、上記データブロックを上記ロード手段２０４に送信する。
【００８０】
同様に、上記ネットワーク通信手段２０３は、具体的に、上記チェック手段５０１から送信された通知を受信すると、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得し、上記データブロックを上記ロード手段２０４に送信する。同時に、上記データブロックを上記マッピングファイルにも格納する。
【００８１】
本発明の実施例によるアプリケーションの稼働装置は、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記アプリケーションのＩ／Ｏ要求をモニタし、アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいてサーバサイドから取得し、上記データブロックをメモリにロードする。これにより、ユーザ端末にアプリケーションのプログラムモジュールファイルのみをインストールさせる一方、データファイルを外部ネットワークに格納し、ユーザの所望に応じてダウンロードしてインストールすることで、アプリケーションの体積を効果的に減少させ、ユーザ端末の記憶空間を節約した。また、ソフトウェア簡略版の専門的なカスタマイズをしなくても、アプリケーションのインストールパッケージの体積を簡単且つ効果的に縮減させ、ユーザが必要とする機能を提供することができる。
【００８２】
さらに、ネットワーク通信手段２０３は、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得してそれを上記マッピングファイルに格納することにより、アプリケーションの後続での再度稼働時に、直接ローカルから上記データブロックを取得でき、ネットワークを介した取得が必要でなくなる。よって、上記データブロックのロード時間を効果的に加速させ、ローカルの記憶空間を最大限に節約した。
【００８３】
本発明の実施例において、上記マッピングファイルにはヘッダ情報とデータ情報との二つの部分の内容が含まれてもよい。そのため、上記ネットワーク通信手段２０３は、サーバサイドから取得したデータブロックを上記マッピングファイルに格納すると同時に、上記マッピングファイルのヘッダ情報を同期更新する必要がある。これにより、上記チェック手段５０１が上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かをチェックするときに、全マッピングファイルをエルゴードする必要はなく、上記マッピングファイルのヘッダ情報のみをチェックすることで、上記アプリケーションに必要なデータブロックがローカルのマッピングファイルに格納されたか否かを特定できる。
【００８４】
なお、本発明の実施例において、上記マッピングファイルにおけるデータブロックは、サーバサイドからダウンロードしたデータブロックとは形式が異なってもよく、一定のマッピング関係が存在する。
【００８５】
本発明の実施例は、クライアントサイドとサーバサイドとを含むアプリケーショの稼働システムをさらに提供する。
【００８６】
上記サーバサイドは、アプリケーションに必要なデータファイルの各データブロックを格納する。
【００８７】
上記クライアントサイドは、上記アプリケーションに対応するプロセスをビルドし、予め生成した上記アプリケーションのデータファイル記述情報をロードし、上記プロセスによって上記アプリケーションのＩ／Ｏ要求をモニタし、上記アプリケーションのＩ／Ｏ要求をモニタすると、上記アプリケーションのアクセス先のファイルのタイプを上記Ｉ／Ｏ要求に基づいて特定し、上記アプリケーションのアクセス先のファイルのタイプがデータファイルである場合、上記アプリケーションに必要なデータブロックを上記データファイル記述情報に基づいて上記サーバサイドから取得し、上記データブロックをメモリにロードする。
【００８８】
本発明の実施例において、上記クライアントサイドは、前述各実施例におけるアプリケーションの稼働装置であってもよい。
【００８９】
また、上記クライアントサイドは、上記サーバサイドにデータファイル要求を送信することによって、上記アプリケーションに必要なデータブロックを上記サーバサイドから取得する。対応して、上記サーバサイドは、上記データファイル要求を受信すると、上記要求に対して検証を行い、要求されるデータファイルが存在するか否かをチェックし、検証を通過しかつ上記データファイルが存在する場合、上記データファイルを上記クライアントサイドに送信する。
【００９０】
本発明の実施例によるアプリケーションの稼働システムは、特別なソフトウェアに対して専門的なカスタマイズをしなくても、ストリーム式での稼働及び需要に応じたダウンロードを実現できる。即ち、クライアントサイドのユーザ端末は、ソフトウェアの完全バージョンの一部のファイルのみをインストールし、他の必要なファイルをデータストリームの方式でサーバサイドからダウンロードしてもよいので、ユーザの磁気ディスク空間を効果的に節約できる。本発明の実施例によるアプリケーションの稼働システムは、汎用性が高く、市販されている大部分のソフトウェア及びネットゲームに対していずれもよい効果を有する。さらに、データファイルのダウンロードを制御することにより、異なるユーザへの機能使用上の制限を実現することもできる。
【００９１】
以上、本発明の実施例を詳細に紹介した。本文では、具体的な実施形態によって本発明を説明したが、以上の実施例の説明は、本発明の方法及び設備を理解するためのものに過ぎない。同時に、当分野の一般技術者にとって、本発明の思想に基づき、具体的な実施形態及び応用範囲において変更が可能である。つまり、本明細書の内容は、本発明への制限と理解されるべきではない。
【図１】
2013517578.tif 000003
【図２】
2013517578.tif 000004
【図３】
2013517578.tif 000005
【図４】
2013517578.tif 000006
【図５】
2013517578.tif 000007
【国際調査報告】
2013517578.tif 000008
2013517578.tif 000009
2013517578.tif 000010
2013517578.tif 000011