JP6546832B2 - 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法 - Google Patents

動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法 Download PDF

Info

Publication number
JP6546832B2
JP6546832B2 JP2015212194A JP2015212194A JP6546832B2 JP 6546832 B2 JP6546832 B2 JP 6546832B2 JP 2015212194 A JP2015212194 A JP 2015212194A JP 2015212194 A JP2015212194 A JP 2015212194A JP 6546832 B2 JP6546832 B2 JP 6546832B2
Authority
JP
Japan
Prior art keywords
information
communication device
operating environment
unit
reconstruction
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
JP2015212194A
Other languages
English (en)
Other versions
JP2017084123A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015212194A priority Critical patent/JP6546832B2/ja
Publication of JP2017084123A publication Critical patent/JP2017084123A/ja
Application granted granted Critical
Publication of JP6546832B2 publication Critical patent/JP6546832B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本明細書は、動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法に関する。
近年、コンピュータなどの情報・通信機器だけでなく、それ以外の物にも通信機能を持たせて、インターネットに接続したり、相互に通信したりするIoT(Internet of Things)が実現されている。
このような背景の下において、Raspberry Piなどハードウェアリソースの限られた小型のコンピュータ(PC)が提供されている。
特許5445722号公報 特開2014−229321号公報 特開2012−145995号公報 特開2001−34458号公報 国際公開第2010/100735号 国際公開第2013/018204号 国際公開第2014/045699号
メモリ容量が少ない等のハードウェアリソースに制限のある小型PCにおいて、複数の種類のセンサを用いたアプリケーションプログラム(以下、「アプリケーション」と称する)を随時切り替えて試作したり、動作確認を繰り返すことがある。
ところが、利用するセンサや連携先サーバによって、ドライバや関連ツールなどが異なるので、上記センサの交換によるアプリケーションの切り替えの度に、小型PCのシステム環境を再構築する必要があり、その準備に時間がかかる。
また、システム環境を、デバイスドライバやサービス、設定まで含めて元に戻したり、再現するのは容易ではない。
本発明は、一側面として、センサを搭載可能な情報通信デバイスにおける、センサに対応する動作環境を容易に再構築する技術を提供する。
本発明の一側面に係る環境再構築プログラムは、検知対象を検知する検知部を搭載可能な情報通信デバイスに含まれるコンピュータに、以下の処理を実行させる。コンピュータは、搭載された検知部の種類を特定する。コンピュータは、特定した検知部の種類と、検知部により生成される検知データを収集するサーバ装置における検知データの収集方法とに対応する情報であって情報通信デバイスの動作環境を再構築する情報を示す再構築情報を取得する。コンピュータは、ブート処理を実行し、再構築情報に基づいて検知部に対応する動作環境を再構築する。なお、収集方法は、サーバ装置からの問い合わせに応じて情報通信デバイスから送信される検知データを収集する収集方法を含む。
本明細書に記載の技術によれば、センサを搭載可能な情報通信デバイスにおける、センサに対応する動作環境を容易に再構築することができる。
本実施形態における動作環境再構築システムの一例を示す。 本実施形態における小型PC管理システムの一例を示す。 本実施形態におけるセンサデータ要求モデルの一例を示す。 本実施形態におけるセンサ・ブートイメージ関係情報の一例を示す。 本実施形態における小型PC管理システムの全体の処理フローを示す。 本実施形態におけるブートイメージを利用したブート処理(S1)の詳細を示す。 本実施形態におけるloopbackスクリプトの一例を示す。 本実施形態におけるブートイメージ特定処理(S3)の処理の一例を示す。 本実施形態におけるセンサデータの収集方法の決定処理(S3−2)のフローを示す。 本実施形態における送信スクリプトを説明するための図である。 本実施形態におけるサーバにおいて生成されるブートイメージ定義31の例を示す。 本実施形態におけるデバイスにおいて、ダウンロードしたブートイメージ定義に基づいて書き換えられたブートローダ用定義を示す。 図5のS4〜S7の詳細を示す。 本実施形態におけるブートイメージファイルの作成の際に用いるコマンドの例である。 本実施形態におけるブートイメージファイルの作成手順を示す。 本実施形態におけるプログラムを実行するコンピュータのハードウェア環境の構成ブロック図の一例である。
仮想マシン、Linux(登録商標)コンテナなどの仮想技術などでは、ゲストのオペレーティングシステム(OS)側からホストOSへのアクセスは制限されるため、接続されたセンサへのアクセスが困難である。
Chefなどの環境構築自動化ツールでは、システム環境を元に戻すのが一般的に困難である。
Windows(登録商標)などのドライバの自動インストールでは、OS自体を入れ替えるなどシステム環境を大きく入れ替えることは想定していない。しかし、特定のセンサは、特定のOSやバージョン用のドライバしか存在しないものもあるので、その場合には、特定のOSに入れ替える必要がある。また、環境構築同様、OSの環境を元に戻すのが一般的に困難である。
また、ライブOSなどによる固定環境の利用においては、動作環境が固定化されるため、センサに応じた環境の切り替えやアプリケーションなどのカスタマイズが難しい。
そこで、本実施形態では、予め格納している小型PCの起動に用いるデータやアプリケーション等を一まとめにしたブートイメージから、接続されたセンサとセンサデータの要求モデルの組み合わせに対応するブートイメージを特定する。小型PC上のエージェントがその合成されたブートイメージを取得し、ブートローダのオプションを書き換えてデバイスをリブートする。そして、圧縮したブートイメージを読み込み専用でループバックマウント(ストレージ内にあるストレージファイルをマウント)する。これにより、小型PCのシステム環境を容易に元に戻すことができる。
図1は、本実施形態における動作環境再構築システムの一例を示す。環境再構築システム1は、検知対象を検知する検知部を搭載可能な情報通信デバイスと、該情報通信デバイスと通信するサーバ装置とを含む。
デバイス環境再構築システム1は、特定部2、取得部3、再構築部4を含む。
特定部2は、情報通信デバイスに搭載された検知部の種類を特定する。特定部2の一例として、後述する接続センサ検知部13が挙げられる。
取得部3は、サーバ装置から、特定した検知部の種類に対応する情報であって情報通信デバイスの動作環境を再構築する情報を示す再構築情報を取得する。取得部3の一例として、後述するブート制御エージェント15が挙げられる。
再構築部4は、情報通信デバイスのブート処理を実行し、再構築情報に基づいて検知部に対応する動作環境を再構築する。再構築部4の一例として、後述するブート制御エージェント15が挙げられる。
このように構成することにより、情報通信デバイスにおける、センサを利用する動作環境を容易に再構築することができる。
環境再構築システム1は、さらに、検知データ送信部5を含む。検知データ送信部5は、再構築された動作環境において、送信方法情報に基づいて、検知データを送信する。
このように構成することにより、再構築された動作環境において、検知データを送信することができる。
環境再構築システム1は、さらに、提供部6を含む。まず、取得部3は、検知部の種類を特定する種類特定情報と、検知部により生成される検知データの取得条件とに基づいて設定された該検知データの送信方法を示す送信方法情報を取得する。提供部6は、種類特定情報と取得条件とに基づいて検知データの送信方法を特定する。提供部6は、関係情報から、種類特定情報と送信方法との組み合わせに対応する再構築情報と送信スクリプトを、情報通信デバイスに提供する。ここで、関係情報は、再構築情報と、種類特定情報と、送信方法と、送信方法に対応する送信スクリプトとを関係付けた情報である。提供部6の一例として、後述するブートイメージ特定部24が挙げられる。
このように構成することにより、情報通信デバイスに、センサとセンサデータ要求モデルに応じて、検知データの送信方法を特定することができる。さらに、センサと、その送信方法に基づいて、ブートイメージと、送信スクリプトを特定することができる。
図2は、本実施形態における小型PC管理システムの一例を示す。小型PC管理システム10は、小型PC(以下、「デバイス」と称する)11、サーバ21を含む。デバイス11とサーバ21は、インターネット、ローカルエリアネットワーク(LAN)等のネットワークを介して接続されている。
デバイス11は、制御装置12、記憶装置17、センサ19を含む。センサ19は、外部の事象や状況を検知したり、周辺にある無線通信機器を検出したり装置であって、交換可能である。センサ19としては、例えば、温度センサ、圧力センサ、音センサ、Bluetooth(登録商標)通信により周辺にあるBluetooth対応機器を検知するセンサ、光センサ等、様々なセンサを用いることができ、限定されない。
制御装置12は、デバイス11の全体の動作を制御する。制御装置11は、接続センサ検知部13、ブートローダ14、ブート制御エージェント15、センサデータ送信部16として機能する。接続センサ検知部13、ブートローダ14、ブート制御エージェント15、センサデータ送信部16については、後述する。
記憶装置17は、データを格納するものであり、フラッシュメモリ等の小型の記憶装置だけでなく、フラッシュメモリカード(例えば、SDカード)等の可搬型記録媒体でもよい。本実施形態では、記憶装置17の一例として、SDカードを用いることとする。SDカード17は、サーバよりダウンロードしたブートイメージ30’、送信スクリプト32’等を格納する。また、SDカード17は、OS、アプリケーション、後述する種々のファイルやスクリプト、データを格納する。ここで、本実施形態では、サーバからダウンロードした情報に「’」を付する。
サーバ21は、制御装置22、記憶装置26を含む。
制御装置22は、サーバ21の全体の動作を制御する。制御装置22は、受信部23、ブートイメージ特定部24、センサデータ受信部25として機能する。受信部23、ブートイメージ特定部24、センサデータ受信部25については、後述する。
記憶装置26は、センサデータ要求モデル27、センサ・ブートイメージ関係情報28、ブートイメージ30、ブートイメージ定義31、送信スクリプト32、センサデータ33を格納する。
図3は、本実施形態におけるセンサデータ要求モデルの一例を示す。センサデータ要求モデル27は、「モデル名」27−1、「データの取得頻度」27−2、「固定/移動」27−3、「信頼性」27−4のデータ項目を含む。
「モデル名」27−1には、センサデータ要求モデルの名称が設定される。「データの取得頻度」27−2には、センサデータの取得頻度(リアルタイム/1時間以内/1日以内/1週間以内)が設定される。「固定/移動」27−3には、位置が固定されるセンサか、移動するセンサであるかが設定される。「信頼性」27−4には、センサデータに信頼性が必要(例えば、センサデータの欠落があってはいけない場合)であるか必要ないか(例えば、センサデータの欠落があってもよい場合)が設定される。
図4は、本実施形態におけるセンサ・ブートイメージ関係情報の一例を示す。センサ・ブートイメージ関係情報28は、接続されているセンサ19とセンサデータの収集方法とから、利用ブートイメージリストと送信スクリプトを特定するための情報である。
センサ・ブートイメージ関係情報28は、「センサタイプ」28−1、「収集方法」28−2、「利用ブートイメージリスト」28−3、「送信スクリプト」28−4のデータ項目を含む。
「センサタイプ」28−1には、センサのタイプが格納される。例えば、“温度”は、温度センサを示す。“Bluetooth”は、Bluetooth通信により周辺にあるBluetooth対応機器を検知するセンサを示す。
「収集方法」28−2には、サーバがセンサデータを収集する方法が格納される。「利用ブートイメージリスト」28−3には、ブートに必要な1以上のブートイメージファイルの名称がリスト化されて格納される。「送信スクリプト」28−4には、センサ19から値(センサデータ)を取得する取得処理スクリプトと、取得したセンサデータをサーバに送信する送信処理スクリプトとが合成されたスクリプト名が格納される。
図5は、本実施形態における小型PC管理システムの全体の処理フローを示す。図5では、デバイス11のブートから新しいブートイメージでアプリケーションが動作するまでのフローを示す。
デバイス11側では、ブート処理が実行される(S1)。ブート後、接続センサ検知部13は、デバイス11に接続されているセンサ19を検知してその種類を特定し、その特定した結果を示すセンサ特定情報をサーバ21に送信する(S2)。
サーバ21側では、受信部23は、デバイス11からセンサ特定情報を受信する。すると、ブートイメージ特定部24は、記憶装置26に格納された1以上のブートイメージから、センサ特定情報と、予め登録されたセンサデータ要求モデル27とに対応するブートイメージを特定する(S3)。
デバイス11側では、ブート制御エージェント15は、サーバ21にアクセスして、新しいブートイメージがあるかを確認する(S4)。ここでは、ブート制御エージェント15は、サーバ21からブートイメージ定義31をダウンロードし、前回ダウンロードしたブートイメージ定義と今回ダウンロードしたブートイメージ定義とを比較する。例えば、比較したブートイメージ定義のタイムスタンプに相違がある場合、ブート制御エージェント15は、サーバ21に新しいブートイメージ定義31が存在すると判定する。
サーバ21の記憶装置26に新しいブートイメージ定義31が存在すると判定した場合、ブート制御エージェント15は、ダウンロードしたブートイメージ定義31を用いて、サーバ21からブートイメージ30と送信スクリプト32をダウンロードする。ブート制御エージェント15は、ダウンロードしたブートイメージ30’を用いて、デバイス11を再ブートし(S5)、アプリケーションを起動させる(S6)。
デバイス11において、センサデータ送信部16は、ダウンロードした送信スクリプト32’を用いて、センサ19からセンサデータを収集し、サーバ21へ送信する。
サーバ21は、デバイス21から送信されたセンサデータを収集する(S7)。
図6は、本実施形態におけるブートイメージを利用したブート処理(S1)の詳細を示す。SDカード17は、start.elfファイル41、カーネル42、config.txtファイル43、cmdline.txtファイル44、initrdイメージファイル45、initファイル46、loopbackスクリプト47、base.sfsファイル49、app.sfsファイル50、diff.ext4ファイル51を含む。root48は、外部記憶装置であるSDカード17を示す。
start.elfファイル41は、ブート後、カーネルをロードするファイルである。カーネル42は、Linux等のOSの主要部を形成するモジュールである。config.txtファイル43は、デバイス11をブートするためのパラメータを管理するファイルである。cmdline.txtファイル44は、カーネルに与えるためのパラメータを管理するファイルである。initrdイメージファイル45は、カーネル42が起動する前に一時的に使用されるファイルであり、initスクリプト46及びloopbackスクリプト47を含む。
initスクリプト46は、ブート用のスクリプトである。loopbackスクリプト47は、initrdイメージファイル上で独立して動作するスクリプトである、SDカード17内に格納されている所定のファイルをマウントするスクリプトである。
base.sfsファイルは、OS等を含むベースイメージである。app.sfsファイルは、アプリケーションやデバイスドライバについてのイメージを含み、さらに、ブート制御エージェント15を示すエージェントスクリプトも含む。diff.ext4ファイル51は、ある基準となるデバイス11の状態からの差分の状態を保持するワークファイルである。
デバイス11のブートが開始すると、start.elfファイル41が起動することで、カーネル42がロードされる(S1−1)。start.elfファイル41により、config.txtファイル43と、cmdline.txtファイル44がロードされる(S1−2、S1−3)。start.elfファイル41により、initrdファイル45がロードされる(S1−4)。すると、start.elfファイル41により、カーネル42が起動される(S1−5)。
カーネル42は、initファイル46を起動させる(S1−6)。initファイル46は、loopbackスクリプト47を起動させる(S1−7)。
loopbackスクリプト47は、SDカード内のファイル(rootファイル48、base.sfsファイル49、app.sfsファイル50、diff.ext4ファイル51)をマウントする(S1−8〜S1−11)。
図7は、本実施形態におけるloopbackスクリプトの一例を示す。図7は、具体的には、Archlinux用にブートイメージをマウントするhookの例である。
loopbackスクリプト47は、init46より起動させられると、所定のパラメータを取得する。loopbackスクリプト47は、取得したパラメータを用いて、SDカード17のマウント、ブートイメージ(base.sfsファイル、app.sfsファイル)のマウント、差分ファイル(diff.ext4ファイル51)のマウントをし、ブートイメージと差分とを1つのファイルにまとめる。これにより、起動パラメータに指定されたブートイメージをマウントしてまとめることができる。
図8は、本実施形態におけるブートイメージ特定処理(S3)の処理の一例を示す。サーバ21において、受信部23は、デバイス11から、接続されたセンサ19の種類を特定するセンサ特定情報を取得する(S3−1)。
すると、ブートイメージ特定部24は、記憶装置26に格納されたセンサデータ要求モデル27と、取得したセンサ19の種類を特定する情報とに基づいて、センサデータの収集方法、すなわちデバイス11からのセンサデータの送信方法を決定する(S3−2)。S3−2については、図9で詳述する。このとき、ブートイメージ特定部24は、サーバ21側の受信方法もあわせて設定する。
ブートイメージ特定部24は、取得したセンサの種類と、決定したセンサデータの収集方法をキーとして、センサ・ブートイメージ関係情報28から、利用するブートイメージリストと送信スクリプトとを決定する(S3−3、S3−4)。
ブートイメージ特定部24は、決定したブートイメージリストに含まれるブートイメージの格納場所を、図11に示すように、ブートイメージ定義31としてデバイス用の定義ファイルに出力し、記憶装置26に格納する(S3−5)。
図9は、本実施形態におけるセンサデータの収集方法の決定処理(S3−2)のフローを示す。ブートイメージ特定部24は、記憶装置26からセンサデータ要求モデル27を取得する。
ブートイメージ特定部24は、センサデータ要求モデル27の「固定/移動」27−3を参照し、センサデータ要求モデルで示されるセンサモデルが位置が固定されるセンサであるか、移動するセンサであるかを判定する(S3−2−1)。
「固定/移動」27−3が“移動”を示す場合、ブートイメージ特定部24は、センサデータの収集方法を“Push送信”に決定する(S3−2−4)。“Push送信”は、サーバ21がデバイス11へ問い合わせを行うことなしに、デバイス11からセンサデータが送信される方式である。
「固定/移動」27−3が“位置固定”を示す場合、ブートイメージ特定部24は、「データの取得頻度」27−2を参照し、データの取得頻度が、例えば、リアルタイムか、1時間以内か、1日以内のいずれであるかを判定する(S3−2−2)。
「データの取得頻度」27−2が“1日以上”を示す場合、ブートイメージ特定部24は、センサデータの収集方法を“アーカイブPull”に決定する(S3−2−6)。“アーカイブPull”は、サーバ21がセンサへ問い合わせを行って、センサから所定期間分蓄積されたセンサデータを取得する方式である。
「データの取得頻度」27−2が“1時間以内”を示す場合、ブートイメージ特定部24は、センサデータの収集方法を“Pull”に決定する(S3−2−5)。“Pull”は、サーバ21がデバイス11へ問い合わせを行って、デバイス11から前回収集以降に蓄積されたセンサデータを取得する方式である。
「データの取得頻度」27−2が“リアルタイム”を示す場合、ブートイメージ特定部24は、センサデータの収集方法の「信頼性」27−4を判別する(S3−2−3)。
「信頼性」27−4が“必要”を示す場合、ブートイメージ特定部24は、センサデータの収集方法を“Pull”に決定する(S3−2−5)。「信頼性」27−4が“不要”を示す場合、ブートイメージ特定部24は、センサデータの収集方法を“Push送信”に決定する(S3−2−4)。
図10は、本実施形態における送信スクリプトを説明するための図である。送信スクリプトは、センサデータの取得処理スクリプトと送信処理スクリプトとを、パイプ(+)で組み合わせて合成したスクリプトである。以下では、送信スクリプトを形成するシェルスクリプトであって、パイプ(+)で接続対象となる各シェルスクリプトを説明する。
図10(A)は、センサデータの取得処理のうち温度データ取得の一例としてシェルスクリプト“digital-read.sh”の例を示す。図10(A)に示すように、デバイス11側でdigital-read.shが実行されると、センサ19により検知された値が読み取られ、その値が数値へ変換され、変換処理により得られた数値データにタイムスタンプが付与される。
図10(B)は、センサデータの取得処理のうちBluetoothスキャンの一例としてシェルスクリプト“Bluetooth-detect.sh”の例を示す。図10(B)に示すように、デバイス11側でBluetooth-detect.shが実行されると、Bluetoothにより通信を行う近隣の機器から機器情報が検知され、その機器情報にタイムスタンプが付与される。
図10(C)は、送信処理のうちPush送信の一例としてシェルスクリプト“send-push.sh”の例を示す。図10(C)に示すように、デバイス11側でsend-push.shが実行されると、サーバ21へデータ送信する処理が行われる。
図11は、本実施形態におけるサーバにおいて生成されるブートイメージ定義31の例を示す。ブートイメージ定義31は、サーバ21において、ブートイメージが格納されている場所を示す。
図12は、本実施形態におけるデバイスにおいて、ダウンロードしたブートイメージ定義に基づいて書き換えられたブートローダ用定義を示す。ブートローダ用定義は、図13にて後述する。
図13は、図5のS4〜S7の詳細を示す。ブートローダ14は、ブート制御エージェント15を起動させる(S4−1)。ブート制御エージェント15は、サーバ21にアクセスし、新しく登録されたブートイメージ定義31が存在するかを確認する(S4−2)。ここでは、ブート制御エージェント15は、サーバ21からブートイメージ定義31をダウンロードし、前回ダウンロードしたブートイメージ定義と今回ダウンロードしたブートイメージ定義とを比較する。例えば、比較したブートイメージ定義のタイムスタンプに相違がある場合、ブート制御エージェント15は、サーバ21に新しいブートイメージ定義が存在すると判定する。
新しく登録されたブートイメージ定義31が存在する場合、ブート制御エージェント15は、そのブートイメージ定義31を取得する。ブート制御エージェント15は、取得したブートイメージ定義31で示された格納場所から1以上のブートイメージをダウンロードすると共に、そのブートイメージに対応する送信スクリプト32をダウンロードする(S4−3)。
ブート制御エージェント15は、ダウンロードしたブートイメージ30’と送信スクリプト32’を、SDカード17に格納する(S4−4、S4−5)。
ブート制御エージェント15は、取得したブートイメージ定義31に基づいて、cmdline.txtに含まれるブートローダ用定義を、図12に示すように、書き換える(S5−1)。
ブート制御エージェント15は、ブートローダ14にリブート指示を行う(S5−2)。ブートローダ14は、リブート指示を受けると、ブートローダ用定義(cmdline.txt)に基づいて、ブートイメージ30をマウントする(S5−3)。S5−2及びS5−3の処理は、図6で説明した処理と同様である。
ブートローダ14は、ブート制御エージェント15を起動させる(S7−1)。ブート制御エージェント15は、送信スクリプト32’ をセンサデータ送信部16として起動させる(S7−2)。すると、センサデータ送信部16は、センサ19から、センサデータを収集する。
すると、センサデータ送信部16は、送信スクリプト32’で規定された送信方法でセンサデータをサーバ21に送信する(S7−3)。サーバ21側では、センサデータ受信部25は、デバイス11から送信されたセンサデータを受信する。
次に、ブートイメージファイルの作成について説明する。
図14は、本実施形態におけるブートイメージファイルの作成の際に用いるコマンドの例である。これについては、図15にて説明する。
図15は、本実施形態におけるブートイメージファイルの作成手順を示す。ユーザは、デバイス11に対して、図15(A)に示す差分ファイル作成コマンドを実行することにより、差分ファイルのフォーマットを行い、初期化された差分ファイル(diff.ext4)を作成する(S11)。ユーザは、差分ファイル(diff.ext4)を用いて、デバイス11をブートする(S12)。
デバイス11のブート後、ユーザは、センサ19に対応するアプリケーション等の必要なパッケージをデバイス11にインストールする(S13)。
ユーザは、デバイス11に対して、図15(A)に示す差分ファイル作成コマンドを実行することにより、差分ファイル(diff.ext4a)を作成する。ここで、差分ファイル(diff.ext4a)は、上記パッケージのインストール前後のデバイスの環境の差分を含む。ユーザは、S11で作成した差分ファイル(diff.ext4)を、インストール処理後に得られた差分ファイル(diff.ext4a)と入れ替える(S14)。
ユーザは、差分ファイル(diff.ext4a)を用いて、デバイス11を再ブートする(S15)。ユーザは、デバイス11に対して、差分ファイル(diff.ext4)を用いて、図15(B)に示すイメージファイル作成コマンドを実行することにより、ブートイメージファイルを作成する(S16)。
ユーザは、生成されたブートイメージを予めサーバ21の記憶装置26に登録する(S17)。また、ユーザは、センサ・ブートイメージ関係情報28へ、サーバ21に登録したブートイメージに対応するレコードを登録する(S18)。
図16は、本実施形態におけるプログラムを実行するコンピュータのハードウェア環境の構成ブロック図の一例である。コンピュータ60は、デバイス11またはサーバ21として機能する。コンピュータ60は、CPU62、ROM63、RAM66、通信I/F64、記憶装置67、出力I/F61、入力I/F65、読取装置68、バス69、出力装置71、入力装置72によって構成されている。
ここで、CPUは、中央演算装置を示す。ROMは、リードオンリメモリを示す。RAMは、ランダムアクセスメモリを示す。I/Fは、インタフェースを示す。バス69には、CPU62、ROM63、RAM66、通信I/F64、記憶装置67、出力I/F61、入力I/F65、及び読取装置68が接続されている。読取装置68は、可搬型記録媒体を読み出す装置である。出力装置71は、出力I/F61に接続されている。入力装置72は、入力I/F65に接続されている。
記憶装置67としては、ハードディスク、フラッシュメモリカードなど様々な形式の記憶装置を使用することができる。コンピュータ60がデバイス11である場合には、記憶装置67またはROM63には、CPU62を特定部2、取得部3、再構築部4、検知データ送信部5として機能させる本実施形態に係るプログラムが格納されている。コンピュータがサーバ21である場合には、記憶装置67またはROM63には、提供部6として機能させる本実施形態に係るプログラムが格納されている。
CPU62は、記憶装置67またはROM63から本実施形態に係るプログラムを読み出し、当該プログラムを実行する。
通信I/F64は、ネットワークと接続して他の装置と通信するためのポート等のインタフェースである。
上記実施形態で説明した処理を実現するプログラムは、プログラム提供者側から通信ネットワーク70、および通信I/F64を介して、例えば記憶装置67に格納されてもよい。また、上記実施形態で説明した処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は読取装置68にセットされて、CPU62によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはCD−ROM、フレキシブルディスク、光ディスク、光磁気ディスク、ICカード、USBメモリ装置、半導体メモリカードなど様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読取装置68によって読み取られる。
入力装置72には、キーボード、マウス、電子カメラ、ウェブカメラ、マイク、スキャナ、センサ、タブレット、タッチパネルなどを用いることが可能である。また、出力装置71には、ディスプレイ、プリンタ、スピーカなどを用いることが可能である。
ネットワーク70は、インターネット、LAN、WAN、専用線、有線、無線等の通信網であってよい。
本実施形態によれば、メモリ容量等のハードウェア資源が制限されたデバイス11において、複数の種類のセンサを用いたアプリケーションを随時切り替えて試作したり、動作確認を繰り返す場合に、デバイス11のシステム環境の再構築を容易に行うことができる。
なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
1 環境再構築システム
2 特定部
3 取得部
4 再構築部
5 検知データ送信部
6 提供部
10 小型PC管理システム
11 デバイス
12 制御装置
13 接続センサ検知部
14 ブートローダ
15 ブート制御エージェント
16 センサデータ送信部
17 SDカード
19 センサ
21 サーバ
22 制御装置
23 受信部
24 ブートイメージ特定部
25 センサデータ受信部
26 記憶装置
27 センサデータ要求モデル
28 センサ・ブートイメージ関係情報
30,30’ ブートイメージ
31 ブートイメージ定義
32,32’ 送信スクリプト
33 センサデータ

