(57)【特許請求の範囲】
【請求項１】
保護情報を処理する情報処理装置であって、
前記情報処理装置内で動作するプロセスを管理するプロセス管理部と、
前記保護情報へのアクセスを検出するアクセス検出部とを備え、
前記プロセス管理部は、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス以外のその他の各プロセスの動作を一時的に停止させる実行制御部を備え、
前記保護情報にアクセスする前記プロセスは、前記その他の各プロセスが停止される間に、前記その他の各プロセスに含まれる通信先のプロセスとの間での通信を行い、前記通信を検出して、検出した時に、前記通信先のプロセスを識別するプロセス識別子を前記実行制御部へ通知する通信検出部を備え、
前記実行制御部は、通知される前記プロセス識別子により識別される前記通信先のプロセスを、通知される前にのみ停止させ、通知された後には動作させる
情報処理装置。
【請求項２】
前記プロセス管理部が管理するプロセスのリストであるプロセスリストを管理するプロセスリスト管理部を備え、
前記実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、管理される前記プロセスリストを、前記保護情報へのアクセスをする前記プロセスのみが含まれるプロセスリストに変更させることで、前記その他の各プロセスの動作を、一時的に停止させる
請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置は、さらに、
プロセスによる、リソースへのアクセスを制限するアクセス制限部を備え、
前記通信検出部は、前記通信を検出した時に、前記通信先のプロセスを識別する前記プロセス識別子を、前記アクセス制限部へ通知して、前記通信先のプロセスによる、前記リソースへのアクセスを制限させる
請求項１に記載の情報処理装置。
【請求項４】
前記実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、管理される前記プロセスリストを、前記その他の各プロセスを何れも含まないプロセスリストに変更させることで、前記その他の各プロセスの動作を一時的に停止させる
請求項２に記載の情報処理装置。
【請求項５】
前記情報処理装置は、さらに、
不揮発性記憶装置を備え、
前記実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、検出される前記アクセスが開始する際に、前記その他の各プロセスの状態を、前記不揮発性記憶装置へ退避し、前記その他の各プロセスの動作を停止させると共に、検出される前記アクセスが終了する際に、前記不揮発性記憶装置へ退避した前記状態を復帰することで、前記その他の各プロセスの動作を、再び起動させる
請求項１に記載の情報処理装置。
【請求項６】
前記プロセス管理部は、１つ以上の第１のプロセスと、バックグラウンドで動作する第２のプロセスとを管理し、
前記実行制御部は、前記アクセスが検出された時に、前記その他の各プロセスとして、前記１つ以上の第１のプロセスを停止させ、前記アクセスが検出された時でも、前記アクセスを行う前記プロセスと共に、前記第２のプロセスを動作させる
請求項１に記載の情報処理装置。
【請求項７】
前記実行制御部は、前記アクセスが検出されない時には、前記情報処理装置に、マルチプロセスでの動作をさせ、検出される時には、シングルプロセスでの動作をさせる
請求項１に記載の情報処理装置。
【請求項８】
情報処理装置が、保護情報を処理する情報処理方法であって、
前記情報処理装置内で動作するプロセスを管理するプロセス管理ステップと、
前記保護情報へのアクセスを検出するアクセス検出ステップとを含み、
前記プロセス管理ステップでは、前記アクセス検出ステップで、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス以外のその他の各プロセスの動作を一時的に停止させる実行制御ステップを含み、
前記保護情報へのアクセスをするプロセスは、前記その他の各プロセスが停止される間に、前記その他の各プロセスに含まれる通信先のプロセスとの間での通信を行い、前記通信を検出して、検出した時に、前記通信先のプロセスを識別するプロセス識別子を前記実行制御ステップへ通知する通信検出ステップを含み、
前記実行制御ステップでは、通知される前記プロセス識別子により識別される前記通信先のプロセスを、通知される前にのみ停止させ、通知された後には動作させる
情報処理方法。
【請求項９】
請求項８記載の情報処理方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１０】
保護情報を処理する情報処理装置の少なくとも一部である集積回路であって、
前記情報処理装置内で動作するプロセスを管理するプロセス管理部と、
前記保護情報へのアクセスを検出するアクセス検出部とを備え、
前記プロセス管理部は、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス以外のその他の各プロセスの動作を一時的に停止させる実行制御部を備え、
前記保護情報にアクセスする前記プロセスは、前記その他の各プロセスが停止される間に、前記その他の各プロセスに含まれる通信先のプロセスとの間での通信を行い、前記通信を検出して、検出した時に、前記通信先のプロセスを識別するプロセス識別子を前記実行制御部へ通知する通信検出部を備え、
前記実行制御部は、通知される前記プロセス識別子により識別される前記通信先のプロセスを、通知される前にのみ停止させ、通知された後には動作させる
集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データへの不正アクセスを防止する情報処理装置に関するものである。
【背景技術】
【０００２】
従来より、保護情報を処理する情報処理装置であって、前記情報処理装置内で動作するプロセスを管理するプロセス管理部を備える情報処理装置がある（非特許文献１、２を参照）。なお、非特許文献１の書名「詳解ＬＩＮＵＸ  カーネル」に含まれる「ＬＩＮＵＸ」の語は、登録商標である。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ＤＡＮＩＥＬ  Ｐ．ＢＯＶＥＴ、ＭＡＲＣＯ  ＣＥＳＡＴＩ著：「詳解ＬＩＮＵＸ  カーネル」（Ｏ’ＲＥＩＬＬＹ）
【非特許文献２】http://developer.android.com/intl/ja/guide/topics/security/security.html(Android Developers 開発ガイド／Android Open Source Project)
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、プロセスにより、保護情報へのアクセスがされる時に、そのプロセス以外のその他のプロセスにより、保護情報が不正に取得されてしまうことがある。【０００５】
本発明は、保護情報が不正に取得されることが回避できる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の一態様に係る情報処理装置は、保護情報を処理する情報処理装置であって、前記情報処理装置内で動作するプロセスを管理するプロセス管理部と、前記保護情報へのアクセスを検出するアクセス検出部とを備え、前記プロセス管理部は、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス以外のその他の各プロセスの動作を一時的に停止させる実行制御部を備える情報処理装置である。【０００７】
なお、この全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたは記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【０００８】
保護情報が不正に取得されてしまうことが回避できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施の形態１におけるコンテンツ蓄積・表示システムの全体構成図である。
【図２】図２は、本発明の実施の形態１におけるコンテンツ蓄積装置のソフトウェア構成図である。
【図３】図３は、本発明の実施の形態１におけるコンテンツ表示装置のソフトウェア構成図である。
【図４】図４は、本発明の実施の形態１におけるコンテンツ表示装置のハードウェア構成図である。
【図５】図５は、本発明の実施の形態１におけるアプリ配信サーバの構成図である。
【図６】図６は、本発明の実施の形態１におけるコンテンツ表示装置のＯＳの構成図である。
【図７】図７は、本発明の実施の形態１における保護情報アクセス許可リストの構成図である。
【図８Ａ】図８Ａは、本発明の実施の形態１におけるプロセスリストの構成図である。
【図８Ｂ】図８Ｂは、本発明の実施の形態１におけるプロセスリストの構成図である。
【図８Ｃ】図８Ｃは、本発明の実施の形態１におけるプロセスリストの構成図である。
【図９】図９は、本発明の実施の形態１における保護情報アクセス処理のフローチャートである。
【図１０】図１０は、本発明の実施の形態１におけるアプリ連携処理のフローチャートである。
【図１１】図１１は、本発明の実施の形態２におけるコンテンツ表示装置のＯＳの構成図である。
【図１２】図１２は、本発明の実施の形態３におけるコンテンツ表示装置のソフトウェア構成図である。
【図１３】図１３は、本発明の実施の形態３におけるコンテンツ表示装置の仮想化ソフトウェアの構成図である。
【図１４】図１４は、本発明の変形例におけるコンテンツ表示装置のＯＳの構成図である。
【図１５】図１５は、本発明の変形例におけるコンテンツ表示装置のＯＳの構成図である。
【発明を実施するための形態】
【００１０】
（本発明の基礎となった知見）
発明者においては、次の携帯電話が知られている。その携帯電話では、ユーザが、機器（携帯電話）を購入した後に、購入した機器に、機能を新たに追加することがある。その携帯電話では、この追加のために、アプリケーションソフトウェア（以下、「アプリ」という）をダウンロードし、利用することが可能である。
【００１１】
この様なアプリでは、機器内の各種リソースに対するアクセスが制限されることが考えられる。制限されるアクセスは、ＧＰＳ（Global Positioning System）で取得された位置情報などの位置情報へのアクセス、ダイヤル機能へのアクセス、並びに、電話帳、ブックマークへのアクセスなどである。
【００１２】
しかし、近年、多種多様なアプリを開発可能にするために、アクセス制限を緩和し、これらの、位置情報、ダイヤル機能、及び、電話帳などのデータへのアクセスを可能にした機器が登場してきている。
【００１３】
例えば、グーグル社（Ｇｏｏｇｌｅ  Ｉｎｃ．）が提供するＡｎｄｒｏｉｄ（アンドロイド：登録商標）では、アプリ配信サイトであるＡｎｄｒｏｉｄ  Ｍａｒｋｅｔからダウンロードしたアプリがある。このアプリが、電話帳やブックマーク、ＧＰＳ情報、ネットワーク機能などにアクセス可能である。
【００１４】
上記のような状況の中、携帯電話に格納された個人情報（氏名、住所、電話番号、メールアドレス、クレジットカード番号等）や、個人コンテンツ（写真、動画、メール、位置情報）などのデータの漏洩が問題になっている。
【００１５】
Ａｎｄｒｏｉｄでは、インターネットなどの、オープンなネットワークから、不正なアプリがダウンロードされる。
【００１６】
不正なダウンロードアプリは、メールを利用するなどして、その不正なダウンロードアプリ自体を、ユーザにダウンロードさせたり、Ａｎｄｒｏｉｄ上で動作するアプリの脆弱性を衝いて、ダウンロードさせたりする。
【００１７】
このような、不正なダウンロードアプリによって、機器の記憶装置に格納されている個人情報や、個人コンテンツなどのデータが読み取られる。これにより、読み取られたデータが、ユーザの意図に反して、ネットワークを介して、機器外部に送付されて、データの漏洩が生じることが問題になっている。
【００１８】
記憶装置に格納されているデータを保護する方法としては、次のような方法がある。その方法では、ユーザごとに、異なる識別子（ユーザＩＤ）を割り当て、他のユーザが記憶装置に格納したデータへのアクセス制御を行う（例えば非特許文献１の１．５．５節を参照）。
【００１９】
また、Ａｎｄｒｏｉｄでは、Ａｎｄｒｏｉｄ  Ｍａｒｋｅｔからダウンロードしたアプリごとに、異なるユーザＩＤを割り当てる。このことで、ユーザ間のアクセス制御の仕組みを、アプリ間のアクセス制御に利用していた（詳細は非特許文献２を参照）。
【００２０】
このため、Ａｎｄｒｏｉｄでは、アプリＡが保存した、写真などのファイルを、アプリＢがアクセス出来なくなっている。
【００２１】
更に、Ａｎｄｒｏｉｄでは、Ｍａｎｉｆｅｓｔファイルと呼ばれる設定ファイルが利用される。ＧＰＳや、ダイヤル機能へのアクセスを行うアプリは、事前に、このＭａｎｉｆｅｓｔファイルに、アクセスする機能を記載する必要がある。つまり、この記載をして、インストール時に、ユーザに許可を得る必要がある。
【００２２】
Ａｎｄｒｏｉｄでは、Ｍａｎｉｆｅｓｔファイルに記載されていない機能へのアクセスは禁止される（詳細は非特許文献２を参照）。
【００２３】
しかしながら、前記非特許文献１、または、前記非特許文献２の構成では、全てのデータにアクセスできる特権を持った、特権ユーザＩＤがある。
【００２４】
このため、Ａｎｄｒｏｉｄなどに脆弱性があり、その脆弱性を利用して、特権ユーザＩＤを不正に奪取可能な場合、不正なダウンロードアプリが、特権ユーザＩＤを取得し、他のアプリが保存したファイルにアクセス可能になるという課題を有していた。
【００２５】
そこで、本技術は、上記従来の課題を解決するものであって、たとえ、不正なダウンロードアプリ（図３のアプリ１００２ｗを参照）が、特権ユーザＩＤを不正に取得したとしても、次のような問題が生じないような情報処理装置（図１等のコンテンツ表示装置１００２を参照）を提供することを目的とする。その問題とは、不正なダウンロードアプリが、保護する必要がある、個人情報や、個人コンテンツなどの保護情報（図１のデータ１００１ｄを参照）にアクセス出来てしまうことである。
【００２６】
前記の問題を解決するために、本発明の一態様に係る情報処理装置は、保護情報（情報７ａを参照）を処理する情報処理装置（図１等のコンテンツ表示装置１００２を参照）であって、前記情報処理装置内で動作するプロセスを管理するプロセス管理部（図６等のプロセス管理部１５０２を参照）と、前記保護情報へのアクセスを検出するアクセス検出部（保護情報アクセス検出部５０１参照）とを備え、前記プロセス管理部は、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス（プロセス１００２ｐを参照）以外のその他の各プロセス（１つ以上のその他のプロセス）の動作を一時的に停止させる実行制御部（プリ実行制御部１５１２参照）を備える情報処理装置である。
【００２７】
この情報処理装置（図１等のコンテンツ表示装置１００２を参照）によれば、不正なアプリ（図３の不正なアプリ１００２ｗを参照）が持つユーザＩＤが特権ユーザＩＤであって、他のアプリ（例えば、図３のビューアアプリ１１１２）のファイルにアクセス可能になったとしても、保護情報（図１のデータ１００１ｄを参照）へのアクセスを防止することができる。
【００２８】
なお、例えば、前記プロセス管理部が管理するプロセスのリストであるプロセスリストを管理するプロセスリスト管理部を備え、前記実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、管理される前記プロセスリストを、前記保護情報へのアクセスをする前記プロセスのみが含まれるプロセスリストに変更させることで、前記その他の各プロセスの動作を、一時的に停止させてもよい。
【００２９】
これにより、単に、プロセスリストが変更されるだけで済んで、構成が比較的簡単にできる。
【００３０】
なお、例えば、前記保護情報にアクセスする前記プロセスは、前記その他の各プロセスが停止される間に、前記その他の各プロセスに含まれる通信先のプロセスとの間での通信を行い、前記通信を検出して、検出した時に、前記通信先のプロセスを識別するプロセス識別子を前記実行制御部へ通知する通信検出部を備え、前記実行制御部は、通知される前記プロセス識別子により識別される前記通信先のプロセスを、通知される前にのみ停止させ、通知された後には動作させてもよい。
【００３１】
これにより、保護情報へのアクセスが検出される時に、通信先のプロセスが動作されて、通信先のプロセスとの通信がされ、保護情報へのアクセスが検出される時に可能な処理が、より多様にできる。
【００３２】
なお、例えば、前記情報処理装置は、さらに、プロセスによる、リソースへのアクセスを制限するアクセス制限部を備え、前記通信検出部は、前記通信を検出した時に、前記通信先のプロセスを識別する前記プロセス識別子を、前記アクセス制限部へ通知して、前記通信先のプロセスによる、前記リソースへのアクセスを制限させてもよい。
【００３３】
なお、リソースへのアクセスが制限されるとは、例えば、通信を行うためのリソースへのアクセスが制限されて、通信が不能にされることでもよい。また、リソースへのアクセスが制限されるとは、ファイルが書き込まれる記憶領域などであるリソースへの書き込みが制限されて、ファイルの書き込みが不能にされることでもよい。また、このような、書き込みの制限では、所定のフラグが付いてないファイルの書き込みが不能にされ、付いているファイルの書き込みのみが可能にされてもよい。
【００３４】
これにより、通信先のプロセスが動作されることでの弊害が少なくできる。
【００３５】
なお、例えば、前記アプリ実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、管理される前記プロセスリストを、前記その他の各プロセスを何れも含まないプロセスリストに変更させることで、前記その他の各プロセスの動作を一時的に停止させてもよい。
【００３６】
これにより、単に、プロセスリストが変更されるだけで済んで、構成が比較的簡単にできる。
【００３７】
なお、例えば、前記情報処理装置は、さらに、不揮発性記憶装置を備え、前記実行制御部は、さらに、前記アクセス検出部が、前記保護情報へのアクセスを検出した時に、検出される前記アクセスが開始する際に、前記その他の各プロセスの状態を、前記不揮発性記憶装置へ退避し、前記その他の各プロセスの動作を停止させると共に、検出される前記アクセスが終了する際に、前記不揮発性記憶装置へ退避した前記状態を復帰することで、前記その他の各プロセスの動作を、再び起動させてもよい。
【００３８】
これにより、単に、プロセスの状態の退避、復帰がされるだけで済んで、行われる処理が比較的簡単にできる。
【００３９】
なお、例えば、前記プロセス管理部は、１つ以上の第１のプロセスと、バックグラウンドで動作する第２のプロセスとを管理し、前記実行制御部は、前記アクセスが検出された時に、前記その他の各プロセスとして、前記１つ以上の第１のプロセスを停止させ、前記アクセスが検出された時でも、前記アクセスを行う前記プロセスと共に、前記第２のプロセスを動作させてもよい。
【００４０】
なお、第２のプロセスは、例えば、音楽のデータを再生するアプリのプロセスなどである。
【００４１】
これにより、音楽の再生のアプリのプロセスなどは停止されず、停止されるべきないプロセスまで停止されてしまうことが回避できる。
【００４２】
なお、例えば、前記実行制御部は、前記アクセスが検出されない時には、前記情報処理装置に、マルチプロセス（マルチタスク）での動作をさせ、検出される時には、シングルプロセス（シングルタスク）での動作をさせてもよい。
【００４３】
これにより、保護情報へのアクセスが検出されない時には、保護情報が暗号化されるなどして、保護情報が不正に取得され難い。しかも、検出される時にも、シングルプロセスの動作がされて、不正な取得がされ難い。このため、検出されない時だけでなく、検出される時にも、不正な取得がされ難くされて、より確実に、不正な取得がし難くできる。
【００４４】
しかも、上述のように、アクセスが検出されない時には、マルチプロスでの動作がされる。これにより、マルチプロスでの動作が可能であることが維持できる。
【００４５】
これにより、マルチプロスでの動作が可能であることと、保護情報の不正な取得が困難であることとが両立できる。
【００４６】
なお、シングルプロセスでの動作では、１つのプロセスのみが実行される。この１つのプロセスは、検出されるアクセスを行う先述のプロセスである。
【００４７】
なお、この全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたは記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
【００４８】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００４９】
実施形態の情報処理装置（コンテンツ表示装置１００２）は、ＯＳとして、Ａｎｄｒｏｉｄが実装された装置などであり、不正なプログラム（図３の不正なアプリ１００２ｗ）からのアクセスから保護されることが必要な情報（図１のデータ１００１ｄ）である保護情報を処理する情報処理装置（コンテンツ表示装置１００２（図１、図３、図４、図６））であって、情報処理装置内で動作する２以上のプロセスを管理するプロセス管理部１５０２（図６）と、保護情報（データ１００１ｄ）へのアクセスを検出する保護情報アクセス検出部１５０１と、保護情報アクセス検出部１５０１が、保護情報へのアクセスを検出した時に（図９のＳ１００１の「保護必要」）、保護情報へのアクセスが許可されていないプロセス（図７の第２のデータ１５２１ｂにより特定されるアプリ（アプリＡ）以外の他のアプリ（不正なアプリ１００２ｗなど）のプロセス）の動作を、一時的に（図９のＳ１００２〜Ｓ１００９の期間の間）停止させ、その期間の間においては、プロセスを、ＣＰＵ１２０１に実行させないアプリ実行制御部１５１２とを備える情報処理装置である。
【００５０】
なお、アプリ実行制御部１５１２は、例えば、図６に示されるように、プロセス管理部１５０２の一部として、コンテンツ表示装置１００２に設けられてもよいし、プロセス管理部１５０２の外部などに設けられてもよい。
【００５１】
これにより、不正なダウンロードアプリ（例えば、図３に示される、不正なアプリ１００２ｗ）が、特権ユーザＩＤを取得し、他のアプリ（例えば、図３のビューアアプリ１１１２）が保存したファイルにアクセス可能になる恐れがあるにも関わらず、次の通りである。
【００５２】
すなわち、この情報処理装置（図１等のコンテンツ表示装置１００２を参照）によれば、不正なアプリ（図３の不正なアプリ１００２ｗを参照）が持つユーザＩＤが、特権ユーザＩＤであって、他のアプリ（例えば、図３のビューアアプリ１１１２）が保存したファイルにアクセス可能になったとしても、上述の期間には、不正なアプリは停止される。これにより、不正なアプリにより、保護情報（図１のデータ１００１ｄを参照）へ不正なアクセスがされてしまうのを防止することができる。
【００５３】
（実施の形態１）
本発明の実施の形態１に係る情報処理装置は、ユーザの要求に応じて、写真データを蓄積するコンテンツ蓄積装置から、写真データを取得し、写真データを表示するコンテンツ表示装置である。コンテンツ蓄積装置は、カメラやＰＣなどの機器から、写真データを取り込み、蓄積する。
【００５４】
＜コンテンツ蓄積・表示システム１０００の構成＞
図１は、本発明の実施の形態１におけるコンテンツ蓄積・表示システム１０００の構成図である。
【００５５】
図１において、コンテンツ蓄積・表示システム１０００は、コンテンツ蓄積装置１００１（図２）と、コンテンツ表示装置１００２（図３、図４、図６）と、カメラ１０１０と、ＰＣ １０１１と、アプリ配信サーバ１０２０（図５）とを含む。なお、コンテンツ表示装置１００２は、以降では、情報処理装置とも呼ばれる。
【００５６】
コンテンツ蓄積装置１００１は、カメラ１０１０やＰＣ１０１１などから、写真データを取り込み、蓄積する。
【００５７】
更に、コンテンツ蓄積装置１００１は、取り出し可能な記録媒体（図示しない）を読み取るための読み取り部を持ち、ユーザ以外が撮影した写真データを取り込むことも可能である。
【００５８】
また、コンテンツ蓄積装置１００１は、コンテンツ表示装置１００２と、ネットワークを介して接続し、このコンテンツ表示装置１００２に対して、カメラ１０１０やＰＣ（Personal Computer）１０１１などから取り込んだ写真データ（データ１００１ｄ）を提供する。
【００５９】
コンテンツ表示装置１００２は、コンテンツ蓄積装置１００１や、アプリ配信サーバ１０２０と、ネットワークを介して接続される。
【００６０】
コンテンツ表示装置１００２は、ユーザの要求に応じて、コンテンツ蓄積装置１００１から、写真データ（データ１００１ｄ）を取得し、取得された写真データを表示する。
【００６１】
また、コンテンツ表示装置１００２は、ユーザの要求に応じて、アプリ配信サーバ１０２０から、アプリ（そのアプリのプログラム１０２０ｐ）をダウンロードし、実行する。
【００６２】
カメラ１０１０は、コンテンツ蓄積装置１００１と、ＵＳＢ（Universal Serial Bus）や、無線ＬＡＮ（Local Area Network）などを用いて接続される。
【００６３】
カメラ１０１０は、ユーザが、旅行などのイベントで写真を撮影した写真データを、カメラ１０１０に内蔵された不揮発メモリや、取り出し可能な記録媒体へ記録する。
【００６４】
そして、カメラ１０１０は、コンテンツ蓄積装置１００１と接続された時に、記録した写真データを、コンテンツ蓄積装置１００１へ転送する。
【００６５】
また、カメラ１０１０から記録媒体を取り出し、その記録媒体を、コンテンツ蓄積装置１００１へ装着し、その記録媒体に記録した写真データを、カメラ１０１０から、コンテンツ蓄積装置１００１へ転送することも可能である。
【００６６】
ＰＣ１０１１は、ネットワークに接続され、ユーザが、メールを受信したり、Ｗｅｂブラウジングを行う際に、ユーザにより使用される計算機である。
【００６７】
また、ＰＣ １０１１は、コンテンツ蓄積装置１００１とも、ネットワークで接続される。
【００６８】
メールに添付された写真データや、Ｗｅｂブラウジング時にダウンロードした写真データなどは、ネットワークを介して、ＰＣ １０１１から、コンテンツ蓄積装置１００１へ取り込まれる。
【００６９】
アプリ配信サーバ１０２０は、コンテンツ表示装置１００２と、ネットワークを介して接続される。
【００７０】
このアプリ配信サーバ１０２０は、開発者（図示しない）がアップロードしたアプリ（図１に示されるプログラム１０２０ｐ）の管理、及び、コンテンツ表示装置１００２への、そのアプリのダウンロード処理を行う。
【００７１】
＜コンテンツ蓄積装置１００１のソフトウェア構成＞
図２は、本発明の実施の形態１におけるコンテンツ蓄積装置１００１（図１）のソフトウェア構成図である。
【００７２】
図２において、コンテンツ蓄積装置１００１は、ＯＳ（オペレーティングシステム：Operating System）１１０１と、コンテンツ収集アプリ１１０２と、コンテンツ共有アプリ１１０３とを備える。
【００７３】
ＯＳ １１０１は、ＯＳ １１０１上で動作するアプリ（例えば、コンテンツ収集アプリ１１０２やコンテンツ共有アプリ１１０３など）を、メモリ上にロードして実行する。
【００７４】
また、ＯＳ １１０１が管理するリソースに対して、ＯＳ １１０１上で動作する上述のアプリから利用要求があった時に、ＯＳ １１０１は、要求してきたアプリが、そのリソースを利用する権限があるかを確認する。そして、ＯＳ １１０１は、あると確認された場合には、そのアプリに、そのリソースを提供する。
【００７５】
アプリから、ＯＳ １１０１への要求としては、ファイルの読み込み要求や、書き込み要求、また、ネットワークで接続された他の機器への接続要求などがある。
【００７６】
コンテンツ収集アプリ１１０２は、カメラ１０１０やＰＣ １０１１に記録された写真データを収集し、収集された写真データを、コンテンツ蓄積装置１００１内に蓄積させるアプリである。
【００７７】
また、コンテンツ収集アプリ１１０２は、カメラ１０１０などの機器が、ＵＳＢ（universal serial bus）や有線／無線ＬＡＮなどで、このコンテンツ蓄積装置１００１へと接続されるかを監視する。そして、コンテンツ収集アプリ１１０２は、接続されたことを検出した場合には、その機器内や、その機器に装着された記録メディアに記録されている写真データを収集する。
【００７８】
また、コンテンツ収集アプリ１１０２は、ネットワーク接続を監視し、ＰＣ １０１１などの機器が接続されたことを検出した場合には、その機器内に記録されている写真データを収集する。
【００７９】
コンテンツ収集アプリ１１０２は、収集した写真データを、コンテンツ蓄積装置１００１内の不揮発性記憶装置へ保存し、その不揮発性記憶装置に、蓄積させる。
【００８０】
コンテンツ共有アプリ１１０３は、コンテンツ蓄積装置１００１内に蓄積している写真データを、ネットワークを介して接続したコンテンツ表示装置１００２と共有する。
【００８１】
なお、写真データが共有される際には、例えば、その写真データが、コンテンツ表示装置１００２により取得される。
【００８２】
コンテンツ蓄積装置１００１は、コンテンツ表示装置１００２からの要求に応じて、蓄積している写真データや、蓄積している写真データのリストを、コンテンツ表示装置１００２へと送信することで、写真データの共有を行う。
【００８３】
＜コンテンツ表示装置１００２のソフトウェア構成＞
図３は、本発明の実施の形態１におけるコンテンツ表示装置１００２のソフトウェア構成図である。
【００８４】
図３において、コンテンツ表示装置１００２は、ＯＳ １１１１（図６）と、ビューアアプリ１１１２と、ダウンロード制御アプリ１１１３と、ＤＬアプリＡ（第１のアプリ）１１１４と、ＤＬアプリＢ（第２のアプリ）１１１５とを備える。
【００８５】
なお、ここで、「ＯＳ」は「オペレーティングシステム」であり、「ＤＬアプリ」は「ダウンロードアプリ」である。
【００８６】
ＯＳ １１１１は、ＯＳ １１１１上で動作するアプリ（ビューアアプリ１１１２、ダウンロード制御アプリ１１１３、ＤＬアプリＡ １１１４、ＤＬアプリＢ １１１５など）を、メモリ上にロードして、実行する。
【００８７】
また、ＯＳ １１１１が管理するリソースに対して、アプリから利用要求があった時に、ＯＳ １１１１は、要求してきたアプリが、そのリソースを利用する権限があるかを確認する。
【００８８】
そして、ＯＳ １１１１は、権限があると確認された場合には、そのアプリに、そのリソースを提供する。
【００８９】
なお、アプリからＯＳ １１１１への要求としては、ファイルの読み込み要求や、書き込み要求、また、ネットワークで接続された他の機器への接続要求などがある。
【００９０】
ビューアアプリ１１１２は、コンテンツ表示装置１０００２のユーザからの要求に応じて、コンテンツ蓄積装置１００１から写真データ（図１のデータ１００１ｄ）を取得し、その写真データを表示する。
【００９１】
更に、ビューアアプリ１１１２は、コンテンツ蓄積装置１００１から、コンテンツ蓄積装置１００１が蓄積している写真データのリストを取得し、写真データの一覧を表示する。
【００９２】
ユーザは、一覧表示された写真データのリストから、表示したい写真を選択する。
【００９３】
また、ユーザが、一覧表示された写真データのリストから、複数の写真データを選択した場合には、その複数の写真データを、一定時間間隔で順番に表示する、スライドショー形式の表示が行われる。
【００９４】
ビューアアプリ１１１２は、ユーザから、アプリの終了を指示された時や、コンテンツ蓄積装置１００１との接続の切断を指示された時に、それまで表示していた写真データ（図１のデータ１００１ｄ）を消去する。
【００９５】
ダウンロード制御アプリ１１１３は、コンテンツ表示装置１００２に、ネットワークを介して接続されているアプリ配信サーバ１０２０（図１）と通信する。そして、ダウンロード制御アプリ１１１３は、コンテンツ表示装置１００２への、アプリ（図１に示されるプログラム１０２０ｐ）のダウンロード処理と、コンテンツ表示装置１００２への、そのアプリのインストール処理とを行う。
【００９６】
ＤＬアプリＡ １１１４と、ＤＬアプリＢ １１１５とのそれぞれのアプリは、アプリ配信サーバ１０２０からダウンロードされたアプリ（ダウンロードされたプログラム１０２０ｐ（図１の）によるアプリ１００２ａ）である。
【００９７】
これらのＤＬアプリＡ １１１４及びＤＬアプリＢ １１１５のそれぞれは、アドレス管理機能、Ｗｅｂブラウズ機能、及び電子メール機能などの機能を有し、ユーザに対してこれらの機能を提供する。
【００９８】
＜コンテンツ表示装置１００２のハードウェア構成＞
図４は、本発明の実施の形態１におけるコンテンツ表示装置１００２（図１、図３）のハードウェア構成図である。
【００９９】
図４において、コンテンツ表示装置１００２は、システムＬＳＩ１２００と、メモリ１２１０と、不揮発性記憶装置１２２０とを含む。
【０１００】
システムＬＳＩ １２００は、ＣＰＵ（Central Processing Unit）１２０１と、ネットワークＩ／Ｆ（Interface）１２０２と、入出力Ｉ／Ｆ １２０３とを含む。
【０１０１】
ＣＰＵ １２０１は、メモリ１２１０に格納されたＯＳ １１１１や、各アプリに含まれる命令コードを実行することにより、コンテンツ表示装置１００２全体の動作を制御する。
【０１０２】
また、ＣＰＵ１２０１は、特権モードと、非特権モードとの２つのモードを持つ。
【０１０３】
ＯＳ １１１１（図３を参照）は、特権モードで動作し、メモリ１２１０や、ネットワークＩ／Ｆ １２０２、入出力Ｉ／Ｆ １２０３などの各種リソースに、自由にアクセスできる。
【０１０４】
また、ビューアアプリ１１１２と、ダウンロード制御アプリ１１１３と、ＤＬアプリＡ１１１４と、ＤＬアプリＢ １１１５とのそれぞれ（図３を参照）は、非特権モードで動作し、ＯＳ １１１１が設定した範囲内のリソースに対してのみ、アクセス可能である。
【０１０５】
メモリ１２１０は、ＯＳ １１１１と、ビューアアプリ１１１２と、ダウンロード制御アプリ１１１３と、ＤＬアプリＡ １１１４と、ＤＬアプリＢ １１１５とを、それぞれ格納する。
【０１０６】
なお、図４においては、図３の各構成要素のプログラムを、メモリ１２１０にロードした様子を示している。
【０１０７】
不揮発性記憶装置１２２０（図４）は、保護情報アクセス許可リスト１２２１（後述の図７を参照）を格納する。
【０１０８】
また、図示しないが、不揮発性記憶装置１２２０は、図３の各構成要素のプログラムを、そのプログラムが、メモリ１２１０へとロードされる前に格納する。すなわち、第１の状態では、不揮発性記憶装置１２２０にプログラムが格納してある。第２の状態では、不揮発性記憶装置１２２０からメモリ１２１０へ、そのプログラムをロードする。第３の状態では、そのプログラムを実行する。これら第１〜第３の状態のうちで、第３の状態だけがあるのではなく、第３の状態よりも前に、第１の状態もある。つまり、プログラムが、不揮発性記憶装置１２２０に事前に格納されていて、そこからロードされる。
【０１０９】
図３の各構成要素は、図４に示す、メモリ１２１０に格納された各構成要素に対応する。
【０１１０】
これらの各構成要素を実現するためのソフトウェアが、ＣＰＵ１２０１上で実行されることにより、各機能が実現される。
【０１１１】
なお、コンテンツ表示装置１００２は、さらに、入出力Ｉ／Ｆ １２０３を介して接続された、図４に図示されていない液晶ディスプレイなどの入出力装置を備えている。これらについては、本発明の本質部分ではないので、詳しい説明を省略する。
【０１１２】
また、システムＬＳＩ １２００は、さらに、図４に図示されていない周辺回路などを備えているが、これらも、本発明の本質部分ではないので、詳しい説明を省略する。
【０１１３】
また、メモリ１２１０は、さらに、図３や図４に図示されていないアプリや、写真データを処理するための作業領域を格納していてもよい。
【０１１４】
また、同様に、不揮発性記憶装置１２２０も、さらに、図３や図４に図示されていないアプリや、コンテンツを格納していてもよい。
【０１１５】
＜アプリ配信サーバ１０２０の構成＞
図５は、本発明の実施の形態１に係るアプリ配信サーバ１０２０（図１）の構成図である。
【０１１６】
図５に示すアプリ配信サーバ１０２０は、アプリ保持部２０００と、アプリ受信処理部２００１と、アプリ送信処理部２００２とを含む。
【０１１７】
アプリ保持部２０００は、アプリ配信サーバ１０２０が管理するアプリ（図１のプログラム１０２０ｐ）を格納する。
【０１１８】
アプリ受信処理部２００１は、アプリの開発者が、アプリを開発する開発装置（図示しない）と、ネットワークを介して通信し、開発者がアップロードするアプリ（プログラム１０２０ｐ）を受信する。
【０１１９】
また、アプリ受信処理部２００１は、受信したアプリを、アプリ保持部２０００へ送信し、送信されたアプリの保持及び管理を、アプリ保持部２０００に依頼する。
【０１２０】
アプリ送信処理部２００２は、コンテンツ表示装置１００２と通信する。先述の通り、このコンテンツ表示装置１００２は、アプリ配信サーバ１０２０と、ネットワークを介して接続される。そして、アプリ送信処理部２００２は、コンテンツ表示装置１００２が、アプリ配信サーバ１０２０に対して要求したアプリを、アプリ保持部２０００から取得する。そして、アプリ送信処理部２００２は、取得されたアプリを、その要求をしたコンテンツ表示装置１００２へ送信する。
【０１２１】
また、アプリ送信処理部２００２は、アプリ保持部２０００が保持しているアプリのリストを作成し、コンテンツ表示装置１００２へ送信する。
【０１２２】
＜ＯＳ １１１１の構成＞
図６は、本発明の実施の形態１における、コンテンツ表示装置１００２に実装されたＯＳ １１１１（図３、図４を参照）の構成図である。
【０１２３】
図６において、ＯＳ １１１１は、保護情報アクセス検出部１５０１と、プロセス管理部１５０２と、プロセス間通信検出部１５０３と、アクセス制御部１５０４とを含む。
【０１２４】
保護情報アクセス検出部１５０１は、ＯＳ １１１１が管理するリソースに対して、アプリからアクセス要求があった時に、そのアプリがアクセス要求したリソースが、保護情報（図１のデータ１００１ｄを参照）であるかをチェックする。
【０１２５】
図７は、保護情報アクセス許可リスト１２２１の構成図である。
【０１２６】
なお、例えば、図７に示される保護情報アクセス許可リスト１２２１は、ある局面などにおいて、不揮発性記憶装置１２２０により、先述の保護情報アクセス許可リスト１２２１（図４）として記憶されてもよい。
【０１２７】
保護情報アクセス検出部１５０１は、保護情報であるかどうかのチェックに、図７に示す保護情報アクセス許可リスト１２２１を使用する。
【０１２８】
保護情報アクセス許可リスト１２２１は、保護情報を識別するための保護情報識別子（第１のデータ１５２１ａ）と、その保護情報へのアクセス時に動作可能なアプリ識別子（第２のデータ１５２１ｂ）とを対応付けて格納している。
【０１２９】
保護情報アクセス検出部１５０１（図６）は、保護情報アクセス許可リスト１２２１に含まれる保護情報識別子（第１のデータ１５２１ａ）により特定されるリソースと一致するリソース（同じリソース）へのアクセス要求があった時に、次の処理をする。その処理とは、その保護情報識別子に対応付けられたアプリ識別子（第２のデータ１５２１ｂ）を、プロセス管理部１５０２へ通知する処理である（図６の通知１５０１ａを参照）。
【０１３０】
なお、こうして、リソースに対してアプリが対応付けられる。対応付けられるアプリは、そのリソースを特定する第１のデータ１５２１ａに対応付けられた第２のデータ１５２１ｂにより特定されるアプリである。このような対応付けが、保護情報アクセス許可リスト１２２１によりされる。
【０１３１】
以下では、このような、リソースに対して、保護情報アクセス許可リスト１２２１により対応付けられるアプリが、適宜、単に、そのリソースに対応するアプリと、略称される。
【０１３２】
また、アプリ（例えば、図３のビューアアプリ１１１２）による、保護情報（例えば、図１に示される、受信されたデータ１００１ｄ）へのアクセスが終了した時に、次の通知がされる。つまり、その時には、保護情報アクセス検出部１５０１は、保護情報へのアクセス終了を、プロセス管理部１５０２（図６）へ通知する（図６の通知１５０１ａ）。
【０１３３】
なお、更に、保護情報アクセス検出部１５０１は、保護情報へのアクセス開始・終了時に、プロセス間通信検出部１５０３（図６）へも、アクセス開始・終了を通知する（図６の通知１５０１ｃ、１５０１ｄ）。なお、この点については、後で詳しく説明される。
【０１３４】
続けて、更に図６を参照する。プロセス管理部１５０２は、ＯＳ １１１１上で動作しているアプリを管理する。
【０１３５】
ここで、ＯＳ １１１１上では、複数のアプリが動作可能である。
【０１３６】
しかし、コンテンツ表示装置１００２は、ＣＰＵ１２０１を１つしか持たない。このため、同時に実行可能なアプリは、１つである。
【０１３７】
そこで、ＯＳ １１１１は、切換タイミングで、ＣＰＵ１２０１が実行するアプリを切り換えることにより、複数のアプリを動作させる。
【０１３８】
なお、ここで、上記「切換タイミング」とは、アプリが、ＯＳ １１１１へ、処理を依頼したタイミングや、コンテンツ表示装置１００２内のハードウェアから、割り込みが入ったタイミングなどである。
【０１３９】
プロセス管理部１５０２は、プロセスリスト管理部１５１０と、プロセス切替部１５１１と、アプリ実行制御部１５１２とを含む。
【０１４０】
プロセスリスト管理部１５１０は、ＯＳ １１１１上で動作しているプロセスの一覧（後述される、図８Ａ〜図８Ｃのプロセスリストを参照）を管理する。
【０１４１】
ここで、プロセスとは、ＯＳ １１１１上で動作しているアプリであり、１つのアプリが複数動作する場合（複数のプロセスのそれぞれで、その１つのアプリが動作する場合など）には、それぞれ異なるプロセスとして、管理する。
【０１４２】
プロセスリスト管理部１５１０は、プロセスの管理に、図８Ａや図８Ｂ、図８Ｃに示す複数のプロセスリスト（プロセスリスト１５２２ｘ）を用いる。
【０１４３】
つまり、通常時プロセスリスト（第１のプロセスリスト）１５２２、保護情報アクセス時プロセスリスト（第２のプロセスリスト）１５２３、および、プロセス間通信時プロセスリスト（第３のプロセスリスト）１５２４が用いられる。
【０１４４】
なお、図８Ｃのプロセス間通信時プロセスリスト１５２４の詳細な点については、後で詳しく述べられる。
【０１４５】
プロセスリスト１５２２や１５２３、１５２４のそれぞれは、アプリを識別するアプリ識別子と、実際に動作しているアプリ（プロセス）を識別するためのプロセス識別子とを含む。
【０１４６】
なお、それぞれの図で示されるように、例えば、１つのプロセス識別子には、１つのアプリ識別子が対応付けられる。
【０１４７】
なお、同じアプリが複数起動している場合も考えられる。この場合には、同じアプリ識別子と対応付けられた、複数のプロセス識別子が存在する。つまり、この場合には、例えば、プロセスリストが、アプリ識別子と、そのアプリ識別子に対応付けられた第１のプロセス識別子とが含まれる第１の組合わせを含むと共に、そのアプリ識別子と同じアプリ識別子と、第１のプロセス識別子とは別の第２のプロセス識別子とが含まれる第２の組合わせも含んでもよい。
【０１４８】
プロセスリスト管理部１５１０は、アプリ実行制御部１５１２から、プロセスリストの切り換え依頼を受けた時に、次の処理をする。その処理では、その時点で管理していたプロセスリスト（例えば、図８Ａの第１のプロセスリスト１５２２）を退避し、新しいプロセスリスト（例えば、図８Ｂのプロセスリスト１５２３）へ切り換える。
【０１４９】
更に、プロセスリスト管理部１５１０は、アプリ実行制御部１５１２から、プロセスリストの更新依頼を受けた時に、その時点で管理していたプロセスリストを、新しいプロセスリストに更新する。
【０１５０】
再度、図６を参照する。プロセス切替部１５１１は、ＣＰＵ１２０１が実行するプロセスを、切換タイミングの度に、一方のプロセスから他方のプロセスへと切り換える。
【０１５１】
なお、切り換える方法としては、プロセスリストに並んでいる順番に、切り換えを実行する方法や、それぞれのプロセスに優先順位を付け、その優先順位に沿って、実行する方法などがある。
【０１５２】
なお、このような、切り換えの処理は、より詳細には、非特許文献１の第７章に詳しく記載されている技術などの、公知の技術が流用された処理などでもよい。
【０１５３】
アプリ実行制御部１５１２は、プロセス管理部１５０２が、先述の保護情報アクセス検出部１５０１から、アプリ識別子（図７の第２のデータ１５２１ｂを参照）を受け取った時に、次の処理をする。その処理では、ＯＳ １１１１上で動作しているアプリの動作を制限する。
【０１５４】
具体的には、アプリ実行制御部１５１２は、プロセス識別子を取得する。つまり、保護情報アクセス検出部１５０１から通知されたアプリ識別子がある。このアプリ識別子に対して、先述された、その時点で管理されているプロセスリスト（図８Ａの第１のプロセスリスト１５２２）により対応付けられた、プロセスのプロセス識別子がある。上述の取得では、このプロセス識別子を、プロセスリスト管理部１５１０（図８Ａなどを参照）から取得する。
【０１５５】
アプリ実行制御部１５１２は、プロセスリスト管理部１５１０から取得したプロセス識別子を用いて、プロセスリスト１５２３（図８Ｂ）を作成する。なお、後で詳しく説明されるように、作成される、図８Ｂのプロセスリスト１５２３は、アプリ識別子と、そのアプリ識別子に対応付けられたプロセス識別子との組合わせ（図８Ｂ、図８Ａなどの表の各列を参照）として、次の組み合わせを含まない。その組み合わせとは、上述された、通知されたアプリ識別子を、プロセス識別子に対応付ける組合わせである。
【０１５６】
アプリ実行制御部１５１２は、プロセスリスト管理部１５１０に対して、次のことを依頼する。依頼されることとは、プロセスリスト１５２２（図８Ａ）から、作成されたプロセスリスト１５２３（図８Ｂ）へと、管理しているプロセスリストの入れ替え（変更）をすることである。
【０１５７】
また、プロセス管理部１５０２が、保護情報アクセス検出部１５０１から、保護情報へのアクセス終了の通知を受けた時に、アプリ実行制御部１５１２は、プロセスリスト管理部１５１０へ、管理しているプロセスリストを、図８Ａのプロセスリスト１５２２へ復帰するように依頼する。
【０１５８】
なお、後で詳しく説明されるように、プロセス間通信検出部１５０３による、次のような処理が行われてもよい。
【０１５９】
プロセス間通信検出部１５０３は、ＯＳ １１１１上で動作している第１のアプリが、保護情報へアクセスしている間に、その第１のアプリが、次の依頼をしたことを検出する。その依頼とは、他の第２のアプリと連携するために、ＯＳ １１１１へされる、それら第１、第２のアプリの間におけるプロセス間通信の依頼である。プロセス間通信検出部１５０３は、この依頼が行われた場合に、それを検出する。
【０１６０】
そして、プロセス間通信検出部１５０３は、この検出がされた場合に、プロセス管理部１５０２と、アクセス制御部１５０４とへ、それぞれ、プロセス間通信の依頼を検出したことを通知する。プロセス間通信検出部１５０３は、これらの、プロセス管理部１５０２と、アクセス制御部１５０４とへの通知の際、次のような通知をする。つまり、この際には、通信相手である、上述された第２のアプリのアプリ識別子を、これらのプロセス管理部１５０２等へと通知する。
【０１６１】
ここで、プロセス間通信検出部１５０３は、次のような処理をする。その処理とは、保護情報アクセス検出部１５０１から、保護情報へのアクセス開始の通知を受けた時から、保護情報へのアクセス終了の通知を受けるまでの間を、「保護情報へアクセスしている間」として扱う処理である。そして、プロセス間通信検出部１５０３は、このような「保護情報へアクセスしている間」において、プロセス間通信の検出を行う。また、プロセス間通信検出部１５０３は、保護情報アクセス検出部１５０１から、保護情報へのアクセス終了の通知を受けた時に、アクセス制御部１５０４へ、保護情報へのアクセス終了の通知を行う。
【０１６２】
アクセス制御部１５０４は、プロセス間通信検出部１５０３から通知されたアプリ識別子を持つプロセスが、ネットワークへのアクセスや、ファイルへの書込処理を行う時に、それを検出する。アクセス制御部１５０４は、この検出がされた時に、コンテンツ表示装置１００２の液晶ディスプレイへ、表示を行い、ネットワークへのアクセスや、ファイルへの書込処理を行ってもよいかを、ユーザへ問い合わせる。そして、アクセス制御部１５０４は、ユーザが許可した場合には、処理を継続し、ユーザが許可しなかった場合には、エラーが発生したことを示す情報を、そのプロセスへ返す。
【０１６３】
＜保護情報アクセス処理＞
ＯＳ １１１１は、保護情報アクセス検出部１５０１（図６）を用いて、保護情報として定められた情報へのアクセスを検出する。
【０１６４】
更に、ＯＳ １１１１は、検出された、保護情報へのアクセスがされている間、その保護情報へのアクセスが許可されているアプリのみを動作させる。つまり、ＯＳ １１１１は、そのアプリのみが動作するように、プロセス管理部１５０２が管理するプロセスリストを切り換える。
【０１６５】
なお、上述された、許可がされているアプリは、例えば、次のようなアプリである。つまり、その保護情報を特定（識別）する保護情報識別子（図７の第１のデータ１５２１ａ）がある。この保護情報識別子に対して、保護情報アクセス許可リスト１２２１（図７）が対応付けるアプリ識別子（第２のデータ１５２１ｂ）がある。許可がされているアプリは、このアプリ識別子が特定（識別）するアプリである。
【０１６６】
保護情報へのアクセスが終了すると、プロセスリストを、元のリスト（例えば、図８Ａの第１のプロセスリスト１５２２）に戻し、保護情報へのアクセスが開始される以前の状態に復帰する。
【０１６７】
これにより、保護情報へアクセスしている間には、許可されているアプリ以外のアプリである、許可がされていないアプリの動作を、一時的に停止する。これにより、その間には、許可されているアプリのみが動作する。
【０１６８】
このため、その間においては、許可されていないアプリが、保護情報へ、アクセス出来なくなる。
【０１６９】
また、許可されていないアプリは、状態を保持したまま、一時停止する。
【０１７０】
このため、保護情報へのアクセスが終了した後には、保持された状態が用いられて、そのアクセスの前後で、許可されていないアプリを、連続して使用することが可能となる。
【０１７１】
ここで、例えば、先述の図３（及び図４）で示されたビューアアプリ１１１２のアプリ識別子は、「アプリＡ」とする（図８Ａ、図８Ｂ、図７の第２行第２列を参照）。そして、コンテンツ蓄積装置１００１の写真データへアクセスする際の接続先を示す情報は、「ｈｔｔｐ：／／１９２．１６８．１．１／」とする（図７の第２行第２列を参照）。
【０１７２】
図９は、本発明の実施の形態１における保護情報アクセス処理のフローチャートである。
【０１７３】
以下、ビューアアプリ１１１２が、ＯＳ １１１１へ、保護情報へのアクセスを依頼した時の処理について、この図９のフローチャートを用いて説明する。
【０１７４】
ここで、「保護情報」は、コンテンツ蓄積装置１００１が蓄積している写真データ（図１のデータ１００１ｄ）であるとする。そして、コンテンツ表示装置１００２が、コンテンツ蓄積装置１００１と、この写真データを共有するために、コンテンツ蓄積装置１００１へ接続する処理を、「保護情報へのアクセス」の処理と呼ぶこととする。
【０１７５】
なお、図９の左側、中央、右側のうち、左側では、コンテンツ蓄積装置１００１において、コンテンツ共有アプリ１１０３により行われる処理が示される。中央及び右側では、コンテンツ表示装置１００２により行われる処理が示される。中央では、コンテンツ表示装置１００２のＯＳ１１１１による処理が示され、右側では、ビューアアプリ１１１２による処理が示される。なお、ＯＳ１１１により行われる、中央の処理は、ＯＳ１１１１が有する、図６の保護情報アクセス検出部１５０１等のうちの１つにより行われる。
【０１７６】
まず、コンテンツ表示装置１００２のビューアアプリ１１１２（図３）は、ＯＳ １１１１（図３）へ、コンテンツ蓄積装置１００１と、写真データを共有するための共有接続依頼（Ｓ１０００）を行う。
【０１７７】
ＯＳ １１１１の保護情報アクセス検出部１５０１（図６）は、上述のステップＳ１０００での、上述の共有接続依頼が、保護情報（図１のデータ１００１ｄ）へのアクセスをするための依頼であるかを判定する（Ｓ１００１）。
【０１７８】
具体的には、共有接続依頼における、接続先を示す情報（上述）と、図７の保護情報アクセス許可リスト１２２１の保護情報識別子（第１のデータ１５２１ａ）とを比較する。
【０１７９】
そして、図７の保護情報アクセス許可リスト１２２１内にある１以上の保護情報識別子（図７の各行を参照）のうちに、上述された、接続先を示す情報に一致する保護情報識別子があるかをチェックする。
【０１８０】
保護情報アクセス検出部１５０１は、ステップＳ１００１における上述のチェックで、一致する保護情報識別子があると判定されて、「保護必要」と判定した場合には（Ｓ１００１の「保護必要」）、次の処理をする。その処理では、プロセス管理部１５０２のアプリ実行制御部１５１２へ、アプリ識別子を通知する。通知されるアプリ識別子は、例えば、一致するとの判定がされた保護情報識別子（第１列）に対して、保護情報アクセス許可リスト１２２１（図７）が対応付けるアプリ識別子（第２列）である。なお、この通知の処理は、例えば、下記で説明されるＳ１００２の処理の一部でもよい。
【０１８１】
アプリ実行制御部１５１２は、次の処理をする。つまり、上述の通知により、保護情報アクセス検出部１５０１から通知されたアプリ識別子に対応付けられたプロセスのプロセス識別子がある。その処理では、このプロセス識別子を、プロセスリスト管理部１５１０（図８Ａ〜図８Ｂなどを参照）から取得し、取得されたそのプロセス識別子のみで構成されるプロセスリスト１５２３（図８Ｂ）を作成する。
【０１８２】
アプリ実行制御部１５１２は、プロセスリスト管理部１５１０へ、作成されたプロセスリスト１５２３（図８Ｂ）への、管理されるプロセスリストの切換を依頼する。
【０１８３】
プロセスリスト管理部１５１０は、アプリ実行制御部１５１２から、プロセスリストの切換を依頼された時に、プロセスリストの切換を行う。その切換では、その時に設定されていたプロセスリスト１５２２（図８Ａ）を退避して、アプリ実行制御部１５１２から依頼されたプロセスリスト１５２３（図８Ｂ）へ、管理される（利用される）プロセスリストを切り換える（Ｓ１００２）。
【０１８４】
保護情報アクセス検出部１５０１が、ステップＳ１００１で、「保護不要」と判定した場合（Ｓ１００１の「保護不要」）、及び、ステップＳ１００２の処理後において、ＯＳ １１１１は、それぞれ、次の処理をする。その処理では、コンテンツ蓄積装置１００１のコンテンツ共有アプリ１１０３（図２）へ、共有接続依頼を行う（Ｓ１００３）。
【０１８５】
コンテンツ蓄積装置１００１のコンテンツ共有アプリ１１０３は、この共有接続依頼で依頼された共有接続に必要な処理を行う（Ｓ１００４）。
【０１８６】
なお、この処理は、具体的には、例えば、共有接続依頼（Ｓ１００３）がされた時に、コンテンツ表示装置１００２から、パスワードなどの認証情報を受信して、その認証情報が、予め登録されていた認証情報と同じであるかをチェックするなどの処理である。
【０１８７】
コンテンツ共有アプリ１１０３は、このような共有接続処理の終了後、その共有接続処理の結果を、コンテンツ表示装置１００２へ通知する（Ｓ１００５）。なお、通知される結果の少なくとも一部は、例えば、共有接続処理が成功したか否かなどを示してもよい。
【０１８８】
コンテンツ表示装置１００２のＯＳ １１１１は、コンテンツ共有アプリ１１０３から取得した、通知された結果（共有接続結果）を、ビューアアプリ１１１２へ通知する（Ｓ１００６）。
【０１８９】
その後、ビューアアプリ１１１２は、ＯＳ １１１１を介して、コンテンツ共有アプリ１１０３と通信を行い、その通信で、写真データ（図１のデータ１００１ｄ）を受信して、表示するなどの処理を、ユーザの要求に応じて行う（Ｓ１００７）。
【０１９０】
ビューアアプリ１１１２は、ユーザから、共有終了の要求があった場合には、ステップＳ１００７で、コンテンツ共有アプリ１１０３と共有した写真データ（図１のデータ１００１ｄ）を削除する。そして、この場合には、共有切断依頼を、ＯＳ １１１１へ行う（Ｓ１００８）。
【０１９１】
ＯＳ １１１１の保護情報アクセス検出部１５０１は、先述された、ステップＳ１０００の共有接続依頼があった時に、プロセスリストを切り換えたかを確認する（Ｓ１００９）。
【０１９２】
保護情報アクセス検出部１５０１は、ステップＳ１００９で、「切り換えた」と判定した場合には（Ｓ１００９の「切り替えた」）、プロセス管理部１５０２のアプリ実行制御部１５１２へ、保護情報へのアクセスの終了を通知する（図６の通知１５０１ｂ）。
【０１９３】
アプリ実行制御部１５１２は、この通知がされると、プロセスリスト管理部１５１０へ、プロセスリスト１５２２（図８Ａ）への復帰を依頼する。
【０１９４】
プロセスリスト管理部１５１０は、アプリ実行制御部１５１２から、プロセスリストの復帰を依頼された時に、ステップＳ１００２で退避しておいたプロセスリスト１５２２（図８Ａ）へ、プロセスリストを切り換える（Ｓ１０１０）。
【０１９５】
保護情報アクセス検出部１５０１が、ステップＳ１００９で、「否」と判定した場合（Ｓ１００９の「否」）、及び、ステップＳ１０１０の処理後においては、それぞれ、ＯＳ １１１１は、コンテンツ蓄積装置１００１のコンテンツ共有アプリ１１０３へ、共有切断依頼を行う（Ｓ１０１１）。
【０１９６】
コンテンツ共有アプリ１１０３は、共有切断依頼を受けた時に、写真データの共有を終了する。
【０１９７】
本発明の実施の形態１では、ビューアアプリ１１１２（図３）が、コンテンツ蓄積装置１００１（図１）へ、写真データの共有依頼を行う。このため、接続先を示す情報は、「ｈｔｔｐ：／／１９２．１６８．１．１／」である。
【０１９８】
また、保護情報アクセス許可リスト１２２１は、先述された図７の通りである。このため、保護情報アクセス許可リスト１２２１内に、接続先を示す情報と一致する保護情報識別子が含まれる。
【０１９９】
そのため、保護情報アクセス検出部１５０１は、ステップＳ１００１で、「保護必要」と判定する。そして、保護情報アクセス検出部１５０１は、次の通知をする。つまり、アプリ識別子として、上述された、一致する保護情報識別子に対して、保護情報アクセス許可リスト１２２１が対応付けるアプリ識別子がある。その通知では、このアプリ識別子により特定（識別）される「アプリＡ」（先述の説明を参照）を、アプリ実行制御部１５１２へ通知する。なお、上述の説明は、先述の説明に書かれた通り、「一致する保護情報識別子」は、保護情報アクセス許可リスト１２２１内に含まれるケースが想定されている。
【０２００】
アプリ実行制御部１５１２は、通知されたアプリ（「アプリＡ」）に対応付けられたプロセスのみからなるプロセスリスト１５２３（図８Ｂ）を生成する。そして、プロセスリスト管理部１５１０は、プロセスリストを、生成された、通知されたアプリ（アプリＡ）に対応付けられたプロセスのみからなるプロセスリスト１５２３（図８Ｂ）へと切り換える。
【０２０１】
なお、ステップＳ１００１では、共有接続依頼時に、保護情報へのアクセスかを判定するとしたが、これに限定されるものではない。すなわち、コンテンツ蓄積装置１００１内のデータであっても、保護の必要のあるデータ（図１のデータ１００１ｄ）ではなく、保護の必要のないその他のデータへアクセスする場合もある。
【０２０２】
このため、共有接続依頼時に、判定を行うのではなく（図９のＳ１００１などを参照）、ステップＳ１００７のような、実際にデータにアクセスを行う処理時に、保護情報へのアクセスかを判定してもよい。
【０２０３】
これにより、共有接続依頼と、保護情報へのアクセスとのタイミングが異なる場合でも、保護情報への不正なアクセスを防止出来る。
【０２０４】
なお、ステップＳ１００８では、ビューアアプリ１１１２が、コンテンツ共有アプリ１１０３と共有した写真データを削除するとしたが、これに限定されない。つまり、例えば、削除するのではなく、暗号化して、不揮発性記憶装置１２２０へ保存してもよい。
【０２０５】
こうして、例えば、Ｓ１００８では、写真データが削除されたり、暗号化されて、利用することが不可能にされる。
【０２０６】
＜アプリ連携処理＞
なお、先述のように、例えば、プロセス間通信検出部１５０３も、設けられてもよい。そして、例えば、以下のような処理が行われてもよい。
【０２０７】
ＯＳ １１１１は、プロセス間通信検出部１５０３を用いて、保護情報へアクセスしている一方のアプリが、他方のアプリと連携するために、それら一方および他方のアプリの間でのプロセス間通信を要求したことを検出する。
【０２０８】
ＯＳ １１１１は、この検出により、プロセス間通信が行われることを検出すると、通信先のアプリである、上述の他方のアプリが、動作をできるように、プロセスリストを、更新後のプロセスリスト（例えば、図８Ｃのプロセスリスト１５２４）へと更新する。
【０２０９】
この時、ＯＳ １１１１は、通信先の、他方のアプリに対して、アクセス制御部１５０４を用いて、ネットワークへのアクセスや、ファイルへの書込処理の制御をする。
【０２１０】
そして、ＯＳ １１１１は、プロセス間通信が終了すると、通信先の、他方のアプリが動作しないように、プロセスリストを再び、更新する。
【０２１１】
これにより、許可されていないアプリ（他方のアプリ）であっても、保護情報へアクセスしているアプリ（一方のアプリ）と連携することが可能となる。
【０２１２】
また、許可されていないアプリを動作させる時に、アクセス制御を行うことで、不正なアプリが動作したとしても、写真データの漏洩を防止出来る。
【０２１３】
図１０は、本発明の実施の形態１におけるアプリ連携処理のフローチャートである。
【０２１４】
以下、ビューアアプリ１１１２が、ＯＳ １１１１へ、アプリ連携処理を依頼した時の処理について、図１０のフローチャートを用いて説明する。
【０２１５】
ここで、「保護情報」は、コンテンツ蓄積装置１００１が蓄積している写真データ（図１のデータ１００１ｄ）であるとする。また、「通知先のアプリ」は、ＤＬアプリＡ １１１４（図３）とする。
【０２１６】
まず、ビューアアプリ１１１２は、ＯＳ １１１１へ、ＤＬアプリＡ １１１４とのアプリ連携依頼を行う（Ｓ１１００）。
【０２１７】
ＯＳ １１１１のプロセス間通信検出部１５０３は、ＯＳ １１１１上で動作しているアプリが、保護情報へアクセス中か判定する（Ｓ１１０１）。
【０２１８】
具体的には、プロセス間通信検出部１５０３は、保護情報アクセス検出部１５０１から、保護情報へのアクセス開始の通知を受けた後であり、かつ、保護情報への、アクセス終了の通知をまだ受けていない間であれば、「アクセス中」と判定する。そして、保護情報への、アクセス開始の通知を受けていない場合や、保護情報へのアクセス終了の通知を受けた後であれば、「否」と判定する。
【０２１９】
プロセス間通信検出部１５０３は、ステップＳ１１００で、「アクセス中」と判定した場合には、プロセス管理部１５０２と、アクセス制御部１５０４とのそれぞれへ、アプリ識別子を通知する。なお、通知されるアプリ識別子により特定されるアプリは、そのアプリとの間でのプロセス間通信が要求された、先述の他方のアプリである。
【０２２０】
アクセス制御部１５０４は、プロセス間通信検出部１５０３から受信したアプリ識別子を記憶し、アクセス制御を行うように設定する（Ｓ１１０２）。
【０２２１】
プロセス間通信検出部１５０３が、ステップＳ１１０１で、「否」と判定した場合、又は、ステップＳ１１０２の処理後において、ＯＳ １１１１のプロセス管理部１５０２は、通知先のアプリであるＤＬアプリＡ １１１４（他方のアプリ）を起動し、アプリ連携依頼を通知する（Ｓ１１０３）。
【０２２２】
プロセス管理部１５０２は、ＤＬアプリＡ １１１４を起動した時に、プロセスリスト管理部１５１０へ、起動したＤＬアプリＡ １１１４のプロセス識別子を通知し、プロセスリストへの、そのＤＬアプリＡ １１１４のデータの追加を依頼する。
【０２２３】
ＤＬアプリＡ １１１４と、ビューアアプリ１１１２とは、互いに通信をしながら、連携処理を行う（Ｓ１１０４）。
【０２２４】
この連携処理の中で、ＤＬアプリＡ １１１４が、ＯＳ １１１１へ、ネットワークへのアクセス依頼や、ファイルへの書込処理を依頼した時に、アクセス制御部１５０４は、次の処理をする。その処理とは、ＤＬアプリＡ １１１４のプロセス識別子に対応付けられたアプリ識別子から、アクセス制御対象であることを判断し、アクセス制御を行う。
【０２２５】
ＤＬアプリＡ １１１４は、連携処理が終了すると、アプリ連携終了通知を、ＯＳ １１１１へ通知する（Ｓ１１０５）。
【０２２６】
ＯＳ １１１１のプロセス間通信検出部１５０３は、ＯＳ １１１１上で動作しているアプリが、保護情報へアクセス中か判定する（Ｓ１１０６）。
【０２２７】
なお、判定方法としては、例えば、上述のステップＳ１１０１と同じ方法を用いる。
【０２２８】
プロセス間通信検出部１５０３は、ステップＳ１１０６で、「アクセス中」と判定した場合には、プロセス管理部１５０２と、アクセス制御部１５０４とのそれぞれへ、アプリ連携終了を通知する。
【０２２９】
アクセス制御部１５０４は、プロセス間通信検出部１５０３から受信したアプリ識別子を、アクセス制御を行わないように設定する（Ｓ１１０７）。
【０２３０】
プロセス間通信検出部１５０３が、ステップＳ１１０６で、「否」と判定した場合、又は、ステップＳ１１０７の処理後においては、ＯＳ １１１１のプロセス管理部１５０２は、通知先であったアプリＤＬアプリＡ １１１４を終了し、ビューアアプリ１１１２へ、アプリ連携終了を通知する（Ｓ１１０８）。
【０２３１】
以上説明したように、本発明の実施の形態１によれば、プロセス切替部１５１１が、プロセスを切り換えるタイミングになった時でも、プロセスリストには、ビューアアプリ１１１２のプロセスのプロセス識別子しかない。このため、ビューアアプリ１１１２以外のアプリの動作が一時的に停止することになる。この時、ビューアアプリ１１１２以外のアプリが新たに起動しようとしても、起動しようとした瞬間に、動作が停止させられるため、起動することが出来ない。そのため、コンテンツ表示装置１００２の内部で、不正なアプリが動作していたとしても、又は、起動しようとしても、ビューアアプリ１１１２が、写真データを表示中には、不正なアプリの動作が一時的に停止する。このため、不正なアプリが、ビューアアプリ１１１２が表示している写真データに、不正にアクセスすることが出来ない。
【０２３２】
更に、ビューアアプリ１１１２（一方のアプリ）が、コンテンツ蓄積装置１００１と通信し、コンテンツ蓄積装置１００１に蓄積されている写真データにアクセスしている時であっても、ビューアアプリ１１１２と連携して動作する他のアプリ（他方のアプリ）を起動することが出来る。
【０２３３】
例えば、ＤＬアプリＡ １１１４（他方のアプリ）として、写真データを加工するアプリがあった時が考えられる。この時に、ビューアアプリ１１１２（一方のアプリ）で表示している写真データを、ユーザが、ＤＬアプリＡ １１１４（他方のアプリ）を使用して、加工したいと思った場合に、ＤＬアプリＡ １１１４を起動することが出来る。
【０２３４】
また、ビューアアプリ１１１２から、連携処理を依頼されたアプリ（他方のアプリ）に対して、アクセス制御を行っている。
【０２３５】
このため、不正なアプリに対して、連携処理を依頼した場合においても、ビューアアプリ１１１２が表示している写真データを、ネットワークを使用して、コンテンツ表示装置１００２の外部へ送信するなどの、不正な行為を行う事を防止出来る。
【０２３６】
なお、こうして、先述の通り、不正なダウンロードアプリ（例えば、図３のアプリ１００２ｗ）が、特権ユーザＩＤを取得し、他のアプリ（例えば、図３のビューアアプリ１１１２）が保存したファイルにアクセス可能になる恐れがあるにも関わらず、次の通りである。すなわち、不正なダウンロードアプリが、特権ユーザＩＤを不正に取得して、他のアプリにより保存されたファイルにアクセス可能になったとしても、保護する必要がある保護情報（個人情報や、個人コンテンツなど、例えば図１のデータ１００１ｄ）に、不正なアクセスがされないようにできる。
【０２３７】
すなわち、一例としては、次の動作が行われてもよい。
【０２３８】
この情報処理装置は、例えば、写真などのコンテンツを表示するコンテンツ表示装置（図１のコンテンツ表示装置１００２）などである。
【０２３９】
なお、このコンテンツ表示装置は、例えば、先述された、ＡｎｄｒｏｉｄのＯＳがインストールされた装置等である。
【０２４０】
そして、コンテンツ表示装置において、予め定められた期間（図９のＳ１００７の期間、または、Ｓ１００３〜Ｓ１０１１の期間）が開始される時刻と、終了される時刻とがそれぞれ特定されて、その期間が特定されてもよい。なお、この点について、詳しくは、先述された保護情報アクセス検出部１５０１、図９のＳ１０００、Ｓ１０１１などの説明も参照されたい。
【０２４１】
特定される期間は、予め定められた情報（保護情報、例えば図１のデータ１００１ｄ）が、第１のアプリ（例えば、図３のビューアアプリ１１１２）により保存される（ことがある）期間である。
【０２４２】
保護情報は、先述の通り、例えば、携帯電話のユーザの氏名等の個人情報などであり、その情報が、第３者により知られたときに、その個人情報の悪用などの、（比較的大きな）弊害が生じる情報である（図１のデータ１００１ｄを参照）。
【０２４３】
そして、保護情報を保存する第１のアプリ（ビューアアプリ１１１２）を、複数のアプリのうちから特定するデータが記憶されてもよい。なお、このデータは、例えば、図７の保護情報アクセス許可リスト１２２１でもよいし、この保護情報アクセス許可リスト１２２１に含まれるアプリ識別子である第１のデータ１５２１ｂでもよい（図４の不揮発性記憶装置１２２０の説明などを参照）。
【０２４４】
そして、特定された期間においては、特定される第１のアプリ以外の他の第２のアプリ（例えば、先述のダウンロードアプリである、図３のアプリ１００２ａ）を実行させず、その他の期間にのみ実行させる制御がされてもよい（図９のＳ１００２、Ｓ１０１０）。
【０２４５】
ここで、他の第２のアプリは、図１のアプリ配信サーバ１０２０などからダウンロードされて、このコンテンツ表示装置により実行されるアプリなどである。
【０２４６】
そして、このような他の第２のアプリは、例えば、インターネットなどの、オープンなネットワークを介して、図１のアプリ配信サーバ１０２０などからダウンロード（受信）されたアプリ１００２ａ（図３）などである。
【０２４７】
すなわち、他の第２のアプリ（アプリ１００２ａ）は、例えば、ある局面などにおいては、第３者が不正に、このコンテンツ表示装置にダウンロードさせて、このコンテンツ表示装置に実行させる、不正なアプリ１００２ｗ（図３）である。
【０２４８】
そして、先述のように、このような不正なアプリ１００２ｗは、特権ユーザＩＤを取得して、上述された第１のアプリなどの、その他のアプリにより保存されたファイルに、アクセス可能になってしまうことが考えられるアプリである。
【０２４９】
これにより、他の第２のアプリ（アプリ１００２ａ）が、不正なアプリ１００２ｗであり、かつ、この不正なアプリ１００２ｗが、特権ユーザＩＤを取得してしまうことも考えられるにも関わらず、次の通りである。すなわち、特定された、保護情報が保存される期間（Ｓ１００７の期間）には、第２のアプリ（アプリ１００２ａ）が実行されず、不正なアプリ１００２ｗが実行されない。このため、不正なアプリ１００２ｗにより、保存される保護情報（データ１００１ｄ）へのアクセスがされるのが防がれる。これにより、保護情報への、不正なアクセスがされてしまうことが防がれ、行われるアクセスが、より確実に、適切なアクセスにできる。
【０２５０】
なお、これにより、例えば、不正なアプリ１００２ｗを実行させる第３者により、保護情報が取得されて、知られてしまうことが回避され、（大きな）弊害が生じてしまうことが回避できる。
【０２５１】
なお、上述のデータ（保護情報アクセス許可リスト１２２１）は、保護情報を保存する第１のアプリ（ビューアアプリ１１１２）を特定する第２のデータ１５２１ｂ（図７のアプリ識別子）と、保存される保護情報を、複数の情報のうちから特定する第１のデータ１５２１ａ（保護情報識別子）とを含んでもよい。
【０２５２】
そして、保存される情報（データ１００１ｄ）が、含まれる第１のデータ１５２１ａ（保護情報識別子）により特定（識別）される情報（保護情報）であるか否かが判定されてもよい（図９のＳ１００１）。
【０２５３】
そして、第２のデータにより特定される情報と判定される場合にのみ（図９のＳ１００１の「保護必要」、Ｓ１００９の「切り替えた」）、上述された、第２のアプリ（不正なアプリ１００２ｗなど）を実行させない制御（Ｓ１００２、Ｓ１０１０など）がされてもよい。
【０２５４】
つまり、第２のデータにより特定される情報（保護情報）でないと判定される場合には（Ｓ１００１の「保護不要」、Ｓ１００９の「否」）、この制御がされず、第２のアプリ（例えば、図３のＤＬアプリＡ １１１４など）も実行されてもよい。
【０２５５】
なお、プロセスリスト１５２２ｘ（図８Ａ〜図８Ｃ）が利用されてもよい。
【０２５６】
そして、利用されるプロセスリスト１５２２ｘにより、１以上のアプリ（図８Ａ〜図８Ｃのそれぞれにおける表の第２行を参照）が特定されてもよい。
【０２５７】
そして、利用されるプロセスリスト１５２２ｘにより特定される１以上のアプリに含まれるアプリのみが実行され、含まれないアプリが実行されなくてもよい。
【０２５８】
そして、先述された、第２のアプリを実行させない制御では、利用されるプロセスリスト１５２２ｘを、第１のプロセスリスト１５２２（図８Ａ）から、第２のプロセスリスト１５２３（図８Ｂ）へと変更させてもよい。
【０２５９】
ここで、例えば、第１のプロセスリスト１５２２（図８Ａ）は、保存情報を保存する第１のアプリ（ビューアアプリ１１１２、図８ＡのアプリＡ）以外の他の第２のアプリ（図８ＡのアプリＢ〜Ｅ）も特定してもよい。
【０２６０】
そして、他方の第２のプロセスリスト１５２３（図８Ｂ）は、他の第２のアプリ（アプリＢ〜Ｅ）を特定せず、第１のアプリ（ビューアアプリ１１１２、アプリＡ）のみを特定してもよい。
【０２６１】
これにより、利用されるプロセスリストが、第２のプロセスリスト１５２３である期間においては、他の第２のアプリが実行されないことにより、上述された、第２のアプリを実行させない制御がされてもよい（図９のＳ１００２、Ｓ１０１０の説明などを参照）。
【０２６２】
なお、保存される保護情報は、例えば、コンテンツ表示装置の外部にあるコンテンツ蓄積装置（コンテンツ蓄積装置１００１）により蓄積されてもよい。そして、蓄積された保護情報が、第１のアプリ（ビューアアプリ１１１２）により取得されて、このコンテンツ表示装置に保存されてもよい。
【０２６３】
なお、例えば、このような動作が行われるのに際して、その動作の細部が、後述される、変形例での通りなどでもよい。
【０２６４】
（実施の形態２）
本発明の実施の形態１では、アプリ実行制御部１５１２が、プロセスリスト管理部１５１０に、プロセスリストの切替を依頼することで、保護情報と関係のないアプリの動作を停止した。
【０２６５】
実施の形態２では、アプリ実行制御部１５１２が、保護情報と関係のないアプリを終了させる処理を行う構成について説明する。
【０２６６】
以下、本発明の実施の形態２に係るＯＳ １１１１の構成と、保護情報アクセス処理とを説明する。
【０２６７】
なお、以下では、実施形態１と同様の点については、詳しい説明が適宜、省略される。
【０２６８】
＜ＯＳ １１１１の構成＞
図１１は、本発明の実施の形態２におけるＯＳ １１１１の構成図である。
【０２６９】
図１１において、図６と同じ構成要素については、適宜、図６での符号と同じ符号を用い、詳しい説明を省略する。
【０２７０】
図１１において、ＯＳ １１１１は、保護情報アクセス検出部１５０１と、プロセス管理部１５０２とを含む。
【０２７１】
保護情報アクセス検出部１５０１の動作等は、本発明の実施の形態１での動作等と同じである。
【０２７２】
プロセス管理部１５０２は、アプリ実行制御部１５１２と、プロセス状態管理部１５１３とを含む。
【０２７３】
アプリ実行制御部１５１２は、プロセス管理部１５０２が、保護情報アクセス検出部１５０１から、アプリ識別子を受け取った時に、ＯＳ １１１１上で動作しているアプリの動作を制限する。
【０２７４】
具体的には、アプリ実行制御部１５１２は、保護情報アクセス検出部１５０１から通知されたアプリ識別子に対応付けられたプロセスの状態（状態を特定する情報１５１３ｓ）の退避を、プロセス状態管理部１５１３へ依頼する。
【０２７５】
この時、保護情報アクセス検出部１５０１から通知されたアプリ識別子に対応付けられたプロセスのプロセス識別子を通知する。
【０２７６】
プロセス状態管理部１５１３は、アプリ実行制御部１５１２から通知されたプロセス識別子を持つプロセスの状態を、一時的に退避し、プロセスを終了させる。
【０２７７】
また、プロセス管理部１５０２が、保護情報アクセス検出部１５０１から、保護情報へのアクセス終了の通知を受けた時に、プロセス状態管理部１５１３は、上記のようにして退避した、プロセスの状態を復帰し、終了させたプロセスを、再び起動する。
【０２７８】
＜保護情報アクセス処理＞
本発明の実施の形態２に係る保護情報アクセス処理は、本発明の実施の形態１に係る保護情報アクセス処理（図９）と、多くの点では、同じ処理となる。よって、図９を参照して、処理の異なる部分を中心に説明する。
【０２７９】
図９を参照して、以下説明する。つまり、本発明の実施の形態２に係るＯＳ １１１１のプロセス管理部１５０２は、ビューアアプリ１１１２からの共有接続依頼における接続先が、保護情報アクセス許可リスト１２２１内の保護情報識別子と一致するか判定する（Ｓ１００１）。
【０２８０】
ステップＳ１００１の判定が、「保護必要」の判定であった場合、アプリ実行制御部１５１２は、プロセス状態管理部１５１３へ、プロセスの状態の退避と、プロセスの終了処理とを依頼する。
【０２８１】
また、ＯＳ １１１１が、ビューアアプリ１１１２から、共有切断依頼を受けた時に、図９におけるステップＳ１００９では、ステップＳ１００２で、プロセスの状態を退避したかを判定し、退避していた場合に、ステップＳ１０１０で、プロセスの状態を復帰し、プロセスを再び起動する。
【０２８２】
以上説明したように、本発明の実施の形態２によれば、通常のプロセス管理機能に、プロセス状態を退避・復帰する機能を追加するだけでよく、既存のプロセス管理機能への変更の影響を少なくできる。
【０２８３】
（実施の形態３）
本発明の実施の形態１〜２では、ＯＳ １１１１が、保護情報アクセス検出部１５０１と、プロセス管理部１５０２と、プロセス間通信検出部１５０３と、アクセス制御部１５０４とを含むことで、保護情報と関係のないアプリの動作を停止した。
【０２８４】
実施の形態３では、仮想化技術を利用する。そして、仮想化ソフトウェア上で、複数の仮想マシンを実行する環境が利用される。つまり、この環境で、実施の形態１〜２におけるＯＳ １１１１の代わりに、仮想化ソフトウェアを用い、ビューアアプリ１１１２や、ＤＬアプリＡ １１１４、ＤＬアプリＢ １１１５の代わりに、それぞれ、仮想マシンを用いる構成について説明する。
【０２８５】
＜コンテンツ表示装置１００２のソフトウェア構成＞
図１２は、本発明の実施の形態３におけるコンテンツ表示装置１００２のソフトウェア構成図である。
【０２８６】
図１２において、コンテンツ表示装置１００２は、仮想化ソフトウェア３００１（図１３）と、仮想マシン３００２、３００３、３００４、３００５とを含む。
【０２８７】
仮想化ソフトウェア３００１は、その上で動作する仮想マシン３００２〜３００５を管理する仮想マシン管理機能と、その仮想マシン３００２〜３００５のそれぞれに対して、メモリなどのハードウェアリソースを割り当てると共に、そのハードウェアリソースを管理するリソース管理機能と、仮想マシン３００２〜３００５からの要求に従って、デバイスへアクセスするデバイスアクセス機能とを有する。なお、仮想化ソフトウェア３００１の詳細は、後述する。
【０２８８】
仮想マシン３００２、３００３、３００４、３００５のそれぞれは、仮想ハードウェア（例えば仮想ハードウェア３０１０）と、ＯＳ（例えばＯＳＡ３０１１）と、１個以上のアプリ（アプリ３０１２及び３０１３）とを含む。それぞれの仮想マシンは、仮想化ソフトウェア３００１により、それぞれのその他の仮想マシンとは独立に実行される。
【０２８９】
実施の形態３においては、仮想マシン３００２は、仮想ハードウェア３０１０と、ＯＳＡ ３０１１と、アプリＡ ３０１２と、アプリＢ ３０１３とを含む。
【０２９０】
仮想マシン３００３は、仮想ハードウェア３０２０と、ＯＳＢ ３０２１と、アプリＣ ３０２２と、アプリＤ ３０２３とを含む。
【０２９１】
仮想マシン３００４は、仮想ハードウェア３０３０と、ＯＳＣ ３０３１と、アプリＥ ３０３２と、アプリＦ ３０３３とを含む。
【０２９２】
仮想マシン３００５は、仮想ハードウェア３０４０と、ＯＳＤ ３０４１と、アプリＧ ３０４２と、アプリＨ ３０４３とを含む。
【０２９３】
仮想ハードウェア３０１０、３０２０、３０３０、３０４０のそれぞれの仮想ハードウェアは、その仮想ハードウェアの仮想マシンに、仮想的に、ハードウェアの機能を提供する。
【０２９４】
また、例えば、仮想ハードウェア３０１０、３０２０、３０３０及び３０４０のそれぞれの仮想ハードウェアは、ＩＰＬ（Initial Program Loader）及びＢＩＯＳ（Basic Input/Output System）も含む。
【０２９５】
なお、仮想ハードウェア３０１０、３０２０、３０３０及び３０４０の１つまたは２つ以上のうちのそれぞれは、仮想化ソフトウェア３００１の構成によっては、例えば、仮想化ソフトウェア３００１、又は、各仮想マシンのＯＳに統合される場合もある。
【０２９６】
ＯＳＡ ３０１１と、ＯＳＢ ３０２１と、ＯＳＣ ３０３１とＯＳＤ ３０４１とのそれぞれは、そのＯＳ上で動作するアプリを、メモリ上にロードして実行する。
【０２９７】
また、それぞれのＯＳが管理するリソースに対して、アプリから利用要求があった時に、そのＯＳは、要求してきたアプリが、そのリソースを利用する権限があるかを確認し、アプリにリソースを提供する。
【０２９８】
アプリから、それぞれのＯＳへの要求としては、ファイルへの読み込み要求や、書き込み要求、また、ネットワークで接続された他の機器への接続要求などがある。
【０２９９】
アプリＡ ３０１２と、アプリＢ ３０１３と、アプリＣ ３０２２と、アプリＤ ３０２３と、アプリＥ ３０３２と、アプリＦ ３０３３と、アプリＧ ３０４２と、アプリＨ ３０４３とのそれぞれは、アドレス管理機能、Ｗｅｂブラウズ機能、及び電子メール機能などの機能を有し、ユーザに対して、これらの機能を提供する。
【０３００】
これらのソフトウェアは、予め、不揮発性記憶装置１２２０へ記録され、実行時に、メモリ１２１０上へ展開され、ＣＰＵ１２０１を用いて実行する。
【０３０１】
なお、本発明の実施の形態３では、仮想化ソフトウェア３００１上で、４つの仮想マシンが動作する場合を説明するが、これに限定されるものではなく、複数の仮想マシンが動作していればよい。
【０３０２】
また、それぞれの仮想マシン内で、２つのアプリが動作する場合を説明するが、これに限定されるものではなく、１つでもよいし、２より多くてもよいし、それぞれの仮想マシンごとに、異なる数を実行していてもよい。
【０３０３】
また、それぞれのアプリは、本発明の実施の形態１で説明した、ＤＬアプリＡ １１１４や、ＤＬアプリＢ １１１５のように、アプリ配信サーバ１０２０からダウンロードしたアプリであってもよい。
【０３０４】
＜仮想化ソフトウェア３００１の構成＞
図１３は、本発明の実施の形態３における仮想化ソフトウェア３００１（図１２）の構成図である。
【０３０５】
図１３において、仮想化ソフトウェア３００１は、保護情報アクセス検出部３５０１と、仮想マシン間通信検出部３５０３と、アクセス制御部３５０４とを含む。
【０３０６】
保護情報アクセス検出部３５０１は、仮想化ソフトウェア３００１が管理するリソースに対して、仮想マシンからアクセス要求があった時に、その仮想マシンがアクセス要求したリソースが、保護情報であるかをチェックする。
【０３０７】
基本的な動作は、本発明の実施の形態１の保護情報アクセス検出部１５０１における動作と同じである。
【０３０８】
チェック方法としては、例えば、本発明の実施の形態１の保護情報アクセス検出部１５０１における方法と同様の方法を用いる。
【０３０９】
この時、保護情報アクセス許可リスト１２２１（図７を参照）は、アプリ識別子の代わりに仮想マシン識別子を含む。
【０３１０】
また、保護情報アクセス検出部３５０１は、保護情報へのアクセスの検出時に、仮想マシン管理部３５０２へ、仮想マシン識別子を通知し、保護情報へのアクセスが終了した時に、保護情報へのアクセス終了を、仮想マシン管理部３５０２へ通知する。
【０３１１】
更に、保護情報アクセス検出部３５０１は、保護情報へのアクセス開始・終了時に、仮想マシン間通信検出部３５０３へ、アクセスの開始・終了を通知する。
【０３１２】
仮想マシン管理部３５０２は、仮想化ソフトウェア３００１上で動作している仮想マシンを管理する。
【０３１３】
ここで、仮想化ソフトウェア３００１上では、複数の仮想マシンが動作可能である。
【０３１４】
しかし、コンテンツ表示装置１００２は、ＣＰＵ１２０１を１つしか持たないため、同時に実行可能な仮想マシンは１つである。
【０３１５】
そこで、仮想化ソフトウェア３００１は、切り替えタイミングで、ＣＰＵ１２０１が実行する仮想マシンを切り替えることにより、複数の仮想マシンを動作させる。
【０３１６】
なお、基本的な動作は、例えば、本発明の実施の形態１のプロセス管理部１５０２の動作と同じである。
【０３１７】
仮想マシン管理部３５０２は、図１２で示されるように、仮想マシンリスト管理部３５１０と、仮想マシン切替部３５１１と、仮想マシン実行制御部３５１２とを含む。
【０３１８】
仮想マシンリスト管理部３５１０は、仮想化ソフトウェア３００１上で動作している仮想マシンの一覧を、仮想マシンリストとして、リスト形式で管理する。
【０３１９】
仮想マシンリスト管理部３５１０は、仮想マシン実行制御部３５１２から、仮想マシンリストの切り替え依頼を受けた時に、その時点で管理していた仮想マシンリストを退避し、新しい仮想マシンリストへ切り替える。
【０３２０】
更に、仮想マシンリスト管理部３５１０は、仮想マシン実行制御部３５１２から、仮想マシンリストの更新依頼を受けた時に、その時点で管理していた仮想マシンリストを、新しい仮想マシンリストに更新する。
【０３２１】
仮想マシン切替部３５１１は、ＣＰＵ１２０１が実行する仮想マシンを、切り替えタイミングの度に、一方の仮想マシンから、他方の仮想マシンへと切り替える。切り替える方法は、例えば、本発明の実施の形態１におけるプロセス切替部１５１１における、プロセスの切り替え方法と同じ方法などである。
【０３２２】
仮想マシン実行制御部３５１２は、仮想マシン管理部３５０２が、保護情報アクセス検出部３５０１から、仮想マシン識別子を受け取った時に、仮想化ソフトウェア３００１上で動作している仮想マシンの動作を制限する。
【０３２３】
具体的には、仮想マシン実行制御部３５１２は、保護情報アクセス検出部３５０１から通知された仮想マシン識別子を用いて、仮想マシンリストを作成する。
【０３２４】
仮想マシン実行制御部３５１２は、仮想マシンリスト管理部３５１０に対して依頼をする。その依頼では、仮想マシンリスト管理部３５１０が管理している仮想マシンリストを、仮想マシン実行制御部３５１２が作成した仮想マシンリストと入れ替えることを依頼する。
【０３２５】
また、仮想マシン管理部３５０２が、保護情報アクセス検出部３５０１から、保護情報へのアクセス終了の通知を受けた時に、仮想マシン実行制御部３５１２は、仮想マシンリスト管理部３５１０へ、仮想マシンリストの復帰を依頼する。
【０３２６】
仮想マシン間通信検出部３５０３は、仮想化ソフトウェア３００１上で動作している仮想マシンが、保護情報へアクセスしている間、他の仮想マシンと連携するために、仮想化ソフトウェア３００１へ、仮想マシン間通信の依頼を行った場合に、それを検出し、仮想マシン管理部３５０２と、アクセス制御部３５０４とへ、それぞれ、仮想マシン間通信の依頼を検出したことを通知する。
【０３２７】
仮想マシン間通信検出部３５０３は、仮想マシン管理部３５０２と、アクセス制御部３５０４への通知の際、通信相手の仮想マシン識別子を通知する。
【０３２８】
仮想マシン間通信検出部３５０３は、保護情報アクセス検出部３５０１から、保護情報へのアクセス開始の通知を受けた時から、保護情報へのアクセス終了の通知を受けるまでの間を、「保護情報へアクセスしている間」として、仮想マシン間通信の検出を行う。
【０３２９】
また、仮想マシン間通信検出部３５０３は、保護情報アクセス検出部３５０１から、保護情報へのアクセス終了の通知を受けた時に、アクセス制御部３５０４へ、保護情報へのアクセス終了の通知を行う。
【０３３０】
アクセス制御部３５０４は、仮想マシン間通信検出部３５０３から通知された仮想マシン識別子を持つ仮想マシンが、ネットワークへのアクセスや、ＨＤＤへの書込処理を行う時に、それを検出する。
【０３３１】
検出時に、コンテンツ表示装置１００２の液晶ディスプレイへ表示を行い、ネットワークへのアクセスや、ＨＤＤへの書込処理を行ってもよいかを、ユーザへ問い合わせる。
【０３３２】
ユーザが許可した場合には、処理を継続し、ユーザが許可しなかった場合には、エラーを、仮想マシンへ返す。
【０３３３】
なお、上記実施の形態１〜３におけるコンテンツ表示装置１００２は、ＯＳ １１１１や、仮想化ソフトウェア３００１が、改ざんされてしまうと、保護情報への不正なアクセスを防止するための機能が無効化されてしまう可能性がある。
【０３３４】
そこで、電源投入時の起動処理において、セキュアブートと呼ばれる仕組みにより、ＯＳ １１１１や仮想化ソフトウェア３００１が改ざんされると、その改ざんを検出し、起動処理を停止する仕組みを持っていてもよい。
【０３３５】
具体的な処理としては、電源投入時に、ＬＳＩ内部の書き換え不可能な、安全なＲＯＭ（Read Only Memory）から起動し、そのＲＯＭが、ＩＰＬ（Initial Program Loader）が改ざんされていないかチェックし、改ざんされていない場合のみ、ＩＰＬを、メモリ１２１０へロードし、ＩＰＬへ、制御を移す。
【０３３６】
ＩＰＬは、ＯＳ １１１１や、仮想化ソフトウェア３００１が改ざんされていないかチェックし、改ざんされていない場合のみ、ＯＳ １１１１や、仮想化ソフトウェア３００１を、メモリ１２１０へロードし、ＯＳ １１１１や、仮想化ソフトウェア３００１へ、制御を移すという処理を行う。
【０３３７】
なお、より詳細には、例えば、ＴＣＧ（Trusted Computing グループ）のＭＰＷＧ（Mobile Phone Work グループ）で規定する方式がある。
【０３３８】
なお、本発明は、上記の実施の形態１〜３に限定されないのはもちろんである。例えば、以下のような場合も、本発明に含まれる。
【０３３９】
なお、こうして、検出されるアクセスを行うプロセス以外のその他の各プロセスが停止される。
【０３４０】
しかしながら、実施形態の情報処理装置は、タブレット端末、スマートフォンなどであり、より具体的には、例えば、Ａｎｄｒｏｉｄ端末である。このため、多くの場合には、最前面に表示されているウインドウの１つのプロセスが実行されているだけで、適切な動作がされる。つまり、多くの場合には、その他の各プロセスが停止されても、弊害（問題）が生じない。
【０３４１】
これにより、保護情報の不正な取得が回避されるにも関わらず、多くの場合には、弊害が生じず、弊害が生じ難いようにできる。
【０３４２】
なお、アクセスが検出される保護情報は、サーバ（図１等のコンテンツ蓄積装置１００１を参照）により蓄積されてもよい。つまり、蓄積されるこの保護情報は、アクセスがされない時には、この情報処理装置により記憶されず、アクセスがされる時にのみ、この情報処理装置により記憶されてもよい。このために、アクセスがされない時には、保護情報が不正に取得され難く、アクセスがされる時には、保護情報が不正に取得され易くでもよい。
【０３４３】
なお、先述のプロセス管理部は、マルチプロセスでの動作をさせるためのスケジューラと、シングルプロセスでの動作をさせるためのスケジューラとを備えてもよい。これら２つのスケジューラのうちから、利用されるスケジューラが選択されてもよい。これにより、選択されたスケジューラに対応する方の動作が行われてもよい。
【０３４４】
なお、この情報処理装置は、保護情報へのアクセスが検出されない時には、マルチプロセスでの動作をする第１のモードで動作し、検出される時には、シングルプロセスでの動作をする第２モードで動作してもよい。
【０３４５】
なお、プロセスを特定するための予め定められた識別子（例えば、図７のアプリ識別子１５２１ｂ）が記憶されてもよい。特定されるプロセスによっては、保護情報が不正に取得されないことが、比較的確実でもよい。
【０３４６】
例えば、特定されるプロセスのアプリは、この情報処理装置に対して、製造時などにプリインストールがされたアプリでもよい。
【０３４７】
また、特定されるアプリは、署名が付されたアプリでもよい。
【０３４８】
また、特定されるアプリは、所定のサイト（例えば、Ａｎｄｒｏｉｄ  Ｍａｒｋｅｔのサイト）からダウンロードされたアプリでもよいし、所定のサイト（例えば、いわゆる勝手サイト）以外のサイトからダウンロードされたアプリでもよい。
【０３４９】
これにより、検出されるアクセスをするプロセスにより、保護情報が不正に取得されることも回避されて、保護情報の不正な取得が、より確実に防げる。
【０３５０】
しかも、単に、記憶される識別子が用いられるなどだけの処理で済んで、行われる処理が比較的簡単にできる。
【０３５１】
（１）上記実施の形態における保護情報は、写真データであるとしたが、これに限定されるものではない。
【０３５２】
つまり、保護情報は、例えば、氏名や性別、生年月日、住所、電話番号などの個人情報であってもよいし、写真以外の、動画や音声などのコンテンツであってもよいし、会社などで扱われる秘情報などの機密情報であってもよいし、機器の設定情報など、機器内で保護したいデータであってもよい。また、どの情報が保護情報になるかは、設計時や、商品出荷時に決定し、商品出荷前に、機器に記憶しておいてもよいし、どの情報が保護情報であるかを、ユーザが設定できてもよい。
【０３５３】
（２）上記実施の形態におけるコンテンツ蓄積装置１００１と、コンテンツ表示装置１００２とは、写真データを共有し、コンテンツ表示装置１００２は、コンテンツ蓄積装置１００１と、写真データを共有する時に、ビューアアプリ１１１２以外の動作を停止するとしたが、これに限定されるものではない。
【０３５４】
つまり、コンテンツ蓄積装置１００１は、複数のコンテンツ表示装置１００２と接続してもよいし、コンテンツ表示装置１００２は、複数のコンテンツ蓄積装置１００１と接続してもよい。
【０３５５】
また、コンテンツ蓄積装置１００１は、何らかのデータを格納している装置であればよく、コンテンツ表示装置１００２は、何らかのデータを処理する装置であればよい。
【０３５６】
また、コンテンツ蓄積装置１００１が、コンテンツ表示装置１００２の機能を持ってもよいし、コンテンツ表示装置１００２が、コンテンツ蓄積装置１００１の機能を持ってもよい。
【０３５７】
この時、複数の装置間での共有処理時に、関係のないアプリの動作を停止してもよいし、機器単体で、保護情報を処理する時に、関係のないアプリの動作を停止してもよい。
【０３５８】
（３）上記実施の形態におけるＯＳ １１１１は、保護情報アクセス検出部１５０１と、プロセス管理部１５０２と、プロセス間通信検出部１５０３と、アクセス制御部１５０４とを含むとしたが、これに限定されるものではない。
【０３５９】
つまり、例えば、図１４に示すように、保護情報アクセス検出部１５０１と、プロセス管理部１５０２とを含むとしてもよい。この時、保護情報へのアクセス時に、プロセス間通信により、他のアプリとの連携が行えないため、不正なアプリが、保護情報を入手することが一切出来なくなる。
【０３６０】
また、プロセス管理部１５０２は、プロセスリスト管理部１５１０と、プロセス切替部１５１１と、アプリ実行制御部１５１２とを含むとしたが、これに限定されるものではなく、例えば、図１５に示すように、アプリ実行制御部１５１２を含むとしてもよい。
【０３６１】
上記の構成によれば、保護情報へのアクセスを検出し、保護情報にアクセスする必要のないアプリの実行を停止する事が出来る。
【０３６２】
これにより、保護情報へのアクセス時に、不正なアプリの実行が停止する。このため、不正なアプリによる、保護情報への不正アクセスを防止出来る。
【０３６３】
（４）上記実施の形態における保護情報アクセス検出部１５０１は、保護情報へのアクセスであるかどうかの検出に、保護情報アクセス許可リスト１２２１を使用し、保護情報アクセス許可リスト１２２１に含まれる保護情報識別子と一致するかどうかで、保護情報へのアクセスを検出するとしたが、これに限定されるものではない。
【０３６４】
つまり、例えば、コンテンツ表示装置１００２が、予め指定された通信方式（例えば、Bluetooth（登録商標）や、Wi-Fi：Wireless Fidelity（登録商標）など）で、他の機器と接続した時に、保護情報へのアクセスであると検出してもよいし、ＶＰＮ（Virtual Private Network）で、他の機器と接続した時に、保護情報へのアクセスであると検出してもよい。
【０３６５】
また、接続した時に検出するのではなく、これらの接続を利用してデータ通信を行う時に、検出してもよい。
【０３６６】
これにより、例えば、個人のモバイル機器から、会社のサーバへ、ＶＰＮ接続し、会社の機密情報にアクセスする場合にも、会社へのアクセス専用のアプリ以外のアプリによる、会社の機密情報への不正アクセスを防止することが出来る。
【０３６７】
更に、特定のアプリ（例えば、ビューアアプリ１１１２）が起動した時に、保護情報へのアクセスであると検出してもよい。
【０３６８】
この時、「特定のアプリ」は、予め指定された、商品出荷時などに、不揮発性記憶装置に記録されたアプリでもよいし、アプリをダウンロードした時に、アプリに付属する設定ファイルに、「保護情報へアクセスする」と記載されているアプリでもよいし、特定の証明書で署名されたアプリでもよい。
【０３６９】
また、保護情報を示すフラグや、保護情報であると定義されたファイルや、フォルダへアクセスしたことにより、保護情報へのアクセスであると検出してもよい。
【０３７０】
更に、これらのファイルやフォルダが、コンテンツ蓄積装置１００１のように、他の端末内にあってもよいし、コンテンツ表示装置１００２の内部にあるファイルやフォルダであってもよい。
【０３７１】
（５）上記実施の形態における保護情報アクセス許可リスト１２２１は、保護情報識別子と、アプリ識別子とを対応付けて格納したリストであるとしたが、これに限定されるものではない。
【０３７２】
つまり、保護情報アクセス許可リスト１２２１においては、１つの保護情報識別子に、複数のアプリ識別子が対応付けられていてもよい。
【０３７３】
また、保護情報へアクセスする間に実行するアプリのアプリ識別子ではなく、保護情報へアクセスしている間に停止するアプリのアプリ識別子であってもよい。
【０３７４】
この時、アプリ実行制御部１５１２は、保護情報アクセス検出部１５０１から通知されたアプリ識別子に対応付けられていないプロセスのプロセス識別子を、プロセスリスト管理部１５１０から取得し、新しいプロセスリストを作成する。
【０３７５】
また、アプリ識別子とは対応付けを行わず、保護情報へアクセスを行ったアプリのみを実行し、他のアプリを停止するとしてもよい。
【０３７６】
この時の保護情報アクセス許可リスト１２２１は、保護情報識別子のみになる。
【０３７７】
保護情報アクセス検出部１５０１は、保護情報識別子に対応付けられたアプリ識別子ではなく、保護情報へアクセスしたアプリのアプリ識別子を、プロセス管理部１５０２へ通知する。
【０３７８】
（６）上記実施の形態における保護情報アクセス検出部１５０１は、保護情報へのアクセスであるかどうかの検出を行うとしたが、これに限定されるものではなく、保護情報へアクセスしたアプリが、保護情報へのアクセスを許可されたアプリであるかの判定を行ってもよい。
【０３７９】
（７）上記実施の形態におけるＣＰＵ１２０１では、同時に実行可能なアプリは、１つであるとしたが、これに限定されるものではない。
【０３８０】
つまり、例えば、ＣＰＵ１２０１は、１つのＣＰＵに、複数の実行部（コア）を搭載したマルチコアＣＰＵで、搭載したコアの数以下のアプリが、同時に実行可能であってもよい。また、ＣＰＵ１２０１は、複数のＣＰＵを搭載し、搭載したＣＰＵの数以下のアプリが同時に実行可能であってよい。
【０３８１】
この時、プロセス管理部１５０２は、それぞれのコアやＣＰＵ上で動作するアプリを、同時に、又は、それぞれのコアやそれぞれのＣＰＵごとに個別のタイミングで、切り替える。
【０３８２】
（８）上記実施の形態におけるプロセスリスト１５２２や１５２３、１５２４のそれぞれは、アプリ識別子と、プロセス識別子とを含むとしたが、これに限定されるものではなく、アプリ識別子と、プロセス識別子と、実行可否フラグとを含んでもよい。
【０３８３】
実行が許可されたプロセスには、実行可否フラグに、「可」を設定し、実行が許可されていないプロセスには、「否」を設定する。この時、アプリ実行制御部１５１２は、プロセスリスト管理部１５１０へ、新しいプロセスリストを通知するのではなく、実行を停止するアプリ識別子、又は、プロセス識別子を、プロセスリスト管理部１５１０へ通知し、プロセスリスト管理部１５１０が、通知されたアプリ識別子やプロセス識別子に対応した実行可否フラグを、「否」に設定してもよい。逆に、アプリ実行制御部１５１２は、実行を継続するアプリ識別子、又は、プロセス識別子を、プロセスリスト管理部１５１０へ通知し、プロセスリスト管理部１５１０が、通知されたアプリ識別子やプロセス識別子以外の実行可否フラグを、「否」に設定してもよい。
【０３８４】
（９）上記実施の形態におけるプロセス間通信検出部１５０３は、ＯＳ １１１１上で動作しているアプリが、保護情報へアクセスしている間、他のアプリと連携するために、ＯＳ １１１１へ、プロセス間通信の依頼を行った場合に、それを検出し、プロセス管理部１５０２とアクセス制御部１５０４とへ、それぞれ、プロセス間通信の依頼を検出したことを通知するとしたが、これに限定されるものではない。
【０３８５】
つまり、その依頼が許可されているかを判定し、許可されている場合にのみ、プロセス間通信の依頼を検出したことを通知してもよい。
【０３８６】
なお、許可されているかどうかの判定方法は、例えば、通知されるデータの種類によって判定する方法でもよいし、通知先のアプリによって判定する方法などでもよい。
【０３８７】
なお、データの種類による判定方法としては、例えば、写真データであれば、通知を許可しないとの方法や、写真データは許可するが、個人情報は許可しないなどでの方法等がある。
【０３８８】
通知先のアプリによる判定方法としては、例えば、商品出荷時に、既にインストール済みのアプリへの通知は許可する方法や、アプリに付加された署名の署名者によって、許可するか判定する方法や、通知先のアプリがアクセス出来るリソースの種類に応じて、判定する方法などの各種の方法がある。
【０３８９】
（１０）上記実施の形態におけるアクセス制御部１５０４は、プロセス間通信検出部１５０３から通知されたアプリ識別子を持つプロセスが、ネットワークへのアクセスや、ファイルへの書込処理を行う時に、それを検出し、ネットワークへのアクセスや、ファイルへの書込処理を行ってもよいかを、ユーザへ問い合わせるとしたが、これに限定されるものではない。
【０３９０】
つまり、アクセスを禁止してもよいし、ネットワークアクセスは、禁止し、ファイルへの書込処理は、許可するなど、アクセスの種類によって分けてもよい。
【０３９１】
検出後の処理方法は、商品出荷時に設定するとしてもよいし、設定メニューを準備し、ユーザが設定可能にしてもよいし、プロセス間通信で通信される、データの種類に応じて、処理方法を変えてもよい。また、ユーザへ問い合わせるのではなく、予め指定されたサーバへ問い合わせるとしてもよい。
【０３９２】
（１１）上記実施の形態におけるアプリ実行制御部１５１２は、プロセスリスト管理部１５１０から取得したプロセス識別子を用いて、プロセスリスト１５２３を作成するとしたが、これに限定されるものではない。
【０３９３】
つまり、プロセスリスト１５２３には、プロセスリスト管理部１５１０から取得した保護情報へのアクセスを依頼したプロセスのプロセス識別子だけでなく、他のプロセスのプロセス識別子が含まれてもよい。
【０３９４】
例えば、音楽プレーヤなど、連続して動作が必要なアプリに関しては、保護情報へアクセスしている間にも、動作をさせるために、プロセスリスト１５２３に含めてもよい。
【０３９５】
なお、連続して動作させるアプリは、ユーザが指定したアプリでもよいし、音楽プレーヤなどでは、連続して動作させるなどして、アプリの種類によって、連続して動作させてもよいし、アプリに付加された署名によって、連続して動作させるかを判断してもよい。
【０３９６】
更に、保護情報へのアクセスを依頼したプロセス以外の、動作させるプロセスに関しては、保護情報へアクセスしている間には、アクセス制御部１５０４により、アクセス制御を行ってもよい。
【０３９７】
この時、アプリ実行制御部１５１２は、連続して動作させるプロセスのプロセス識別子を、アクセス制御部１５０４へ通知する。
【０３９８】
（１２）上記の各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記ＲＡＭ又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組合わせされて構成されたものである。
【０３９９】
（１３）上記の各装置を構成する構成要素の一部又は全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムＬＳＩは、その機能を達成する。
【０４００】
また、上記の各装置を構成する構成要素の各部は、個別に１チップ化されていてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０４０１】
また、ここでは、システムＬＳＩとしたが、集積度の違いにより、ＩＣ、ＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０４０２】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０４０３】
（１４）上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なＩＣカード又は単体のモジュールから構成されているとしてもよい。前記ＩＣカード又は前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。前記ＩＣカード又は前記モジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ＩＣカード又は前記モジュールは、その機能を達成する。このＩＣカード又はこのモジュールは、耐タンパー性を有するとしてもよい。
【０４０４】
（１５）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
【０４０５】
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ（登録商標）Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
【０４０６】
また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【０４０７】
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
【０４０８】
また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【０４０９】
（１６）上記実施の形態及び上記変形例をそれぞれ組合わせるとしてもよい。
【０４１０】
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記各実施の形態の画像復号化装置などを実現するソフトウェアは、次のようなプログラムである。
【０４１１】
すなわち、このプログラムは、コンピュータに、情報処理装置が、保護情報を処理する情報処理方法であって、前記情報処理装置内で動作するプロセスを管理するプロセス管理ステップと、前記保護情報へのアクセスを検出するアクセス検出ステップとを含み、前記プロセス管理ステップでは、前記アクセス検出ステップで、前記保護情報へのアクセスを検出した時に、前記保護情報へのアクセスをするプロセス以外のその他の各プロセスの動作を一時的に停止させる実行制御ステップを含む情報処理方法の各ステップを実行させる。
【産業上の利用可能性】
【０４１２】
本発明にかかる情報処理装置は、保護情報へのアクセスが許可されたアプリのみを動作させるアプリ実行制御部を有し、不正なアプリが動作していたとしても、保護情報へのアクセス時には不正なアプリの動作を一時的に停止することで不正なアプリによる保護情報へのアクセスを防止出来る情報処理装置等として有用である。
【符号の説明】
【０４１３】
１０００  コンテンツ蓄積・表示システム
１００１  コンテンツ蓄積装置
１００２  コンテンツ表示装置
１００２ｐ  プロセス
１０１０  カメラ
１０１１  ＰＣ
１０２０  アプリ配信サーバ
１１０１、１１１１  ＯＳ
１１０２  コンテンツ収集アプリ
１１０３  コンテンツ共有アプリ
１１１２  ビューアアプリ
１１１３  ダウンロード制御アプリ
１１１４  ＤＬアプリＡ
１１１５  ＤＬアプリＢ
１２００  システムＬＳＩ
１２０１  ＣＰＵ
１２０２  ネットワークＩ／Ｆ
１２０３  入出力Ｉ／Ｆ
１２１０  メモリ
１２２０  不揮発性記憶装置
１２２１  保護情報アクセス許可リスト
１５０１、３５０１  保護情報アクセス検出部
１５０２  プロセス管理部
１５０３  プロセス間通信検出部
１５０４、３５０４  アクセス制御部
１５１０  プロセスリスト管理部
１５１１  プロセス切替部
１５１２  アプリ実行制御部
１５１３  プロセス状態管理部
１５２２  通常時プロセスリスト
１５２３  保護情報アクセス時プロセスリスト
１５２４  プロセス間通信時プロセスリスト
２０００  アプリ保持部
２００１  アプリ受信処理部
２００２  アプリ送信処理部
３００１  仮想化ソフトウェア
３００２、３００３、３００４、３００５  仮想マシン
３０１０、３０２０、３０３０、３０４０  仮想化ハードウェア
３０１１  ＯＳＡ
３０１２  アプリＡ
３０１３  アプリＢ
３０２１  ＯＳＢ
３０２２  アプリＣ
３０２３  アプリＤ
３０３１  ＯＳＣ
３０３２  アプリＥ
３０３３  アプリＦ
３０４１  ＯＳＤ
３０４２  アプリＧ
３０４３  アプリＨ
３５０２  仮想マシン管理部
３５０３  仮想マシン間通信検出部
３５１０  仮想マシンリスト管理部
３５１１  仮想マシン切替部
３５１２  仮想マシン実行制御部
【図１】
0005983940.tif 000002
【図２】
0005983940.tif 000003
【図３】
0005983940.tif 000004
【図４】
0005983940.tif 000005
【図５】
0005983940.tif 000006
【図６】
0005983940.tif 000007
【図７】
0005983940.tif 000008
【図８Ａ】
0005983940.tif 000009
【図８Ｂ】
0005983940.tif 000010
【図８Ｃ】
0005983940.tif 000011
【図９】
0005983940.tif 000012
【図１０】
0005983940.tif 000013
【図１１】
0005983940.tif 000014
【図１２】
0005983940.tif 000015
【図１３】
0005983940.tif 000016
【図１４】
0005983940.tif 000017
【図１５】
0005983940.tif 000018