(57)【要約】【課題】データに存在するリンクに基づいてリンクデータを前もって自動的に取得しておくことを可能とし、リンクデータ取得の体感スピードを向上する。【解決手段】先読みダウンロードプロセス４１は、ブラウザによって表示中のページに含まれる他ページへのリンク情報を抽出し、ユーザによって他のページへのアクセスが指示されるまでの間において、抽出したリンク情報に基づく他ページのロードをダウンロード要求プロセス４２に依頼する。ダウンロード要求プロセス４２はダウンロードプロセス４３によりページのダウンロードを実行する。先読みダウンロードプロセスは、ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが既にダウンロード済みであるかを判定し、ダウンロード済みの場合には、ダウンロード済みとなっているデータを、ページ表示のためのブラウザに提供する。【選択図】  図４
2005266929.tif 000002
【特許請求の範囲】
【請求項１】
データ中に含まれる他データへのリンク情報を抽出する抽出手段と、
ユーザによってデータへのアクセスが指示されるまでの間において、前記抽出手段で抽出したリンク情報に基づく他データの取り込みを行う取込手段と、
ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが前記取込手段によって取り込み済みであるかを判定する判定手段と、
前記判定手段によって取り込み済みであると判定された場合、該取り込み済みとなっているデータを用いて、前記アクセスに対応する処理を実行する手段とを備えることを特徴とする情報処理装置。
【請求項２】
データ中に含まれる他データへのリンク情報を抽出する抽出工程と、
ユーザによってデータへのアクセスが指示されるまでの間において、前記抽出工程で抽出したリンク情報に基づく他データの取り込みを行う取込工程と、
ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが前記取込工程によって取り込み済みであるかを判定する判定工程と、
前記判定工程によって取り込み済みであると判定された場合、該取り込み済みとなっているデータを用いて、前記アクセスに対応する処理を実行する工程とを備えることを特徴とする情報処理方法。
【請求項３】
前記データはインターネットにおけるページであり、
前記抽出工程はページの表示中に当該ページに含まれる他ページへのリンク情報を抽出することを特徴とする請求項２に記載の情報処理方法。
【請求項４】
前記取込工程は、前記ページがブラウザによって表示されている間に、バックグラウンド処理において実行されることを特徴とする請求項２に記載の情報処理方法。
【請求項５】
前記取込工程は、前記抽出工程によって抽出されたリンク情報が示すアドレスに基づいてページ取り込みの優先度を付与し、該優先度に基づいてページの取込を実行することを特徴とする請求項２に記載の情報処理方法。
【請求項６】
前記リンク情報はＵＲＬアドレスを含み、
前記取込工程において、表示中のページと同一のサーバを示すＵＲＬアドレスに高い優先度が付与されることを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記取込工程は、ユーザによるデータへのアクセス指示が他データの取り込み中に発生した場合、当該取り込み処理を中止することを特徴とする請求項２に記載の情報処理方法。
【請求項８】
コンピュータにリンクデータの読み込み処理を実行させるための制御プログラムを格納した記憶媒体であって、該制御プログラムが、
データ中に含まれる他データへのリンク情報を抽出する抽出工程のコードと、
ユーザによってデータへのアクセスが指示されるまでの間、前記抽出工程で抽出したリンク情報に基づいて他データを取り込む取込工程のコードと、
ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが前記取込工程によって取り込み済みであるかを判定する判定工程のコードと、
前記判定工程によって取り込み済みであると判定された場合、該取り込み済みとなっているデータを用いて、前記アクセスに対応する処理を実行する工程のコードとを備えることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リンクによって構造化されたデータにおけるリンクデータの読込処理を行う情報処理方法及び装置に関するものである。
【背景技術】
【０００２】
リンクによって構造化されたデータの例として、インターネットのホームページデータ、ヘルプファイルデータなどが知られている（例えば、特許文献１参照）。また、ＣＤ−ＲＯＭ等に記録された百科事典等のデータで他のページにリンクがはってあるものも存在する。
【０００３】
例えば、インターネットのホームページデータは、コンピュータにダウンロードされて、当該コンピュータ上で稼働するインターネットブラウザによってその内容が表示される。従来のインターネットブラウザでは、ユーザがリンク先をマウス等で指定してからリンク先情報のロードを開始するようになっている。
【０００４】
このことは、ヘルプファイルデータのブラウザや百科事典のブラウザにおいても同様である。
【特許文献１】特開平１０−１１６２５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のような制御を行った場合は、リンク先を選択されてから初めてロードを開始するので、ユーザはリンク先を選択後、通信回線の早い遅いに関わらずそれなりの時間をロード終了まで、何もしないで待たなければならいという問題があった。
【０００６】
本発明は上記の問題に鑑みてなされたものであり、その目的とするところは、データに存在するリンクに基づいて、リンクデータを前もって自動的に取得しておくことを可能とし、リンクデータの取得における体感スピードを向上することにある。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明の一態様による情報処理装置は、例えば以下の構成を備える。すなわち、
データ中に含まれる他データへのリンク情報を抽出する抽出手段と、
ユーザによってデータへのアクセスが指示されるまでの間において、前記抽出手段で抽出したリンク情報に基づいて他データの取り込みを行う取込手段と、
ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが前記取込手段によって取り込み済みであるかを判定する判定手段と、
前記判定手段によって取り込み済みであると判定された場合、該取り込み済みとなっているデータを用いて、前記アクセスに対応する処理を実行する手段とを備える。
【０００８】
また、上記の目的を達成するための本発明の他の態様による情報処理方法は、例えば以下の工程を備える。すなわち、
データ中に含まれる他データへのリンク情報を抽出する抽出工程と、
ユーザによってデータへのアクセスが指示されるまでの間において、前記抽出工程で抽出したリンク情報に基づいて他データを取り込みを行う取込工程と、
ユーザによってデータへのアクセスが指示された場合に、当該指示されたデータが前記取込工程によって取り込み済みであるかを判定する判定工程と、
前記判定工程によって取り込み済みであると判定された場合、該取り込み済みとなっているデータを用いて、前記アクセスに対応する処理を実行する工程とを備える。
【発明の効果】
【０００９】
以上説明したように、本発明によれば、データに存在するリンクに基づいてリンクデータを前もって自動的に取得しておくことが可能となるので、リンクデータの取得における体感スピードが向上する。
【発明を実施するための最良の形態】
【００１０】
以下、添付の図面を参照して本発明の好適な実施形態を詳細に説明する。
【００１１】
本実施形態では、ページ内のリンクタグをチェックしてリンク情報を構築し、構築したリンク情報を元にバックグラウンドでロードするリンクを決定する。そして、決定されたリンクのバックグラウンドでのダウンロードをダウンロードプロセスに依頼し、ロードされたデータをハードディスク（ＨＤ）に保存する。ＨＤにダウンロードする処理が終わったら、そのリンクのリンク情報にはＨＤ内にデータがあることを知らせるフラグをたてて、そのＨＤ内パス名も保存する。この作業をリンクの数だけ行う。
【００１２】
つまり、ユーザがページを表示後すぐにリンク先を選択するのでなければ、ページ内に記述されているリンク先のデータをバックグラウンドでＨＤに次々に保存する。そして、ユーザがリンク先を選択したときにはすでにダウンロード済みであるデータを直接ＨＤから読み込むことで高速にリンク先を表示することが可能となる。
【００１３】
特に、以下の本実施形態では、ハイパーテキスト等でリンクされたページをユーザが選択する以前にバックグラウンドで自動的にＨＤにロードしておき、ユーザが選択したときはＨＤから高速にデータをロードするようにして、ダウンロードの体感スピードを大幅に改良する。
【００１４】
図１は、本実施形態における情報処理装置の構成を示すブロック図である。図１において、１１はＣＰＵでありこの情報処理装置のほぼ全てを管理している。１２はメインメモリでありＣＰＵ１１から必要に応じて読み書きされる。１３は外部記憶装置であり多くの場合はハードディスクドライブでありＣＰＵ１１から読み書きされる。１４は外部ネットワークとの接続のためのアダプタであり、ＬＡＮやＷＡＮ、ＷＷＷといった各種のネットワークへの出入り口である。
【００１５】
なお、以下で説明する処理をＣＰＵ１１によって実現するための制御プログラムは、ＨＤ１３に格納され、必要に応じてメインメモリ１２へロードされるものである。
【００１６】
図２は、ページ内に記述されたリンク情報の例を示すである。図２において、ページ２１は最初のページであり通常の文書データのほかに次のページへのリンク情報が記述されている。そしてそのＵＲＬをhttp://www.abcd.1234.htmlであるとする。ページ２２はページ２１からリンクされたページでありそのＵＲＬをhttp://www.abcd.1234.6789.htmlであるとする。ページ２３はページ２１からリンクされているページでありＵＲＬはhttp://www.xyz.123.htmlであるとする。
【００１７】
この時、ページ２１から見たページ２２は、同じアドレス上にある「内側へのリンク」であるが、ページ２３は外部のＵＲＬを持っているので「外側へのリンク」であるといえる。
【００１８】
つまり、ページ２２は同じホームページ内の情報である可能性が高く、ページ２３は外部へのリンクである可能性が高い。そして、ユーザはページ２１を訪れたからには外部へのリンクを選ぶよりも同じホームページ内のリンクを選択する可能性が高いと考えられるので、リンクの優先順位はページ２２の方を高くしておく。
【００１９】
図３は、ＨＴＭＬ文書の中を解析して得られるリンク情報の構成例を示す図である。本実施形態では、ページリンク情報３１はページ内のリンク情報をあらわしている。ページリンク情報３１は大きく分けてヘッダ３２と各リンク詳細情報３３によって構成されている。ヘッダ３２には、ページ内の総リンク数３２ａ、内部リンク数３２ｂ、外部リンク数３２ｃなどが入っている。
【００２０】
ここで、総リンク数３２ａは、そのページ内にある他ページへのリンク情報の総数である。内部リンク数３２ｂは、上記総リンク内の「内部へのリンク」数である。また、外部リンク数３２ｃは、上記総リンク内の「外部へのリンク」数である。
【００２１】
また、リンク詳細情報３３にはページ内のリンク毎の詳細情報が格納される。一つの詳細情報には、リンク番号３３ａ、リンクアドレス３３ｂ、リンク種別３３ｃ、ダウンロードフラグ３３ｄ、ＨＤへのパス３３ｅが記録されている。
【００２２】
ここで、リンク番号３３ａは、ページリンク情報内のリンクの通し番号である。リンクアドレス３３ｂは、そのリンクへのＵＲＬ情報である。リンク種別３３ｃは、上記「内部へのリンク」、「外部へのリンク」を判別するためのフラグである。ダウンロードフラグ３３ｄは、そのリンクのＨＤへのダウンロードが終了したかしていないか、またはダウンロード中であるかを示すフラグである。ＨＤへのパス３３ｅは、ＨＤへのダウンロードが終了した場合にそのページ情報にアクセスするためのＨＤへのアクセスパス名である。
【００２３】
これらページリンク情報３１は、最初のページをロード終了した時点で、図５のフローチャートを参照して後述するページリンク初期構築処理によって構築される。そしてその後、後述の先読みダウンロードプロセスによって、ユーザがリンクのどれかを選択するまでの間、参照・更新される。もし、ユーザによるリンク先の指定までに構築・ダウンロードが間に合わなかった場合は、ＨＤからのロードはあきらめて通常の指定＆ダウンロード処理を行う。また、その場合はページリンク情報３１とＨＤ内の対応するページ情報は破棄する。
【００２４】
図４は、バックグラウンドでリンクをダウンロードするためのプロセス間のつながりを表した図である。以下、各プロセスの処理内容を説明する。
【００２５】
＜先読みダウンロードプロセス４１＞
・最初のページをロード後、ページリンク情報３１を構築する（ページリンク情報初期構築処理：図５）。
・ページリンク情報を元に、ダウンロード要求プロセスにリンクのバックグラウンドでのロードを依頼する（先読みダウンロードプロセス内の先読み処理：図６で後述）。
・ユーザから指定されたリンクが先読みダウンロード処理によってロードが終わっているかチェックし、終わっているならＨＤからデータを入手し、終わっていなければ従来の方法でリンク先をロードするようにする（図１０で後述）。
・ユーザによってリンクが指定された時点で、ダウンロード要求プロセスに対してダウンロードフラグが「ロード中」であるものの中断を要求する（図１０で後述）。
【００２６】
＜ダウンロード要求プロセス４２＞
・先読みダウンロードプロセス４１から依頼されたページのダウンロードをダウンロードプロセス４３に依頼する（図７で後述）。
・ダウンロードプロセス４３からの終了報告を監視し、終了報告を受ける度に該当するページリンク情報のダウンロードフラグを「ロード済み」に更新していく（図８で後述）。
・先読みダウンロードプロセス４１から依頼されたロード処理の中断をダウンロードプロセスに依頼する（図８で後述）。
【００２７】
＜ダウンロードプロセス４３＞
・依頼されたＵＲＬのダウンロードを実行し、データは指定されたパスでＨＤ１３に書き込んでいく（図９で後述）。
・ダウンロードが終了したら、その結果をダウンロード要求プロセスに報告する（図９で後述）。
・中断の依頼があれば、該当するリンクのロード処理を中断する（図９で後述）。
【００２８】
以下、上述の各処理の詳細を、図５〜図１０のフローチャートを参照して説明する。
【００２９】
図５は、先読みダウンロードプロセス４１がページをロード後に最初に行う、ページリンク情報３１の初期構築処理のフローチャートである。
【００３０】
ステップＳ１０１では、内側リンクの数をカウントするための変数in_linkの値を０に初期化し、ステップＳ１０２では、外側リンクの数をカウントするための変数out_linkの値を０に初期化する。
【００３１】
ページリンク情報３１を構築するには、そのページ内のリンクの総数を知らなければメモリを確保できないため、ステップＳ１０３のリンク数チェック処理でページ内のリンクの記述総数を取得し、これを変数total_linkに格納する。ステップＳ１０４ではtotal_linkを元にページリンク情報３１のためのメモリを確保する。そして、ステップＳ１０５で最初のリンクを処理対象にする。
【００３２】
ステップＳ１０６でリンク番号３３ａに通し番号をつける。次に、ステップＳ１０７で、リンクアドレス３３ｂにこのリンクへのＵＲＬを格納し、ステップＳ１０８でこのリンクアドレス３３ｂに格納されたＵＲＬが最初のページ（現在表示中のページ）のＵＲＬと近いかチェックする。もし、ＵＲＬが近いと判断された場合は処理ステップＳ１０９すすみリンク種別３３ｃを「内側」にセットする。つぎに、ステップＳ１１０でin_linkをインクリメントする。
【００３３】
もし、ＵＲＬが違うと判断された場合は処理ステップＳ１１１に進み、リンク種別３３ｃを「外側」に初期化する。次に、ステップＳ１１２でout_linkをインクリメントする。なお、本実施形態において、「ＵＲＬが近い」とは、両ページが同一ホームページ内に存在するものと推定されるＵＲＬであり、「ＵＲＬが違う」とは両ページが異なるホームページに存在するものと推定されるページである。
【００３４】
次に、ステップＳ１１３では、ダウンロードフラグ３３ｄを初期化する。この時点ではまだダウンロードは行っていないので「未ロード」に初期化する。そして、ステップＳ１１４においてＨＤパスを０で初期化する。この時点では、まだダウンロードも行われておらず、ＨＤ１３への保存も行われていないからである。
【００３５】
以上ステップＳ１０６からステップＳ１１４の処理をページ内のリンクの数だけ行って（ステップＳ１１５、Ｓ１１６）ページ詳細情報をすべて初期化する。すべてのリンクについて初期化が終了すると、処理はステップＳ１１６からステップＳ１１７へ進み、ページヘッダの初期化を行う。すなわち、ステップＳ１１７で内部リンク数３２ｂに変数in_linkの値を入れ、ステップＳ１１８で外部リンク数３２ｃに変数out_linkの値を入れ、更に、ステップＳ１１９において総リンク数３２ａにtotal_linkの値を入れる。
【００３６】
上記処理ステップＳ１０１からステップＳ１１９を行うことで、ページリンク情報を初期化してバックグラウンドでの先読みダウンロード処理の前準備を終了し、後述の先読み処理に移行する。
【００３７】
図６は、先読みダウンロードプロセス４１内の先読み処理のフローチャートである。
【００３８】
まず、ステップＳ２０１とステップＳ２０２で内部変数i_link／o_linkをページリンク情報３１の内部リンク数３２ｂと外部リンク数３２ｃの値で夫々初期化する。次に、ステップＳ２０３でページリンク情報３１内の最初のリンク詳細情報３３を取得する。
【００３９】
ステップＳ２０４では、ユーザからのリンク先指定が有るか無いかをチェックする。つまり、先読み処理が終了するまでにユーザからのリンク指定があるかもしれないので、ユーザからのリンク指定の入力の有無をここで判定し、リンク指定が有るならば後述する先読み中断処理に移行する。リンク指定が無ければ処理ステップＳ２０５に進む。
【００４０】
ステップＳ２０５ではこのリンクのダウンロードが終わっているか否かをダウンロードフラグ３３ｄによりチェックする。当該リンクのダウンロードが終わっているならステップＳ２１１に進み、次のリンク詳細情報に処理を移行する。一方、ダウンロードが終わっていないなら、ステップＳ２０６へ進み、キャッシュのチェック処理を行。
【００４１】
ステップＳ２０６でキャッシュにこのリンク先の情報があると判定されたならば、先読みダウンロードは行わずにこのキャッシュデータを活用する。この場合は、処理はステップＳ２０６からステップＳ２１５へ進む。ステップＳ２１５では、このリンクのダウンロードフラグを「ロード済み」にし、ステップＳ２１６でＨＤへのパスをキャッシュファイルへのパスで更新する。次に、ステップＳ２１７で、リンク種別３３ｃを参照することにより、このリンクが「内部へのリンク（以下、「内側」と表わす）」か「外部へのリンク（以下、「外側」と表わす）」かチェックする。そして内側ならステップＳ２１８で変数i_linkを１つデクリメントし、外側ならステップＳ２１９で変数o_linkを１つデクリメントする。その後、ステップＳ２１１に進み、次のリンクの処理を行う。
【００４２】
一方、ステップＳ２０６でリンクがキャッシュにないと判別された場合は、通常の先読みダウンロードの処理を行う。
【００４３】
まず、ステップＳ２０７とステップＳ２１２で「内側」のリンクと「外側」のリンクの残りをチェックする。もし両方とも０ならすべてのリンクをバックグラウンドでロードする処理は終わったと判断できるので処理を終了し、後述するリンク先指定待ち処理（図１０）に移行する。また、「内側」のリンクを優先的にダウンロードするようにしてなるべくバックグラウンドによる先読みが間に合うように考慮する。つまり、i_linkが０になるまで「内側」のリンクのダウンロードを行い、０になったら初めて「外側」のリンクのダウンロードを開始するようにする。
【００４４】
ステップＳ２０７において、i_linkの値が０でない場合は、ダウンロード要求が行われていない「内側」のリンクがあると判断される。内側のリンクがまだあると判断された場合は、ステップＳ２０８で、現在取得されているリンクが内側かどうか判別する。内側であればステップＳ２０９へ進み、i_linkをデクリメントする。そして、ステップＳ２１０に進みダウンロード要求プロセスにこのリンクのロードを依頼する。なお、ステップＳ２０７で「外側」と判別された場合は、このリンクのロードは行わないようにしてステップＳ２１１にジャンプする。これは、内側のリンクを優先させるための処理である。
【００４５】
ステップＳ２０７で「内側」のリンクがないと判別されると、初めて、「外側」のリンクのロード処理が行われることになる。ステップＳ２０７で「内側」が０でかつ、o_linkが０でなければステップＳ２１３以降を処理する。ステップＳ２１３でリンク種別が「内側」と判別された場合は、このリンクはすでにバックグラウンドでのダウンロード依頼がなされているはずなので何もせずステップＳ２１１にジャンプする。ステップＳ２１３において「外側」と判別された場合は、ステップＳ２１４でo_linkを１つデクリメントし、ステップＳ２１０でダウンロード要求プロセス４２にこのリンクのロードを依頼する。
【００４６】
ステップＳ２１１では、次のリンクのリンク詳細情報３３を取得する。もし、最後のリンク詳細情報３３の数を越えた場合は、当該ページリンク情報３１の先頭のリンク詳細情報３３を再度取得するようにする。
【００４７】
以上、処理ステップＳ２０１からステップＳ２１９を行うことによって、バックグラウンドでのリンクのダウンロードをダウンロード要求プロセス４２に依頼する。なお、この先読みダウンロードプロセス４１ではダウンロード要求プロセス４２に次々にロードの依頼を行うだけで、そのロードが終了しているかどうかは全く考慮しない。
【００４８】
図７は、ダウンロード要求プロセス４２内の要求ハンドラのフローチャートである。要求ハンドラは、先読みダウンロードプロセス４１からリンクのダウンロードの要求のときと、要求済みであるリンクのダウンロード処理の中断のときに呼び出される。このときの引数はリンク詳細情報のリンク番号３３ａである。ハンドラではこの番号でページリンク情報３１のどのリンク詳細情報３３を使うか判断する。
【００４９】
ステップＳ３０１では、当該ダウンロード要求プロセス４２が呼び出されたときの処理要求を判別する。処理要求が中断要求ならば、ステップＳ３０５に進み、指定されたリンクのダウンロード処理の中断をダウンロードプロセス４３（図９）に依頼し終了する。
【００５０】
処理要求がダウンロード要求ならば、処理はステップＳ３０２に進む。ステップＳ３０２ではリンク詳細情報のダウンロードフラグを「ロード中」に更新する。次に、ステップＳ３０３でＨＤへのパス３３ｅに、ＨＤに保存するためのパス名を作ってセットする。以上の準備をした上で、ステップＳ３０４でダウンロードプロセス４３にこのリンクのロードを依頼し処理を終了する。
【００５１】
図８は、ダウンロード要求プロセス４２内の終了ハンドラのフローチャートである。終了ハンドラは、ダウンロードプロセス４３からロード終了を通知する時と、中断処理が終了した時に呼び出される。この時の引数はリンク詳細情報のリンク番号である。ハンドラではこの番号でページリンク情報のどのリンク詳細情報を使うか判断する。
【００５２】
ステップＳ４０１では、呼び出されたときの処理要求を判別する。もし、リンクのロード終了の通知なら処理ステップＳ４０２に進み、該当するリンク詳細情報のダウンロードフラグを「ロード済み」に更新して終了する。リンクのロードの中断が終了したのであれば、処理ステップＳ４０３に進み今度は該当するリンク詳細情報のダウンロードフラグを「未ロード」に更新して処理を終了する。
【００５３】
図９は、ダウンロードプロセス４３のフローチャートである。以下、各処理を説明する。ダウンロードプロセス４３は、ダウンロード要求プロセス４２より指定されたリンクのロードと、指定されたロード処理の中断を行う。
【００５４】
まずステップＳ５０１でロード要求か中断要求かの判別を行う。もし、ロード要求ならステップＳ５０２に進む。ステップＳ５０２では指定されたリンク詳細情報３３を元にリンクのダウンロードを実際に行う。ダウンロードしたデータは、当該リンク詳細情報３３に設定されたＨＤパス名でＨＤに保存される。ロードが終了した後は、処理ステップＳ５０３にてダウンロード要求プロセス４２に対して、リンクのダウンロードが終了したことの通知を行う。
【００５５】
また、ステップＳ５０１で中断要求であればステップＳ５０４に進む。ステップＳ５０４では現在ロード中の処理を中断する。中断が終了したら処理ステップＳ５０５でダウンロード要求プロセス４２に対して中断処理の終了を通知する。
【００５６】
なお、上記ステップＳ５０２とステップＳ５０３の処理及びステップＳ５０４とステップＳ５０５の処理はシーケンシャルに行われるわけではない。ステップＳ５０２のダウンロード処理はそれ自身１つのタスクであり、いくつものダウンロードタスクがバックグラウンドで稼働している。そして、それぞれが終わり次第随時処理ステップＳ５０３によってダウンロード要求プロセス４２に終了が報告される。これは処理ステップＳ５０４とステップＳ５０５についても同様である。なお、このようなタスクの生成と管理は、各オペレーティングシステムによって異なるものであるが、周知の技術を適用することで実現できるので、ここでは説明を省略する。
【００５７】
図１０は、先読みダウンロード処理から派生する、先読み中断処理及びリンク先指定待ち処理のフローチャートである。先読み中断処理はページ内の先読み処理をバックグラウンドで行っているときにユーザによってリンクの指定が行われたときに呼び出される処理である。
【００５８】
まずステップＳ６０１で、ユーザによって指定されたリンク詳細情報を取得する。次にステップＳ６０２で、ダウンロード要求プロセス４７（図７）に対して、全てのリンク詳細情報内でダウンロードフラグが「ロード中」であるリンクのロード中断を要求する。ステップＳ６０３では、ステップＳ６０１で移行したリンク詳細情報のダウンロードフラグをチェックする。もし「ロード済み」でなければ先読みダウンロードが行われる前にユーザによるリンクの指定が行われたと判断できるので、処理ステップＳ６０８に進み通常の方法によるリンク先のダウンロードを行う。そして、ロード終了後処理ステップＳ６０９でページの表示を行い処理ステップＳ６０５に進む。
【００５９】
また、「ロード済み」であればバックグラウンドによるダウンロードは終了しているのでステップＳ６０４に進んで、ＨＤパスの情報を元にリンク先のページの表示を行い、ステップＳ６０５に進む。ステップＳ６０５の時点で、新しいページに切り替わっているので今まで使用していた、ページリンク情報を破棄し、ステップＳ６０６で新しいページに対してページリンク初期化処理を行い再び先読みダウンロード処理を続行する。
【００６０】
一方、リンク先指定待ち処理は、ユーザによるリンク先の指定に先駆けて、先読みダウンロード処理が現在のページ内のすべてのリンクに対して終了したときに呼び出される。
【００６１】
まず、処理ステップＳ６０９でリンク先の指定があるまでウエイトしてなにもしない。リンク先の指定が行われた時点で処理ステップＳ６１０に進む。ステップＳ６１０では指定されたリンクに対応するリンク詳細情報を取得して、ステップＳ６０４に進む。ステップＳ６０４以降の処理は上述の通りである。
【００６２】
以上述べてきたとおり、本実施形態によれば、ユーザは特に意識していなくても、表示されたページを閲覧している間に自動的にバックグラウンドでリンク先がダウンロードされることになる。このため、その後にリンク先を指定したときにはＨＤから高速にリンク先を表示できるため、ダウンロードの体感スピードを大幅に改善することが可能となる。
【００６３】
なお、上記実施形態ではインターネットなどでのＨＴＭＬ文書での先読みダウンロード処理の例を説明した。しかしながら、本発明の適用はインターネット上のＨＴＭＬ文書に限られるものではなく、リンクによって構造化されたデータであれば適用が可能である。例えば、
（１）へルプファイルなどのデータで、ヘルプ内の文書の一部が他の文書へのリンクになっている部分があるもの。
（２）ＣＤ−ＲＯＭなどに記録された百科事典などのデータで、説明文に他のページへのリンクが張ってある形式をとっているもの。
が挙げられる。
【００６４】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００６５】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００６６】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００６７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【００６８】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００６９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００７２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００７３】
【図１】本実施形態における情報処理装置の構成を示すブロック図である。
【図２】ページ内に記述されたリンク情報とページ間のリンクの様子を表した図である。
【図３】ＨＴＭＬ文書の中を解析して得られるリンク情報の構成例を示す図である。
【図４】バックグラウンドでリンクをダウンロードするためのプロセス間のつながりを表した図である。
【図５】先読みダウンロードプロセスがページをロード後に最初に行う、ページリンク情報３１の初期構築処理のフローチャートである。
【図６】先読みダウンロードプロセス内の先読み処理のフローチャートである。
【図７】ダウンロード要求プロセス内の要求ハンドラのフローチャートである。
【図８】ダウンロード要求プロセス内の終了ハンドラのフローチャートである。
【図９】ダウンロードプロセスのフローチャートである。
【図１０】先読みダウンロード処理から派生する、先読み中断処理及びリンク先指定待ち処理のフローチャートである。
【図１】
2005266929.tif 000003
【図２】
2005266929.tif 000004
【図３】
2005266929.tif 000005
【図４】
2005266929.tif 000006
【図５】
2005266929.tif 000007
【図６】
2005266929.tif 000008
【図７】
2005266929.tif 000009
【図８】
2005266929.tif 000010
【図９】
2005266929.tif 000011
【図１０】
2005266929.tif 000012