Claims (7)

  1. 検知対象を検知する検知部を搭載可能な情報通信デバイスに含まれるコンピュータに、
    搭載された前記検知部の種類を特定し、
    特定した前記検知部の種類と、前記検知部により生成される検知データを収集するサーバ装置における前記検知データの収集方法とに対応する情報であって前記情報通信デバイスの動作環境を再構築する情報を示す再構築情報を取得し、
    ブート処理を実行し、前記再構築情報に基づいて前記検知部に対応する動作環境を再構築する
    処理を実行させ
    前記収集方法は、前記サーバ装置からの問い合わせに応じて前記情報通信デバイスから送信される前記検知データを収集する収集方法を含む
    ことを特徴とする動作環境再構築プログラム。
  2. 前記再構築情報の取得において、
    前記検知データの取得条件に基づいて決定された前記収集方法と、前記検知部の種類を特定する種類特定情報と基づいて設定された前記検知データの前記情報通信デバイスからの送信方法を示す送信方法情報を取得し、
    再構築された前記動作環境において、前記送信方法情報に基づいて、前記検知データを送信する
    ことを特徴とする請求項1に記載の動作環境再構築プログラム。
  3. 前記取得条件は、前記検知データの欠落を許容するか否かを示す情報を含むことを特徴とする請求項2に記載の動作環境再構築プログラム。
  4. 検知対象を検知する検知部を搭載可能な情報通信デバイスと、該情報通信デバイスと通信するサーバ装置とを含むデバイス環境再構築システムであって、
    前記情報通信デバイスが、
    前記情報通信デバイスに搭載された前記検知部の種類を特定する特定部と、
    前記検知部により生成される検知データを収集する前記サーバ装置から、特定した前記検知部の種類と、前記サーバ装置における前記検知データの収集方法とに対応する情報であって前記情報通信デバイスの動作環境を再構築する情報を示す再構築情報を取得する取得部と、
    前記情報通信デバイスのブート処理を実行し、前記再構築情報に基づいて前記検知部に対応する動作環境を再構築する再構築部と、
    を備え
    前記収集方法は、前記サーバ装置からの問い合わせに応じて前記情報通信デバイスから送信される前記検知データを収集する収集方法を含む
    ことを特徴とする動作環境再構築システム。
  5. 前記取得部は、前記検知データの取得条件に基づいて決定された前記収集方法と、前記検知部の種類を特定する種類特定情報と基づいて設定された前記検知データの前記情報通信デバイスからの送信方法を示す送信方法情報を取得し、
    前記情報通信デバイスが、さらに、
    再構築された前記動作環境において、前記送信方法情報に基づいて、前記検知データを送信する検知データ送信部
    備えることを特徴とする請求項に記載の動作環境再構築システム。
  6. 前記サーバ装置が、
    前記種類特定情報と前記取得条件とに基づいて前記検知データの前記収集方法を特定し、前記再構築情報と、前記種類特定情報と、前記収集方法と、前記送信方法情報である送信スクリプトとを関係付けた関係情報から、前記種類特定情報と前記収集方法との組み合わせに対応する前記再構築情報と前記送信スクリプトを、前記情報通信デバイスに提供する提供部
    を備えることを特徴とする請求項に記載の動作環境再構築システム。
  7. 検知対象を検知する検知部を搭載可能な情報通信デバイスに含まれるコンピュータが、
    搭載された前記検知部の種類を特定し、
    特定した前記検知部の種類と、前記検知部により生成される検知データを収集するサーバ装置における前記検知データの収集方法とに対応する情報であって前記情報通信デバイスの動作環境を再構築する情報を示す再構築情報を取得し、
    前記情報通信デバイスのブート処理を実行し、前記再構築情報に基づいて前記検知部に対応する動作環境を再構築し、
    前記収集方法は、前記サーバ装置からの問い合わせに応じて前記情報通信デバイスから送信される前記検知データを収集する収集方法を含む
    ことを特徴とする動作環境再構築方法。
