JP5749814B2 - プレディケートを用いた動的なデバイス・コンフィグレーション - Google Patents

プレディケートを用いた動的なデバイス・コンフィグレーション Download PDF

Info

Publication number
JP5749814B2
JP5749814B2 JP2013547533A JP2013547533A JP5749814B2 JP 5749814 B2 JP5749814 B2 JP 5749814B2 JP 2013547533 A JP2013547533 A JP 2013547533A JP 2013547533 A JP2013547533 A JP 2013547533A JP 5749814 B2 JP5749814 B2 JP 5749814B2
Authority
JP
Japan
Prior art keywords
profile
client device
system state
configuration
predicate
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.)
Active
Application number
JP2013547533A
Other languages
English (en)
Other versions
JP2014506363A (ja
Inventor
ユッシペッカ マンテレ,
ユッシペッカ マンテレ,
マーク, ウィリアム ホイットモア,
マーク, ウィリアム ホイットモア,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2014506363A publication Critical patent/JP2014506363A/ja
Application granted granted Critical
Publication of JP5749814B2 publication Critical patent/JP5749814B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location

Description

本発明は、データ処理システムに全般的に関連する。より詳細には、本発明は、プロファイルベースのプレディケートを用いた動的なデバイス・コンフィグレーションに関する。
コンピューティング装置の多用途性の増大に伴い、異なる動作環境に適合させるための装置のコンフィグレーションは、一段と複雑なものとなってきている。例えば、装置は、ユーザ毎に異なるユーザ・インタフェースを提供しても良いし、場所毎に異なる遠隔サービスに接続しても良いし、また、ユーザの嗜好や装置管理者からの要求に応じてアプリケーションのパラメータをカスタマイズする等しても良い。しかしながら、それと同時に装置のコンフィグレーションの複雑度が顕著に増大し、装置の利用がより一層難しくなる。
典型的には、装置内にインストールされたアプリケーションのためのデフォルト設定を特定するために、コンフィグレーション・ファイルが装置にプレインストールされていてもよい。オプションとして、装置に格納されている設定の手動変更がユーザ・インタフェースにより許可されても良い。しかしながら、利用可能な設定の複雑度が上がるにつれ、装置の通常ユーザにとっては、手動でのコンフィグレーションは非常に退屈な作業となるかもしれない。更に、大半のユーザは特定のアプリケーションをコンフィグレーションするのに必要な特別な専門的知識を有していないかもしれない。装置に提供される管理されたサービスに関しては、手動でのコンフィグレーションを利用したセントラル・ポリシーの行使は、コストが非常に高くなってしまうかもしれない。そのように、現代の使用環境を支援するために装置の動作を適合させる従来的なコンフィグレーションの管理手法は装置を扱いにくくし、維持に費用がかかり、管理が難しく、他の問題に対する使用に適さないものとしてしまうかもしれない。
本発明は、装置内で利用可能なアプリケーション/サービスのためのコンフィグレーション設定を動的に更新可能とする。コンフィグレーション設定は、装置の動作状態において検出された変化に応じてコンフィグレーション・プロファイルに従って自動的に適合される。ある実施形態では、コンフィグレーション・プロファイルは、様々な動作状況下においてコンフィグレーション設定がどのように更新されるべきかを特定するためにプレディケート(条件及び動作を伴うルールセット)を含んでいても良い。よって、コンフィグレーション・プロファイルは、装置の動作環境についてユーザが関心を払わずとも、装置の適切な動作を保証することができる。さらに、管理者は(例えば、プレディケートを用いて)装置内のコンフィグレーション・プロファイル内に埋め込まれた管理ポリシーを実行するために、コンフィグレーション・プロファイルを配布することができる。これらのメカニズムの詳細についてユーザが関心を払うことを要求することもなく、自動的にこれらのアプリケーションのコンフィグレーションを行うために、任意に、対応アプリケーションのための特別なコンフィグレーションのメカニズムを、動的にコンフィグレーション・プロファイル内に組込むこともできる。
ある実施形態では、コンフィグレーションプロファイルはプロファイル・プレディケート及びプロファイル・ペイロード(或いは、設定データ)を含んでいても良い。プロファイル・ペイロードの適用可能性は、プロファイル・プレディケート内の動的に決定される条件に基づいても良い。よって、プロファイル・プレディケートによって決まる時点で、(装置のコンフィグレーション設定内で)プロファイル・ペイロードの一部が能動的であっても良い。コンフィグレーション・プロファイルは、装置(又はクライアント装置)内でユーザに見えるように自立的に(或いは、自動的に)インストールされても良い。コンフィグレーション・プロファイルのアプリケーションは、プロファイル・プレディケートを使って装置の現在の状態に依存する所定のペイロード・データや設定を有効にしたり、無効にしたりしても良い。結果として、異なるサービス/アプリケーションのための高機能の装置コンフィグレーションを、手動作業や管理的な努力なしに実現することができる。
発明の実施形態は、コンフィグレーションのためにクライアント装置内に汎用プロファイルを格納する方法及び装置を含むことができる。汎用プロファイルは、プロファイル・プレディケートに関連するプロファイル・ペイロードを含んでいても良い。プロファイル・ペイロードは、クライアント装置をコンフィグレーションするための設定候補の範囲を特定しても良い。ある実施形態では、プロファイル・プレディケートは、クライアント装置のシステム(又は動作)状態に従って、設定候補のいずれがコンフィグレーションに適用可能であるかを特定する。クライアント装置の動作状態の変化は、ランタイム内に動的に決定されても良い。システム状態の決定された変化に対して適用可能なプロファイル・ペイロードの部分は、関連プロファイル・プレディケートを用いて識別されても良い。結果として、プロファイル・ペイロードの識別された部分を適用することにより、システム状態の変化に関してクライアント装置の設定が更新されてもよい。
別の実施形態では、アプリケーションのコンフィグレーションのためにクライアント装置に実行ファイルがインストールされても良い。プレディケートは、クライアント装置のプラファイル内の実行ファイルと関連づけられても良い。アプリケーションのコンフィグレーションを更新するための実行ファイルを選択するために、プレディケート内で1つ以上の条件が特定されても良い。クライアント装置の動作状態が変化すると、動作状態の変化により条件が満たされることになったかどうかを判定するために、プレディケートが評価されても良い。条件が満たされると評価された場合、アプリケーションのコンフィグレーションを更新するために当該実行ファイルが選択されても良い。
更に別の実施形態では、汎用プロファイルがクライアント装置の設定のためにコンフィグレーションされてもよい。汎用プロファイルはプロファイル・プレディケートに関連するプロファイル・ペイロードを含んでいても良い。クライアント装置からシステム状態について受信すると、プロファイル・ペイロードの部分が識別されても良い。プロファイル・ペイロードの識別された部分は、プロファイル・プレディケートの対応する部分と関連づけられていても良い。プロファイル・ペイロードの識別された部分と、システム状態とのマッチングは、プロファイル・プレディケートの対応部分において示されても良い。マッチングの結果として、プロファイル・ペイロードの識別された部分は、クライアント装置の設定を更新するためにクライアント装置に送信されてもよい。
本発明の他の特徴は添付の図面及び以下の発明の詳細な説明により明らかとなるであろう。
本発明は、限定ではなく例示的な意味において、添付する図面に示される。図面において、初時の要素には同様の参照番号が使用されている。
プレディケートを用いた動的な装置のコンフィグレーションのためのネットワーク化されたシステムの1つの実施形態を示すブロック図である。 実施形態に対応するコンフィグレーションのための動的プロファイルを有する典型的なシステムを示すブロック図である。 実施形態に対応するプロファイル・ペイロードとプロファイル・プレディケートとを含む典型的なデータユニットを示すブロック図である。 実施形態に対応する装置を動的にコンフィグレーションするための処理の1つの実施形態を示すフローチャートである。 実施形態に対応する実行ファイルを介したアプリケーションのコンフィグレーション処理の1つの実施形態を示すフローチャートである。 実施形態に対応するプレディケートを用いたクライアント装置の遠隔コンフィグレーション処理の1つの実施形態を示すフローチャートである。 実施形態において使用されてもよいデータ処理システムの一例を示す図である。 実施形態との関連で使用されてもよい典型的なコンピュータ・システムの一例を示す図である。
以下、装置内で実行中の動作のプレディケートを利用した動的なコンフィグレーションのための方法及び装置について記述する。以下の記述において、本発明の実施形態の全体的な説明を提供するために、多くの詳細事項が説明される。しかしながら、当業者には明らかなように、本発明の実施形態はこれらの特定の詳細事項を利用せずに実施されても良い。別の例では、本発明の実施形態を曖昧にしないために、周知の構造や装置が詳細な内容ではなくブロック図の形態において示されている。
「1つの実施形態」や「ある実施形態」に関する明細書中の言及は、実施形態との関連で記述される特定の特徴、構造、特性は、発明の少なくとも1つの実施形態に含まれるという意味である。明細書中の様々な場所に登場する「1つの実施形態において」との語は、全てが必ずしも同一の実施形態について言及しているわけではない。
特に別の方法に言及しない限り、明細書全体について「処理する」、「コンピューティング」、「計算する」、「判定する」、「表示する」等の用語を使用した議論は、データ処理システムや類似の電子コンピューティング装置の動作や処理に言及しているものと理解される。データ処理システムや電子コンピューティング装置は、コンピュータ・システムのレジスタ及びメモリ内の物理的な(電子的な)量として表されたデータを、コンピュータ・システムのメモリ、レジスタ或いは他のそのような情報の格納装置、送信装置または表示装置内の同様に物理的量として表される他のデータに操作、変換する。
ここで提供されるアルゴリズム及び表示は、任意の特定のコンピュータや他の装置に本来的に関連するものではない。様々な汎用システムを本明細書における教示に従ったプログラムと共に利用しても良いし、或いは、要求されるマシン実装された方法オペレーションを実行するために、より特別な装置を構築すると便利かもしれない。これらの様々なシステムに要求される構造は、以下の記述から明らかになるであろう。更に、本発明の実施形態は特定のプログラム言語を参照して説明されるものではない。ここに示す本発明の実施形態の教示を実施するために様々なプログラム言語を利用可能であることが理解されよう。
発明の実施形態は、方法や、データ処理システムで実行されると、当該システムが方法を実行するような実行可能な命令を格納するコンピュータで読み取りが可能な非一時的な記憶媒体として実施が可能である。データ処理システムのような装置もまた、発明の実施形態とすることができる。本発明の他の特徴は、添付の図面及び以下の詳細な説明から明らかとなろう。
本発明の少なくとも特定の実施形態は、携帯型の少なくとも音楽及びビデオのいずれかのためのメディア・プレーヤの一部であっても良い。メディア・プレーヤは、メディアを格納する格納装置にメディアを提供するメディア処理システムを含んでも良いし、アンテナシステム及びメディア処理システムと結合された無線周波数(RF)トランシーバ(例えば、携帯電話のためのRFトランシーバ)を更に含んでも良い。ある実施形態では、遠隔の格納装置に格納されているメディアは当該RFトランシーバを介して、メディア・プレーヤに送信されても良い。当該メディアは、例えば、1つ以上の音楽や他の音声、静止画、または動画であっても良い。
携帯メディア・プレーヤは、タッチスクリーン入力装置、プッシュボタン装置、移動可能なポインティング入力装置や他の入力装置のような、メディア選択装置を含んでも良い。メディア選択装置は、格納装置及び遠隔格納装置の少なくともいずれかに格納されているメディアを選択するために利用されても良い。携帯メディア・プレーヤは、少なくともある実施形態において、表示装置を含んでいてもよく、当該表示装置は、メディアのタイルや他の指標を表示するためにメディア処理システムと結合されても良い。当該メディアは、入力装置を介して選択され、また、スピーカやイヤフォンを介して提示されるか、或いは、表示装置上で提示されるか、さもなくば表示装置とスピーカやイヤフォンの両方で提示される。
ここで説明する発明の実施形態は、他のタイプのデータ処理装置の一部であっても良い。例えば、娯楽システム、パーソナル・デジタル・アシスタント(PDA)、汎用コンピュータ・システム、特定用途コンピュータ・システム、他の装置内の埋め込み装置、メディア・プレーヤを含まない携帯電話、これらの装置の特徴や機能を結合する装置(例えば、1つの携帯装置内で、PDA、娯楽システム及び携帯電話と結合されたiPod(登録商標)のようなメディア・プレーヤ)、あるいは、マルチタッチ携帯装置や、マルチタッチ入力装置を有する携帯電話や携帯コンピュータのようなマルチタッチ入力装置を含む装置又は消費者用電子製品であっても良い。
1つの実施形態において、ユーザが装置の様々な動作状態に注意を向けるかどうかにかかわらず、コンフィグレーション・プロファイルは、装置の動作にコンフィグレーション設定を適用することを管理者に許可する。コンフィグレーション・プロファイルは、様々な動作環境や動作状態の下で、個々の設定群を動的に利用するために、装置のアプリケーションやシステムサービスのための柔軟性を提供しても良い。1つの実施形態において、コンフィグレーション・プロファイルはコンフィグレーション・データを含んでいても良い。当該コンフィグレーション・データは、アプリケーションを修正したり再コンパイルしたりすることなしにアプリケーションの所定のプロパティやパラメータを変更することで、アプリケーションの柔軟性を高くする。装置内で実行中のアプリケーションやサービスは、適切に機能するため、及び/又は、管理ポリシーに従うために、対応するコンフィグレーション設定に依存しても良い。コンフィグレーション設定は、例えばユーザ・アカウント設定、ネットワーク設定、電力設定、特権、制限、或いは、アプリケーション/サービスのための他の適用可能なハードウェア的/ソフトウェア的な設定を含んでいても良い。
装置の動作状態は、装置のOSを介して監視或いは検査されるところの変数のセットに対応しても良い。動作状態は、例えば、特定のアプリケーションが実行中であるかどうか、現在実行中のアプリケーションの数、装置内における現在の日付セット、特定のアプリケーションがどのくらい長く動作しているか、デフォルト・プリンタの識別子、ネットワークIPアドレス、装置の物理的位置、現在のアクティブ・ユーザ(例:識別子、ユーザグループ)、装置内でシステムがどのくらい長く動作しているか、或いは、他の適用可能なハードウェア的/ソフトウェア的状態等を示してもよい。動作状態は、装置が動作している環境に依存しても良い。当該環境は、例えば、どのリモート・プリンタにアクセス可能であるか、どのネットワークが有効か、どのリモートサーバがアクティブか、或いは、他の関連するアプリケーションの環境パラメータなどであって、装置の動作に適用可能なもの等の、装置の外部で制御される様々なパラメータ値を含んでも良い。
1つの実施形態において、プロファイル・プレディケートは、装置内で動作状態の変化が検出された場合に、装置のコンフィグレーション設定の更新を判定するために評価されても良い。プロファイル・プレディケートは、対応するコンフィグレーション設定に対してコンフィグレーション・プロファイル内の関連プロファイル・ペイロードを適用するための所定の条件が満たされるかどうかを特定するためのルールセットを含んでも良い。いくつかの実施形態では、1つのコードを実行することにより条件が評価されても良い。実行結果は、条件が満たされるかどうかを示す真偽の戻り値(例:バイナリ値)を含んでもよい。コンフィグレーション・プロファイルに従ってランタイム間に異なる条件を実施するため、ルールは動的に構築されても良い。いくつかの実施形態では、検出された動作状態の変化に適用可能なプロファイル・プレディケートを識別するために、コンフィグレーション・プロファイル(例えば、デバイス・システム内に格納又はインストールされたプロファイル)の検索が実行されてもよい。識別されたプロファイル・プレディケート(例:ルールセット)は、コンフィグレーション設定に対応プロファイル・ペイロードを適用するために満たされるべき条件を含んでもよい。
例えば、プロファイル・プレディケートにおける条件は、装置が特定の機器モデルや機器タイプに属するかどうか、装置が企業内ネットワークに接続するための特権を有するかどうか、特定のネットワーク・インタフェース(例:イーサネット・インタフェース)が装置内に存在している/インストールされているかどうか、現在のユーザ・アカウントが特定のグループ(例:学校の4年生)に属しているかどうか、又は、アプリケーションのためのプロファイル・データがインストールされているかどうか、を特定するためのものであってもよいし、或いは、他の適用可能な条件であってもよい。プロファイル・プレディケートの評価又は実行は、これらの条件が満たされるかどうかを判定することであってもよい。1つの実施形態では、条件の指定は、ブール値、範囲をもった値、特定された値の離散的なセット(文字列や数値)のような変数値や、他の適用可能な値に基づいていても良い。
プロファイル・ペイロードは、コンフィグレーション・プロファイル内の関連プロファイル・プレディケートの評価結果に基づいて、装置のコンフィグレーション設定に適用されても良い。プロファイル・ペイロードの適用は装置内で動的に新しい設定を生成したり、及び/又は、既存の設定を更新したりしても良い。プロファイル・ペイロードは、装置内の(現在動作中であっても良いし、動作中でなくても良い)特定のアプリケーション/サービスのためにコンフィグレーション設定に対して適用可能な(或いは、コンフィグレーション動作を起動可能な)記述(例:述語体系(nomenclature)、マニフェスト、制約、命令、或いは、他の適用可能な設定に関する指定)を含んでいても良い。オプションとして、プロファイル・ペイロードは、コンフィグレーション設定を更新するために実行される実行コードを含んでいても良い。
例えば、学校のデスクトップ・コンピュータにおけるコンフィグレーション・プロファイルに含まれるプロファイル・プレディケートは、4年生のユーザのために、ユーザ・インタフェース・ドックエリアにより起動されるか、利用可能になるべき特定のピクセル・アート・アプリケーションを必要とするかもしれない。4年生がデスクトップ・コンピュータに一度ログインすると、特定のピクセル・アート・アプリケーションが動作しているかどうかを判定するために、プロファイル・プレディケートが評価されても良い。この特定のアプリケーションが動作していない及び/又はユーザ・インタフェース・ドックエリアに存在しないことが判明した場合、(自動のアプリケーション取得及びインストールを行い)デスクトップ・コンピュータの表示画面のユーザ・インタフェース・ドックエリア内に表示すると共に、ピクセル・アート・アプリケーションを起動するために、対応するプロファイル・ペイロードが適用されてもよい。
いくつかの実施形態では、所定の動作を実行するために対応するプロファイル・ペイロードを起動するために、アプリケーションのインストール及び/又は削除が監視されるべきであることをプロファイル・プレディケートが規定しても良い。例えば、第1のアプリケーションのインストールは、第2のアプリケーションがインストール及び/又は起動されていることを要求しても良い。あるアプリケーションの削除は、ユーザ・インタフェース表示画面内のドックエリアに配置されたアプリケーション・アイコンを削除するような、例えば、プロファイル・ペイロードにおいて特定されるスクリプト・コードを介したクリーンナップ動作のトリガーとなっても良い。
1つの実施形態では、プロファイル・ペイロードから起動された動作は、装置の現在の動作状態に依存しても良い。装置の動作状態は、例えば、装置のスリープ状態(エネルギーを抑制するための低電力状態)か又は動作状態か、ユーザが装置にログインした(或いは、現在ログイン中)か又はログアウトしたか、ユーザ情報(例:ユーザ特権、グループ・メンバーシップ)、ネットワーク設定、場所、時間、又は他の適用可能な状態を示してもよい。1つの実施形態では、新しいユーザが装置にログインすると、新しいユーザが制限された特権を有するかどうかを判定するためにプロファイル・プレディケートが評価される。例えば、キオスク・モード(クッキーや他のブラウザ状態情報を格納/取得する性能を排除したモード)でブラウザを強制的に動作させるためにブラウザ・アプリケーションの設定を変更するように、特定のアプリケーションの性能を制限するためにプロファイル・ペイロードを適用してもよい。
いくつかの実施形態では、新しい変更された設定を取得、適用させるために、動作中のアプリケーションに対して設定が変更されたことを通知してもよい。例えば、プロファイル・プレディケートは、装置の現在のネットワーク設定に基づいて、関連プロファイル・ペイロード内で特定されるようにコンフィグレーションされることを異なるプリンタに対して指示する。このようにして、移動体装置は、第1の物理的位置(例:ビルA)から第2の物理的位置(ビルB)へ装置が移動したことに伴い、異なるプリンタとの間で自動的かつ動的にコンフィグレーションを実行できる。ネットワーク設定に関連するプロファイルは、移動体電話がユーザ・インタフェース(例:特定の無線ネットワークに参加した場合に特別なアイコンを自動的に表示する)を自動的に変更すること、電話番号(例:装置に表示される発呼ボタンの緊急電話番号)を更新すること、或いは、他の適用可能な設定の変更を許可しても良い。時間ベースの動作状態につき、例えば、TVセット・トップ・ボックス装置について、一日のうち異なる時間スロットに応じて視聴制限設定を自動的に変更しても良い。
1つの実施形態では、プロファイル・サーバとの遠隔ネットワーク接続を介してMDM(Mobile Device Management)プロトコルのような管理プロトコルに基づいてコンフィグレーション・プロファイルのインストールを行っても良い。また、或いは、オプションとして、コンフィグレーション・プロファイルのためのファイル(例えば、各アプリケーションは独立のプロファイル・ファイルと関連づけられていても良い)は、直接に(例えば、ユーザによって)装置にインストールされても良い。装置内のプロファイル・データベースは、プロファイル・プレディケートと関連プロファイル・ペイロードを特定するためにアプリケーションまたはサービスに関連したプロファイル文書を格納することができる。
1つの実施形態において、装置内で動作中のアプリケーション又はサービスは、関連コンフィグレーション設定を当該アプリケーションやサービスのために指定された(ローカル又は遠隔の)格納場所から取得することができる。アプリケーションやサービスは起動時に、完全に有効になる前にそのコンフィグレーション設定に対するアクセスを要求しても良い。オプションとして、例えば実行中に指示を受けた場合にアプリケーションやサービスがコンフィグレーション設定を再読込してもよい。1つの実施形態において、コンフィグレーション・エンジンは、コンフィグレーション・プロファイルを格納しているプロファイル・データベースに従い、コンフィグレーション・プロファイルに対する変更に応じて装置内に格納されたコンフィグレーション設定を更新することができる。それに引き続き、コンフィグレーション・エンジンは、変更による影響を受けるアプリケーション/サービスに関連コンフィグレーション設定を再度読み込むように通知又は指示を出しても良い。
ある実施形態では、コンフィグレーション・プロファイルは、コンフィグレーション・プロファイル内のプロファイル・ペイロードに動的にアタッチできるサード・パーティのプラグイン・コンポーネントにより、アプリケーションの管理容易性を拡張しても良い。プラグイン・コンポーネントは、ダイナミック・リンク・ライブラリのような実行コードであっても良い。また、プラグイン・コンポーネントはアプリケーションへのAPI(Application Programming Interface)コールにより起動されても良い。コンフィグレーションのメカニズムは、アプリケーションの所有物であり、及び/又は、管理するには複雑すぎるが、プラグイン・コンポーネントにより使用可能にしても良い。よって、コンフィグレーション・プロファイル内のプラグインのメカニズムにより、アプリケーションは自身のコンフィグレーションに直接に参加することができる。
例えば、装置内で動作中の写真グラフィックス・アプリケーションは、異なる色空間設定の下で動作するように構成されていても良い。当該写真グラフィックス・アプリケーションのためのコンフィグレーション設定を明示的に特定する代わりに、装置にインストールされたコンフィグレーション・プロファイルが、コンフィグレーション・プロファイル内のプロファイル・プレディケートにおいて特定されても良いところの、例えば、会社方針で是認された必要とされる色空間に従ってコンフィグレーション設定の更新を実行するプラグイン・コンポーネントを含んでも良い。1つの実施形態において、写真グラフィックス・アプリケーションを装置にインストールすると、当該写真グラフィックス・アプリケーションをコンフィグレーションするために、プロファイル・プレディケートに関連するプロファイル・ペイロードを介してプラグイン・コンポーネントが起動されても良い。よって、プラグイン内に含まれている、要求された色空間のための設定をコンフィグレーションするための写真グラフィックス・アプリケーションのプロバイダの内部的な知識が、装置のコンフィグレーションのための動的に適用される。
1つの実施形態では、プロファイル・サーバは、クライアント装置をコンフィグレーションするためのコンフィグレーション・プロファイルを分配しても良い。プロファイル・サーバは、装置から受信した動作状態に基づき、装置のためのカスタマイズされたプロファイルを動的に構築してもよい。いくつかの実施形態では、プロファイル・サーバは、装置の現在の動作状態にアクセスする必要性なしで装置へデフォルト・プロファイルを提供(或いは送信)しても良い。また、オプションとして、プロファイル・サーバは、クライアントのためにどのプロファイル・プレディケートとペイロードをコンフィグレーション・プロファイル内に含めるかを決定するために、装置から動作状態を受信しても良く、これは限定された範囲(例えば、設定及び/又は状態の全ての詳細や事実はではない)であっても良い。デフォルトのプロファイルは、装置の初期プロファイルであってもよい。いくつかの実施形態では、各装置は、管理サーバやプロファイル・サーバに当該装置へ初期プロファイルを配布することを許可するように構成されていても良い。初期プロファイルの起動は、装置側で始動されても良いし、或いは、プロファイル・サーバにより始動されても良い。例えば、プロファイルに含まれるプレディケートが装置において満たされる場合に、初期プロファイルが起動されてもよい。
プロファイル・サーバは、結合プロファイルとしてコンフィグレーション・プロファイルを生成するために、装置の動作状態と組み合わされてもよいところの設定(例えば、管理者がコンフィグレーションしたもの)を含んでいてもよい。プロファイル・サーバは、例えば、アプリケーションを装置にインストールしたり装置から削除したりするために、結合プロファイルを装置内で制御してもよい。1つの実施形態において、更新のためのプロファイル・プレディケートとして新しいルールを作成するといった装置のためのコンフィグレーション・プロファイルの更新を生成するために、プロファイル・サーバは動作状態の変更を装置から受信してもよい。プロファイル・サーバからのコンフィグレーション・プロファイルの配布は、MDMプロトコル、電子メール・プロトコル或いは他の適用可能な通信プロトコルやメッセージプロトコルに基づいて行われても良い。
1つの実施形態において、プロファイル・サーバは、装置に送信されたコンフィグレーション・プロファイルによりクライアント装置の動作を管理するためのポリシーをプッシュダウンしてもよい。オプションとして、リファレンス・ストレージの更新によりプロファイル・サーバがポリシーの変更を装置に伝搬させるために、コンフィグレーション・プロファイルはディレクトリ・サーバのようなストレージの位置参照を含んでも良い。ポリシーの例には、例えば、所定グループのユーザによってアプリケーションが許可されるか、必要とされるか、禁止されるか、どのVPN(Virtual Private Network)設定を使用するか、どの証明書を適用するか、どのアプリケーションがインストールされるべきか、どのウェブ・サイトがアクセス可能か、装置の利用が承認されたユーザの制限、遠隔サーバからどのサービスが利用可能/許可されているか(例えば、コンタクト・サーバ、メール・サーバ、プリント・サーバ、メッセージ・サーバ等)、又は、他の適用可能なポリシーの仕様等が含まれるが、これらに限定されるものではない。
1つの実施形態において、管理者はプロファイル・サーバ(例えば、中央サーバ)を、コンフィグレーション・プロファイルに含まれる既存のポリシーを修正するために、新しいプロファイル・プレディケートで更新しても良い。例えば、既存のポリシー内のプロファイル・プレディケートは、装置が特定のビル内の物理的な場所に位置している場合は、第1のプリンタが装置のためのデフォルトのプリンタに設定されるべきであることを示す。さらに、第1のプリンタと置き換えるために第2のプリンタがビル内に設置されてもよい。その結果、プロファイル・プレディケートは、ビル内に存在する装置のために、第1のプリンタの代わりに新たに設置された第2のプリンタがデフォルト・プリンタに設定されるべきことを指示するように更新されても良い。プロファイル・サーバは、各クライアント装置におけるプリンタ設定の自動変更を可能とするために、ビル内の各クライアント装置に対し更新後のプロファイル・プレディケートと共に更新されたコンフィグレーション・プロファイルをプッシュしてもよい。更新されたコンフィグレーション・プロファイルは、ペイロードを第2のプリンタのためのコンフィグレーション・データやコードと共に含んでいても良い。
図1は、プレディケートを使った動的な装置コンフィグレーションのためのネットワーク化されたシステム1つの実施形態を示すブロック図である。ネットワーク化されたシステム100は、ネットワーク107を介して、クライアント装置109のような1つ以上の装置と結合する、プロファイル・サーバ101のような1つ以上のサーバ(又はホスト)を含んでいてもよい。1つの実施形態では、ネットワーク107は、オープン・インターネット、イントラネット、ファイアウォールで保護されたセキュアなネットワーク、広域携帯電話網(例えば、3Gネットワーク)、又は他の適用可能なネットワーク等を介して、プロファイル・サーバ101とクライアント装置109との間で確立されるべき通信チャネルやネットワーク接続を許容する。ネットワーク107は有線、無線(Wi-FiやBluetooth等)或いはその両方を含むことができる。
プロファイル・サーバ101は、プロファイル配布マネージャ103を含むことができる。プロファイル配布マネージャは、汎用プロファイル105に基づいて装置109のようなクライアント装置に対してコンフィグレーション・プロファイルを配布する。汎用プロファイル105は、クライアント装置の複数の動作状態や動作環境の下で、どのようにクライアント装置の(例えば、アプリケーション及び/又はサービスにおける)動作がコンフィグレーションされるべきかを規定しても良い。例えば、クライアント装置109に配布されるコンフィグレーション・プロファイルは、クライアント装置109から受信した動作状態及び/動作環境を示すクライアント・データに従って汎用プロファイル105からカスタマイズされても良い。
1つの実施形態において、クライアント装置109は、移動体装置、デスクトップ・コンピュータ、ノートブック・コンピュータ、或いは、コンフィグレーション設定に従ってコンフィグレーションされたアプリケーション及び/又はサービスが動作する他のクライアント装置であってもよい。コンフィグレーション・プロファイル・マネージャ111は、クライアント装置109の異なる動作状態の下でどのように設定が特定されるべきかを規定するプレディケート及び/又は実行コードを含みうるダイナミック・プロファイル113に従って、コンフィグレーション設定を保持することができる。例えば、クライアント装置109の動作状態の変化が検出された場合、コンフィグレーション・プロファイル・マネージャ111は、コンフィグレーション設定を更新するためにプレディケートを評価するか、或いは、実行コードを実行できる。
図2は、発明の実施形態に従うコンフィグレーションのためのダイナミック・プロファイルを有する典型的なシステムを示すブロック図である。例えば、動作環境201は、図1の装置109のためのコンフィグレーション設定をサポートしても良い。1つの実施形態において、コンフィグレーション・プロファイル・マネージャ111は、装置内にインストールされた、或いは、動作している処理をコンフィグレーションするための設定を提供するダイナミック・プロファイル113を保持することができる。当該処理には、メール・アプリケーション211、ブラウザ・アプリケーション213、UIサービス215、ネットワーク・サービス217、或いは、他の適用可能なユーザ/システムレベルの処理等が含まれる。各アプリケーション/サービスは対応するコンフィグレーション設定を、例えばアプリケーション/サービス内で既に特定された設定209から取得、或いは、読み込んでもよい。例えば、メール・アプリケーション211は、SMTP(Simple Mail Transfer Protocol)サーバのようなメール配信サーバ、及び/又は、IMAP(Internet Message Access Protocol)サーバのようなメール取得サーバのネットワーク・アドレスや識別子の設定を、電子メールの送受信のために要求しても良い。アプリケーションは、スタートアップ時にその設定を決定しても良い。オプションとして、例えば、コンフィグレーション・プロファイル・マネージャ111により通知された場合に、アプリケーションは動的にその設定を再読込してもよい。
ダイナミック・プロファイル113は、装置内又は装置外(例えば、ローカル又は遠隔結合される)に置かれうる設定209を含むことができる。アプリケーションは、設定209から対応設定を特定するためにユニークな識別子と関連づけられても良い。また、アプリケーションは、その設定のために、埋め込み名ファイル(例えば、アプリケーションのソースコード内で識別される)を(例えば、ディレクトリ探索パスに従って)探してもよい。設定209は、ハードウェア、ソフトウェア、又は、装置に関連する動作に必要とされる他の設定を含んでも良い。例えば、設定209はネットワーク設定(例えば、ネットワーク・ゲートウェイのIPアドレス、ネットワーク接続証明書等)、現在アクティブなユーザのためのユーザ設定(例えば、グループ識別子、ユーザ識別子等)、プリンタ設定(例えば、デフォルト・プリンタ、動作中のプリンタ等)、ユーザ・インタフェース設定(画面領域に表示されたデフォルトのアプリケーション・アイコン、フォントサイズ、背景色等)、電力設定、或いは、他の設定を格納することができる。
1つの実施形態において、動的プロファイル113は、図1のサーバ101のようなプロファイル・サーバから取得又は受信したプロファイルを格納する、プロファイル・データベース207を含むことができる。プロファイルは、プロファイル・ペイロードと関連するプロファイル・プレディケートを含むことができる。1つの実施形態において、プロファイル・ペイロードは、設定113をコンフィグレーションするためのコンフィグレーション値の候補を表しても良い。プロファイル・プレディケートは、例えば、装置の動作状態に従って、対応するプロファイル・ペイロード内で特定された設定データのいずれを設定113に適用するべきかを決定するために評価されてもよい。
特に、プロファイル・プレディケートは、装置の1以上の動作状態において論理的関係(例えば、論理的AND、OR動作)で表される条件を有する1つ以上のルールを含んでいても良い。また、プロファイル・プレディケートは、例えば、どのアプリケーション/サービス、及び/又は、どの動作状態がプロファイル・プレディケートに関連するかを記述するメタデータを有する実行ファイルを含んでいてもよい。プロファイル・プレディケート及び/又はプロファイル・ペイロードは、評価のためにプロファイル・ペイロードを効率的に選択可能とするために、装置の動作状態及び/又はアプリケーション/サービスの識別子に従い、プロファイル・データベース207内でインデックスが付与されてもよい。
コンフィグレーション・プロファイル・マネージャ111は、新たに受信したプロファイル及び/又は装置の動作状態や動作環境の変化に応じてダイナミック・プロファイル113を更新してもよい。オプションとして、コンフィグレーション・プロファイル・マネージャ111は、例えば、ユーザからの要求、及び/又は、自動の周期的更新に基づきプロファイルを取得してもよい。1つの実施形態において、デフォルトのプロファイル又は更新されたプロファイルを受信するために、プロファイル取得モジュール203はネットワーク接続を図1のプロファイル・サーバ101のようなプロファイル・サーバと確立してもよい。例えば、更新されたプロファイルは、装置に関するコンフィグレーション・ポリシー及び/又は動作環境(例えば、新たにインストールされたアクティブなプリンタ)の変化に基づいてもよい。コンフィグレーション・プロファイル・マネージャ111は、プロファイル・データベース207を更新するために、受信プロファイルからのコンテンツをプロファイル・プレディケート及びプロファイル・ペイロードとして解析してもよい。
1つの実施形態において、コンフィグレーション・プロファイル・マネージャ111は装置の1つ以上の動作状態を設定209を更新するために(例えば、OSを介して)登録してもよい。動作状態は、動作環境201のようなOSが検出及び/又は測定することができる、装置の動作を記述するパラメータであってもよい。コンフィグレーション・プロファイル・マネージャ111は、プロファイル・データベース207に格納されているプロファイル・プレディケートに従って、どの動作状態を監視するかを識別することができる。1つの実施形態では、状態監視モジュール2056が常に登録された動作状態の変化を監視してもよい。状態監視モジュール205は、監視している動作状態に変化があった場合は、コンフィグレーション・プロファイル・マネージャ111に通知することができる。それに応じて、コンフィグレーション・プロファイル・マネージャ111は、プロファイル・データベース207に格納されているプロファイル情報に基づいて、動作状態の変化に対して設定209をどのように更新すべきかを判定するためにプロファイル評価エンジン115を起動してもよい。
プロファイル評価エンジン115は、検出された動作状態の変化に関連するプロファイル・プレディケート(例えば、検出された動作状態とプロファイル・プレディケートとのマッチングに基づいて)を識別してもよい。例えば、プロファイル評価エンジン115は、設定209を更新するために、関連するプロファイル・プレディケートの推測処理を実行し、(例えば、プレディケートが真と評価されたときに)関連プロファイル・ペイロードの部分を決定または選択するために、製造ルールエンジンを含んでいてもよい。コンフィグレーション・プロファイル・マネージャ111は、設定209を更新するために、プロファイル評価エンジン115からプロファイル・プレディケートの評価結果を受信してもよい。1つの実施形態において、コンフィグレーション・プロファイル・マネージャ111は、例えば、特定のローカル又は遠隔の位置に基づくといった、更新のためにアプリケーションがその設定をどこでどのように設定209から取得するかの規定を含んでいてもよい。
図3は、発明の実施形態に対応するプロファイル・ペイロード及びプロファイル・プレディケートを含む典型的なデータユニットを示す図である。例えば、図1のプロファイル・サーバ101から受信したプロファイルは、1つ以上のプロファイル・ユニット301を、プロファイル・プレディケート305と関連づけられたプロファイル・ペイロード303のペアとして含んでいてもよい。プロファイル・プレディケート305はプロファイル・ペイロード303に対して図2の設定209のような更新設定がどのように適用されるかを決定するために評価されてもよい。プロファイル・ペイロード303は、図2の設定209のような設定上で直接更新されるべきデータ(又は値)を含んでいてもよい。また、オプションとしてプロファイル・ペイロード303は、実行時に設定を更新することが可能な実行バイナリデータを含んでいてもよい。1つの実施形態では、プロファイル・ペイロードは、設定更新のために(例えば、遠隔サーバに格納された)データ又は実行ファイルに対する参照又はリンクを含んでいてもよい。プロファイル・プレディケート305は、装置の動作状態に基づいて評価が可能なルールまたは他の実行ファイルを含んでもよい。
図4は、実施形態に対応する装置を動的にコンフィグレーションする処理の1つの例を示すフローチャートである。典型的な処理400は、処理ロジックにより実行されてもよい。当該処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(専用マシン上で動作)、或いは、これらの組み合わせを含むことができる。例えば、処理400は図1のシステム100におけるいくつかのコンポーネントによって実行されてもよい。ブロック401において、処理400の処理ロジックは、クライアント装置のコンフィグレーションを行うために汎用プロファイルをクライアント装置に格納することができる。汎用プロファイルは、異なる動作状況や動作環境の下でクライアント装置をどのようにコンフィグレーションすべきかを詳述していてもよい。汎用プロファイルは、プロファイル・プレディケートと関連するプロファイル・ペイロードを含むことができる。例えば、プロファイル・ペイロードはクライアント装置をコンフィグレーションするための設定候補を特定してもよい。プロファイル・プレディケートは、クライアント装置の動作状態に従いクライアント装置をコンフィグレーションするために適用される設定候補を選択するための、制約、ルール或いは実行ファイルを含んでいてもよい。
ブロック403において、1つの実施形態では、処理400の処理ロジックは、クライアント装置のシステム状態(或いは、動作状態)における変化を動的に決定または検出してもよい。当該変化は、装置が物理的に位置を移動した場合、装置が異なるネットワーク・アドレスに繋がった場合、アプリケーションが装置でインストール/アンインストールされた場合、アプリケーションが装置内で起動された(例えば、実行中)または停止された(例えば、処理の終了)場合、ユーザが装置にログイン又は装置からログアウトした場合、プロファイルが装置にインストール/アンインストールされた場合、或いは、装置内で発生する他の適用可能なイベントを含むことができる。
それに応じてブロック405において、処理400の処理ロジックは、装置のシステム状態における決定された変化に対して適用可能な格納済プロファイルからプロファイル・ペイロードの部分を識別してもよい。例えば、プロファイル・ペイロードの部分は、装置のシステム状態の変化に対応する格納済プロファイルにおける対応プロファイル・プレディケートの(プロファイル・プレディケート内のルールに基づく)評価結果に従って選択されてもよい。ブロック407では、システム状態の変化を反映すべく、プロファイル・ペイロードの識別された部分が装置のコンフィグレーション設定に対して適用される。
図5は、発明の実施形態に対応する実行ファイルを介したアプリケーションのコンフィグレーション処理の一例を示すフローチャートである。典型的な処理500は、処理ロジックにより実行されてもよい。当該処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(専用マシン上で動作)、或いは、これらの組み合わせを含むことができる。例えば、処理500は図1のシステム100におけるいくつかのコンポーネントによって実行されてもよい。ブロック501において、処理500では、装置内で実行中のアプリケーションのために、クライアント装置内でコンフィグレーションを更新することが可能な実行ファイルをインストールすることができる。実行ファイルは、アプリケーションのコンフィグレーションを更新するための実行ファイルを選択するための条件を特定するプレディケートと関連づけられていてもよい。
ブロック503において、1つの実施形態では、処理500の処理ロジックは、装置の動作状態が変化すると、装置のアプリケーションをコンフィグレーションするための実行ファイルと関連づけられたプレディケートを評価してもよい。アプリケーション及び該アプリケーションをコンフィグレーションするための実行ファイルは、アプリケーションを提供するサード・パーティから装置に個別にインストールされてもよい。1つの実施形態において、動作状態の変化に従ってアプリケーションをコンフィグレーションするための実行ファイルを選択する条件が満たされたかどうかを判定するために、プレディケートは装置の動作状態に関する条件を含んでもよい。もし実行ファイルが選択された場合、ブロック505では、実行ファイルが装置内でアプリケーションをコンフィグレーションを更新するために実行される。
図6は、発明の実施形態に対応する実行ファイルを介したアプリケーションのコンフィグレーション処理の一例を示すフローチャートである。典型的な処理600は、処理ロジックにより実行されてもよい。当該処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(専用マシン上で動作)、或いは、これらの組み合わせを含むことができる。例えば、処理600は図1のシステム100におけるいくつかのコンポーネントによって実行されてもよい。ブロック601では、プロファイル・プレディケート(例えば、コンフィグレーション設定の一部を選択するための条件)と関連づけられたプロファイル・ペイロード(例えば、コンフィグレーション設定)を含む汎用プロファイルをコンフィグレーションする。コンフィグレーションは、複数クライアント装置のコンフィグレーション管理用の汎用プロファイルのコンテンツをインストール/更新することを、例えば管理者に対して許可するユーザ・インタフェース・ベースであっても良い。
ブロック603では、1つの実施形態において処理600の処理ロジックは、コンフィグレーション設定と動的に関連づけられるシステム状態を(例えば、遠隔接続された)クライアント装置から受信してもよい。それに応じて、処理600の処理ロジックは、受信したシステム状態のための汎用プロファイルのプロファイル・ペイロードの一部を識別してもよい。例えば、処理600の処理ロジックは、識別されたプロファイル・ペイロードについてプロファイル・プレディケートの対応する一部を評価することにより、プロファイル・ペイロードの識別された一部とシステム状態とがマッチングするかどうかを判定する。
ブロック605において、処理600の処理ロジックは、装置から受信したシステム状態に従ってデフォルトのプロファイルから識別されたプロファイル・ペイロードの一部を含むカスタマイズされたプロファイルを生成することができる。その後ブロック607では、処理600の処理ロジックは、例えばMDMプロトコルに基づいて、プロファイル・ペイロードの識別された一部によりクライアント装置のコンフィグレーション設定を更新するためにカスタマイズされたプロファイルをクライアント装置に送信することができる。
図7は、実施形態において利用することが可能なデータ処理システムの一例を示す。図7に示すデータ処理システム700は処理システム711を含み、当該処理システム711は、1つ以上のマイクロプロセッサ、或いは、SoCIC(System on a chip integrated circuit)であってもよい。当該システム700はまた、処理システムが実行するためのデータやプログラムを格納するメモリ701も含む。システム700は、オーディオ入出力サブシステム705を含み、システム705は、例えば音楽再生や電話機能を提供するためのマイク及びスピーカを含むことができる。システム700は少なくとも所定の実施形態においては、ネットワークを介した通信のために、本明細書に記載される1つ以上のプロファイルを要求し、装置をコンフィグレーションすべく当該プロファイルをダウンロードすることができる。システム700はこれらのプロファイルを、図1のサーバ101のようなサーバ・データ処理システムからダウンロードすることができる。1つの実施形態において、図1のシステム700は装置109であっても良い。
ディスプレイ・コントローラ及びディスプレイ装置707は、視覚的ユーザ・インタフェースをユーザに提供する。このデジタル・インタフェースは、OSXのOSソフトウェアを実行した場合のマッキントッシュ・コンピュータで示されるものと同様のグラフィカル・ユーザ・インタフェースを含むことができる。システム700は他のデータ処理システムと通信するために1つ以上の無線トランシーバ703を含む。無線トランシーバはWiFIトランシーバ、赤外線トランシーバ、Bluetoothトランシーバ、及び/又は無線携帯電話トランシーバであってもよい。所定の実施形態において、図示されていない追加のコンポーネントがシステム700の一部となってもよいこと、また、データ処理システム内で図7に示したよりも少ないコンポーネントを使用してもよいことは理解されよう。
データ処理システム700はユーザがシステムに対して入力を提供するための1つ以上の入力デバイス713を含む。これらの入力デバイスは、キーパッド、キーボード、タッチパネル、或いは、マルチ・タッチパネルであっても良い。データ処理システム700はまたオプションとして、例えばドック用のコネクタのような入出力装置715も含む。技術常識としてよく知られているように、様々なコンポーネントを相互接続するために不図示の1つ以上のバスを用いてもよいことは理解されよう。図7に示すデータ処理システムは、携帯型コンピュータ、パーソナル・デジタル・アシスタント(PDA)、PDAと同様の機能を備える携帯電話、携帯電話を含む携帯型コンピュータ、iPodのようなメディア・プレーヤ、或いは、PDAと携帯電話の機能が一体化されたメディア・プレーヤのような上記装置の特徴や機能を組み合わせた装置であっても良い。他の実施形態では、データ処理システム700は、ネットワーク・コンピュータ、他の装置に埋め込まれた処理装置、或いは、図7に示すよりも少ないコンポーネント、或いは、おそらくはより多くコンポーネントで構成される他のタイプのデータ処理システムであってもよい。
図8は、発明の実施形態と関連して利用可能な典型的なコンピュータ・システムの一例を示す。図8はコンピュータ・システムの様々なコンポーネントを図示するが、これらは特定の構造や各コンポーネントの相互接続方法を示すことを何ら意図したものではなく、その詳細は本発明と関連するものではない。なお、より少ないコンポーネント、或いは、おそらくはより多くコンポーネントで構成されるネットワーク・コンピュータや他のデータ処理システムを本発明とともに利用してもよいことは理解されよう。図8は、図1に示すサーバ・システムを表してもよい。
図8に示すとおり、データ処理システムの形態を有するコンピュータ・システム800は、1つ以上のマイクロプロセッサ805、ROM(リード・オンリ・メモリ)807、揮発性RAM809及び不揮発性メモリ811と結合されたバス803を含む。マイクロプロセッサ805は、メモリ807、809、811から命令を取得し、上述の動作を実現するために当該命令を実行する。バス803はこれらの様々なコンポーネントを相互接続すると共に、これらのコンポーネント805、807、809及び811をディスプレイ・コントローラ及びディスプレイ装置813、及び、入出力(I/O)デバイスのような周辺機器と相互接続する。入出力デバイスは、マウス、キーボード、モデム、ネットワーク・インタフェース、プリンタ及び技術分野でよく知られている他の装置であってもよい。典型的に、入出力デバイス815は、入出力コントローラ817を介してシステムと結合される。揮発性RAM(ランダム・アクセス・メモリ)809は典型的には、メモリ内でデータをリフレッシュ、維持するために継続的な電力を必要とするダイナミックRAM(DRAM)として実装される。
大型ストレージ811は典型的には磁気ハードディスク・ドライブ、磁気光学ドライブ、光学ドライブ、DVD RAM、フラッシュメモリ(登録商標)、或いは、システムに対する電力供給が絶たれた後であってもデータ(例えば、大量のデータ)を維持する他のタイプのメモリシステムである。典型的には、大型ストレージ811はランダム・アクセス・メモリであろうが、必ずしもそうでなくてもよい。図8は大型ストレージ811を、データ処理システム内の残りのコンポーネントと直接に結合されたローカルな装置として示しているが、モデム、イーサネット・インタフェース或いは無線ネットワークのようなネットワーク・インタフェースを通じてデータ処理装置と結合されるネットワーク・ストレージ装置のような遠隔システムの不揮発性メモリを利用してもよいことは理解されよう。バス803は、技術分野においてよく知られた様々なブリッジ、コントローラ、及び/又はアダプタを介して互いに接続される1つ以上のバスを含むことができる。
本明細書において「メモリ」の語が使用される場合、ダイナミック・ランダム・アクセス・メモリ(DRAM)、スタティックRAM(SRAM)のような全ての揮発性の格納媒体を含むことが意図される。コンピュータで実行可能な命令は磁気ハードディスク及び光学ディスクのような不揮発性ストレージ装置に格納され、プロセッサによるソフトウェアの実行中にメモリ内にダイレクト・メモリ・アクセス処理により書き込まれる。当業者であれば直ちに理解するであろうが、
「コンピュータで読み取り可能な記憶媒体」にはプロセッサがアクセス可能なあらゆるタイプの揮発性或いは不揮発性の格納装置が含まれる。
上述の説明では、発明を特定の典型的な実施形態を参照して記述した。しかし、特許請求の範囲に記載されるような発明のより広い精神及び範囲から逸脱することなく様々な修正が可能であることは明らかである。従って、明細書及び図面の記載は、例示的意味において解釈されるべきであって、限定的な意味において解釈されるべきではない。

Claims (24)

  1. コンピュータ演算処理が行われる方法であって、
    クライアント装置により、
    複数のプロファイル・プレディケートと複数のプロファイル・ペイロードとを含む汎用プロファイルを格納する工程であって、前記各プロファイル・ペイロードは、前記クライアント装置のためのそれぞれに異なるコンフィグレーション設定を特定し、前記各プロファイル・プレディケートは、前記クライアント装置のシステム状態における変化に基づき少なくとも1つの条件が満たされるとき、前記複数のプロファイル・ペイロードの少なくとも1つを前記クライアント装置に適用されるようにする前記少なくとも1つの条件を定義する、当該工程と、
    前記クライアント装置のシステム状態における変化を識別する工程と、
    前記システム状態における変化に関連した情報を管理サーバへ送信する工程と、
    前記送信に応答して、
    前記管理サーバから、前記汎用プロファイルに対する更新を受信する工程であって、前記更新は前記システム状態における変化についての情報に基づきそれぞれカスタマイズされるカスタマイズ・プロファイル・ペイロード及びカスタマイズ・プロファイル・プレディケートを含む、当該工程と、
    前記システム状態における変化が前記カスタマイズ・プロファイル・プレディケートにより定義される条件を満たすことを動的に決定する工程と、
    識別された前記カスタマイズ・プロファイル・ペイロードに含まれる実行ファイルを通じて、前記カスタマイズ・プロファイル・ペイロードにより特定されるコンフィグレーション設定に基づき、前記クライアント装置のコンフィグレーションをユーザの介入無しに自動的に更新する工程であって、前記コンフィグレーション設定は前記実行ファイル内で黙示的に特定され、前記更新は前記システム状態に関するパラメータを含むアプリケーション・プログラミング・インタフェース(API)コールに基づいている、当該工程と、
    を備えることを特徴とする方法。
  2. 前記管理サーバは前記クライアント装置と遠隔的に結合され、前記汎用プロファイルは前記管理サーバにより提供される、ことを特徴とする請求項1に記載の方法。
  3. 前記汎用プロファイルはバージョンに関連し、前記システム状態は汎用プロファイルの前記バージョンを含む、ことを特徴とする請求項2に記載の方法。
  4. 前記システム状態は、前記クライアント装置にアプリケーションがどのくらい長くインストールされているかを含み、
    前記クライアント装置のコンフィグレーションの更新により、前記インストールされているアプリケーションが前記クライアント装置から削除されることを特徴とする請求項1に記載の方法。
  5. 前記複数のプロファイル・プレディケートのうちの各プロファイル・プレディケートは、ルールセットを実行し、
    前記識別は前記システム状態の変化と前記ルールセットとの間のマッチングオペレーションに基づくことを特徴とする請求項1に記載の方法。
  6. 前記各プロファイル・プレディケートは、前記システム状態の変化に関連する入力パラメータを有するAPIをコールするよう構成されていることを特徴とする請求項1に記載の方法。
  7. クライアント装置に含まれるプロセッサが実行されると前記クライアント装置に方法を実行させる命令を格納するよう構成されたコンピュータ読み取り可能な記憶媒体であって、前記方法は、
    複数のプロファイル・プレディケートと複数のプロファイル・ペイロードとを含む汎用プロファイルを前記クライアント装置内に格納する工程であって、前記各プロファイル・ペイロードは、前記クライアント装置のためのそれぞれに異なるコンフィグレーション設定を特定し、前記各プロファイル・プレディケートは、前記クライアント装置のシステム状態における変化に基づき少なくとも1つの条件が満たされるとき、前記複数のプロファイル・ペイロードの少なくとも1つを前記クライアント装置に適用されるようにする前記少なくとも1つの条件を定義する、当該工程と、
    前記クライアント装置のシステム状態における変化を動的に識別する工程と、
    前記システム状態における変化に関連した情報を管理サーバへ送信する工程と、
    前記送信に応答して、
    前記管理サーバから、前記汎用プロファイルに対する更新を受信する工程であって、前記更新は前記システム状態における変化についての情報に基づきそれぞれカスタマイズされるカスタマイズ・プロファイル・ペイロード及びカスタマイズ・プロファイル・プレディケートを含む、当該工程と、
    前記システム状態における変化が前記カスタマイズ・プロファイル・プレディケートにより定義される条件を満たすことを動的に決定する工程と、
    識別された前記カスタマイズ・プロファイル・ペイロードに含まれる実行ファイルを通じて、前記カスタマイズ・プロファイル・ペイロードにより特定されるコンフィグレーション設定に基づき、前記クライアント装置のコンフィグレーションをユーザの介入無しに自動的に更新する工程であって、前記コンフィグレーション設定は前記実行ファイル内で黙示的に特定され、前記更新は前記システム状態に関するパラメータを含むアプリケーション・プログラミング・インタフェース(API)コールに基づいている、当該工程と、
    を備えることを特徴とするコンピュータ読み取り可能な記憶媒体。
  8. メモリとプロセッサを備えたコンピュータ・システムであって、
    前記プロセッサは、前記メモリ内に格納された命令を実行することより、
    複数のプロファイル・プレディケートと複数のプロファイル・ペイロードとを含む汎用プロファイルを前記コンピュータ・システムであるクライアント装置内に格納すること、前記各プロファイル・ペイロードは、前記クライアント装置のためのそれぞれに異なるコンフィグレーション設定を特定し、前記各プロファイル・プレディケートは、前記クライアント装置のシステム状態における変化に基づき少なくとも1つの条件が満たされるとき、前記複数のプロファイル・ペイロードの少なくとも1つを前記クライアント装置に適用されるようにする前記少なくとも1つの条件を定義するものであり、
    前記クライアント装置のシステム状態における変化を識別すること、
    前記システム状態における変化に関連した情報を管理サーバへ送信すること、
    前記送信に応答して、
    前記管理サーバから、前記汎用プロファイルに対する更新を受信すること、前記更新は前記システム状態における変化についての情報に基づきそれぞれカスタマイズされるカスタマイズ・プロファイル・ペイロード及びカスタマイズ・プロファイル・プレディケートを含み、
    前記システム状態における変化が前記カスタマイズ・プロファイル・プレディケートにより定義される条件を満たすことを動的に決定すること、
    識別された前記カスタマイズ・プロファイル・ペイロードに含まれる実行ファイルを通じて、前記カスタマイズ・プロファイル・ペイロードにより特定されるコンフィグレーション設定に基づき、前記クライアント装置のコンフィグレーションをユーザの介入無しに自動的に更新すること、前記コンフィグレーション設定は前記実行ファイル内で黙示的に特定され、前記更新は前記システム状態に関するパラメータを含むアプリケーション・プログラミング・インタフェース(API)コールに基づいている、
    ことが実行されるコンピュータ・システム。
  9. 前記管理サーバは前記クライアント装置と遠隔的に結合され、前記汎用プロファイルは前記管理サーバにより提供される、ことを特徴とする請求項8に記載のコンピュータ・システム。
  10. 前記汎用プロファイルはバージョンに関連し、前記システム状態は汎用プロファイルの前記バージョンを含む、ことを特徴とする請求項9に記載のコンピュータ・システム。
  11. 前記システム状態は、前記クライアント装置にアプリケーションがどのくらい長くインストールされているかを含み、
    前記クライアント装置のコンフィグレーションの更新により、前記インストールされているアプリケーションが前記クライアント装置から削除されることを特徴とする請求項8に記載のコンピュータ・システム。
  12. 前記複数のプロファイル・プレディケートのうちの各プロファイル・プレディケートは、ルールセットを実行し、
    前記識別は前記システム状態の変化と前記ルールセットとの間のマッチングオペレーションに基づくことを特徴とする請求項8に記載のコンピュータ・システム。
  13. 前記各プロファイル・プレディケートは、前記システム状態の変化に関連する入力パラメータを有するAPIをコールするよう構成されていることを特徴とする請求項8に記載のコンピュータ・システム。
  14. 前記管理サーバは前記クライアント装置と遠隔的に結合され、前記汎用プロファイルは前記管理サーバにより提供される、ことを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。
  15. 前記汎用プロファイルはバージョンに関連し、前記システム状態は汎用プロファイルの前記バージョンを含む、ことを特徴とする請求項14に記載のコンピュータ読み取り可能な記憶媒体。
  16. 前記システム状態は、前記クライアント装置にアプリケーションがどのくらい長くインストールされているかを含み、
    前記クライアント装置のコンフィグレーションの更新により、前記インストールされているアプリケーションが前記クライアント装置から削除されることを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。
  17. 前記複数のプロファイル・プレディケートのうちの各プロファイル・プレディケートは、ルールセットを実行し、
    前記識別は前記システム状態の変化と前記ルールセットとの間のマッチングオペレーションに基づくことを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。
  18. 前記各プロファイル・プレディケートは、前記システム状態の変化に関連する入力パラメータを有するAPIをコールするよう構成されていることを特徴とする請求項7に記載のコンピュータ読み取り可能な記憶媒体。
  19. コンピュータ・システムであって、
    複数のプロファイル・プレディケートと複数のプロファイル・ペイロードとを含む汎用プロファイルを前記コンピュータ・システムであるクライアント装置内に格納する手段であって、前記各プロファイル・ペイロードは、前記クライアント装置のためのそれぞれに異なるコンフィグレーション設定を特定し、前記各プロファイル・プレディケートは、前記クライアント装置のシステム状態における変化に基づき少なくとも1つの条件が満たされるとき、前記複数のプロファイル・ペイロードの少なくとも1つを前記クライアント装置に適用されるようにする前記少なくとも1つの条件を定義するものである、当該手段と、
    前記クライアント装置のシステム状態における変化を識別する手段と、
    前記システム状態における変化に関連した情報を管理サーバへ送信する手段と、
    前記送信に応答して、
    前記管理サーバから、前記汎用プロファイルに対する更新を受信する手段と、前記更新は前記システム状態における変化についての情報に基づきそれぞれカスタマイズされるカスタマイズ・プロファイル・ペイロード及びカスタマイズ・プロファイル・プレディケートを含む、当該手段と、
    前記システム状態における変化が前記カスタマイズ・プロファイル・プレディケートにより定義される条件を満たすことを動的に決定する手段と、
    識別された前記カスタマイズ・プロファイル・ペイロードに含まれる実行ファイルを通じて、前記カスタマイズ・プロファイル・ペイロードにより特定されるコンフィグレーション設定に基づき、前記クライアント装置のコンフィグレーションをユーザの介入無しに自動的に更新する手段であって、前記コンフィグレーション設定は前記実行ファイル内で黙示的に特定され、前記更新は前記システム状態に関するパラメータを含むアプリケーション・プログラミング・インタフェース(API)コールに基づいている、当該手段と、
    を備えたコンピュータ・システム。
  20. 前記管理サーバは前記クライアント装置と遠隔的に結合され、前記汎用プロファイルは前記管理サーバにより提供される、ことを特徴とする請求項19に記載のコンピュータ・システム。
  21. 前記汎用プロファイルはバージョンに関連し、前記システム状態は汎用プロファイルの前記バージョンを含む、ことを特徴とする請求項20に記載のコンピュータ・システム。
  22. 前記システム状態は、前記クライアント装置にアプリケーションがどのくらい長くインストールされているかを含み、
    前記クライアント装置のコンフィグレーションの更新により、前記インストールされているアプリケーションが前記クライアント装置から削除されることを特徴とする請求項19に記載のコンピュータ・システム。
  23. 前記複数のプロファイル・プレディケートのうちの各プロファイル・プレディケートは、ルールセットを実行し、
    前記識別は前記システム状態の変化と前記ルールセットとの間のマッチングオペレーションに基づくことを特徴とする請求項19に記載のコンピュータ・システム。
  24. 前記各プロファイル・プレディケートは、前記システム状態の変化に関連する入力パラメータを有するAPIをコールするよう構成されていることを特徴とする請求項19に記載のコンピュータ・システム。
JP2013547533A 2010-12-30 2011-12-19 プレディケートを用いた動的なデバイス・コンフィグレーション Active JP5749814B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/982,759 US8813167B2 (en) 2010-12-30 2010-12-30 Dynamic device configuration using predicates
US12/982,759 2010-12-30
PCT/US2011/065870 WO2012091991A2 (en) 2010-12-30 2011-12-19 Dynamic device configuration using predicates

Publications (2)

Publication Number Publication Date
JP2014506363A JP2014506363A (ja) 2014-03-13
JP5749814B2 true JP5749814B2 (ja) 2015-07-15

Family

ID=45491796

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013547533A Active JP5749814B2 (ja) 2010-12-30 2011-12-19 プレディケートを用いた動的なデバイス・コンフィグレーション

Country Status (8)

Country Link
US (1) US8813167B2 (ja)
EP (1) EP2659361A2 (ja)
JP (1) JP5749814B2 (ja)
KR (1) KR101562445B1 (ja)
CN (1) CN103282885B (ja)
AU (1) AU2011352830B2 (ja)
BR (1) BR112013016711A2 (ja)
WO (1) WO2012091991A2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9053487B2 (en) 2011-08-22 2015-06-09 At&T Intellectual Property I, L.P. Methods, systems, and products for notifying of enhancements to quality of service and experience
US9621403B1 (en) * 2012-03-05 2017-04-11 Google Inc. Installing network certificates on a client computing device
JP6013061B2 (ja) * 2012-07-23 2016-10-25 株式会社東芝 情報処理装置および制御方法
JP6087530B2 (ja) * 2012-07-31 2017-03-01 パナソニックヘルスケアホールディングス株式会社 携帯端末装置、医療情報システム、プログラム
WO2014068632A1 (ja) * 2012-10-29 2014-05-08 三菱電機株式会社 設備管理装置、設備管理システム及びプログラム
US20140129686A1 (en) * 2012-11-08 2014-05-08 Nvidia Corporation Mobile computing device configured to filter and detect application profiles, a method of manufacturing the same and an external source for delivering hierarchical filtered application profiles to mobile computing devices
US9143920B2 (en) 2013-06-06 2015-09-22 Qualcomm Incorporated Fine grain position data collection
US9380077B2 (en) * 2013-08-08 2016-06-28 Iboss, Inc. Switching between networks
US9575746B2 (en) * 2013-09-16 2017-02-21 Bank Of America Corporation Computer application maturity illustration system
US8910263B1 (en) 2013-09-17 2014-12-09 Iboss, Inc. Mobile device management profile distribution
CN105874742B (zh) * 2014-01-24 2019-11-08 迈克菲有限责任公司 自动的占位符寻找器-填充器
US20170052793A1 (en) * 2014-05-09 2017-02-23 Nec Corporation Automatic application control system, automatic application control method, and program recording medium
US9288235B1 (en) 2014-09-17 2016-03-15 Microsoft Technology Licensing, Llc Contextually aware device management
US10021137B2 (en) * 2014-12-27 2018-07-10 Mcafee, Llc Real-time mobile security posture
US10862747B2 (en) 2015-03-25 2020-12-08 Airwatch Llc Single user device staging
US10333778B2 (en) 2015-03-25 2019-06-25 Airwatch, Llc Multiuser device staging
EP3220334A1 (en) * 2016-03-16 2017-09-20 Sony Mobile Communications, Inc System and method for providing generic user profiles based on user behaviour
US11456920B2 (en) * 2018-02-23 2022-09-27 Ricoh Company, Ltd. Mechanisms for cloud-based configuration and management of network devices using network mediators implemented in the network devices
US11444830B2 (en) * 2018-02-23 2022-09-13 Ricoh Company, Ltd. Mechanisms for cloud-based configuration and management of network devices using network mediators implemented separately from the network devices
US20200028879A1 (en) * 2018-07-17 2020-01-23 Microsoft Technology Licensing, Llc Queryless device configuration determination-based techniques for mobile device management
US11184223B2 (en) * 2018-07-31 2021-11-23 Microsoft Technology Licensing, Llc Implementation of compliance settings by a mobile device for compliance with a configuration scenario
US11487264B2 (en) * 2018-08-10 2022-11-01 Arvus Tecnologia Ltda. Sensor and actuator based lifecycle monitoring of machines performing automated machine tasks
US10911305B2 (en) * 2018-09-28 2021-02-02 Vmware, Inc. Efficient rule processing for device management data evaluation
US11606242B1 (en) 2022-03-10 2023-03-14 Ricoh Company, Ltd. Coordinated monitoring of legacy output devices
US11894973B2 (en) 2022-03-10 2024-02-06 Ricoh Company, Ltd. Assigning and prioritizing mediation servers for monitoring legacy devices

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2521020B2 (ja) * 1993-04-05 1996-07-31 インターナショナル・ビジネス・マシーンズ・コーポレイション 情報処理システム
US5682529A (en) * 1994-03-14 1997-10-28 Apple Computer, Inc. System for dynamically accommodating changes in display configuration by notifying changes to currently running application programs to generate information by application programs to conform to changed configuration
US6289396B1 (en) * 1995-11-21 2001-09-11 Diamond Multimedia Systems, Inc. Dynamic programmable mode switching device driver architecture
JP2000214963A (ja) 1999-01-25 2000-08-04 Toshiba Corp コンピュ―タシステムおよび設定情報の自動設定方法
JP2001344108A (ja) 2000-05-30 2001-12-14 Fujitsu Ltd 機器の環境情報設定方法
JP2003256304A (ja) * 2002-02-28 2003-09-12 Toppan Forms Co Ltd パラメータ情報の提供方法及びパラメータ情報の提供システム
JP2003323363A (ja) * 2002-04-30 2003-11-14 Fujitsu Ltd 環境設定装置、環境設定プログラム、および情報処理装置
JP2003338855A (ja) * 2002-05-21 2003-11-28 Sharp Corp 通信端末装置の動作モード設定方法及び通信端末装置
JP2004054494A (ja) * 2002-07-18 2004-02-19 Sharp Corp 情報処理装置、情報処理方法、情報処理プログラム、および該プログラムを記録した記録媒体
US7072672B1 (en) 2002-11-01 2006-07-04 Nokia Corporation Disposable mini-applications
EP1526457B1 (en) 2003-10-22 2013-03-13 Sony Deutschland GmbH Context-aware automatic service discovery and execution engine in mobile ad-hoc networks
US7860959B1 (en) * 2004-03-04 2010-12-28 Cisco Technology, Inc. Configuration objectification and version control
US7873685B2 (en) * 2004-05-13 2011-01-18 Pixar System and method for flexible path handling
JP2005327008A (ja) * 2004-05-13 2005-11-24 Nippon Telegr & Teleph Corp <Ntt> 設定情報統合管理システム及び設定情報統合管理方法
US8254921B2 (en) * 2004-08-12 2012-08-28 Qualcomm Incorporated Default configurations with differential encoding in a wireless communication system
US7636333B2 (en) * 2004-11-16 2009-12-22 Qualcomm Incorporated Method and apparatus for carrier customization in communication systems
JP2006185013A (ja) * 2004-12-27 2006-07-13 Kyocera Mita Corp 情報処理装置、それを備えた画像形成装置およびプログラム
US7716651B2 (en) * 2005-01-26 2010-05-11 Microsoft Corporation System and method for a context-awareness platform
US7373661B2 (en) * 2005-02-14 2008-05-13 Ethome, Inc. Systems and methods for automatically configuring and managing network devices and virtual private networks
US7467162B2 (en) * 2005-06-27 2008-12-16 Microsoft Corporation Pre-configured settings for portable devices
US8010997B2 (en) * 2005-06-30 2011-08-30 Microsoft Corporation Enforcing device settings for mobile devices
US8966018B2 (en) * 2006-05-19 2015-02-24 Trapeze Networks, Inc. Automated network device configuration and network deployment
US20080016182A1 (en) 2006-07-11 2008-01-17 Nokia Corporation Dynamic device profile interfaces
US9021464B2 (en) * 2006-08-07 2015-04-28 Netiq Corporation Methods, systems and computer program products for rationalization of computer system configuration change data through correlation with product installation activity
US9418367B2 (en) 2006-08-21 2016-08-16 International Business Machines Corporation Context-aware code provisioning for mobile devices
JP5089140B2 (ja) * 2006-11-14 2012-12-05 三菱電機株式会社 情報処理装置及び情報処理方法及びプログラム
US20080168267A1 (en) 2007-01-09 2008-07-10 Bolen Charles S System and method for dynamically configuring a mobile device
US8078713B1 (en) * 2008-03-05 2011-12-13 Full Armor Corporation Delivering policy settings with virtualized applications
US20090282228A1 (en) * 2008-05-06 2009-11-12 Avaya Inc. Automated Selection of Computer Options
US8024732B2 (en) * 2008-07-28 2011-09-20 Microsoft Corporation State separation for application changes
US8627306B2 (en) * 2008-08-06 2014-01-07 Caterpillar Inc. Method and system for updating an information management system configuration
US8832258B2 (en) * 2008-10-06 2014-09-09 Root Wireless, Inc. Server device and method for directing mobile devices to collect and communicate location based user quality data
US8755794B2 (en) * 2008-12-05 2014-06-17 Qualcomm Incorporated System and method of sharing information between wireless devices
JP4886807B2 (ja) * 2009-03-23 2012-02-29 東芝Itサービス株式会社 コンピュータ自動キッティングシステム
EP2239917A1 (en) 2009-04-08 2010-10-13 Research In Motion Limited Method and system for qualifying a generic trigger
US20100258630A1 (en) * 2009-04-14 2010-10-14 Research In Motion Limited Systems and methods for updating resolved content of a mobile code
US8464242B2 (en) * 2009-07-08 2013-06-11 Tranxition Corporation Virtualization of configuration settings

Also Published As

Publication number Publication date
KR20130114699A (ko) 2013-10-17
CN103282885A (zh) 2013-09-04
WO2012091991A3 (en) 2012-08-23
JP2014506363A (ja) 2014-03-13
US8813167B2 (en) 2014-08-19
AU2011352830B2 (en) 2016-01-21
BR112013016711A2 (pt) 2016-10-04
EP2659361A2 (en) 2013-11-06
KR101562445B1 (ko) 2015-10-21
WO2012091991A2 (en) 2012-07-05
CN103282885B (zh) 2016-08-17
AU2011352830A1 (en) 2013-05-09
US20120173682A1 (en) 2012-07-05

Similar Documents

Publication Publication Date Title
JP5749814B2 (ja) プレディケートを用いた動的なデバイス・コンフィグレーション
KR102224760B1 (ko) 자동 애플리케이션 업데이트
US10885189B2 (en) Isolated container event monitoring
JP6775603B2 (ja) 仮想ブラウザ統合
US9189607B1 (en) Mobile phone controls preprocessor
US11272030B2 (en) Dynamic runtime interface for device management
KR101530104B1 (ko) 모바일 장치를 통한 다중-os(운영 체제) 부팅
US9727705B2 (en) Remotely defining security data for authorization of local application activity
US20110231927A1 (en) Internet Mediation
US10481756B2 (en) Controlling application access to applications and resources via graphical representation and manipulation
US20220277071A1 (en) Enforcing policies for unmanaged applications
US8677476B2 (en) Providing remotely defined security data to a local application extension
US11757976B2 (en) Unified application management for heterogeneous application delivery
US20160044060A1 (en) Policy synchronization for multiple devices
US9384344B2 (en) Authorizing local application activity using remotely defined security data
Venezia et al. Rule based dynamic adaptation of mobile services based on context

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150514

R150 Certificate of patent or registration of utility model

Ref document number: 5749814

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250