(58)【調査した分野】(Int.Cl.,DB名)
オンライン環境ではホスト計算機に接続してデータの閲覧、作成、編集を行い、オフライン環境では前記ホスト計算機に接続せずにデータの閲覧、編集が可能なシンクライアント端末において、オフライン環境でデータの閲覧、編集を行うプログラムを格納する揮発性主記憶装置と、データバスに接続されオフライン環境で閲覧、編集するデータを格納する揮発性補助記憶装置と、前記プログラムを実行して前記データを前記揮発性補助記憶装置に格納する第1の処理装置と、現在位置を検出する位置検出センサと、前記揮発性補助記憶装置と前記データバスとの接続/切り離しを行う第1のスイッチと、前記位置検出センサと前記スイッチを制御する第2の処理装置とを備え、前記第2の処理装置は、前記位置検出センサが検出した現在位置に応じて前記揮発性補助記憶装置とデータバスの接続/切り離しを前記スイッチに指示することを特徴とするシンクライアント端末。
前記第2の処理装置は、データの閲覧、編集が可能な位置、期限を登録するメモリを備え、前記位置検出センサが検出した現在位置が前記メモリに登録された位置と一致しない場合には前記揮発性補助記憶装置と前記データバスの切り離しを前記第1のスイッチに指示することを特徴とする請求項1記載のシンクライアント端末。
前記第1の処理装置と前記揮発性主記憶装置に電力を供給する主電源と、前記第2の処理装置と前記揮発性補助記憶装置と前記位置検出センサにパワーバスにより電力を供給するバッテリと、前記揮発性補助記憶装置と前記パワーバスとの接続/切り離しを行う第2のスイッチとを備え、前記第2の処理装置は、現在時刻が前記メモリに登録された期限を越えている場合には前記揮発性補助記憶装置と前記パワーバスとの切り離しを前記第2のスイッチに指示することを特徴とする請求項2記載のシンクライアント端末。
【発明を実施するための形態】
【0008】
以下図面を用いて、本発明の一実施形態を詳述する。
以下、本発明に係るシンクライアント端末について説明するに際し、比較のため、まず、HDD等の書き込み可能なストレージ装置を搭載する一般的な計算機について説明するとともに、HDD等の書き込み可能なストレージ装置を搭載していない一般的な計算機について説明する。
【0009】
図1は、書き込み可能なストレージ装置(HDD等)を搭載する一般的な計算機101の構成例を示す図である。
【0010】
計算機101は、CPU(Central Processing Unit)110、チップセット130、補助記憶装置140及び主記憶装置120を備えている。主記憶装置120は、CPU110とバスを介して接続されており、例えばDRAM(Dynamic Random Access Memory)等の揮発性半導体記憶装置である。主記憶装置120は、CPU110によって実行されるプログラム及びCPU110の動作に必要なデータを保存しているとともに、OS(Operating System)121としての機能を発揮させるプログラムデータを格納している。OS121は、計算機101全体を管理する基本ソフトウェアである。
【0011】
CPU110は、主記憶装置120に記憶されたプログラムを実行する。チップセット130は、バスを介してCPU110と接続されており、補助記憶装置140を制御している。この補助記憶装置140は、書き込み可能なストレージ装置に相当し、ハードディスクドライブ(HDD)等の記憶装置である。この補助記憶装置140は、主記憶装置120に読み出されるデータ及びCPU110の演算処理結果を格納している。
【0012】
計算機101の電源がオンとされると、OS121としての機能を発揮させるプログラムが補助記憶装置140から取得され、主記憶装置120へ展開される。CPU110は、主記憶装置120から処理命令を取り出して実行することにより、OSを起動させる。OS起動中は、バックグラウンドで実行しているシステム・サービスが、一時的に主記憶装置120にデータを格納している。この計算機101は、OSを終了する際、これらのデータを補助記憶装置140へ書き出している。
【0013】
図2は、書き込み可能なストレージ装置(HDD等)が搭載されていない一般的な計算機201の構成例を示す図である。
【0014】
計算機201は、演算処理装置であるCPU(Central Processing Unit)210を搭載しており、このCPU210は、主記憶装置220に記憶されたプログラムを実行する。主記憶装置220は、CPU210とバスを介して接続されており、例えばDRAMである。この主記憶装置220は、CPU210で実行するプログラムを保存しているとともに、CPU210の動作に必要なデータを保存している。チップセット230は、バスを介してCPU210に接続されており、補助記憶装置240を制御している。この補助記憶装置240は、例えば、Compact Flashのようなフラッシュメモリ等の不揮発性半導体記憶装置で読み出し専用の記憶装置である。即ち、計算機201は、読み出し専用である補助記憶装置240を搭載しているが、書き込み可能なストレージ装置(HDD等)を搭載していない。
【0015】
OS(Operating System)221は、計算機201全体を管理する基本ソフトウェアである。計算機201の電源をオンとすると、OS221としての機能を発揮させるためのプログラムが補助記憶装置240から取得されて、主記憶装置220へ展開される。CPU210は、主記憶装置220から処理命令を取り出して実行することにより、OS221を起動させる。
【0016】
仮想メモリ領域222は、後述するフィルタリング機能223により、データの書き込みが行われる主記憶装置220上の領域である。フィルタリング機能223は、OS221が有する複数の機能のうちの1つの機能であり、本来は補助記憶装置240に書き込まれるデータを仮想メモリ領域222へ書き込むための機能である。
【0017】
OS起動中は、バックグラウンドで実行しているシステム・サービスが、一時的に主記憶装置220にデータを格納している。OS221を終了する際は、これらのデータは、OS221上で動作するフィルタリング機能223により、補助記憶装置240の代わりに主記憶装置220上の仮想メモリ領域222へ書き出される。
【0018】
図3は、本発明が適用されたシンクライアント端末301の構成例を示す図である。シンクライアント端末301は、データを書き込み及び読み出しが可能な揮発性半導体記憶装置を搭載しており、オフライン環境において当該揮発性半導体記憶装置に書き込みを行う機能を有する。なお、ここでいう揮発性半導体記憶装置とは、第2の補助記憶装置350を示している。シンクライアント端末301は、演算処理装置であるCPU(Central Processing Unit)310を搭載しており、このCPU310は、主記憶装置320に記憶されたプログラムを実行する。なお、図示のシンクライアント端末301では、少なくともCPU310及び第2の補助記憶装置350がマザーボードに搭載されており、その他にも、例えば、専用バッテリ370を除く、図示の構成が搭載されている。
【0019】
主記憶装置320は、例えばDRAMである。主記憶装置320は、CPU310で実行するプログラムを保存しているとともに、CPU310の動作に必要なデータを保存している。チップセット330は、バスを介してCPU310と接続されており、第1の補助記憶装置340及び第2の補助記憶装置350を制御している。このチップセット330は、第2の補助記憶装置350にデータバス351Aを介して接続されている。
【0020】
第1の補助記憶装置340は、いわゆるコンパクトフラッシュなどとも呼ばれるフラッシュメモリの一種であり、読み出し専用の記憶装置である。第2の補助記憶装置350は、例えばRAM(Random Access Memory)で、オフライン環境において閲覧したり編集する対象のデータを格納している書き込み可能なストレージ装置である。
【0021】
データバススイッチ351は、コントローラIC360からの制御信号により、第2の補助記憶装置350とチップセット330とを電気的に接続しているデータバス351Aを切り離し/接続するための回路である。一方、パワーバススイッチ352は、コントローラIC360からの制御信号により、第2の補助記憶装置350と専用バッテリ370とを接続しているパワーバス352Aを切り離し/接続するための回路である。
【0022】
コントローラIC360は、マイクロコンピュータであり、データバススイッチ351、パワーバススイッチ352及び後述する位置検出センサ380を制御する。コントローラIC360は、演算処理装置であるCPU(Central Processing Unit)361、メモリ362及びI/Oインターフェース363を搭載している。
【0023】
オフライン環境で使用する前に、メモリ362には、第2の補助記憶装置350に保存されているデータを閲覧したり編集できる地点及び期限が登録されている。さらに、このメモリ362には、位置検出センサ380の測定誤差の許容範囲が登録されるようにしても良い。CPU361は、計算機301の現在位置及び現在時刻と、メモリ362に登録されているデータを閲覧したり編集できる地点及び期限とを比較し、データを閲覧したり編集できるか否かに関する判定を行う。
【0024】
I/Oインターフェース363は、入出力インターフェースであり、CPU361の演算結果よりデータバススイッチ351及びパワーバススイッチ352へ制御信号を送る。専用バッテリ370は、第2の補助記憶装置350、コントローラIC360及び位置検出センサ380に電力を供給する二次電池である。位置検出センサ380は、例えば、GPS(Global Positioning System)であり、人工衛星からの電波を利用して、シンクライアント端末301の現在地を取得する機能を有する。なお、現在位置を取得するやり方としては、位置検出センサ380の代わりに、無線通信の際の基地局の位置から現在位置を検出するようにしても良い。
【0025】
シンクライアント端末301の電源がオンとなっていなくても、専用バッテリ370によって、第2の補助記憶装置350、コントローラIC360及び位置検出センサ380は、当該専用バッテリ370により駆動している。シンクライアント端末301を分解する場合には、後述するように、専用バッテリ370を外さなければ、シンクライアント端末301のマザーボードにアクセスできない構造となっている。
【0026】
OS(Operating System)321は、計算機301全体を管理する基本ソフトウェアである。シンクライアント端末301の電源を入れると、OS321のプログラムデータを第1の補助記憶装置340から取得して、主記憶装置320へ展開する。CPU310は、主記憶装置320から処理命令を取り出し、実行することでOSが起動する。OS321は、第1の補助記憶装置340を1つ目のストレージ装置として認識する一方、第2の補助記憶装置350を2つ目のストレージ装置として認識する。オフライン環境では、CPU310が、第2の補助記憶装置350に格納されているデータを主記憶装置320へ読み出し、OS321にインストールされているアプリケーション上で閲覧したり編集する。
【0027】
仮想メモリ領域322は、フィルタリング機能323により、データの書き込みが行われる主記憶装置320上の領域である。フィルタリング機能323は、OS321の機能であり、本来は補助記憶装置340に書き込まれるデータを仮想メモリ領域322へ書き込む。
【0028】
OSが稼働中は、バックグラウンドで実行しているシステム・サービスが一時的に主記憶装置320にデータを格納している。一方、OSを終了する際は、これらのデータは、OS321上で動作するフィルタリング機能323により、補助記憶装置340の代わりに主記憶装置320上の仮想メモリ領域322へ書き出される。
【0029】
図4は、データファイルごとに、データを閲覧したり編集できる地点、期限及び位置検出センサ380の測定誤差の許容範囲の一例の情報を示す。これらの情報は、オフライン環境で使用する前に、予めメモリ362に登録されている。図示の例において、ファイルAを閲覧したり編集できる地点は、例えば、「E県F市G W番地」及び「H県I市J X番地」である。ここで、位置検出センサ380の測定誤差を考慮し、例えば、各地点から半径500m以内を許容範囲とする。また、閲覧したり編集できる期限は、例えば「2012年1月31日23時59分59秒」までである。
【0030】
図5は、専用バッテリ370を外さなければシンクライアント端末301のマザーボードにアクセスできない構造を示す。マザーボード401はシンクライアント端末301のマザーボードである。マザーボード401は上ケース410と下ケース420に挟まれてシンクライアント端末301に収容されている。上ケース410を外してマザーボード401を取り出す際は、上ケース410から下ケース420にかけて貫通しているネジ止めを外さなければならない構造となっている。バッテリホルダ430は専用バッテリ370のバッテリホルダであり、上ケース410に埋め込まれている。ネジ431は上ケース410から下ケース420にかけて貫通しているネジの1つであり、バッテリホルダ430の底面にネジ穴がある。ネジ431を外さなければ上ケース410は外れず、専用バッテリ370を外さなければネジ431を外すことができないため、専用バッテリ370を外さなければマザーボード401にアクセスできない構造となっている。ケーブル432はマザーボード401とバッテリホルダ430を接続するケーブルである。
【0031】
図6は、許可範囲設定処理の一例を示すフローチャートである。この許可範囲設定処理では、ホスト計算機において閲覧したり編集するデータを作成し、シンクライアント端末301が備える第2の補助記憶装置350に格納する動作を示している。
【0032】
まずオンライン環境において、シンクライアント端末301に接続されているホスト計算機(図示せず)では、エンドユーザが持ち出す対象としてのデータファイルが作成される(S11)。次に、このホスト計算機が、当該作成されたデータファイルを、ネットワーク(図示せず)を経由してファイルサーバ(図示せず)に格納する(S12)。
【0033】
次に、当該作成されたデータファイルは、ファイルサーバからシンクライアント端末301にダウンロードされ(S13)、このシンクライアント端末301の第2の補助記憶装置350に格納される。最後に、例えば、専用の書き込みツールを用いて、コントローラIC360のメモリ362に、第2の補助記憶装置350に格納されたデータを閲覧したり編集することが可能な地点(以下、閲覧・編集可能地点ともいう)及び期限が書き込まれる。この際、併せて、位置検出センサ380による測定誤差に基づく許可範囲がメモリ362に書き込まれる(S14)。
【0034】
図7及び
図8は、それぞれ、データ閲覧可否判定処理の一例を示すフローチャートである。
図7は、コントローラIC360がシンクライアント端末301の現在位置に基づいてデータバススイッチ351を制御する動作例を示す。
【0035】
位置検出センサ380は、コントローラIC360の指示に応じて、シンクライアント端末301の現在位置を検出する(S21)。次にCPU361は、シンクライアント端末301の現在位置とメモリ362に予め登録された地点を照合する(S22)。照合の結果、シンクライアント端末301の現在位置とメモリ362に予め登録された地点が一致する場合、I/Oインターフェース363は、データバススイッチ351に制御信号を送り、第2の補助記憶装置350とデータバスとを接続し(S23)、第2の補助記憶装置350に保存されているデータを閲覧したり編集することが可能となる。
【0036】
一方、上述した照合の結果、シンクライアント端末301の現在位置とメモリ362に予め登録された地点が不一致である場合、I/Oインターフェース363は、データバススイッチ351に制御信号を送り、第2の補助記憶装置350とデータバスとの接続を切り離した状態とし(S24)、第2の補助記憶装置350に保存されているデータを閲覧したり編集することが不可能となる。
【0037】
計算機301の電源をオンとしていない時も、コントローラIC360及び位置検出センサ380は、専用バッテリ370により駆動しているため、計算機301の現在位置を検出し、第2の補助記憶装置350とデータバスを接続することができる。
【0038】
図8は、メモリ362に登録されているデータ閲覧期限を過ぎているか確認し、パワーバススイッチ352を制御するコントローラIC360の動作フローチャートを示す。
【0039】
CPU361は、メモリ362に予め登録されているデータ閲覧期限を越えていないか確認する(S31)。確認の結果、メモリ362に予め登録されているデータ閲覧期限を越えている場合(S32)、I/Oインターフェース363は、パワーバススイッチ352に制御信号を送り、第2の補助記憶装置350とパワーバス352Aとを切り離し(S33)、第2の補助記憶装置350に保存されているデータが揮発して消去される。計算機301の電源を入れていない時も、コントローラIC360は、専用バッテリ370により駆動しているため、データ閲覧期限を越えていないか確認し、第2の補助記憶装置350とパワーバス352Aとを切り離すことができる。
【0040】
一方、メモリ362に予め登録されているデータ閲覧期限を越えていない場合、I/Oインターフェース363は特別な処理は行わない(S32:No)。即ち、第2の補助記憶装置350とパワーバス352Aとを接続したままの状態とする。
【0041】
上記実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その趣旨を逸脱しない限り、様々な形態で実施することができる。例えば、上記実施形態では、各種プログラムの処理をシーケンシャルに説明したが、特にこれにこだわるものではない。従って、処理結果に矛盾が生じない限り、処理の順序を入れ替え又は並行動作するように構成しても良い。