JP2015212194A 2015-10-28 2015-10-28 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法 Active JP6546832B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015212194A JP6546832B2 (ja) 2015-10-28 2015-10-28 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015212194A JP6546832B2 (ja) 2015-10-28 2015-10-28 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法

Publications (2)

Publication Number Publication Date
JP2017084123A JP2017084123A (ja) 2017-05-18
JP6546832B2 true JP6546832B2 (ja) 2019-07-17

Family

ID=58711177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015212194A Active JP6546832B2 (ja) 2015-10-28 2015-10-28 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法

Country Status (1)

Country Link
JP (1) JP6546832B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022071239A (ja) * 2020-10-28 2022-05-16 株式会社日立製作所 情報処理端末及びセンシングシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02197430A (ja) * 1989-01-26 1990-08-06 Mazda Motor Corp 車両用制御ユニツト
JP2001236302A (ja) * 2000-02-24 2001-08-31 Hitachi Ltd 情報処理装置
JP2002366653A (ja) * 2001-06-13 2002-12-20 Matsushita Electric Ind Co Ltd 遠隔医療システム
US7266818B2 (en) * 2002-06-28 2007-09-04 Microsoft Corporation Automated system setup
JP2005130033A (ja) * 2003-10-21 2005-05-19 Ipsquare Inc 監視システム、制御装置、及び撮像装置
JP2006344017A (ja) * 2005-06-09 2006-12-21 Hitachi Ltd センサネットワークシステム及びセンサネットワークのデータ処理方法
JP5799256B2 (ja) * 2011-03-23 2015-10-21 パナソニックIpマネジメント株式会社 センサモジュール、および設備端末制御システム
JP2013218436A (ja) * 2012-04-05 2013-10-24 Nippon Telegr & Teleph Corp <Ntt> データ収集管理方法
JP2014052968A (ja) * 2012-09-10 2014-03-20 Ricoh It Solutions Co Ltd ドライバ配信サーバ及びドライバ配信プログラム
JP5737696B2 (ja) * 2013-07-31 2015-06-17 株式会社日立ソリューションズ センサデータ収集システム

