JP2011258141A - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- JP2011258141A JP2011258141A JP2010134425A JP2010134425A JP2011258141A JP 2011258141 A JP2011258141 A JP 2011258141A JP 2010134425 A JP2010134425 A JP 2010134425A JP 2010134425 A JP2010134425 A JP 2010134425A JP 2011258141 A JP2011258141 A JP 2011258141A
- Authority
- JP
- Japan
- Prior art keywords
- file
- unit
- information
- downloaded
- history
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
【課題】サーバからファイルを効率よくダウンロードする技術を提供する。
【解決手段】起動履歴保持部308は、アプリケーションの起動履歴を保持する。決定部270は、起動履歴を参照して、サーバからダウンロードする、アプリケーションに関連するファイルを決定する。処理部250は、決定した関連ファイルをダウンロードする。起動履歴保持部308は、アプリケーションを特定する識別情報と、そのアプリケーションの最新の起動日時とを対応付けた起動履歴を保持し、決定部270は、起動日時を参照して、ダウンロードする関連ファイルを決定する。
【選択図】図7
【解決手段】起動履歴保持部308は、アプリケーションの起動履歴を保持する。決定部270は、起動履歴を参照して、サーバからダウンロードする、アプリケーションに関連するファイルを決定する。処理部250は、決定した関連ファイルをダウンロードする。起動履歴保持部308は、アプリケーションを特定する識別情報と、そのアプリケーションの最新の起動日時とを対応付けた起動履歴を保持し、決定部270は、起動日時を参照して、ダウンロードする関連ファイルを決定する。
【選択図】図7
Description
本発明は、ゲーム装置などの情報処理装置で実行される技術に関する。
一般にゲームソフトウェアは、光ディスクや光磁気ディスク、ブルーレイディスクなどのROM媒体の形態で流通、販売される。ROM媒体に記録されたゲームソフトウェアは書き換えることができないため、ゲームソフトウェアの一部のバグを修正したり、機能を変更または追加するためには、パッチを当てることで対応する。特許文献1は、ゲーム装置が、過去にメディアドライブに装着されたことのあるROM媒体のゲームデータを特定するリストを有し、このリストに含まれるゲームデータの更新を管理する更新サーバに定期的にアクセスして、パッチファイルをダウンロードするゲームシステムを開示する。
特許文献1に開示されるゲームシステムでは、ゲーム装置が定期的に更新サーバにアクセスするが、ユーザがゲームをプレイしているような場合、パッチファイルをダウンロードするのに相応しい環境でない状況も想定される。また、パッチファイルのダウンロード処理を、過去にプレイした全てのゲームを対象にすることは、ゲーム装置の記憶容量やネットワーク資源の観点から、好ましくないこともある。そのためユーザが所望するパッチファイルを効率よくダウンロードする仕組みを構築することが好ましい。なお、ダウンロードする対象はパッチファイルだけでなく、他の種類のファイル、たとえばシステムソフトウェアや、ムービーなどのコンテンツファイルも含めることが好ましい。
そこで本発明は、サーバからファイルを効率よくダウンロードする技術を提供することを目的とする。
上記課題を解決するために、本発明のある態様の情報処理装置は、アプリケーションの起動履歴を保持する第1保持部と、起動履歴を参照して、サーバからダウンロードする、アプリケーションに関連するファイルを決定する決定部と、決定した関連ファイルをダウンロードする処理部と、を備える。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明の情報処理技術によると、サーバからファイルを効率よくダウンロードする技術を提供することが可能となる。
本発明の実施例を具体的に説明する前に、まず概要を述べる。本実施例の情報処理装置は、設定された時刻にタイマにより起動され、ファイル提供サーバに自動アクセスして、システムソフトウェア、ゲームのパッチファイル、デモゲームソフトウェアやゲームトレーラ(ゲームビデオ)などのコンテンツファイルをダウンロードする。本実施例において、この機能を「自動ダウンロード機能」と呼ぶ。
ユーザは、情報処理装置に自動ダウンロード機能を実行させるために、自動ダウンロードサービスに加入して、アカウントIDを取得する。サービスアカウントIDには有効期限が設定されているが、ユーザは有効期限を延長できる。情報処理装置は、サービスアカウントIDの利用が有効期限内であれば、自動ダウンロード機能を実行できる。なお後述するが、ユーザは、サービスにサインインするためのID(サインインID)を保有しており、このサインインIDがサービスアカウントIDとして利用されてもよい。この場合、ユーザは、サービスアカウントIDを取得する必要はなく、サーバに対して、自動ダウンロードサービスに加入したことを登録するだけでよい。
情報処理装置は、アプリケーションの起動履歴や処理履歴などから、ユーザに必要または有用であると想定されるファイルをダウンロード対象に決定し、ファイル提供サーバから、ハードディスクドライブ(HDD)やフラッシュメモリなどの記憶装置にダウンロードして、インストールする。これによりユーザが手動でファイルをダウンロードする手間をなくすことができる。情報処理装置が自動ダウンロード機能を実行することで、ユーザがゲームをプレイしようとするときには、既に最新のシステムソフトウェアがダウンロードされた環境を実現でき、またゲームソフトウェアに、最新のパッチファイルが当てられた環境を実現することが可能となる。
図1は、本発明の実施例にかかる情報処理システム1を示す。情報処理システム1は、ユーザ端末である情報処理装置10と、ファイル提供サーバ12と、認証サーバ14とを備える。ファイル提供サーバ12は、情報処理装置10の環境を構築するシステムソフトウェアを提供するシステムソフトウェア提供サーバ12aと、ゲームソフトウェアに適用するパッチファイルを提供するパッチファイル提供サーバ12bと、デモゲームソフトウェアやゲームトレーラなどのコンテンツファイルを提供するコンテンツファイル提供サーバ12cとを含む。情報処理装置10、システムソフトウェア提供サーバ12a、パッチファイル提供サーバ12b、コンテンツファイル提供サーバ12cおよび認証サーバ14は、インターネットなどのネットワーク18を介して通信可能に接続される。
情報処理システム1において、システムソフトウェア提供サーバ12a、パッチファイル提供サーバ12bおよびコンテンツファイル提供サーバ12cは、情報処理装置10に対してファイルを提供するファイル提供サーバ12の例である。システムソフトウェア提供サーバ12a、パッチファイル提供サーバ12bおよびコンテンツファイル提供サーバ12cのそれぞれは、単一のサーバから構成されてもよいが、複数のサーバから構成されてもよい。また、システムソフトウェア提供サーバ12a、パッチファイル提供サーバ12bおよびコンテンツファイル提供サーバ12cの2以上の組み合わせが、1つのサーバから構成されてもよい。
システムソフトウェア提供サーバ12aは、情報処理システム1の運営主体により管理され、情報処理装置10においてアップデートされるべき最新のシステムソフトウェアを保持している。情報処理システム1において、システムソフトウェアは、アップデートの重要度に応じて2種類に分けられ、以下では、それぞれを「第1のシステムソフトウェア」、「第2のシステムソフトウェア」と表現する。
第1のシステムソフトウェアは、情報処理装置10がネットワーク機能を利用するためには必ずインストールする必要があるシステムソフトウェアであり、アップデートの重要度は高い。情報処理装置10は、最新の第1システムソフトウェアをインストールしなければ、認証サーバ14における認証処理を通過できず、サインインできない。情報処理装置10は、最新の第1システムソフトウェアをインストールすることで、ネットワーク機能を利用できるようになる。
第2のシステムソフトウェアは、アップデートの重要度が相対的に低いシステムソフトウェアであり、情報処理装置10は、最新の第2のシステムソフトウェアをインストールすると、最新の環境でアプリケーションを実行できるようになる。情報処理装置10は、最新の第2のシステムソフトウェアをインストールしていなくても、それによって認証サーバ14における認証処理に影響を受けることはない。たとえば、最新の第2のシステムソフトウェアのバージョンが、最新の第1のシステムソフトウェアのバージョンよりも新しい場合、情報処理装置10は、最新の第2のシステムソフトウェアをインストールしなくても、最新の第1のシステムソフトウェアさえインストールしておけば、認証サーバ14にサインインすることができ、ファイル提供サーバ12に自由にアクセスできる。
パッチファイル提供サーバ12bは、オンライン上の仮想ゲームショップの運営主体により管理され、ゲームソフトウェアに適用するパッチファイルを保持している。パッチファイルは、ROM媒体に記録されたゲームプログラムや、インストール済みゲームプログラムのバグを修正したり、機能を変更または追加などするために使用される。ゲームメーカは、ゲームソフトウェアのパッチファイルを生成すると、バージョン情報とともに仮想ゲームショップの運営主体に提供し、この運営主体は、パッチファイルおよびバージョン情報をパッチファイル提供サーバ12bに保持させて、情報処理装置10が、パッチファイルをダウンロードできるようにする。
コンテンツファイル提供サーバ12cは、ゲームソフトウェアの提供主体(たとえばゲームメーカ)により管理され、推薦するデモゲームやゲームトレーラなどのコンテンツファイルを保持している。コンテンツファイル提供サーバ12cは、新しく販売されるゲームの体験版やゲームビデオなどを、販売促進を目的としてユーザに無償提供する。ユーザは、コンテンツファイル提供サーバ12cから、デモゲームやゲームトレーラをダウンロードすることで、お薦めゲームを体験でき、製品版のゲーム購入に対するインセンティブを与えられる。コンテンツファイル提供サーバ12cは、国や地域ごとに用意されて、それぞれのお薦めコンテンツを提供するようにしてもよい。
認証サーバ14は、情報処理システム1に所属する情報処理装置の認証情報を登録しておき、情報処理装置10から送信される認証情報を、登録している認証情報と照合することで、情報処理装置10の認証処理を行う。また認証サーバ14は、システムソフトウェア提供サーバ12aから提供可能なシステムソフトウェアの最新のバージョン情報を保持し、情報処理装置10から送信されるシステムソフトウェアのバージョン情報と比較する。この比較により、情報処理装置10でインストールされているシステムソフトウェアのバージョンが、最新の第1のシステムソフトウェアのバージョンよりも古い場合には、認証が拒否される。情報処理装置10は、認証サーバ14による認証を受けることで、ファイル提供サーバ12に自由にアクセスできるようになる。
本実施例の情報処理装置10は、自動ダウンロード処理を実行する。自動ダウンロード処理はタイマ起動され、ユーザによる操作を介さずに実行される。本実施例の自動ダウンロード処理を実行するために、ユーザは、情報処理装置10に対して、予め自動ログイン機能の設定、および自動サインイン機能の設定を行っておく。
自動ログイン機能とは、情報処理装置10を起動したときに、予め登録したユーザアカウントで自動で情報処理装置10にログインする機能である。また自動サインイン機能とは、ログイン後、情報処理装置10にログインしたユーザに対して予め登録している認証情報(サインインIDとパスワード)を認証サーバ14に送信し、ネットワーク18上でファイル提供サーバ12が提供するサービスに自動でサインインする機能である。ユーザは情報処理装置10に自動ログイン機能と自動サインイン機能とを設定しておくことで、タイマで電源がオンされたときに、情報処理装置10がサービスに自動サインインして、自動ダウンロード機能を実行できる環境を用意する。
この環境のもとで、情報処理装置10は、所定の設定時刻になるとシステムコントローラにより起動され、すなわち電源をオフ状態からオン状態にされる。情報処理装置10は、自動ログイン処理および自動サインイン処理を実行する。このとき情報処理装置10は、ダウンロードモジュールを起動し、サインインの完了後、ダウンロードサービスのアカウントIDおよび情報処理装置10の識別情報(コンソールID)を認証サーバ14に送信する。認証サーバ14は、ダウンロードサービスに加入するユーザの情報処理装置の識別情報およびサービスアカウントIDを登録しており、情報処理装置10から送信される識別情報およびサービスアカウントIDを、登録している識別情報およびサービスアカウントIDと照合して、自動ダウンロード処理を許可してよいか判定する。このとき認証サーバ14は、サービスアカウントIDの有効期限も確認する。認証サーバ14は、判定の結果を情報処理装置10に通知する。なお、サインインの認証判定と、自動ダウンロード処理の許可判定は、単一の認証サーバ14によって行われてもよいが、別個の認証サーバによって行われてもよい。
なお、サインインIDがサービスアカウントIDとして利用されてもよい。この場合、情報処理装置10は、サインインの完了後、コンソールIDを認証サーバ14に送信する。なお、認証済みのサインインIDは送信しなくてよい。認証サーバ14は、コンソールIDを、ユーザのサインインIDに関連付けて登録しており、受信したコンソールIDに関連付けられているサインインIDの有効性、すなわち自動ダウンロード処理を許可してよいか判定し、判定の結果を情報処理装置10に通知する。
情報処理装置10は、認証サーバ14より、自動ダウンロード処理の実行を許可することを示す判定結果を受けると、ダウンロードするファイルを決定し、ファイル提供サーバ12の各サーバから、ファイルを自動ダウンロードする。ユーザは、情報処理システム1が提供する自動ダウンロードサービスに加入することで、手動でダウンロードを要求するファイルを選択することなく、必要なまたは有用なファイルを自動的に入手できるようになる。
本実施例に示す自動ダウンロード処理は、ゲームソフトウェアを実行する情報処理装置10に限らず、会計ソフトウェアやCADソフトウェアなどを実行する情報処理装置にも適用できる。情報処理装置10は、据置型の端末装置であっても、また携帯型の端末装置であってもよい。
図2は、情報処理装置10の機能ブロック図を示す。情報処理装置10は、電源ボタン20、LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、ハードディスクドライブ34、スイッチ36、無線インタフェース38、メインコントローラ100、メインメモリ102および出力処理部200を有して構成される。
電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10への電源供給をオンまたはオフするために操作される。LED22は、電源のオンまたはオフの状態を点灯表示する。システムコントローラ24は、電源ボタン20の押下状態または非押下状態を検出し、電源オフの状態から押下状態への状態遷移を検出すると、メインコントローラ100を起動し、またLED22を点灯制御する。情報処理装置10に電源ケーブルが差し込まれている場合、システムコントローラ24は、電源オフの状態であってもスタンバイモードを維持して、電源ボタン20の押下を監視する。クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やメインコントローラ100に供給する。
デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、ハードディスクドライブ34、スイッチ36およびメインコントローラ100などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
メディアドライブ32は、ゲームソフトウェアを記録したROM媒体50を装着して駆動し、ROM媒体50からゲームプログラムやゲームデータなどを読み出すドライブ装置である。ROM媒体50は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
ゲームソフトウェアは、ゲームアプリケーションを実行させるメインプログラムと、メインプログラムを起動するための起動ファイルと、ゲームキャラクタやシナリオなどのゲームデータ、ゲームソフトウェアのタイトルID、ゲームソフトウェアのバージョン情報などを含んでいる。
メインプログラムは、アプリケーションの実行に必要なプログラムであり、メインプログラムを走らせることで、ゲームが進行する。起動ファイルは、メインプログラムを起動するためのプログラムであり、起動ファイルを実行すると、メインプログラムが呼び出されて実行される。
ハードディスクドライブ34は、内蔵ハードディスクを駆動し、磁気ヘッドを用いてデータの書込/読出を行う補助記憶装置である。スイッチ36は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、情報の送受信を行うデバイスである。本実施例では、スイッチ36にケーブルが差し込まれ、ネットワーク18と通信可能に接続している。さらにスイッチ36は無線インタフェース38に接続し、無線インタフェース38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで無線通信機能をもつ入力装置40と接続する。入力装置40は、ユーザからの操作入力が行われる入力手段である。
メインコントローラ100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアをPPU(Power Processing Unit)と呼び、残りのプロセッサコアをSPU(Synergistic-Processing Unit)と呼ぶ。
メインコントローラ100は、主記憶装置であるメインメモリ102に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、各アプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリ(専用RAM)を備える。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ102とローカルメモリの間のデータ転送を行うことで、データを高速にストリーム処理でき、また出力処理部200に内蔵されるフレームメモリとローカルメモリの間で高速なデータ転送を実現できる。
出力処理部200は、表示機器60に接続されて、アプリケーションの処理結果である映像信号および音声信号を出力する。出力処理部200は、画像処理機能を実現するGPU(Graphics Processing Unit)を備える。GPUは、HDMI(High Definition Multimedia Interface)を採用し、映像信号をデジタル出力できる。
図3は、情報処理装置10による自動ダウンロード機能の基本処理のフローチャートを示す。図3に示すフローチャートにおいては、各部の処理手順を、ステップを意味するS(Stepの頭文字)と数字との組み合わせによって表示する。なお、本明細書のフローチャートにおいて、Sと数字との組み合わせによって表示した処理で何らかの判断処理が実行され、その判断結果が肯定的であった場合は、Y(Yesの頭文字)を付加して、例えば、(S10のY)と表示し、逆にその判断結果が否定的であった場合は、N(Noの頭文字)を付加して、(S10のN)と表示する。
電源オフ状態にある情報処理装置10が、設定された時刻に起動され、ダウンロードモジュールを起動する(S10)。情報処理装置10には、自動ログインおよび自動サインインの実行機能が設定されており、情報処理装置10が起動されると、自動ログインおよび自動サインインが実行される。認証サーバ14は、サインインの受付の可否を判定する。サインインに成功すると、情報処理装置10は、認証サーバ14にサービスアカウントIDを送信し、認証サーバ14は、サービスアカウントIDの有効性を判定する(S12)。なお、サインインの受付判定と、サービスアカウントIDの有効性判定は、別個の認証サーバによって行われてもよい。サービスアカウントIDが有効であることが判定されると、情報処理装置10は、自動ダウンロード処理を実行する(S14)。自動ダウンロード処理が終了すると、情報処理装置10は、次回のダウンロードモジュールの起動時刻を設定する(S16)。なお、タイマ設定処理は、ダウンロードモジュールの起動前または起動後の状況に応じて行われ、したがって、S10の直後に行われる場合もある。以下、自動ダウンロード機能を実現するための処理について説明する。
<タイマ処理>
図4は、情報処理装置10におけるタイマ処理を実行するための機能ブロックを示す。タイマ処理は、図3に示したタイマ起動処理およびタイマ設定処理を含む。メインコントローラ100は、入力受付部110、判定結果取得部112、処理状況取得部114、設定部120および起動制御部122を備える。判定結果取得部112および処理状況取得部114は、タイマ設定処理の際に利用され、ダウンロードモジュール150が起動されることで構成される。起動リスト保持部130は、フラッシュメモリなどにより構成され、タイマ起動するモジュール(アプリケーション)のリストを保持する。システムコントローラ24は、情報処理装置10の電源がオフの状態において、現在日時情報をもとに情報処理装置10をタイマ起動する。
図4は、情報処理装置10におけるタイマ処理を実行するための機能ブロックを示す。タイマ処理は、図3に示したタイマ起動処理およびタイマ設定処理を含む。メインコントローラ100は、入力受付部110、判定結果取得部112、処理状況取得部114、設定部120および起動制御部122を備える。判定結果取得部112および処理状況取得部114は、タイマ設定処理の際に利用され、ダウンロードモジュール150が起動されることで構成される。起動リスト保持部130は、フラッシュメモリなどにより構成され、タイマ起動するモジュール(アプリケーション)のリストを保持する。システムコントローラ24は、情報処理装置10の電源がオフの状態において、現在日時情報をもとに情報処理装置10をタイマ起動する。
図4において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、メインコントローラ100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
タイマ処理に先だって、入力受付部110は、ユーザからダウンロードモジュール150の起動時刻の入力を受け付ける。ユーザは入力装置40を操作して、起動時刻を入力すると、入力受付部110が起動時刻を受け付け、設定部120に供給する。受け付ける起動時刻は、日を指定しない時刻であり、ユーザは、自動ダウンロード処理を開始する時刻を、たとえば深夜の時刻(2:00)に設定する。設定部120は、起動時刻を受け付けると、ダウンロードモジュール150の起動日時を設定する。起動日時は、日を指定した時刻である。たとえば設定部120は、入力受付部110から起動時刻を供給されると、翌日の起動時刻を設定し、起動リスト保持部130に保持される起動リストに書き込む。なお、ユーザが起動時刻を入力しない場合、設定部120は、デフォルトの起動時刻(たとえば4:00)を用いて、起動日時を設定し、起動リストに書き込む。
図5は、起動リストの一例を示す。起動リストには、起動日時と、起動モジュールとが対応付けられて記録されている。設定部120は、ダウンロードモジュール150の起動日時を設定すると、起動リストに書き込む。
システムコントローラ24は、情報処理装置10の電源状態を監視する。システムコントローラ24は、起動リスト保持部130に保持される起動リストを参照して、クロック26から供給される現在の日時情報をもとに、情報処理装置10を起動するべきか判定する。図5に示す例では、現在の日時が2010年6月11日2:00になったときに、システムコントローラ24が、情報処理装置10の電源がオフ状態にあれば、情報処理装置10の電源をオン状態にして、メインコントローラ100を起動する。
起動制御部122は、起動リスト保持部130に保持される起動リストを参照して、現在の日時情報をもとに、モジュールを起動する。情報処理装置10の起動後、起動制御部122は、起動リストにおいて設定された起動日時に、モジュールを起動する。図5に示す例では、起動制御部122が、ハードディスクドライブ34からダウンロードモジュール150を読み出して起動する。以上により、ダウンロードモジュール150が起動され、情報処理装置10の自動ダウンロード機能が実現されるようになる。ダウンロードモジュール150が起動されると、設定部120は、起動リストから、対応する設定情報を削除する。以上により、タイマ起動処理が実行される。
タイマ設定処理において、設定部120は、起動制御部122によるダウンロードモジュール150の起動前または起動後の状況に応じて、ダウンロードモジュール150の次回の起動日時を設定する。本実施例において、ダウンロードモジュール150の起動前に、情報処理装置10の電源が既にオン状態である場合、設定部120は、次回の起動日時を、第1の所定日数後の日時に設定する。なおダウンロードモジュール150の起動前は、起動リストに設定されている起動日時またはその直前を意味する。第1の所定日数は、たとえば1日であり、この場合、設定部120は、次回の起動日時を、翌日の起動時刻に設定する。本実施例の自動ダウンロード処理は、ファイルのダウンロード後にインストールすることもあるため、ユーザがゲームをプレイしていないときに実行されるのが好ましい。情報処理装置10の電源がオン状態にある場合、ユーザがゲームプレイ中であったり、またはこれからプレイする可能性が高いため、処理負荷の観点から、ゲームプレイを優先させ、自動ダウンロード処理を実行しないようにする。そのため設定部120は、次回のダウンロードモジュール150の起動日時を、できるだけ早い日時に(たとえば翌日)に設定して、自動ダウンロード処理の機会を待ち受けるようにすることが好ましい。
なお、設定部120は、ダウンロードモジュール150の起動前または起動後の状況により、ダウンロードモジュール150の次回の起動日時を設定するか否かを決定してもよい。設定部120が次回の起動日時を設定しなければ、ユーザが手動で情報処理装置10にダウンロードモジュール150の起動設定を行わない限り、自動ダウンロード処理は、実行されなくなる。
たとえば、ダウンロードモジュール150の起動後に、ダウンロードモジュール150の実行条件が満たされていない場合には、設定部120は、ダウンロードモジュール150の次回の起動日時を設定しない。ダウンロードモジュール150の実行条件が満たされていなければ、将来的にも、ダウンロードモジュール150が実行できない状況が想定されるため、設定部120は、次回の起動日時を設定しないようにする。なお、ダウンロードモジュール150の実行条件とは、情報処理装置10がダウンロードモジュールを実行することで所定のサービスの提供を受けることを許可された端末装置であることが、認証サーバ14において登録されていることであり、具体的には、情報処理装置10から認証サーバ14に送信されるサービスアカウントIDが有効であることである。サービスアカウントIDの有効性は、認証サーバ14に登録されたサービスアカウントIDとの照合判定と、有効期限内での利用であるかの判定に基づいて決定される。判定結果取得部112は、認証サーバ14から、モジュール実行条件の判定結果、すなわちサービスアカウントIDの有効性の判定結果を取得する。判定結果取得部112が、サービスアカウントIDが有効ではないことを示す判定結果を取得すると、設定部120は、その判定結果を受けて、次回の起動日時を設定しない。なお、この場合は、当然のことながら、自動ダウンロード処理は実行されず、ダウンロードモジュール150は終了される。
判定結果取得部112が、サービスアカウントIDが有効であることを示す判定結果を取得すると、ダウンロードモジュール150が、自動ダウンロード処理を実行する。ダウンロードモジュール150の起動前に、情報処理装置10の電源がオフ状態であり、起動制御部122が情報処理装置10を起動した後に、ダウンロードモジュール150を起動した場合には、設定部120は、次回の起動日時を、第2の所定日数後の日時に設定する。第2の所定日数は、第1の所定日数よりも長く、たとえば2日であり、この場合、設定部120は、次回の起動日時を、翌々日の起動時刻に設定する。なお第2の所定日数は、第1の所定日数以上であればよく、同じ日数であってもよい。
情報処理システム1では、自動ダウンロード処理を長時間にわたって継続することは好ましくないというポリシーから、自動ダウンロード処理に制限時間が設定されている。たとえば、この制限時間は3時間と設定され、自動ダウンロード処理は、起動時刻から3時間が経過すると、実行中の処理が完了すると、新規の処理は行わずに強制的に終了される。詳細は後述するが、ダウンロードモジュール150は、ファイル提供サーバ12からダウンロードするファイルを決定した後、決定したファイルをダウンロードし、ダウンロードしたファイルがソフトウェアである場合にはインストール処理を行う。つまりダウンロードモジュール150は、ダウンロードを行う前に、インストール処理も含めた実行予定の処理を決定する。しかしながら、ネットワーク18のトラフィックや、ファイル提供サーバ12の負荷の影響で、設定されている制限時間内に、予定した処理が完了しないこともある。
処理状況取得部114は、予定した処理の実行状況を取得する。たとえば、予定した全ての処理が完了した場合、その時点で、処理状況取得部114は、予定した処理が完了したことを示す情報を取得する。一方で、制限時間内に予定した処理が完了しなかった場合、処理状況取得部114は、予定した処理が完了しなかったことを示す情報を取得する。この情報はフラグ値で表現されてもよい。予定した処理の実行状況が確定し、処理状況取得部114が、確定した処理状況を取得すると、設定部120に供給する。予定した処理が完了していなければ、設定部120は、次回の起動日時を、第1の所定日数後の日時に設定する。設定部120は、翌日を次回起動日とすることで、ダウンロードモジュール150は、翌日に、残った処理を実行できる。予定した処理が完了していれば、設定部120は、通常どおり、次回の起動日時を、第2の所定日数後の日時に設定する。
図6は、タイマ処理のフローチャートを示す。起動制御部122が、現在日時が起動リストに設定された起動日時であるか監視し(S30のN)、起動日時になると(S30のY)、ダウンロードモジュール150を起動する(S32)。システムコントローラ24は、ダウンロードモジュール起動前における情報処理装置10の電源の状態を起動制御部122に通知し、起動制御部122は、その電源の状態情報を、設定部120に供給する(S34)。なおシステムコントローラ24は、設定部120に、直接、ダウンロードモジュール起動前における情報処理装置10の電源の状態を通知してもよい。ダウンロードモジュール150の起動前に、電源が既にオン状態にある場合(S34のN)、設定部120は、次回の起動日時を翌日の時刻に設定して(S42)、ダウンロードモジュール150は、自動ダウンロード処理を実行せずに終了する。
一方、ダウンロードモジュール150の起動前に、電源がオフ状態である場合(S34のY)、情報処理装置10は、認証サーバ14にサインインした後、サービスアカウントIDおよびコンソールIDを送信する。認証サーバ14は、サービスアカウントIDおよびコンソールIDを、登録したサービスアカウントIDおよびコンソールIDと照合判定し、判定結果取得部112が、判定結果を取得する(S36)。サービスアカウントIDが有効でないことを示す判定結果である場合(S36のN)、設定部120は、次回の起動日時を設定せず(S46)、ダウンロードモジュール150は、自動ダウンロード処理を実行せずに終了する。
サービスアカウントIDが有効であることを示す判定結果である場合(S36のY)、ダウンロードモジュール150が、自動ダウンロード処理を開始する(S38)。予定した処理が制限時間内に完了した場合(S40のY)、設定部120は、次回の起動日時を翌々日の時刻に設定する(S44)。一方、予定した処理が制限時間内に完了しなかった場合(S40のN)、設定部120は、次回の起動日時を翌日の時刻に設定する(S42)。
<自動ダウンロード処理>
図7は、情報処理装置10における自動ダウンロード処理を実行するための機能ブロックを示す。メインコントローラ100は、送信部210、調停制御部212、表示処理部230、履歴生成部240、処理部250および決定部270を備える。表示処理部230は、通知部232およびメニュー画面生成部234を有し、履歴生成部240は、起動履歴生成部242および処理履歴生成部244を有する。
図7は、情報処理装置10における自動ダウンロード処理を実行するための機能ブロックを示す。メインコントローラ100は、送信部210、調停制御部212、表示処理部230、履歴生成部240、処理部250および決定部270を備える。表示処理部230は、通知部232およびメニュー画面生成部234を有し、履歴生成部240は、起動履歴生成部242および処理履歴生成部244を有する。
認証情報登録部300は、認証情報を登録して保持する。本実施例では、自動ダウンロード処理を実行する前提として、3段階の認証処理が行われる。第1段階では、情報処理装置10において、ログインIDが認証される。第2段階では、認証サーバ14において、サインインIDとサインインパスワードが認証される。第3段階では、認証サーバ14において、コンソールIDとサービスアカウントIDが認証される。既述したように、サインインIDがサービスアカウントIDとして兼用される場合には、第3段階で、認証サーバ14において、コンソールIDに対応付けて登録されているサインインIDの有効性が判定される。認証情報登録部300は、各段階で認証される認証情報(IDやパスワード)を保持している。
起動履歴保持部308は、ユーザが過去にプレイしたゲームの起動履歴を保持する。起動履歴は、ゲームソフトウェアを特定する識別情報(タイトルID)と、そのゲームソフトウェアの最新の起動日時とを対応付けて作成される。さらに起動履歴は、タイトルIDに、既にダウンロードしているパッチファイルのバージョンを特定するバージョン情報とを対応付けて作成される。したがって、起動履歴では、ゲームソフトウェアのタイトルID、最新の起動日時およびダウンロード済みのパッチバージョン情報とが対応付けられている。
処理履歴保持部310は、インストールされたコンテンツファイルの処理履歴を保持する。処理履歴は、インストールされたデモゲームに対して作成される。具体的に処理履歴は、デモゲームを特定する識別情報(タイトルID)と、自動ダウンロード処理によりダウンロードされたことを示すフラグ情報と、インストールされた日時情報と、プレイ回数とを対応付けて作成される。
図7において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、メインコントローラ100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
本実施例の情報処理装置10は、起動されると、自動ログイン処理および自動サインイン処理を実行する。自動ログイン後、送信部210は、認証情報登録部300に登録されている認証情報(サインインIDとサインインパスワード)を読み出し、インストールしているシステムソフトウェアのバージョン情報とともに、スイッチ36経由で認証サーバ14に送信する。
認証サーバ14は、認証情報およびシステムソフトウェアのバージョン情報を受け取ると、受け取った認証情報と、保持している認証情報とを照合する。これらが一致していれば、サインイン可能な状況が生成される。情報処理装置10でインストールされているシステムソフトウェアがネットワーク機能を利用可能なものであれば、認証サーバ14による認証が受理され、自動サインイン処理が完了する。一方、インストールされているシステムソフトウェアがネットワーク機能を利用できないものであれば、認証サーバ14により認証が拒否され、情報処理装置10は、サービスにサインインできない。なお、この場合、ダウンロード実行部252は、システムソフトウェア提供サーバ12aより、最新のシステムソフトウェアを自動ダウンロードする。
自動サインイン処理の完了後、送信部210は、認証情報登録部300に登録されている認証情報(コンソールIDとサービスアカウントID)を読み出し、スイッチ36経由で認証サーバ14に送信する。認証サーバ14は、認証情報を受け取ると、受け取った認証情報と、保持している認証情報とを照合する。また認証サーバ14は、サービスアカウントIDの有効期限を確認する。認証情報が一致し、サービスアカウントIDの利用が有効期限内のものであれば、認証サーバ14は、情報処理装置10に対して、自動ダウンロード処理の実行許可を発行する。一方、認証情報が一致せず、またはサービスアカウントIDの有効期限が切れていれば、自動ダウンロード処理の終了指示を発行する。情報処理装置10は、実行許可を受信することで、自動ダウンロード処理を実行できる。
決定部270は、バージョン情報取得部272、バージョン情報比較部274、システムソフトウェア特定部276、コンテンツリスト取得部278、ファイルリスト生成部280およびフィルタ処理部282を有し、認証サーバ14による認証処理の後に、ファイル提供サーバ12からダウンロードするファイルを決定する機能を実行する。処理部250は、ダウンロード実行部252、インストール処理部254、アンインストール処理部256および処理状況監視部258を有し、決定部270が決定したファイルを、ファイル提供サーバ12からダウンロードして、インストールする機能を実行する。
自動ダウンロード処理において、バージョン情報取得部272が、システムソフトウェア提供サーバ12aから、最新のシステムソフトウェアのバージョン情報を取得する。ハードディスクドライブ34には、既にダウンロードされているシステムソフトウェア302のバージョン情報が記録されている。バージョン情報比較部274は、取得したバージョン情報と、既にダウンロードされているシステムソフトウェア302のバージョン情報とを比較する。
情報処理装置10は、システムソフトウェア302をダウンロードしても、ユーザの承認がなければ、インストールしないように設定されている。つまり、自動ダウンロード処理において、過去に最新のシステムソフトウェア302がダウンロードされていても、ユーザが承認しなければ、インストールされない。一方で、既に最新のシステムソフトウェア302がダウンロードされていれば、再度、そのシステムソフトウェア302をダウンロードする必要もない。そこで、バージョン情報比較部274は、インストールされているシステムソフトウェアのバージョン情報ではなく、ダウンロードされているシステムソフトウェア302のバージョン情報を、システムソフトウェア提供サーバ12aから取得したバージョン情報と比較し、システムソフトウェア提供サーバ12aに保持されている最新のシステムソフトウェアがダウンロード済みであるか判定する。
バージョン情報比較部274により、最新のシステムソフトウェア302がダウンロード済みであることが判定されると、システムソフトウェアのダウンロード処理は行われない。一方で、バージョン情報比較部274により、システムソフトウェア提供サーバ12aから取得したバージョン情報の方が新しいことが判定されると、システムソフトウェア特定部276が、ダウンロードするべきシステムソフトウェアのバージョン情報を、取得したバージョン情報に設定する。システムソフトウェア特定部276は、設定したシステムソフトウェアのバージョン情報をダウンロード実行部252に渡し、ダウンロード実行部252は、システムソフトウェア提供サーバ12aから、最新バージョンのシステムソフトウェアをダウンロードする。なお、既述したとおり、ダウンロードされたシステムソフトウェアは、自動的にインストール処理されることはなく、インストール処理にはユーザの承認が必要となる。以上により、システムソフトウェアのダウンロード処理が終了する。
続いて、アンインストール処理部256が、過去にインストールされたコンテンツファイル、具体的にはデモゲームソフトウェアのアンインストール処理を行う。処理履歴保持部310は、インストールされたデモゲームソフトウェアの処理履歴を保持している。なお処理履歴保持部310は、インストールされた全てのゲームソフトウェアの過去の処理情報を保持しており、アンインストール処理部256は、複数の処理履歴の中から、自動ダウンロード処理によりダウンロードされたことを示すフラグ情報を参照して、デモゲームソフトウェアの処理情報を特定する。
図8は、処理履歴保持部310に保持される処理履歴の一例を示す。処理履歴は、ゲームソフトウェアを特定する識別情報(タイトルID)と、自動ダウンロード処理によりダウンロードされたか否かを示すフラグ値と、インストールされた日時情報と、プレイ回数とを対応付けて作成される。フラグ値“1”は、自動ダウンロード処理によりダウンロードされたことを示す情報であり、フラグ値“0”は、手動によるダウンロード処理によりダウンロードされたことを示す情報である。インストール日時は、情報処理装置10にインストールされた日時を示す。プレイ回数は、インストール後にユーザによりプレイされた回数を示す。処理履歴生成部244は、ゲームソフトウェアがインストールされると、処理履歴を生成し、プレイされると、プレイ回数を更新する。
アンインストール処理部256は、処理履歴に示される処理情報を参照して、インストールされたゲームソフトウェアをアンインストールする。具体的にアンインストール処理部256は、フラグ値“1”を設定されたゲームソフトウェアのうち、プレイ回数が0回であって、現在日時がインストール日時から所定期間経過したゲームソフトウェアをアンインストールする。所定期間は、たとえば1ヶ月に設定されてよい。自動ダウンロード処理によりインストールされたデモゲームが、1ヶ月の間、プレイされていない事実から、ユーザは、将来的に、このデモゲームをプレイしないことが予想される。不要なデモゲームをハードディスクドライブ34にインストールしておくことは、記憶容量の無駄な利用であるため、アンインストール処理部256は、このようなデモゲームをアンインストールする。これにより、ハードディスクドライブ34の記憶容量を有効に利用できるようになる。なお、アンインストール処理部256によるアンインストール処理は、これから説明するダウンロード実行部252によるダウンロード処理の実行前に行われることが好ましい。これにより、ダウンロード処理の前に、無用なゲームを削除して、記憶容量を拡張することができる。
なおアンインストール処理部256は、ゲームだけでなく、ゲームトレーラもハードディスクドライブ34から削除してもよい。この場合、処理履歴保持部310は、ゲームトレーラを特定する識別情報と、自動ダウンロード処理によりダウンロードされたか否かを示すフラグ値と、ダウンロードされた日時情報と、再生回数とを対応付けた処理履歴を作成する。再生回数は、ユーザにより視聴された回数である。アンインストール処理部256は、フラグ値“1”を設定されたゲームトレーラのうち、再生回数が0回であって、現在日時がダウンロード日時から所定期間経過したゲームトレーラをハードディスクドライブ34から削除する。
アンインストール処理の完了後、ファイルリスト生成部280は、ファイル提供サーバ12からダウンロードする、アプリケーションに関連するファイルを決定する。ここで、アプリケーションの関連ファイルは、パッチファイル提供サーバ12bにより提供されるパッチファイルと、コンテンツファイル提供サーバ12cにより提供されるコンテンツファイルであり、アプリケーションに関連しないシステムソフトウェアは含まれない。ファイルリスト生成部280は、システムソフトウェアのダウンロード処理の後、すなわちバージョン情報比較部274により、ダウンロード済みのシステムソフトウェアのバージョン情報と、システムソフトウェア提供サーバ12aが保持するシステムソフトウェアのバージョン情報との比較が行われた後に、ダウンロードする関連ファイルを決定する。ダウンロード実行部252は、決定した関連ファイルをダウンロードする。
具体的にファイルリスト生成部280は、起動履歴保持部308に保持されている起動履歴を参照して、ダウンロードする関連ファイルを決定する。ファイルリスト生成部280は、ダウンロードする関連ファイルのリストを生成する。このリストは、ダウンロードを予定するキューとして利用される。
図9は、起動履歴保持部308に保持される起動履歴の一例を示す。起動履歴は、ゲームソフトウェアを特定する識別情報(タイトルID)と、ゲームソフトウェアの最新起動日時情報と、ダウンロード済みのパッチファイルのバージョンを特定するバージョン情報とを対応付けて作成される。最新起動日時は、そのゲームソフトウェアが最後に起動された日時を示す。パッチバージョン情報は、既にダウンロードされているパッチファイルの最新のバージョン情報を示す。
起動履歴生成部242は、ゲームの最新の起動日時をもとに、所定のゲーム数を上限とする起動履歴を生成する。たとえば起動履歴が作成されるゲーム数の上限は、32個であり、この場合、起動履歴生成部242は、過去に起動された、最大で32個のゲームタイトルの起動履歴を生成する。32個のゲームタイトルの起動履歴が生成されている場合に、新たなゲームが起動されると、最も古い日時に起動されたゲームタイトルの起動履歴は削除され、新たなゲームタイトルの起動履歴に置き換えられる。
アンインストール処理部256が、ゲームソフトウェアをアンインストールすると、起動履歴生成部242は、アンインストールされたゲームソフトウェアの起動履歴を削除する。起動履歴は、ファイルリスト生成部280により、ダウンロードする関連ファイルの選定に利用されるため、アンインストールされたゲームソフトウェアの起動履歴を削除することで、アンインストールされたゲームソフトウェアのパッチファイルがダウンロードされる事態を回避する。なお、本実施例の自動ダウンロード処理において、アンインストール処理部256は、処理履歴に示される処理情報を参照して、自動でゲームソフトウェアをアンインストールするが、ユーザからの指示を受けて、指定されたゲームソフトウェアをアンインストールする機能ももつ。このときも起動履歴生成部242は、ユーザ指示によりアンインストールされたゲームソフトウェアの起動履歴を削除することが好ましい。
ファイルリスト生成部280は、設定された上限数の範囲内でゲームソフトウェアを選定することで、ダウンロードするパッチファイルを決定する。上限数を設定するのは、自動ダウンロード処理を制限時間内に完了させるためであり、この上限数は、たとえば3個である。つまり、ダウンロードするパッチファイルのゲーム数は、最大で3つとなる。ファイルリスト生成部280は、ゲームソフトウェアを選定して、ダウンロードするべきパッチファイルを決定する。なお、1つのゲームソフトウェアに対して、ダウンロード対象となるパッチファイルが複数存在してもよく、したがって、ダウンロードするパッチファイルの数は、ゲームソフトウェアの上限数を超えてもよい。
決定部270は、起動履歴を参照して、ダウンロードするパッチファイルのゲームの候補を、最新起動日時が現在日時に近いものから順に設定し、その順序にしたがって、上限数の範囲内で、ゲームソフトウェアを選定する。具体的には、バージョン情報取得部272が、起動履歴において、最新起動日時が現在日時に近いものから順に、ダウンロードするパッチファイルのゲームの候補として設定する。バージョン情報比較部274は、設定した順序にしたがって、パッチファイル提供サーバ12bに、ダウンロードするべきパッチファイルの存在の有無を確認し、まだダウンロードしていないパッチファイルが存在すれば、ファイルリスト生成部280が、そのパッチファイルをダウンロード対象として決定する。
バージョン情報取得部272は、パッチファイル提供サーバ12bから、最新起動日時が現在日時に最も近いゲームタイトルの最新パッチバージョン情報を取得する。バージョン情報比較部274は、取得した最新バージョン情報と、起動履歴に記録されているパッチバージョン情報とを比較して、ファイル提供サーバ12bに、まだダウンロードしていないパッチファイルが存在しているか判定する。起動履歴に記録されているバージョン情報よりも新しいバージョン情報で特定されるパッチファイルがパッチファイル提供サーバ12bに保持されていれば、ファイルリスト生成部280は、そのパッチファイルをダウンロード対象として決定する。一方で、最新のパッチファイルがダウンロード済みであれば、バージョン情報取得部272は、最新起動日時が現在日時に2番目に近いゲームタイトルの最新パッチバージョン情報を取得し、バージョン情報比較部274が、起動履歴に記録されているパッチバージョン情報と比較する。以下、この処理を繰り返し、ファイルリスト生成部280が、上限数(3つ)のゲームソフトウェアを選定すると、または、バージョン情報比較部274が、全ゲームのパッチバージョン情報の比較処理を終了すると、パッチファイルのファイルリストが完成する。
パッチファイルのファイルリストが完成すると、決定部270は、コンテンツファイルについてのファイルリストの生成を開始する。コンテンツリスト取得部278が、コンテンツファイル提供サーバ12cから、ダウンロード可能なコンテンツファイルのリストを取得する。コンテンツリストには、デモゲームソフトウェアのタイトルIDや、ゲームトレーラの保存先を示すURLなどの情報が含まれている。フィルタ処理部282は、処理履歴保持部310に保持される処理履歴を参照して、コンテンツリストから、所定のコンテンツを除外する。
図10は、処理履歴保持部310に保持される処理履歴の一例を示す。処理履歴保持部310は、図8に示す処理履歴の他に、図10に示す処理履歴も保持している。なお、図8に示す処理履歴と、図10に示す処理履歴とは、1つのデータベースにまとめて生成されてもよい。図10に示す処理履歴は、アプリケーションに関する処理情報を含み、ゲームソフトウェアを特定する識別情報(タイトルID)と、過去にインストールしたことがあるか否かを示すフラグ値と、製品版ソフトウェアを過去にインストールしたことがあるか否かを示すフラグ値と、ユーザが過去に製品版ソフトウェアをプレイしたことがあるか否かを示すフラグ値とを対応付けて作成される。この処理履歴は、デモゲームソフトウェアに対して作成される。
この処理履歴において、項目「インストール済み」のフラグ値“1”は、過去にインストールしたことがあることを示す情報であり、フラグ値“0”は、過去にインストールしたことがないことを示す情報である。なお、過去にインストールしたことがあるとは、現在、アンインストールされている場合も含む。項目「製品版をインストール済み」のフラグ値“1”は、過去に製品版ソフトウェアをインストールしたことがあることを示す情報であり、フラグ値“0”は、過去に製品版ソフトウェアをインストールしたことがないことを示す情報である。項目「製品版をプレイしたことがある」のフラグ値“1”は、過去にユーザが製品版ソフトウェア、たとえばROM媒体50に記録された製品版ソフトウェアをプレイしたことがあることを示す情報であり、フラグ値“0”は、ユーザが製品版ソフトウェアをプレイしたことがないことを示す情報である。
フィルタ処理部282は、コンテンツリストと、図10に示す処理情報とを比較して、コンテンツリストに含まれるコンテンツファイルのうち、処理履歴においてフラグ値が1に設定されているものがあれば、そのコンテンツファイルを除外するフィルタ処理を行い、フィルタ処理結果をファイルリスト生成部280に渡す。また、図示していないが、処理履歴保持部310は、過去にダウンロードしたゲームトレーラの保存先を示すURLリストも保持している。フィルタ処理部282は、コンテンツリストに含まれるURLと、ダウンロード済みのURLリストとを比較して、コンテンツリストに含まれるURLのうち、URLリストに含まれるものがあれば、そのURLをコンテンツリストから除外するフィルタ処理を行い、フィルタ処理結果をファイルリスト生成部280に渡す。
ファイルリスト生成部280は、所定の条件を満たすコンテンツファイル、すなわちフィルタ処理により残ったコンテンツリストに含まれるコンテンツファイルを、ダウンロード対象として決定する。以上により、ファイルリスト生成部280は、ダウンロードするパッチファイルと、コンテンツファイルを特定したリストを生成する。
ダウンロード実行部252は、ファイルリスト生成部280により生成されたリストに含まれるパッチファイル304およびコンテンツファイル306をダウンロードする。ダウンロード実行部252は、ダウンロード予定のファイルを特定するリストを生成した後に、リストに含まれるファイルをまとめてダウンロードすることで、トータルの処理時間を短縮できる。ダウンロード実行部252が、リストに含まれるパッチファイル304をダウンロードすると、起動履歴生成部242が、起動履歴保持部308に保持されるパッチバージョン情報を、ダウンロードしたパッチバージョン情報に更新する。
インストール処理部254は、ダウンロードした関連ファイルのうち、パッチファイルおよびデモゲームソフトウェアをインストールする。インストール処理部254は、ダウンロード実行部252がリストに含まれる全てのファイルをダウンロードした後に、ダウンロードしたファイルをインストールする。ダウンロードモジュール150の実行には、たとえば3時間の制限時間が設定されているが、もし制限時間内にインストール処理が完了しなくても、ファイルのダウンロードを完了しておくことで、次回起動時に、インストール処理のみを行えばよい状況を生成できる。
調停制御部212は、情報処理装置10におけるモジュールの実行状況を監視する。調停制御部212は、ダウンロード実行部252によるダウンロード処理の終了時に、ダウンロードモジュール150以外のモジュールが実行されているか判定する。他のモジュールが実行されていれば、調停制御部212は、インストール処理部254によるダウンロードファイルのインストール処理を停止させる。また、インストール処理部254によるインストール処理時に、他のモジュールが起動した場合、調停制御部212は、当該ファイルのインストールが完了すると、続くファイルのインストール処理は停止させる。
処理状況監視部258は、ダウンロード実行部252によるダウンロード処理およびインストール処理部254によるインストール処理の状況を監視する。処理状況監視部258は、制限時間内に、予定された全ての処理が完了するか監視している。処理状況監視部258は、予定した処理の状況が確定すると、その処理状況を、図4に示す処理状況取得部114に供給する。具体的に処理状況監視部258は、インストール処理が完了すると、予定した処理を全て完了したことを示す情報を処理状況取得部114に供給し、一方で、ダウンロード処理またはインストール処理の完了前に制限時間が経過すると、予定した処理が完了しなかったことを示す情報を処理状況取得部114に供給する。なお、ダウンロード処理が中断されると、ファイルリスト生成部280は、ダウンロードを完了していないファイルをリスト(キュー)に残し、翌日のファイルリスト生成に利用する。
なおパッチファイル304には2種類のパッチが存在する。差分パッチは、前回のパッチの差分のみを含むパッチであり、したがって全てのバージョンの差分パッチを当てることで、ゲームソフトウェアは最新の状態となる。また、累積パッチは、いわば全てのバージョンの差分パッチを集約したパッチであり、したがって1つの累積パッチを当てれば、ゲームソフトウェアは最新の状態となる。ファイルリスト生成部280は、ダウンロードを完了していないファイルに差分パッチが含まれている場合、翌日に、さらに新たなバージョンの差分パッチがダウンロード可能となっていれば、その新たなバージョンの差分パッチもリストに含めるようにする。またファイルリスト生成部280は、ダウンロードを完了していないファイルに累積パッチが含まれている場合、翌日に、新たな累積パッチがダウンロード可能となっていれば、リストから、前日にダウンロードできなかった累積パッチを外し、新たな累積パッチをリストに含めるようにする。
情報処理装置10において、メニュー画面生成部234は、情報処理装置10において実行可能な処理を特定する複数のアイコン画像を縦方向および横方向にクロス配列したメニュー画面を生成し、出力処理部200に供給する。メニュー画面生成部234は、インストールしたファイルを特定する画像を表示するメニュー画面を生成する。
図11は、メニュー画面の一例を示す。ユーザは、入力装置40を操作して所望のアイコンを選択領域320の位置までスクロールさせて動かすことで、アイコンを選択操作し、また決定操作できる。ここで選択操作とは、アイコンを選択領域320に移動することであり、決定操作とは、選択領域320に位置するアイコンに対して、ボタンなどを操作することにより、そのアイコンに対応付けられた処理を実行させることをいう。
メニュー画面生成部234は、ダウンロードモジュール150の実行中にインストールされたコンテンツファイルを特定する画像の表示態様を、標準の表示態様と異ならせるメニュー画面を生成する。図11に示すメニュー画面では、自動ダウンロード処理によりインストールされたアイコンに、マーク330が付加される。マーク330を付加することで、ユーザは、コンテンツファイルが自動ダウンロードされたものであることを認識する。情報処理装置10においては、ユーザが所定期間(たとえば1ヶ月)、自動ダウンロードされたデモゲームなどをプレイしなければ、そのデモゲームは、アンインストール処理部256により自動アンインストールされる。ユーザは、マーク330を確認することで、プレイしなければ、自動アンインストールの対象となるデモゲームであることを知ることができる。なお、デモゲームがプレイされた場合、またゲームトレーラが再生された場合には、メニュー画面生成部234は、マーク330を付加しない。メニュー画面生成部234は、図8に示す処理履歴保持部310に保持された処理履歴を参照して、マーク330を付加するか否かを決定する。
実施例において、自動ダウンロード処理機能を設定する(すなわちダウンロードモジュール150を起動する)ために、自動サインイン機能が設定されている必要があることを説明した。そのため、ユーザが自動ダウンロード処理機能を情報処理装置10に設定する際、認証情報登録部300に、自動サインインの認証情報が登録されていない場合、または自動サインインの設定がされていない場合には、通知部232が、ユーザに対して所定の通知を行う。通知部232は、「自動ダウンロードサービスの提供には、自動サインインの設定が必要である」旨のメッセージを生成し、出力処理部200から表示機器60に表示する。これによりユーザに対して、自動サインインの設定を行わせる契機を与えることができる。なお、自動ログイン機能が設定されていない場合も同様である。
また、自動ダウンロード処理機能が既に設定された状態において、自動サインイン機能または自動ログイン機能の設定が解除されると、自動ダウンロード処理機能は実行されなくなる。そのため、自動ダウンロード処理機能の設定状態において、ユーザが、自動サインイン機能または自動ログイン機能の設定を解除すると、通知部232は、たとえば「自動サインインの設定が解除されたため、自動ダウンロードサービスの提供が受けられなくなる」旨のメッセージを生成し、出力処理部200から表示機器60に表示する。このように通知部232が警告をだすことで、ユーザは、意図に反して、自動ダウンロードが実行されなくなる事態を回避できる。なお、認証情報登録部300に登録された認証情報が変更されるような場合にも、通知部232は、同様の警告を生成する。
図12は、自動ダウンロード処理のフローチャートを示す。バージョン情報比較部274が、システムソフトウェア提供サーバ12aに保持されているシステムソフトウェアの最新のバージョン情報と、既にダウンロードされているシステムソフトウェア302のバージョン情報とを比較する。ダウンロード実行部252は、システムソフトウェア提供サーバ12aが保持するシステムソフトウェアの方が新しければ、システムソフトウェア提供サーバ12aからシステムソフトウェアをダウンロードする(S60)。
続いて、アンインストール処理部256が、処理履歴に示される処理情報を参照して、インストール後、所定期間実行されていないゲームソフトウェアをアンインストールする(S62)。ファイルリスト生成部280は、ダウンロードするファイルのリストを生成し(S64)、ダウンロード実行部252は、リストに含まれるファイルを、ファイル提供サーバ12からダウンロードする(S66)。インストール処理部254は、ダウンロードしたソフトウェアを、インストールする(S68)。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
1・・・情報処理システム、10・・・情報処理装置、12・・・ファイル提供サーバ、12a・・・システムソフトウェア提供サーバ、12b・・・パッチファイル提供サーバ、12c・・・コンテンツファイル提供サーバ、14・・・認証サーバ、18・・・ネットワーク、26・・・クロック、34・・・ハードディスクドライブ、60・・・表示機器、100・・・メインコントローラ、102・・・メインメモリ、110・・・入力受付部、112・・・判定結果取得部、114・・・処理状況取得部、120・・・設定部、122・・・起動制御部、130・・・起動リスト保持部、150・・・ダウンロードモジュール、200・・・出力処理部、210・・・送信部、212・・・調停制御部、230・・・表示処理部、232・・・通知部、234・・・メニュー画面生成部、240・・・履歴生成部、242・・・起動履歴生成部、244・・・処理履歴生成部、250・・・処理部、252・・・ダウンロード実行部、254・・・インストール処理部、256・・・アンインストール処理部、258・・・処理状況監視部、270・・・決定部、272・・・バージョン情報取得部、274・・・バージョン情報比較部、276・・・システムソフトウェア特定部、278・・・コンテンツリスト取得部、280・・・ファイルリスト生成部、282・・・フィルタ処理部、300・・・認証情報登録部、302・・・システムソフトウェア、304・・・パッチファイル、306・・・コンテンツファイル、308・・・起動履歴保持部、310・・・処理履歴保持部
Claims (13)
- アプリケーションの起動履歴を保持する第1保持部と、
起動履歴を参照して、サーバからダウンロードする、アプリケーションに関連するファイルを決定する決定部と、
決定した関連ファイルをダウンロードする処理部と、
を備えることを特徴とする情報処理装置。 - 前記保持部は、アプリケーションを特定する識別情報と、そのアプリケーションの最新の起動日時とを対応付けた起動履歴を保持しており、
前記決定部は、起動日時を参照して、ダウンロードする関連ファイルを決定することを特徴とする請求項1に記載の情報処理装置。 - 前記決定部は、設定された上限数の範囲内でアプリケーションを選定することで、ダウンロードする関連ファイルを決定することを特徴とする請求項1または2に記載の情報処理装置。
- ダウンロードする関連ファイルの数は、設定された上限数を超えてよいことを特徴とする請求項3に記載の情報処理装置。
- 前記決定部は、ダウンロードする関連ファイルのアプリケーションの候補を、起動日時が現在日時に近いものから順に設定し、その順序にしたがって、上限数の範囲内で、関連ファイルのアプリケーションを選定することを特徴とする請求項3または4に記載の情報処理装置。
- 前記決定部は、設定した順序に基づいて、サーバに、ダウンロードするべき関連ファイルの存在の有無を確認し、関連ファイルが存在すれば、その関連ファイルをダウンロード対象として決定することを特徴とする請求項5に記載の情報処理装置。
- 関連ファイルは、アプリケーションのパッチファイルであって、
前記保持部は、アプリケーションを特定する識別情報と、既にダウンロードしているパッチファイルのバージョンを特定するバージョン情報とを対応付けた起動履歴を保持しており、
前記決定部は、起動履歴に記録されているバージョン情報よりも、新しいバージョン情報で特定されるパッチファイルが前記サーバに保持されている場合に、そのアプリケーションのパッチファイルをダウンロードすることを決定することを特徴とする請求項1から6のいずれかに記載の情報処理装置。 - 前記処理部が、前記決定部により決定されたパッチファイルをダウンロードすると、起動履歴に含まれるパッチファイルのバージョン情報が、ダウンロードしたパッチファイルのバージョン情報に更新されることを特徴とする請求項7に記載の情報処理装置。
- 前記起動履歴を生成する履歴生成部をさらに備え、
前記履歴生成部は、アプリケーションの最新の起動日時をもとに、所定のアプリケーション数を上限とする起動履歴を生成することを特徴とする請求項1から8のいずれかに記載の情報処理装置。 - 前記履歴生成部は、アプリケーションがアンインストールされると、アンインストールされたアプリケーションの起動履歴を削除することを特徴とする請求項9に記載の情報処理装置。
- アプリケーションに関する処理情報を保持する第2保持部と、
サーバから、ダウンロード可能な関連ファイルのリストを取得する取得部と、
前記決定部は、取得したリストと、処理情報とを比較して、所定の条件を満たす関連ファイルを、ダウンロード対象として決定することを特徴とする請求項1から10のいずれかに記載の情報処理装置。 - コンピュータに、
保持部に保持されたアプリケーションの起動履歴を参照して、サーバからダウンロードする、アプリケーションに関連するファイルを決定する機能と、
決定した関連ファイルをダウンロードする機能と、
を実現させるためのプログラム。 - 請求項12に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010134425A JP2011258141A (ja) | 2010-06-11 | 2010-06-11 | 情報処理装置 |
US13/117,820 US8750147B2 (en) | 2010-06-11 | 2011-05-27 | Information processing device for determining related files for download |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010134425A JP2011258141A (ja) | 2010-06-11 | 2010-06-11 | 情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011258141A true JP2011258141A (ja) | 2011-12-22 |
Family
ID=45097146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010134425A Pending JP2011258141A (ja) | 2010-06-11 | 2010-06-11 | 情報処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8750147B2 (ja) |
JP (1) | JP2011258141A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101349749B1 (ko) * | 2012-01-06 | 2014-01-14 | (주)네오위즈게임즈 | 배포 서버, 배포 서버의 패치 파일 배포 방법, 단말, 및 단말의 업데이트 방법 |
JP2014236240A (ja) * | 2013-05-30 | 2014-12-15 | ブラザー工業株式会社 | 画像処理装置および画像処理システム |
JP2015170079A (ja) * | 2014-03-06 | 2015-09-28 | 株式会社日本総合研究所 | プログラム管理装置および方法,ならびにプログラム管理装置を制御するプログラム |
JP2016507811A (ja) * | 2012-12-21 | 2016-03-10 | マイクロソフト テクノロジー ライセンシング,エルエルシー | コンピュータ記憶媒体及び先取り方法 |
US9710662B2 (en) | 2013-04-30 | 2017-07-18 | Brother Kogyo Kabushiki Kaisha | Image processing apparatus automatically requesting permission to use server |
JP2017167767A (ja) * | 2016-03-15 | 2017-09-21 | 株式会社コナミデジタルエンタテインメント | ゲーム対応情報処理システムおよびプログラム |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5063746B2 (ja) * | 2010-06-11 | 2012-10-31 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
JPWO2014054179A1 (ja) * | 2012-10-05 | 2016-08-25 | 富士通株式会社 | 情報処理装置、システム、方法及びプログラム |
US10530660B2 (en) | 2015-05-21 | 2020-01-07 | International Business Machines Corporation | Application bundle preloading |
US10152516B2 (en) | 2015-05-21 | 2018-12-11 | International Business Machines Corporation | Managing staleness latency among application bundles |
US9965262B2 (en) * | 2015-05-21 | 2018-05-08 | International Business Machines Corporation | Application bundle pulling |
US10389794B2 (en) | 2015-05-21 | 2019-08-20 | International Business Machines Corporation | Managing redundancy among application bundles |
US10389850B2 (en) | 2015-05-21 | 2019-08-20 | International Business Machines Corporation | Managing redundancy among application bundles |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002335186A (ja) * | 2001-01-25 | 2002-11-22 | Toshiba Corp | 複数の無線通信システムに対応可能な無線通信装置 |
JP2004185114A (ja) * | 2002-11-29 | 2004-07-02 | Ntt Docomo Inc | ダウンロードシステム、通信端末、サーバ、ダウンロード方法 |
JP2006202028A (ja) * | 2005-01-20 | 2006-08-03 | Canon Inc | プログラム管理システムとその制御方法、ならびに記憶媒体 |
JP2007226740A (ja) * | 2006-02-27 | 2007-09-06 | Kyocera Corp | 通信システム、ソフトウェア更新方法、通信装置、管理サーバ装置、およびプログラム |
JP2008042484A (ja) * | 2006-08-04 | 2008-02-21 | Matsushita Electric Ind Co Ltd | コンテンツ受信装置、携帯端末、コンテンツ受信システム及び課金管理方法 |
JP2009104433A (ja) * | 2007-10-24 | 2009-05-14 | Hitachi Software Eng Co Ltd | 更新プログラム配信システム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000222296A (ja) | 1999-01-29 | 2000-08-11 | Sharp Corp | ファイルダウンロード方法、情報機器、及びコンピュータ読み取り可能な記録媒体 |
JP3898475B2 (ja) | 2001-08-21 | 2007-03-28 | 株式会社エヌ・ティ・ティ・ドコモ | コンテンツ配信方法および配信サーバ |
CN100454268C (zh) * | 2005-01-17 | 2009-01-21 | 松下电器产业株式会社 | 程序执行装置 |
JP4459215B2 (ja) | 2006-11-09 | 2010-04-28 | 株式会社ソニー・コンピュータエンタテインメント | ゲーム装置および情報処理装置 |
US8458115B2 (en) * | 2010-06-08 | 2013-06-04 | Microsoft Corporation | Mining topic-related aspects from user generated content |
-
2010
- 2010-06-11 JP JP2010134425A patent/JP2011258141A/ja active Pending
-
2011
- 2011-05-27 US US13/117,820 patent/US8750147B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002335186A (ja) * | 2001-01-25 | 2002-11-22 | Toshiba Corp | 複数の無線通信システムに対応可能な無線通信装置 |
JP2004185114A (ja) * | 2002-11-29 | 2004-07-02 | Ntt Docomo Inc | ダウンロードシステム、通信端末、サーバ、ダウンロード方法 |
JP2006202028A (ja) * | 2005-01-20 | 2006-08-03 | Canon Inc | プログラム管理システムとその制御方法、ならびに記憶媒体 |
JP2007226740A (ja) * | 2006-02-27 | 2007-09-06 | Kyocera Corp | 通信システム、ソフトウェア更新方法、通信装置、管理サーバ装置、およびプログラム |
JP2008042484A (ja) * | 2006-08-04 | 2008-02-21 | Matsushita Electric Ind Co Ltd | コンテンツ受信装置、携帯端末、コンテンツ受信システム及び課金管理方法 |
JP2009104433A (ja) * | 2007-10-24 | 2009-05-14 | Hitachi Software Eng Co Ltd | 更新プログラム配信システム |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101349749B1 (ko) * | 2012-01-06 | 2014-01-14 | (주)네오위즈게임즈 | 배포 서버, 배포 서버의 패치 파일 배포 방법, 단말, 및 단말의 업데이트 방법 |
JP2016507811A (ja) * | 2012-12-21 | 2016-03-10 | マイクロソフト テクノロジー ライセンシング,エルエルシー | コンピュータ記憶媒体及び先取り方法 |
US9710662B2 (en) | 2013-04-30 | 2017-07-18 | Brother Kogyo Kabushiki Kaisha | Image processing apparatus automatically requesting permission to use server |
JP2014236240A (ja) * | 2013-05-30 | 2014-12-15 | ブラザー工業株式会社 | 画像処理装置および画像処理システム |
JP2015170079A (ja) * | 2014-03-06 | 2015-09-28 | 株式会社日本総合研究所 | プログラム管理装置および方法,ならびにプログラム管理装置を制御するプログラム |
JP2017167767A (ja) * | 2016-03-15 | 2017-09-21 | 株式会社コナミデジタルエンタテインメント | ゲーム対応情報処理システムおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US8750147B2 (en) | 2014-06-10 |
US20110307582A1 (en) | 2011-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5465099B2 (ja) | 情報処理装置 | |
JP2011258141A (ja) | 情報処理装置 | |
JP5063746B2 (ja) | 情報処理装置 | |
US10296319B2 (en) | Information processing terminal, information processing system, computer-readable storage medium having stored thereon information processing program, and information processing method | |
US8949205B2 (en) | Information processing apparatus for processing application software and a patch file | |
US20170048117A1 (en) | Information processing device and method of displaying download progress state | |
US20140201209A1 (en) | Information processing device and method for managing file | |
US9729670B2 (en) | Information processing system and content download method | |
JP6396365B2 (ja) | 情報処理システム、情報処理装置およびデータ取得方法 | |
JP2014142935A (ja) | 情報処理装置 | |
JP2010088825A (ja) | ゲーム装置および情報処理装置 | |
US20100005502A1 (en) | Digital broadcast receiving apparatus and control method and program for the same | |
US11848033B2 (en) | Information processing device and file recording method | |
JP2012146241A (ja) | ソフトウェアアップデート方法、ソフトウェアアップデート装置、及びソフトウェアアップデートプログラム | |
JP2006018359A (ja) | クライアントサーバシステム、クライアント端末、更新情報提供サーバ、更新処理プログラム、及び更新情報提供プログラム | |
US11400380B2 (en) | Information processing apparatus and download processing method | |
JP2019121298A (ja) | 情報処理装置及びプログラム | |
JP5682467B2 (ja) | 設定情報管理プログラム、設定情報管理方法及び情報処理装置 | |
WO2020203669A1 (ja) | 情報処理装置およびインストール方法 | |
JP2007133601A (ja) | ソフトウェアパッケージ、システム管理装置および車載用情報機器 | |
WO2023218625A1 (ja) | 情報処理装置およびパッチファイルのダウンロード方法 | |
JP7316078B2 (ja) | 情報処理装置および機能実行方法 | |
WO2020246378A1 (ja) | 情報処理装置およびアプリケーション実行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120709 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120807 |