IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トーズ テクノロジーズ ゲーエムベーハーの特許一覧

特表2022-522658計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット
<>
  • 特表-計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット 図1
  • 特表-計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット 図2
  • 特表-計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット 図3
  • 特表-計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット 図4
  • 特表-計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-04-20
(54)【発明の名称】計算能力の低いデバイスを動作させるためのシステム、方法、コンピュータプログラム、モバイルデバイス、及びキット
(51)【国際特許分類】
   G06F 9/50 20060101AFI20220413BHJP
   G06F 3/048 20220101ALI20220413BHJP
   H04L 67/04 20220101ALI20220413BHJP
【FI】
G06F9/50 150A
G06F3/048
H04L67/04
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021549447
(86)(22)【出願日】2020-03-10
(85)【翻訳文提出日】2021-08-20
(86)【国際出願番号】 EP2020056378
(87)【国際公開番号】W WO2020182825
(87)【国際公開日】2020-09-17
(31)【優先権主張番号】102019106281.0
(32)【優先日】2019-03-12
(33)【優先権主張国・地域又は機関】DE
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】521371049
【氏名又は名称】トーズ テクノロジーズ ゲーエムベーハー
【氏名又は名称原語表記】TOOZ TECHNOLOGIES GMBH
【住所又は居所原語表記】Turnstrasse 27, 73430 Aalen, Germany
(74)【代理人】
【識別番号】110002871
【氏名又は名称】特許業務法人坂本国際特許商標事務所
(72)【発明者】
【氏名】ファラーバド ルーズべ
(72)【発明者】
【氏名】カルタル エルサン
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA11
5E555AA66
5E555BA04
5E555BB04
5E555BC04
5E555BD03
5E555DA09
5E555FA00
(57)【要約】
基本的に計算能力の低いデバイスを動作させる仮想オペレーティングシステムアプリケーション(22)がモバイルデバイス(16)上で実行されるシステム、方法、コンピュータプログラム、及びデバイスが提供される。仮想オペレーティングシステムにより、別のデバイスのためのアプリケーション(26A、26B)の実行又は別のデバイスのためのプロキシとしての動作を、モバイルデバイス上で実行される他のアプリケーションにより制御することが可能となるかもしれない。
【選択図】図2
【特許請求の範囲】
【請求項1】
システムにおいて:
オペレーティングシステム(21)と第一のインタフェース(17)を含むモバイルデバイス(16)と、
ディスプレイ(11)と第二のインタフェース(15)を含む別のデバイス(10)と、を含み、前記モバイルデバイスは、前記モバイルデバイスの前記オペレーティングシステム(21)の下で実行される仮想オペレーティングシステムアプリケーション(22)をさらに含み、前記仮想オペレーティングシステムアプリケーション(22)は、
-前記モバイルデバイス(16)と前記別のデバイス(10)との間の前記第一のインタフェース(17)及び前記第二のインタフェース(15)を介する接続を管理し、
-前記別のデバイス(10)に、前記別のデバイスの前記ディスプレイ(11)上で表示されることになるスクリーンフレームを提供し、
-前記別のデバイス(10)からの入力を受信して処理し、
-前記モバイルデバイス上での前記別のデバイス(10)のためのアプリケーション(26A、26B)の実行を可能にする
ように構成されるシステム。
【請求項2】
前記別のデバイス(10)は、前記モバイルデバイス(16)より低い計算能力を有する、請求項1のシステム。
【請求項3】
前記別のデバイス(10)は追加のアプリケーションのインストールと実行ができない、請求項1又は2のシステム。
【請求項4】
前記仮想オペレーティングシステムアプリケーション(22)は、前記アプリケーション(26A、26B)の前記モバイルデバイスのデバイス(19)との通信を可能にする、請求項1~3の何れか1項のシステム。
【請求項5】
前記仮想オペレーティングシステムアプリケーション(22)は、前記アプリケーション(26A、26B)からスクリーンコンテンツを受信し、前記スクリーンコンテンツに基づいて前記スクリーンフレームを前記別の装置(10)に提供するように構成される、請求項1~4の何れか1項のシステム。
【請求項6】
前記アプリケーション(26A、26B)はナビゲーションアプリケーションを含む、請求項1~5の何れか1項のシステム。
【請求項7】
前記モバイルデバイス(16)はスマートフォン又はタブレットコンピュータである、請求項1~6の何れか1項のシステム。
【請求項8】
前記別のデバイス(10)はスマートグラス(30)である、請求項1~7の何れか1項のシステム。
【請求項9】
前記仮想オペレーティングシステムアプリケーション(22)は、コマンド及び/又はコンフィギュレーション情報を前記別のデバイス(10)に送信するように構成される、請求項1~8の何れか1項のシステム。
【請求項10】
前記仮想オペレーティングシステムアプリケーション(22)は、前記モバイルデバイス(16)上の別のアプリケーション(28)と通信するように構成される、請求項1~8の何れか1項のシステム。
【請求項11】
前記別のアプリケーション(28)は、前記仮想オペレーティングシステムアプリケーションとは独立して前記モバイルデバイス(16)の前記オペレーティングシステムの下で動作する、請求項10のシステム。
【請求項12】
方法において、
モバイルデバイス上で、別のデバイスのための仮想オペレーティングシステムアプリケーション(22)を実行するステップを含み、
前記仮想オペレーティングシステムアプリケーション(22)は:
-前記モバイルデバイス(16)と前記別のデバイス(10)との間の前記モバイルデバイス(16)の第一のインタフェース(17)及び前記別のデバイス(10)の第二のインタフェース(15)を介した接続を管理し、
-前記別のデバイス(10)に、前記別のデバイスの前記ディスプレイ(11)上に表示されることになるスクリーンフレームを提供し、
-前記別のデバイス(10)からの入力を受信して処理し、
-前記モバイルデバイス(16)上で前記別のデバイス(10)のためのアプリケーション(26A、26B)の実行を可能にしている方法。
【請求項13】
前記仮想オペレーティングシステムアプリケーション(22)は、前記アプリケーション(26A、26B)の前記モバイルデバイスのデバイス(19)との通信を可能にする、請求項12の方法。
【請求項14】
前記仮想オペレーティングシステムアプリケーション(22)は、前記アプリケーション(26A、26B)からスクリーンコンテンツを受信し、前記スクリーンコンテンツに基づいてスクリーンフレームを前記別のデバイス(10)に提供する、請求項12又は13の方法。
【請求項15】
前記アプリケーション(26A、26B)はナビゲーションアプリケーションを含む、請求項12~14の何れか1項の方法。
【請求項16】
前記仮想オペレーティングシステムアプリケーション(22)はコマンド及び/又はコンフィギュレーション情報を前記別のデバイス(10)に送信する、請求項12~15の何れか1項の方法。
【請求項17】
前記仮想オペレーティングシステムアプリケーション(22)は前記モバイルデバイス(16)上の別のアプリケーション(28)と通信する、請求項12~16の何れか1項の方法。
【請求項18】
プロセッサ上で実行されると、請求項12~17の何れか1項の方法が実行されるようにするプログラムコードを含むコンピュータプログラム。
【請求項19】
請求項18のコンピュータプログラムを含む記憶媒体。
【請求項20】
請求項18のコンピュータプログラムが記憶されたモバイルデバイス(16)。
【請求項21】
キットにおいて:
請求項18のコンピュータプログラム又は請求項19の記憶媒体と、
前記コンピュータプログラムの前記仮想オペレーティングシステムアプリケーション(22)を使って動作させられる別のデバイス(10)と、
を含むキット。
【請求項22】
前記別のデバイス(10)はスマートグラスである、請求項21のキット。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は一般に、比較的低い計算能力を有するデバイスの動作に関する。
【背景技術】
【0002】
多くのデバイスが、コンテンツを表示するためのディスプレイ及び/又はユーザが入力を行えるようにする入力装置を備えている。このような入力装置は、いわゆるタッチスクリーンを使ってディスプレイと組み合わせられてよい。このようなデバイスの幾つかは、スペース又はコストの制約から、比較的低い計算能力しか利用できない。例えば、ディスプレイはいわゆるスマートグラスと呼ばれるグラスに組み込まれてよいが、このようなスマートグラスのスペースの制約により、また重量を考慮して、このようなスマートグラスに高い計算能力を持たせるのは難しい。しかしながら、例えばこのような計算能力の低いデバイスを介してユーザに様々な情報を提供することが望ましい。計算能力の低いこのようなデバイスを、本明細書では「シンデバイス」とも呼ぶ。
【0003】
比較的小型のデバイスをスマートフォンやタブレット等のモバイルデバイスに連結することによって機能を高める幾つかの方式がある。例えばスマートウォッチの場合、アプリケーションプログラム(本明細書ではアプリとも呼ぶ)がスマートウォッチにインストールされ、それに対応するアプリケーションプログラムがモバイルデバイスにインストールされ、これらのアプリが相互に通信して、スマートウォッチに、例えばモバイルデバイスの音楽や動画等のマルチメディアファイルへのアクセス、モバイルデバイスからの着信の転送、その他の機能が提供される。
【0004】
しかしながら、この解決策には、対応するアプリをスマートデバイスにインストールする必要があり、これは計算能力が非常に低いか、又はそれ以外にアプリのインストールができないデバイスでは不可能かもしれない。
【0005】
他の従来の方式は、リモートディスプレイ技術を使用することである。この場合、スマートフォンやタブレット等のモバイルデバイス上に表示されたコンテンツは基本的に、そのミラーが計算能力の低いデバイスに保存され、そこにも表示される。例えば、Bluetooth又はその他の無線通信がこのスクリーンミラーリングに使用されてよい。しかしながら、この手法にも幾つかの欠点がある。例えば、計算能力の低いデバイスとモバイルデバイスは通常、スクリーンサイズが異なる。モバイルデバイス上に示されるコンテンツは通常、モバイルデバイスのスクリーン用に設計され、他のデバイス上で同じコンテンツを表示すると、不満足な結果につながるかもしれない。さらに、この方式では、モバイルデバイスを計算能力の低いデバイスと基本的に独立して動作させることは難しく、すなわち換言すれば、この解決策では、そのデバイス上で異なるアプリケーションを使用することが困難となるかもしれない。
【発明の概要】
【発明が解決しようとする課題】
【0006】
したがって、目的は、このようなシンデバイスを動作させるための改善された解決策を提供することである。
【課題を解決するための手段】
【0007】
これに関して、特許請求項1に定義されるシステム、特許請求項12に定義される方法、特許請求項18に定義されるコンピュータプログラム、特許請求項20に定義されるモバイルデバイス、及び特許請求項21に定義されるキットが提供される。従属請求項は別の実施形態を定義する。
【0008】
ある実施形態によれば、システムが提供され、これは:
オペレーティングシステムと第一のインタフェースを含むモバイルデバイスと、
ディスプレイと第二のインタフェースを含む別のデバイスと、を含み、
モバイルデバイスは、モバイルデバイスのオペレーティングシステムの下で実行される仮想オペレーティングシステムアプリケーションをさらに含み、仮想オペレーティングシステムアプリケーションは、
-モバイルデバイスと別のデバイスとの間の第一のインタフェース及び第二のインタフェースを介する接続を管理し、
-別のデバイスに、別のデバイスのディスプレイ上で表示されることになるスクリーンフレームを提供し、
-別のデバイスからの入力を受信して処理し、
-モバイルデバイス上での別のデバイスのためのアプリケーションの実行を可能にする
ように構成される。
【0009】
計算能力の低いデバイスのための仮想オペレーティングシステムをモバイルデバイス上で実行することにより、計算能力の低いデバイスに機能を提供しながら、依然として他のアプリケーションを用いてモバイルデバイスを動作させることができる。このようにして、計算能力の低いデバイスに合わせて作成されるアプリケーションが提供されるかもしれない。さらに、このようなアプリケーションは、計算能力の低いデバイスからの入力(例えばセンサ入力)とモバイルデバイス、例えばGPSセンサ等のモバイルデバイスのセンサからの入力の両方を使用することができる。
【0010】
別のデバイスは、モバイルデバイスより計算能力が低くてよく、すなわち上で説明した「シンデバイス」であってよい。
【0011】
幾つかの実施形態において、別のデバイスは、追加のアプリケーションのインストールと実行ができない。このような別のデバイスの場合、アプリケーションは仮想オペレーティングシステムアプリケーションを使ってモバイルデバイス上で、仮想オペレーティングシステムの範囲内か、又は仮想オペレーティングシステムと共に実行されるが、モバイルデバイスのオペレーティングシステムにより提供されてよいプロセス間通信メカニズムを使って通信する独立したアプリケーションとして実行されてよい。したがって、仮想オペレーティングシステムはモバイルデバイス上で別のアプリケーションと通信してよい。
【0012】
仮想オペレーティングシステムはまた、別のデバイスにコマンド及び/又はコンフィギュレーション情報を送信するように構成されてよく、それによって別のデバイスはモバイルデバイスから基本的に完全に操作されてよい。
【0013】
幾つかの実施形態における仮想オペレーティングシステムアプリケーションでは、モバイルデバイスのデバイス(コンポーネント)とのアプリケーションの通信が可能であり、それによってこれらのデバイスはアプリケーションによって使用されてよい。
【0014】
仮想オペレーティングシステムアプリケーションは、アプリケーションからスクリーンコンテンツを受信し、そのスクリーンに基づいてスクリーンフレームを別のデバイスに提供するように構成されてよい。
【0015】
アプリケーションは、ナビゲーションアプリケーションを含んでいてよい。
【0016】
モバイルデバイスは、スマートフォン又はタブレットコンピュータであってよい。
【0017】
別のデバイスはスマートグラスであってよい。
【0018】
別の実施形態によれば、方法が提供され、これは:
モバイルデバイス上で、別のデバイスのための仮想オペレーティングシステムアプリケーションを実行させるステップを含み、仮想オペレーティングシステムアプリケーションは、
-モバイルデバイスと別のデバイスとの間のモバイルデバイスの第一のインタフェース及び別のデバイスの第二のインタフェースを介した通信を管理し、
-別のデバイスに、別のデバイスのディスプレイ上に表示されることになるスクリーンフレームを提供し、
-別のデバイスからの入力を受信して処理し、
-モバイルデバイス上で別のデバイスのためのアプリケーションの実行を可能にしている。
【0019】
仮想オペレーティングシステムアプリケーションは、モバイルデバイスのデバイス(コンポーネント)とのアプリケーションの通信を可能にするかもしれない。
【0020】
仮想オペレーティングシステムは、コマンド及び/又はコンフィギュレーション情報を別のデバイスに送信してよい。
【0021】
仮想オペレーティングシステムは、モバイルデバイス上の別のアプリケーションと通信してよく、それによってこれらの別のアプリケーションは、例えば仮想オペレーティングシステムを介して別のデバイスにスクリーンを送信し、又は別のデバイスからの入力を受信してよい。
【0022】
仮想オペレーティングシステムアプリケーションは、アプリケーションからスクリーンコンテンツを受信し、そのスクリーンコンテンツに基づいてスクリーンフレームを別のデバイスに提供してよい。
【0023】
アプリケーションは、ナビゲーションアプリケーションを含んでいてよい。
【0024】
他の実施形態によれば、コンピュータプログラムが提供され、これは、プロセッサ上で実行されると、前述の方法が実行されるようにするプログラムコードを含む。
【0025】
コンピュータプログラムを含む記憶媒体、特に有形記憶媒体も提供される。
【0026】
さらに、コンピュータプログラムがそこに記憶されたモバイルデバイスが提供される。
【0027】
他の実施形態によれば、キットが提供され、これは:
前述のコンピュータプログラム又は記憶媒体と、
コンピュータプログラムの仮想オペレーティングシステムアプリケーションを使って動作させられる別のデバイスと、
を含む。
【0028】
このようなキットを用いて、ユーザは自分のモバイルデバイスで、コンピュータプログラムをモバイルデバイスにインストールすることによって別のデバイスを動作できるようにしてよい。
【0029】
別のデバイスはスマートグラスであってよい。
【0030】
下記において、よりよく理解できるようにするために、添付の図面を参照しながら実施形態を説明する。
【図面の簡単な説明】
【0031】
図1】ある実施形態によるシステムのブロック図である。
図2】仮想オペレーティングシステムを含む幾つかの実施形態のオペレーティングシステムの構造を示すブロック図である。
図3】別の実施形態によるシステムの略図である。
図4】ある実施形態による方法を示すフローチャートである。
図5】特定のアプリケーションに関するある実施形態によるシステムの例示的な動作を示す略図である。
【発明を実施するための形態】
【0032】
以下に各種の実施形態を詳しく説明する。これらの実施形態は例として示されているにすぎず、限定的と解釈されないものとすることに留意すべきである。異なる実施形態の特徴を組み合わせて別の実施形態を形成してもよい。実施形態のうちの1つに関して説明された変更、改良、又は詳細はまた、他の実施形態にも当てはまるかもしれず、したがって何度も説明しない。
【0033】
実施形態を詳しく説明する前に、以下で提供される用語の幾つかの定義を示す。
【0034】
モバイルデバイスとは、本明細書で使用されるかぎり、人が持ち歩くように設計されたコンピューティングデバイスである。その結果、このようなモバイルデバイスの重量は2kg未満、通常、1kg以下未満であり、寸法は50cm・50cm・2cm未満、通常、それより小さい。典型的なモバイルデバイスは、スマートフォン又はタブレットである。多くのモバイルデバイスは、コンテンツを表示し、ユーザ入力を受信するためのタッチスクリーンのほか、GPSセンサ等のその他のセンサを有する。モバイルデバイスは典型的に、各種のカスタムアプリケーション(アプリ)を実行させるのに十分な計算能力を有する。実施形態において、モバイルデバイスは典型的に、追加的なこのようなアプリケーションのインストールを可能にするオペレーティングシステムを実行する。
【0035】
計算能力の低いデバイスとは、本明細書ではシンデバイスと略すが、モバイルデバイスより計算能力が低いデバイスである。多くの場合、シンデバイスはファームウェアのみを有し、カスタムアプリケーション、すなわちデバイスの動作に絶対的に必要なプログラムの一部ではない追加のアプリケーション又は、換言すればデバイスの中核的機能に関していないプログラムはインストールできない。このようなシンデバイスで使用されるプロセッサは、モバイルデバイスで使用されるプロセッサより低パワーであり、例えば比較的単純なマイクロコントローラ又は、さらには基本的入力又は出力を扱う単純な論理回路であるかもしれない。
【0036】
実施形態において、シンデバイスのためのオペレーティングシステムは、モバイルデバイス上のアプリケーションとして動作する。このオペレーティングシステムは「仮想オペレーティングシステムアプリケーション」とも呼ばれ、これは、それがそのためのオペレーティングシステム可能を提供するデバイス(シンデバイス)上ではなく、他のデバイス(モバイルデバイス)上で動作するからである。後により詳しく説明するように、これによってシンデバイスのための追加的アプリケーションのインストール、及び/又は利用時にシンデバイスから少なくとも部分的に独立したモバイルデバイスのフレキシブルな使用が可能となる。
【0037】
図1は、ある実施形態によるシステムを示し、図2図1のシステムのオペレーティングシステム構造をさらに説明するためのロジック図である。
【0038】
図1のシステムは、シンデバイス10とモバイルデバイス16を含む。シンデバイス10は、ディスプレイ11に連結されたプロセッサ13と、1つ又は複数の入力装置12と、メモリ14と、を含む。プロセッサとは、本明細書で使用されるかぎり、1つのプロセッサに限定されず、複数のプロセッサが提供される可能性も含んでいてよい。
【0039】
ディスプレイとは、本明細書で使用されるかぎり、コンテンツを表示するために使用されるかもしれないあらゆるデバイスである。例えば、当初言及したスマートグラスの場合、ディスプレイは、グラスのユーザから見えるようにコンテンツを投射するある種の投射システムを含んでいても、又はTFTディスプレイや液晶ディスプレイ等のより従来的なディスプレイを含んでいてもよい。入力装置は、ユーザが入力することができるようにし得るあらゆる装置であってよい。幾つかの実施形態において、入力装置は、ディスプレイ11をいわゆるタッチスクリーンとして提供することによって実装されてよい。入力装置の他の例には、シンデバイス10を操作する人のジェスチャを感知するカメラセンサ又は人から音声コマンドを受信するためのマイクロフォンが含まれる。メモリ14は、シンデバイス10を動作させるのに必要なプロセッサ13への命令を記憶する。幾つかの実施形態において、シンデバイス10は、カスタムアプリケーションをメモリ14又はシンデバイス10の他の場所にインストールできない。
【0040】
シンデバイス10は、モバイルデバイス16と通信するためのインフェース15をさらに含む。この通信のために、モバイルデバイス16はそれに対応するインタフェース17を含む。図1の実施形態において、インタフェース15、17は無線インタフェースである。適当な無線インタフェースの1つの例はBluetoothインタフェースである。しかしながら、それ以外の種類の無線インタフェースも使用されてよい。このようなインタフェースは通常、スマートフォン又はタブレット等の市販のモバイルデバイス内に存在する。図のデバイスのほかに、デバイス10は例えばセンサ等のその他のコンポーネントを含んでいてもよい。
【0041】
モバイルデバイス16は、プロセッサ18と、1つ又は複数の他のデバイス19と、メモリ110と、を含む。
【0042】
他のデバイス19は、スマートフォンやタブレット等のモバイルデバイスで従来使用される、センサのような何れのデバイスを含んでいてもよく、これは例えばGPSセンサ、ラウドスピーカ、マイクロフォン、ディスプレイ、タッチスクリーン、ボタン等である。メモリ110は、フラッシュメモリのような書き込み可能メモリを含み、この場合、カスタムアプリケーションがインストールされてよい。図1のシステムでは、これらのカスタムアプリケーションの1つは仮想オペレーティングシステムアプリケーションであり、これは基本的にオペレーティングシステムをシンデバイス10に提供する。ここで、このコンセプトについて、図2をさらに参照しながら説明する。
【0043】
シンデバイス10側に「シンファームウェア」20が提供される。シンファームウェアは、シンデバイス10上の、シンデバイス10の動作に必要な、シンデバイス10の各種の可能を提供することに基本的に限定されるファームウェアである。さらに、モバイルデバイス16内には仮想オペレーティングシステムアプリケーション22がインストールされ、モバイルデバイスの通常のオペレーティングシステム(OS)21の下で実行される。シンファームウェア20は、この仮想オペレーティングシステムアプリケーション22と相互作用して、各種の可能をシンデバイス10に提供する。
【0044】
シンファームウェア20は、シンデバイスとモバイルデバイスとのペアリング及びペアリング解除を行う、すなわち図1のインタフェース15、17を使った無線接続を確立又は終了する機能を有する。特にBluetooth通信又はその他の無線アプリケーションのためのペアリングは、2つのデバイスが初めて接続されるときのプロセスである。
【0045】
さらに、シンファームウェア20はモバイルデバイス16上で動作する仮想オペレーティングシステムアプリケーション22に接続され、及びそこから切断される機能を有する。シンファームウェア20はすると、仮想オペレーティングシステムアプリケーション22から、ディスプレイ11上で表示されるためのスクリーンフレームを受信し、入力装置12からのユーザ入力又はセンサデータ等のその他のデータを仮想オペレーティングシステムアプリケーション22に送信する。幾つかの実施形態において、シンファームウェア20はまた、要求に応じて、バッテリ状態等のシンデバイス10のデバイス状態を仮想オペレーティングシステムアプリケーション22に送信してよい。
【0046】
したがって、シンファームウェア20は仮想オペレーティングシステムアプリケーション22に入力(ユーザ入力及び/又はその他のセンサ入力)を送信し、仮想オペレーティングシステムアプリケーション22から表示されるべきスクリーンフレームを受信する。
【0047】
仮想オペレーティングシステムアプリケーション22はスクリーンフレームをシンファームウェア20に提供し、シンファームウェア20からの入力を受信するためのリモートディスプレイ及び入力/出力ハンドラ23を含む。さらに、リモートディスプレイと入力/出力ハンドラ23を介して、コマンド及び/又はコンフィギュレーション情報がシンファームウェア20に送信されてもよい。例示的なコマンドには、スクリーンオン/オフコマンド、音声捕捉オン/オフコマンド、切断コマンド等が含まれていてよい。例示的なコンフィギュレーションには、ディスプレイ消灯時間閾値、ディスプレイの明るさ等が含まれていてよい。
【0048】
入力及び出力は、コンテンツプロバイダインタフェースユニット24によってさらに処理され、これは一方の送信方向(シンファームウェア20へ)ではスクリーンコンテンツを、リモートディスプレイ及び入力/出力ハンドラ23を介してシンファームウェア20に送信されるスクリーンフレームフォーマットに変換し、他方の送信方向(シンファームウェア20から)ではリモートディスプレイ及び入力/出力ハンドラ23からの入力を受信し、これらをアプリケーション又はオペレーティングシステムの各部のような別のコンポーネントに提供する。エクステンションマネージャ25は、そのうち2つのアプリケーション26A、26B(ここではミニアプリとよばれる)だけが示されている、仮想オペレーティングシステム「上」で動作するミニアプリのインストール/コンフィギュレーション/取外しを管理する役割を果たし、モバイルデバイス16の他のデバイス(例えば、他のデバイス19)と通信して、例えばモバイルデバイス16からのセンサ入力をミニアプリ26A、26Bに提供してよい。リモートディスプレイ及び入力/出力ハンドラ23、入力/出力抽象化コンポーネント24、並びにエクステンションマネージャ25は、仮想オペレーティングシステムアプリケーション22の別々のコンポーネントとして表現されているが、これは単に便宜のためで、仮想オペレーティングシステムアプリケーション22により提供される幾つかの機能をよりよく理解できるようにするものにすぎず、これらは別々のコンポーネントとして実装しなければならないわけではない点に留意すべきである。
【0049】
ミニアプリ26A、26Bは、シンデバイス10の追加的な機能を提供するためにシンデバイス10用として設計されたアプリケーションである。このようなミニアプリの例は、シンデバイス10のディスプレイ11を用いたナビゲーションを可能にするナビゲーションアプリ又は、ビデオプレイヤアプリケーション等、シンデバイス上にコンテンツを提供するための他の何れかのアプリケーションである。ミニアプリ26A、26Bは一般に、基本的な仮想オペレーティングシステムアプリケーション22に加えてインストールされるアプリケーションであり、例えば仮想オペレーティングシステムアプリケーション22とは異なるベンダにより提供されてよい。換言すれば、エスクテンションマネージャ25により、仮想オペレーティングシステム内のミニアプリのインストール/コンフィギュレーション/取外しを可能にし、コンテンツプロバイダインタフェースユニット24はミニアプリ26A、26B及びモバイルオペレーティングシステム21上のその他のアプリケーションとのインタフェースを提供し、それによってこれらがシンファームウェア20からの、又はモバイルデバイス16の他のデバイス19からの入力にアクセスでき、これらがシンデバイス10のディスプレイ11上に表示されるコンテンツを変更できるようにする。
【0050】
さらに、仮想モバイルオペレーティングシステムアプリケーション22は、モバイルデバイスオペレーティングシステム21の下でモバイルデバイス上にインストールされる他のアプリケーション28(例えば、サードパーティアプリケーション)と通信してよい。他のアプリケーション28は、モバイルデバイスオペレーティングシステム21により提供される通信インタフェース27を使用してよいモバイルデバイス上で実行される、独立して開発されたモバイルアプリケーションである。通信インタフェース27は一般に、モバイルオペレーティングシステム21の下のアプリケーション間の通信のために機能する。このような通信インタフェースは通常、モバイルデバイスのオペレーティングシステムによって提供される。通信インタフェース27を使って、仮想モバイルオペレーティングシステムアプリケーション22は他のアプリケーション28と通信してよい。このようにして、他のアプリケーション28はシンデバイスからのセンサ/ユーザデータを受信し、(必要であれば)シンデバイスにスクリーンコンテンツを送信してよく、この際、図1のインタフェース17を使ってシンデバイスに直接接続する必要がなく、仮想モバイルオペレーティングシステムアプリケーション22と直接通信するだけでよい。
【0051】
他のアプリケーション28は典型的に、それ自体の独立したユーザインタフェース及びビジネスロジックを有するが、上述のようにして、シンデバイスにコンテンツを送信し、シンデバイス入力データを受信することにより、そのユーザインタラクションモデルを拡張してもよい。このような別のアプリケーション28の例には、スポーツアクティビティアプリ(例えば、シンデバイス上にスポーツ関連情報を示し、シンデバイスからモーションデータを受信してよい)、仮想オペレーティングシステムとは別に開発された(しかしながら、ナビゲーションもミニアプリと同様のシナリオを提供する)ナビゲーションアプリ、ソーシャルネットワーキング及びメッセージアプリ等が含まれる。
【0052】
幾つかの実施形態において、シンデバイス10は、ソフトウェア(記憶媒体上又はダウンロード用)としての仮想オペレーティングシステムアプリケーション22と共にキットで提供されてよく、それによってユーザは仮想オペレーティングシステムアプリケーションを自分のモバイルデバイス(例えば、スマートフォン、タブレット)にインストールしてシンデバイス10を動作させることができる。
【0053】
図3は、シンデバイス及びモバイルデバイスの例を示す例示的システムを示している。図3の例示的なシステムにおいて、シンデバイスはスマートグラス30として実装され、表示ユニット31A、31Bはグラス内に埋め込まれて、スマートグラス30を装着する人に対してコンテンツを示す。モバイルデバイスは、スマートフォン又はタブレット32として実装される。
【0054】
図4は、ある実施形態による方法を示すフローチャートであり、仮想オペレーティングシステムアプリケーションの動作を図解する。
【0055】
図4の方法は一連のステップとして示されているが、これらのステップが示されている順番は限定的と解釈されるべきではない。特に、幾つかのステップは連続して実行されてもよい点に留意すべきである。
【0056】
40で、モバイルデバイスにおいてシンデバイスからの入力、例えばユーザ入力を検出するシンデバイスのセンサからの入力を受信するステップを含む方法。41で、入力は仮想オペレーティングシステム(例えば、図2の22)を介して、任意選択により仮想オペレーティングシステムアプリケーションにインストールされたミニアプリ及び/又はモバイルデバイスのセンサ等のモバイルデバイスのデバイスを使って処理される。42で、方法は、シンデバイスに対し、シンデバイス上で表示されるべきスクリーンフレームを送信するステップを含む。さらに、図2に関して説明したように、コマンド又はコンフィギュレーション情報がシンデバイスに送信されてもよい。
【0057】
次に、仮想オペレーティングシステムアプリケーション及びミニアプリの例示的な動作を図5を参照しながら説明する。図5では、ユーザが仮想オペレーティングシステムを自分のモバイルデバイスにすでにインストールしており、シンデバイス、例えば図3のスマートグラス30を持ち、これがモバイルデバイスとペアリングされていることを前提とする。
【0058】
さらに、ユーザがモバイルデバイスの仮想オペレーティングシステムアプリケーションにナビゲーションミニアプリをインストールしてあることも前提である。
【0059】
図5は、上から下へ、シンデバイスが仮想オペレーティングシステムアプリケーション及びその上にインストールされたナビゲーションミニアプリを使ってどのように動作するかの例示的なタイムラインを示す。
【0060】
まず、50でユーザはモバイルデバイス上で仮想オペレーティングシステムアプリケーションを開く(起動させる)。すると、51で仮想オペレーティングシステムアプリケーションが起動し、52でシンデバイスを探す。すると、通信は例えばハンドシェイク手順53を使って開始され、54でホームスクリーンとも呼ばれるスタートスクリーンフレームが仮想オペレーティングシステムアプリケーションからシンデバイスに送信されて表示される。55で、ユーザは次にモバイルデバイス上の仮想オペレーティングシステムの下で実行されるナビゲーションミニアプリを開く。56のナビゲーションミニアプリの起動手順と初期化の後、57でミニアプリのスタートスクリーンがレンダリングされ、58で表示されるべきスクリーンフレームとしてシンデバイスに送信される。
【0061】
次に59で、ユーザは所望の目的地を入力する。幾つかの実施形態において、これは、モバイルデバイスのタッチスクリーンのような入力装置を使って行われてよい。他の実施形態において、これは、それを通じて目的地が音声により入力されるマイクロフォンのような、シンデバイスのある入力デバイスを使って行われてもよい。ナビゲーションミニアプリはすると、510で、例えばモバイルデバイスのGPSセンサを使用するモバイルデバイスからの現在地を要求し、511で位置の更新を受信する。数字512は、この更新が繰り返し行われるかもしれないことを示している。530、531に示されるように、さらに、シンデバイスのセンサ(例えば、方位センサ)からのセンサデータの更新もまた、ナビゲーションミニアプリにより要求されてよい。
【0062】
514で、ナビゲーションミニアプリはすると、確認スクリーンをレンダリングし、515でそれがシンデバイスに対し、シンデバイス上で表示されるべきスクリーンフレームとして送信される。
【0063】
すると、516でユーザはナビゲーションを開始する。図5の実施形態では、これはシンデバイス上のボタンを押すことによって行われる。他の実施形態において、これは音声コマンド等のシンデバイス上の他の動作又はモバイルデバイスの入力装置を使用する動作によって行われてもよい。517で、シンデバイスは仮想オペレーティングシステムにボタンが押されたことを報告し、518で仮想オペレーティングシステムアプリケーションはナビゲーションミニアプリにこれを提供する。532、533で示されるように、ナビゲーションミニアプリはまた、シンデバイスからのセンサ更新(例えば、方位センサ)を受信してよい。次に、519で、ナビゲーションミニアプリは第一のステップ(どこまで行く、又は運転するかの第一の命令)を計算し、520で対応するスクリーンをレンダリングし、それが521で表示のためにシンデバイスに提供される。ユーザの移動中、ナビゲーションはループ522で続けられ、523で位置が更新され、524で次のステップがナビゲーションミニアプリにより計算され、対応するスクリーンが525でレンダリングされ、それが526でシンデバイス上で表示されるように送信される。524で次のステップが計算される前に、幾つかの実施例において、ナビゲーションミニアプリはまた、534、535に示されるように、シンデバイスからのセンサ更新(例えば、方位センサ)も受信してよい。
【0064】
ナビゲーションが完了すると、527の何れかの時点で、ユーザはナビゲーションミニアプリを終了し、するとこれが528で閉じる。その後、529で、54で表示のために送信されたホームストクリーンに対応するホームスクリーンが表示のためにシンデバイスに送信される。
【0065】
図5のフローは、そこに仮想オペレーティングシステムアプリケーション及びミニアプリがインストールされたモバイルデバイスとシンデバイスとの間の考え得る通信を図解するための例にすぎず、これに対応する通信はその他の種類のミニアプリのためにも行われてよい点に留意すべきである。
図1
図2
図3
図4
図5
【国際調査報告】