Also Published As

Publication number Publication date
JP2017084123A (ja) 2017-05-18

Similar Documents

Publication Publication Date Title
KR101389977B1 (ko) 다중 운영체제를 지원하는 클라이언트 단말 및 다중 운영체제 지원방법
US11150916B2 (en) Execution of workflows in distributed systems
US9740469B2 (en) Dynamic plugin(s) for cloud application(s)
US9087076B2 (en) Automated filer technique for use in virtualized appliances and applications
US20030195951A1 (en) Method and system to dynamically detect, download and install drivers from an online service
US20080178143A1 (en) System, Method and Computer Program Product for Developing, Configuring, Installing and Testing Software
EP2019358A1 (en) A method and a system for the creation and deployment of a virtual machine appliance on virtualised servers
CN104254840A (zh) 在计算机系统中的存储器转储和分析
CN105144093A (zh) 使用基础设施管理代理供应的工作负荷部署
CN110908753B (zh) 一种智能融合的云桌面服务器、客户端及系统
WO2014089734A1 (zh) 终端和应用程序恢复方法
KR20110052521A (ko) 정보 처리 장치, 통신 시스템, 컴퓨터 판독 가능 매체 및 정보 처리 방법
CN102135893A (zh) 将操作系统集成到bios芯片及启动服务器上操作系统的方法
CN113835644B (zh) 整机迁移方法、装置、设备及存储介质
US8856740B2 (en) Implementing multiple versions of a plug-in concurrently
JP2017068655A (ja) 情報処理装置、方法、及びプログラム
CN111142884A (zh) 小程序的版本部署方法、装置、电子设备及存储介质
CN114756290B (zh) 一种操作系统安装方法、设备及可读存储介质
JP2015125472A (ja) 管理装置、管理装置の制御方法及びプログラム
JP2011248658A (ja) 仮想サーバデプロイ管理装置及び方法、そのプログラム
JP6546832B2 (ja) 動作環境再構築プログラム、動作環境再構築システム、動作環境再構築方法
CN106528226A (zh) 操作系统的安装方法及装置
US9940334B2 (en) Image forming apparatus and control method thereof
JP2016052743A (ja) 画像処理装置、初期設置情報管理システムの制御方法、及びプログラム
US20130097207A1 (en) Information processing device, information processing method and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190513

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20190513

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190513

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: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190624

R150 Certificate of patent or registration of utility model

Ref document number: 6546832

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150