JP5407386B2 - サーバ装置及びプログラム - Google Patents

サーバ装置及びプログラム Download PDF

Info

Publication number
JP5407386B2
JP5407386B2 JP2009026269A JP2009026269A JP5407386B2 JP 5407386 B2 JP5407386 B2 JP 5407386B2 JP 2009026269 A JP2009026269 A JP 2009026269A JP 2009026269 A JP2009026269 A JP 2009026269A JP 5407386 B2 JP5407386 B2 JP 5407386B2
Authority
JP
Japan
Prior art keywords
application
terminal device
server
desktop screen
client
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
JP2009026269A
Other languages
English (en)
Other versions
JP2010182176A (ja
JP2010182176A5 (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2009026269A priority Critical patent/JP5407386B2/ja
Publication of JP2010182176A publication Critical patent/JP2010182176A/ja
Publication of JP2010182176A5 publication Critical patent/JP2010182176A5/ja
Application granted granted Critical
Publication of JP5407386B2 publication Critical patent/JP5407386B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

本発明は、サーバ装置びプログラムに関する。
従来のサーバ・クライアント・システムにおいて、例えばクライアント装置からのリモート操作によりサーバ装置側で所望のアプリケーションプログラムを起動実行させるサーバベース・コンピューティング・システム(SBC;Server Based Computing system)がある。このSBCシステムでは、クライアント装置の操作入力に応じてサーバ装置側で処理され更新される表示用の描画データが、該サーバ装置からその描画更新の都度クライアント装置へと送信転送されて表示される。これによりクライアント装置は、表示や入力など最低限の機能のみを持てば良く、アプリケーションなどの資源はサーバ装置で一元管理するものである。
このようにSBCシステムは、サーバ装置上でアプリケーションプログラムが実行されるので、セキュリティ性が高く且つクライアント装置の性能が低い場合にも高機能なコンピューティング環境を実現可能である。
一方で、サーバ装置に対して複数のクライアント装置それぞれからのアプリケーションプログラムの実行要求が集中すると、サーバ装置における処理の負荷が大きくなり、個々のアプリケーションの実行速度が遅くなるため、クライアント装置から見たアプリケーションの応答が鈍くなる不具合が生じる。
そこで、サーバ装置への負荷集中および直接的な操作入力を低減するために、クライアント環境構築のための情報を管理する環境管理サーバと、環境管理サーバに各種情報を登録するクライアントと、実際に環境が構築されるクライアントから構成される負荷分散型デスクトップ環境構築システムが考えられている(例えば、特許文献1参照。)。
この負荷分散型デスクトップ環境構築システムによれば、サーバの負荷が分散するようにユーザに対応したクライアント環境を環境管理サーバによって構築し、構築されたクライアント環境に従ってクライアントがリモートデスクトップ環境で動作するように制御している。
特開2006−018347号公報
前記従来の負荷分散型デスクトップ環境構築システムでは、ユーザに対応したクライアント環境を環境管理サーバによって構築することで、クライアント毎にサーバにて実行させるアプリケーションプログラムの負荷分散を図っている。しかしながら、異なるアプリケーションプログラムであっても、サーバにおいて多数のアプリケーションが同時期的に実行されれば、負荷集中は避けられない問題がある。
本発明は、このような課題に鑑みなされたもので、サーバにおけるアプリケーションプログラムの実行頻度を削減し、該サーバへの負荷の集中を回避することを目的とする。
請求項1は、端末装置からの要求に基づいて当該端末装置用のデスクトップ画面を生成して送信するサーバ装置であって、当該サーバ装置で実行可能なアプリケーションのメニューと前記端末装置側で実行可能なアプリケーションのメニューとを含むデスクトップ画面を、前記端末装置に送信するメニュー送信手段と、前記端末装置側において前記メニューに対する選択操作が行われたことを受信した際は、その選択されたメニューのアプリケーションが前記端末装置側で実行可能なアプリケーションか否かを判別する判別手段と、前記判別手段で前記端末装置側で実行可能なアプリケーションではないと判別された際は、そのアプリケーションを当該サーバ装置で起動実行し、その起動実行が成功した場合には、そのアプリケーションの画面を生成し、その画面と当該アプリケーションが起動中であることを示す識別子とを含むデスクトップ画面を、前記端末装置に対して送信する送信制御手段と、を備え、前記送信制御手段は、前記判別手段で前記端末装置側で実行可能なアプリケーションと判別された際は、そのアプリケーションの起動実行を前記端末装置に対して要求し、当該端末装置での起動実行の成功の有無を当該端末装置から受信し、起動実行が成功した場合には、当該アプリケーションが起動中であることを示す識別子を含むデスクトップ画面を送信する、ことを特徴とする。
本発明によれば、サーバにおけるアプリケーションプログラムの実行頻度を削減し、該サーバへの負荷の集中を回避することが可能となる。
本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図。 前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図。 前記サーバ装置10のRAM14に確保されたクライアント実行テーブル14bにおける記憶データの内容を示す図。 前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図。 前記SBCシステムのサーバ装置10によるサーバ処理を示すフローチャート。 前記SBCシステムのクライアント装置20によるクライアント処理を示すフローチャート。 前記SBCシステムの具体的動作に伴うサーバ装置10およびクライアント装置20における各処理ステップと、これに伴いクライアント装置20で表示されるリモートデスクトップ画面DTを示す図。 前記図7における各処理ステップでのリモートデスクトップ画面DT(その1)を拡大して示す図。 前記図7における各処理ステップでのリモートデスクトップ画面DT(その2)を拡大して示す図。 前記図7における各処理ステップでのリモートデスクトップ画面DT(その3)を拡大して示す図。 前記図7における各処理ステップでのリモートデスクトップ画面DT(その4)を拡大して示す図。
以下図面により本発明の実施の形態について説明する。
図1は、本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図である。
このSBCシステムは、例えば社内LAN(Local Area Network)やWAN(Wide Area Network)からなるネットワークN上に接続されたサーバ装置10および複数のクライアント装置(Thin client)20,…を備える。
サーバ装置10は、顧客管理プログラム,会計管理プログラム,メール処理プログラム,プレゼン資料作成プログラムなど、特に社内業務上必要でセキュリティ性の高い情報を処理する複数のアプリケーションプログラムを有し、当該サーバ装置10に接続されたクライアント装置20,…からの操作入力(入力イベント)信号に応じて起動しその処理を実行する。
このサーバ装置10において、クライアント装置20,…からの操作入力信号に応じたアプリケーションプログラムの実行に伴い、クライアント用の仮想フレームバッファRAM14a(図2参照)上に生成された表示出力用の描画データGsは、圧縮処理された後アクセス元のクライアント装置20,…へ送信(転送)される。
そして、クライアント装置20,…では、前記サーバ装置10から転送された描画データGsがその圧縮を解凍されてフレームバッファRAM25(図4参照)に展開され、表示装置26に表示される。
つまり、このSBCシステムにおける各クライアント装置(Thin client)20,…は、何れもキーボード及びマウスなどのユーザ操作に応じた入力機能とLCD表示部及びプリンタなどへの出力機能を主要な機能として有し、原則として前記サーバ装置10が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
そして、クライアント装置20,…からの操作入力(入力イベント)信号に応じてサーバ装置10にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置10内あるいは該サーバ装置10にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
なお、各クライアント装置(Thin client)20,…は、ベーシックなプログラム制御を行うためのCPU21(図4参照)と、例えばWebブラウザプログラムや動画再生プログラムなど、処理負荷が重い一方でセキュリティ性の低い情報を処理する限定的なアプリケーションプログラムを有し、この限定的なアプリケーションプログラムについては当該クライアント装置20,…にて実行する。
図2は、前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図である。
サーバ装置10は、コンピュータとして高性能なCPU11を備え、このCPU11には、バス12を介してROM13、RAM14、フレームバッファRAM15、表示装置16が接続される。
また、CPU11には、バス12を介してキーボード,マウスなどの入力装置17、外部記憶装置18、クライアント装置20,…との通信I/F(インターフェイス)19が接続される。
CPU11は、ROM13に予め記憶されているシステムプログラムや種々のアプリケーションプログラムを含むサーバ制御プログラムに従ってRAM14を作業用メモリとし回路各部の動作を制御するもので、入力装置17からのキー入力信号や通信I/F19を介して受信されるクライアント装置20からのユーザ操作に応じた処理指令(入力イベント)信号などに応じて前記種々のプログラムが起動・実行される。
このサーバ装置10において、クライアント装置20からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザIDに対応付けられて外部記憶装置18に記憶される。またクライアント表示用の描画データGsは、RAM14内のクライアント用仮想フレームバッファRAM14aを使用して生成されると共に、圧縮処理された後、通信I/F19からクライアント装置20へ転送されて表示出力される。
また、このサーバ装置10は、RAM14において、各クライアント装置20,…毎に管理されるクライアント実行テーブル14bを有する。
図3は、前記サーバ装置10のRAM14に確保されたクライアント実行テーブル14bにおける記憶データの内容を示す図である。
このクライアント実行テーブル14bは、各クライアント装置20,…毎に1つの実行テーブル14bが確保される。このクライアント実行テーブル14bには、クライアント装置20からの接続要求に伴い当該クライアント装置20から通知される同クライアント装置20が有する起動可能なアプリケーションの名称、およびそのプログラムの実行開始場所を示す実行プログラム名が記憶される。
クライアント装置20からのユーザ操作に応じた処理指令(入力イベント)信号に従い起動すべきアプリケーションプログラムが、前記クライアント実行テーブル14bに記憶されたアプリケーションである場合には、同クライアント装置20に対して当該アプリケーションプログラムの実行要求が送信される。
なお、当該サーバ装置10自身の表示装置16にて表示させるための描画データは、フレームバッファRAM15上に生成される。
図4は、前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図である。
クライアント装置20は、コンピュータとしてベーシックなCPU21を備え、このCPU21には、バス22を介してROM23、RAM24、受信用フレームバッファRAM25s、アプリ実行画面用RAM25c、フレームバッファRAM25が接続される。
前記サーバ装置10にて実行させたアプリケーションプログラム従い生成されて受信される前記描画データGsは、前記受信用フレームバッファRAM25sに書き込まれる。
クライアント装置20自身が有するアプリケーションプログラム従い生成された描画データGcは、前記アプリ実行画面用RAM25cに書き込まれる。
そして、前記受信用フレームバッファRAM25sおよびアプリ実行画面用RAM25cに書き込まれた各描画データGs,Gcは、ユーザ操作中のアプリケーションの画面を前面にその優先順で上書きされた描画データGとしてフレームバッファRAM25に書き込まれ、表示装置26に出力されて表示される。
また、CPU21には、バス22を介してキーボード,マウス,マイク,光センサなどの入力装置27、外部記憶装置28、前記サーバ装置10との通信I/F(インターフェイス)29が接続される。
CPU21は、ROM23に予め記憶されているシステムプログラムや種々限定的なアプリケーションプログラム(クライアント制御プログラム)に従ってRAM24を作業用メモリとし回路各部の動作を制御するもので、入力装置27からのキー入力信号やマウス移動信号、通信I/F29を介して受信されるサーバ装置10からのアプリケーション応答信号、アプリケーション実行要求信号、転送描画データGsなどに応じて、前記システムプログラムや実行要求されたアプリケーションプログラムが起動され実行される。
このクライアント装置20において、前記サーバ装置10からのアプリケーション実行要求信号に従い起動実行されたアプリケーションプログラムにより生成された種々のデータは、適宜、外部記憶装置28に読み込まれて記憶され、また生成された表示用の描画データGcは、アプリ実行画面用RAM25cに書き込まれると共に、フレームバッファRAM25に描画展開され表示装置26に表示出力される。
次に、前記構成によるSBCシステムの動作について説明する。
図5は、前記SBCシステムのサーバ装置10によるサーバ処理を示すフローチャートである。
図6は、前記SBCシステムのクライアント装置20によるクライアント処理を示すフローチャートである。
クライアント装置20において、サーバ装置10へ接続するために、その接続先のアドレス、ユーザ名、パスワードが入力されると(ステップC1)、当該入力された接続先のサーバ装置10に対して、そのユーザ名およびパスワードと共に、同クライアント装置20が有する起動可能なアプリケーションの名称、およびそのプログラムの実行開始場所を示す実行プログラム名が送信される(ステップC2)。
サーバ装置10において、例えば図5の(A)に示すように、前記クライアント装置20から送信されたユーザ名、パスワード、および当該クライアント装置20にて起動可能なアプリケーションの名称、実行プログラム名が受信されると(ステップS1)、ユーザ認証処理が実行され認証OK(Y)か否(N)か判断される(ステップS2)。
ユーザ認証OKと判断されない場合には(ステップS2(N))、エラー処理が施されて前記クライアント装置20との接続は確立されない(ステップS3)。
ユーザ認証OKと判断された場合には(ステップS2(Y))、前記クライアント装置10から受信された当該クライアント装置20にて起動可能なアプリケーションプログラムの名称と実行プログラム名とが、RAM14内のクライアント実行テーブル14b(図3参照)に記憶される。そして、サーバ装置10にて起動可能なアプリケーションプログラムの名称と、前記クライアント実行テーブル14bに記憶されたクライアント装置20にて起動可能なアプリケーションプログラムの名称とを合わせて一覧にしたアプリケーションメニュー画面がリモートデスクトップ画面DT(図8A参照)として生成され(ステップS4)、ログインされる前記クライアント装置20での表示のためのスタートアップに登録される(ステップS5)。
前記リモートデスクトップ画面DTは、前記アプリケーションメニューを配列したアプリケーション実行部EAと、当該アプリケーション実行部EAにおけるアプリケーションの実行指示により起動されたアプリケーションの名称を下端に配列するためのアプリケーション操作部OAとからなる。
前記ステップS2においてユーザ認証されたクライアント装置20がログインされると(ステップS6)、前記スタートアップに登録された当該クライアント装置20に対応するリモートデスクトップ画面DTが、RAM14内のクライアント用仮想フレームバッファ14aに描画され、クライアント用描画データGsとして同クライアント装置20へ送信されて表示される(ステップS7)。
クライアント装置20において、前記サーバ装置10への接続、ログインが完了すると(ステップC3)、当該サーバ装置10から送信されたクライアント用描画データGsとしての前記リモートデスクトップ画面DT(図8A参照)が、受信用フレームバッファRAM25sに記憶されると共に、フレームバッファRAM25にも記憶され、表示装置26に表示される(ステップC4)。
前記リモートデスクトップ画面DTが表示されたクライアント装置20において、当該画面DT上のアプリケーション実行部EAに配列されたアプリケーションメニューから、ユーザ任意のアプリケーションの名称ボタンが選択されると、当該アプリケーションの選択イベント信号が前記サーバ装置10へ送信される。
サーバ装置10において、前記クライアント装置20から送信されたアプリケーションの選択イベント信号(アプリケーション実行部ボタン押下)が受信されると(ステップS8→S9)、ユーザ選択されたアプリケーションが、サーバ装置10のROM13に予め記憶されたアプリケーションプログラムであるか、または前記クライアント実行テーブル14bに記憶された前記クライアント装置20にて起動可能なアプリケーションプログラムであるかが判断される(ステップS10)。
ここで、前記ユーザ選択されたアプリケーションが、サーバ装置10に予め記憶されたアプリケーションプログラムであると判断された場合には(ステップS10(Y))、当該アプリケーションプログラムの実行が開始される(ステップS11)。
そして、前記実行開始されたアプリケーションプログラムの起動が成功したと判断されると(ステップS12(Y))、前記クライアント用仮想フレームバッファ14aに記憶されているリモートデスクトップ画面DT(クライアント用描画データGs)のアプリケーション操作部OAにアプリケーションの名称ボタンが描画される。また、同クライアント用仮想フレームバッファ14aに記憶されているリモートデスクトップ画面DTには、今回起動されたアプリケーションプログラムに応じて生成されたウインドウ画面WSが前面に上書きされて描画される。そして、このサーバ装置10におけるアプリケーションプログラムの実行に応じて、アプリケーション操作部OAにアプリケーションの名称ボタンが描画されると共にウインドウ画面WSが描画されてなるリモートデスクトップ画面DTが、前記クライアント装置20へ送信され、その受信用フレームバッファRAM25sおよびフレームバッファRAM25に記憶されて表示装置26に表示される(ステップS13)。
一方、前記ステップS10において、ユーザ選択されたアプリケーションが、前記クライアント実行テーブル14bに記憶された前記クライアント装置20にて起動可能なアプリケーションプログラムであると判断された場合には(ステップS10(N))、図5の(B)に示すように、当該アプリケーションプログラムの名称がその起動要求と共に前記クライアント装置20へ送信される(ステップS15)。
クライアント装置20において、前記サーバ装置10から送信されたアプリケーションプログラムの起動要求が受信されると(ステップC5→C6)、当該起動要求されたアプリケーションプログラムが起動され、同プログラムに応じて生成されたウインドウ画面WCが、アプリ実行画面用RAM25cに記憶されると共に、フレームバッファRAM25に記憶されているそれまでの描画データG(リモートデスクトップ画面DT)の前面に上書き描画され、表示装置26に表示される(ステップC7)。
すると、前記起動要求されたアプリケーションプログラムの起動結果(成功/失敗)が、図6の(A)に示すように、前記ウインドウ画面WCの識別名[Xxxx]と共に、前記サーバ装置10へ送信される(ステップC8)。
サーバ装置10において、前記クライアント装置20から送信されたアプリケーションプログラムの起動結果が受信されることで、その起動が成功したと判断されると(ステップS12(Y))、前記クライアント用仮想フレームバッファ14aに記憶されているリモートデスクトップ画面DT(クライアント用描画データGs)のアプリケーション操作部OAに当該起動されたアプリケーションの名称ボタンが描画される。すると、前記アプリケーション操作部OAに、クライアント装置20で起動されたアプリケーションの名称ボタンが描画された、クライアント用描画データGsとしてのリモートデスクトップ画面DTが、前記クライアント装置20へ送信され、その受信用フレームバッファRAM25sおよびフレームバッファRAM25に記憶されて表示装置26に表示される(ステップS13)。
一方、前記ステップS12において、サーバ装置10側におけるアプリケーションプログラムの起動、またはクライアント装置20へ起動要求したことによる当該クライアント装置20側でのアプリケーションプログラムの起動が失敗したと判断された場合には(ステップS12(N))、前記クライアント用仮想フレームバッファRAM14aに記憶されているクライアント用描画データGsとしてのリモートデスクトップ画面DTにエラーメッセージが書き込まれ、前記クライアント装置20へ送信されて表示装置26に表示される(ステップS14)。
このように、クライアント装置20に表示されたリモートデスクトップ画面DTのアプリケーション実行部EAにおいて、ユーザにより選択されたアプリケーションの名称ボタンに対応するプログラムが、サーバ装置10が有するアプリケーションプログラムである場合には、当該サーバ装置10において、ユーザ選択されたアプリケーションプログラムが実行され、通常のSBCシステムとして動作する。
一方、前記ユーザ選択されたアプリケーションの名称ボタンに対応するプログラムが、クライアント装置20にて起動可能なアプリケーションプログラムである場合には、サーバ装置10から当該クライアント装置20へ前記ユーザ選択されたアプリケーションプログラムの起動要求が送信され、同クライアント装置20において、同ユーザ選択されたアプリケーションプログラムが実行される。
したがって、前記構成のSBCシステムによれば、顧客管理プログラム,会計管理プログラムなど、特に社内業務上必要でセキュリティ性の高い情報を処理するアプリケーションプログラムは、サーバ装置10においてSBCシステムとして実行できる一方で、Webブラウザプログラムや動画再生プログラムなど、処理負荷が重いがセキュリティ性の低い情報を処理する限定的なアプリケーションプログラムは、クライアント装置20自身にて実行できる。よって、サーバ装置10における特に処理負荷の高いアプリケーションプログラムの実行頻度を削減し、当該サーバ装置10への負荷の集中を回避することが可能になる。
そして、例えば前記サーバ装置10におけるアプリケーションプログラムと、クライアント装置20自身におけるアプリケーションプログラムとがそれぞれ並列的に起動実行され、前記クライアント装置20にて表示されているリモートデスクトップ画面DT上に、各実行アプリケーションに対応するウインドウ画面WS,WCがその起動順に前面に上書きされて表示された状態で、当該リモートデスクトップ画面DT下端のアプリケーション操作部OAに表示された実行中の各アプリケーションプログラムの名称ボタンが選択的に操作されると、そのボタン操作のイベント信号がサーバ装置10へ送信される。
サーバ装置10において、前記クライアント装置20から受信された操作イベント信号が、前記アプリケーション操作部OAにて実行中のアプリケーションを示すアプリ名称ボタンに対する操作イベントであると判断された場合には(ステップS8→S16)、操作されたアプリ名称ボタンのアプリケーションが、サーバ装置10で実行中のアプリケーションであるか、前記クライアント装置20で実行中のアプリケーションであるかが、前記クライアント実行テーブル14b(図3参照)に基づき判断される(ステップS17)。
ここで、サーバ装置10にて実行中のアプリケーションであると判断された場合には(ステップS17(Y))、当該アプリケーションプログラムの実行に応じて更新されているウインドウ画面WSを上書き描画したリモートデスクトップ画面DT(クライアント用描画データGs)がクライアント装置20へ送信される(ステップS18)。すると、クライアント装置20では、前記サーバ装置10にて実行中のアプリケーションに対応したウインドウ画面WSが前面に描画されたリモートデスクトップ画面DTが表示部26に表示される(ステップC5→C9)。
なお、前記リモートデスクトップ画面DTにおけるアプリケーション操作部OAの名称ボタンに対するユーザ操作イベントが、マウスの右クリックに応じてポップアップ表示される前記ウインドウ画面WSに対するウインドウ操作メニュー(最大化/最小化/元に戻す/閉じる)に基づく操作イベントであった場合には、同ウインドウ画面WSは、そのウインドウ操作メニューの操作イベントに応じた形態として表示される(ステップC9)。
そして、前記リモートデスクトップ画面DTの前面に表示されたサーバ装置10により実行中のアプリケーションに対応するウインドウ画面WSにおいて、ユーザ操作に応じたイベント信号はサーバ装置10へ送信されて同アプリケーション処理が更新される(ステップC10)。
一方、前記クライアント装置20に表示されたリモートデスクトップ画面DTのアプリケーション操作部OAにおいて、ユーザ操作されたアプリケーションの名称ボタンが、当該クライアント装置20にて実行中のアプリケーションであると判断された場合には(ステップS17(N))、図5の(C)に示すように、当該アプリケーションの名称とそのウインドウ画面WCの識別名[Xxxx](同アプリ起動時にクライアント装置20から受信済み(ステップC8参照))が、同ウインドウ画面WCを前面表示させるための操作要求と共にクライアント装置20へ送信される(ステップS19)。
すると、クライアント装置20では、当該クライアント装置20にて実行中のアプリケーションに対応したウインドウ画面WCを前面に上書きしたリモートデスクトップ画面DTを表示部26に表示させる(ステップC5→C9)。
なお、このクライアント装置20自身にて実行中のアプリケーションプログラムについて、前記リモートデスクトップ画面DTにおけるアプリケーション操作部OAの名称ボタンに対するユーザ操作イベントが、マウスの右クリックに応じてポップアップ表示される前記ウインドウ画面WCに対するウインドウ操作メニュー(最大化/最小化/元に戻す/閉じる)に対する操作イベントであった場合には、同ウインドウ画面WCは、そのウインドウ操作メニューの操作イベントに応じた形態として表示される(ステップC9)。
そして、前記前面表示されたクライアント装置20自身により実行中のアプリケーションに対応するウインドウ画面WCにおいて、ユーザ操作に応じたイベント信号は当該クライアント装置20自身にて処理され同アプリケーション処理が更新される(ステップC10)。
図7は、前記SBCシステムの具体的動作に伴うサーバ装置10およびクライアント装置20における各処理ステップと、これに伴いクライアント装置20で表示されるリモートデスクトップ画面DTを示す図である。
同図における符号SnとCnは、前記図5で示したサーバ装置10での処理ステップSnと、前記図6で示したクライアント装置20での処理ステップCnに対応している。
図8A〜図8Dは、前記図7における各処理ステップでのリモートデスクトップ画面DT(その1)〜(その4)を拡大して示す図である。
サーバ装置10において、当該サーバ装置10が有するアプリケーションプログラムの名称と、クライアント実行テーブル14bに記憶されたクライアント装置20にて起動可能なアプリケーションプログラムの名称とを合わせて一覧にしたアプリケーションメニュー画面がリモートデスクトップ画面DTとして生成され、図8Aに示すように、クライアント装置20に送信転送されて表示された状態で(ステップS1〜S7)、そのアプリケーション実行部EAにてユーザにより選択的に操作されたアプリケーションの名称ボタン[1.アプリケーションAAAA]が、前記クライアント装置20にて起動可能なアプリケーションである場合には、同クライアント装置20からの操作イベントに応じたサーバ装置10からのアプリケーション起動要求により(ステップS15)、クライアント装置20自身のアプリケーション[AAAA]が起動される(ステップC6)。
この際、クライアント装置20は、図8Bに示すように、当該クライアント装置20自身により起動したアプリケーション[AAAA]に対応するウインドウ画面WCを、前記サーバ装置10にて生成転送され表示されているリモートデスクトップ画面DTの前面に上書きして表示する。
これに伴い、クライアント装置20から今回起動したアプリケーション[AAAA]の起動結果が前記サーバ装置10へ通知されることで、サーバ装置10では、リモートデスクトップ画面DTのアプリケーション操作部OAに、当該起動通知されたアプリケーションの名称ボタン[アプリケーションAAAA]を描画する。そして、描画更新されたリモートデスクトップ画面DTが前記クライアント装置20へ送信転送されて表示される(ステップS13)。
この後、クライアント装置20において、リモートデスクトップ画面DTのアプリケーション実行部EAにてユーザにより選択的に操作されたアプリケーションの名称ボタン[4.アプリケーションDDDD]が、サーバ装置10で起動すべきアプリケーションの名称ボタンである場合は、当該サーバ装置10においてそのアプリケーション[DDDD]が起動される(ステップS11)。
この際、サーバ装置10は、現在クライアント用仮想フレームバッファRAM14aに生成されているリモートデスクトップ画面DTの前面に、今回起動されたアプリケーション[DDDD]に対応するウインドウ画面WSを上書きして描画し、この描画更新されたリモートデスクトップ画面DTを前記クライアント装置20へ送信転送し、図8Cに示すように表示装置26に表示させる。この場合、前記クライアント装置20自身にて起動されたアプリケーション[AAAA]に対応する、前記図8Bで示したウインドウ画面WCは、前記サーバ装置10にて起動されたアプリケーション[DDDD]に対応するウインドウ画面WSを前面に描画した最新のリモートデスクトップ画面DTに隠された状態になる。
またこれに伴い、サーバ装置10では、リモートデスクトップ画面DTのアプリケーション操作部OAに、今回起動したアプリケーションの名称ボタン[アプリケーションDDDD]を描画する。そして、描画更新されたリモートデスクトップ画面DTが前記クライアント装置20へ送信転送されて表示される(ステップS13)。
こうして、最初に起動されたクライアント装置20自身のアプリケーション[AAAA]に対応するウインドウ画面WCが、後に起動されたサーバ装置10のアプリケーション[DDDD]に対応するウインドウ画面WSを上書き描画したリモートデスクトップ画面DTに隠された状態において、当該リモートデスクトップ画面DT下端のアプリケーション操作部OAに表示されているクライアント装置20にて起動中のアプリケーションの名称ボタン[アプリケーションAAAA]が選択操作されると、その操作イベント信号に応答して、サーバ装置10から、同アプリケーション[AAAA]に対応するウインドウ画面WCを前面表示させる要求がクライアント装置20へ送信される(ステップS19)。
するとクライアント装置20では、図8Dに示すように、当該クライアント装置20自身にて起動中のアプリケーション[AAAA]に対応するウインドウ画面WCを、前記サーバ装置10から転送されて表示されているリモートデスクトップ画面DTの前面に上書きして表示させる(ステップC9)。
したがって、前記構成のSBCシステムによれば、ユーザ所望の全てのアプリケーションプログラムをサーバ装置20において実行させるのではなく、例えばセキュリティ性の低い限定的なアプリケーションプログラムについては、クライアント装置20自身にて実行させることで、前記サーバ装置10への負荷の集中を回避できる。この場合、サーバ装置10側およびクライアント装置20側で起動中の各アプリケーションを示すアプリ名称ボタンを、リモートデスクトップ画面DT下端のアプリケーション操作部OAに配列して表示させ、当該アプリ名称ボタンの選択操作に応じて、当該ボタン操作された起動中のアプリケーションに対応するウインドウ画面(WS/WC)を、リモートデスクトップ画面DTの前面に切り換えて表示させることができ、サーバ装置10とクライアント装置20とによるアプリケーションの分散処理を円滑に実行させることができる。
なお、前記実施形態において、サーバ装置10のクライアント実行テーブル14bにて記憶されるアプリケーションの名称、およびそのプログラムの実行開始場所を示す実行プログラム名は、クライアント装置20の認証接続時において当該クライアント装置20から通知された起動可能なアプリケーションに従い記憶する構成とした。これに対し、前記クライアント実行テーブル14bには、クライアント装置20側での実行を許可したアプリケーションの名称およびその実行プログラム名を予め記憶させる構成としてもよい。
さらにまた、サーバ装置10は、前記クライアント実行テーブル14bに予め記憶させたアプリケーションの名称およびその実行プログラム名に従い、クライアント装置20の認証接続時において、対応するアプリケーションプログラムを当該クライアント装置20へ送信転送してインストールする構成としてもよい。
なお、前記実施形態において記載したSBCシステムによる各処理の手法、すなわち、図5のフローチャートに示すサーバ装置10によるサーバ処理、図6のフローチャートに示すクライアント装置20によるクライアント処理等の各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記録装置18,28の媒体に格納して配布することができる。そして、サーバ装置10やクライアント装置20のコンピュータ(CPU11,21)は、この外部記録装置18,28の媒体に記憶されたプログラムを記憶装置(フラッシュROM13,23やRAM14,24)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記実施形態において説明したクライアント装置20により起動可能なアプリケーションプログラムの分担実行機能を実現し、前述した手法による同様の処理を実行することができる。
また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記のプログラムデータを取り込んで記憶装置(フラッシュROM13,23やRAM14,24)に記憶させ、前述したクライアント装置20により起動可能なアプリケーションプログラムの分担実行機能を実現することもできる。
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
10 …サーバ装置
20 …クライアント装置
11、21…CPU
12、22…バス
13、23…ROM
14、24…RAM
14a…クライアント用仮想フレームバッファRAM
14b…クライアント実行テーブル
15、25…フレームバッファRAM
25s…受信用フレームバッファRAM
25c…アプリ実行画面用RAM
16、26…表示装置
17、27…入力装置
18、28…外部記憶装置
19、29…通信I/F
N …通信ネットワーク
G …クライアント表示用描画データ
Gs …サーバ装置で生成されたクライアント表示用描画データ
Gc …クライアント装置の起動アプリで生成された画面データ
DT …リモートデスクトップ画面
EA …アプリケーション実行部
OA …アプリケーション操作部
WS …サーバ実行アプリのウインドウ画面
WC …クライアント実行アプリのウインドウ画面

Claims (6)

  1. 端末装置からの要求に基づいて当該端末装置用のデスクトップ画面を生成して送信するサーバ装置であって、
    当該サーバ装置で実行可能なアプリケーションのメニューと前記端末装置側で実行可能なアプリケーションのメニューとを含むデスクトップ画面を、前記端末装置に送信するメニュー送信手段と、
    前記端末装置側において前記メニューに対する選択操作が行われたことを受信した際は、その選択されたメニューのアプリケーションが前記端末装置側で実行可能なアプリケーションか否かを判別する判別手段と、
    前記判別手段で前記端末装置側で実行可能なアプリケーションではないと判別された際は、そのアプリケーションを当該サーバ装置で起動実行し、その起動実行が成功した場合には、そのアプリケーションの画面を生成し、その画面と当該アプリケーションが起動中であることを示す識別子とを含むデスクトップ画面を、前記端末装置に対して送信する送信制御手段と、
    を備え、
    前記送信制御手段は、前記判別手段で前記端末装置側で実行可能なアプリケーションと判別された際は、そのアプリケーションの起動実行を前記端末装置に対して要求し、当該端末装置での起動実行の成功の有無を当該端末装置から受信し、起動実行が成功した場合には、当該アプリケーションが起動中であることを示す識別子を含むデスクトップ画面を送信する、
    ことを特徴とするサーバ装置。
  2. 前記送信制御手段は、前記サーバ装置側で実行可能なアプリケーションと前記端末装置側で実行可能なアプリケーションとが共に起動中であれば、その双方の識別子を共に含むデスクトップ画面を送信する、
    ことを特徴とする請求項1に記載のサーバ装置。
  3. 前記端末装置側において前記デスクトップ画面に含まれる前記識別子に対する選択操作が行われたことを受信した際は、その選択された識別子が前記端末装置側で実行可能なアプリケーションの識別子か否かを判別する第2判別手段と、
    前記識別子が前記端末装置側で実行可能なアプリケーションではない識別子であれば、当該識別子に対応するアプリケーションの画面を前面に配置したデスクトップ画面を前記端末装置に送信し、前記識別子が前記端末装置側で実行可能なアプリケーションの識別子であれば、当該識別子に対応するアプリケーションの画面を前記デスクトップ画面の前面に切替表示すべき要求を前記端末装置に送信する第2送信制御手段と、
    を備えたことを特徴とする請求項1又は2に記載のサーバ装置。
  4. 前記第2送信制御手段は、前記端末装置側で実行可能なアプリケーションではない識別子であれば、当該アプリケーションがアクティブ状態であることを識別表示したデスクトップ画面を送信し、前記端末装置側で実行可能なアプリケーションの識別子であれば、当該アプリケーションが当該端末装置でアクティブ状態にあることを識別表示したデスクトップ画面を送信する、
    ことを特徴とする請求項3に記載のサーバ装置。
  5. 前記端末装置と通信接続された際に、当該端末装置で実行可能なアプリケーションのリストを当該端末装置から受信して記憶する記憶手段と、
    を備え、
    前記メニュー送信手段は、前記リストのアプリケーションのメニューと、当該サーバ装置で実行可能なアプリケーションのメニューと、を含むデスクトップ画面を送信する、
    ことを特徴とする請求項1〜4の何れかに記載のサーバ装置。
  6. 端末装置からの要求に基づいて当該端末装置用のデスクトップ画面を生成して送信するサーバ装置のコンピュータを制御するためのプログラムであって、
    前記コンピュータを、
    当該サーバ装置で実行可能なアプリケーションのメニューと前記端末装置側で実行可能なアプリケーションのメニューとを含むデスクトップ画面を、前記端末装置に送信するメニュー送信手段、
    前記端末装置側において前記メニューに対する選択操作が行われたことを受信した際は、その選択されたメニューのアプリケーションが前記端末装置側で実行可能なアプリケーションか否かを判別する判別手段、
    前記判別手段で前記端末装置側で実行可能なアプリケーションではないと判別された際は、そのアプリケーションを当該サーバ装置で起動実行し、その起動実行が成功した場合には、そのアプリケーションの画面を生成し、その画面と当該アプリケーションが起動中であることを示す識別子とを含むデスクトップ画面を、前記端末装置に対して送信する送信制御手段、
    として機能させ、
    前記送信制御手段は、前記判別手段で前記端末装置側で実行可能なアプリケーションと判別された際は、そのアプリケーションの起動実行を前記端末装置に対して要求し、当該端末装置での起動実行の成功の有無を当該端末装置から受信し、起動実行が成功した場合には、当該アプリケーションが起動中であることを示す識別子を含むデスクトップ画面を送信する、
    ようにしたコンピュータ読み取り可能なプログラム。
JP2009026269A 2009-02-06 2009-02-06 サーバ装置及びプログラム Active JP5407386B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009026269A JP5407386B2 (ja) 2009-02-06 2009-02-06 サーバ装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009026269A JP5407386B2 (ja) 2009-02-06 2009-02-06 サーバ装置及びプログラム

Publications (3)

Publication Number Publication Date
JP2010182176A JP2010182176A (ja) 2010-08-19
JP2010182176A5 JP2010182176A5 (ja) 2011-11-24
JP5407386B2 true JP5407386B2 (ja) 2014-02-05

Family

ID=42763728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009026269A Active JP5407386B2 (ja) 2009-02-06 2009-02-06 サーバ装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5407386B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5835487B2 (ja) 2012-07-24 2015-12-24 富士通株式会社 通信装置、システム、および通信方法
JP6007795B2 (ja) 2013-01-07 2016-10-12 富士通株式会社 通信装置および通信制御方法
JP2017010504A (ja) * 2015-06-25 2017-01-12 株式会社エネサイバー 情報の漏洩改竄防止装置
KR102193040B1 (ko) * 2019-09-05 2020-12-21 주식회사 틸론 Vdi 환경에서의 가상 데스크톱에 설치된 어플리케이션을 어플리케이션 가상화 형태로 실행하거나 가상 데스크톱 접속으로 전환하는 방법, 및 가상화 서버

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005293492A (ja) * 2004-04-05 2005-10-20 Mitsubishi Electric Corp サーバ、端末、および情報システム

Also Published As

Publication number Publication date
JP2010182176A (ja) 2010-08-19

Similar Documents

Publication Publication Date Title
US10976981B2 (en) Remote desktop exporting
US9158434B2 (en) User interface virtualization profiles for accessing applications on remote devices
US8046403B2 (en) Methods and systems for providing, by a remote machine, access to functionality associated with a resource executing on a local machine
US7962552B2 (en) Borrow and give back of windows
US20050039134A1 (en) System and method for effectively implementing a dynamic user interface in an electronic network
US20130125009A1 (en) Remote desktop localized content sharing
JP4982998B2 (ja) コンピュータシステム
JP4151978B2 (ja) サーバ装置、管理方法およびプログラム
AU2018318039B2 (en) Systems and methods for web collaboration
JP2011118662A (ja) シンクライアント型の情報処理システム
JP2008204239A (ja) 電子計算機及びソフトウェアによるユーザインタフェースの実現方法
JP5407386B2 (ja) サーバ装置及びプログラム
JPWO2016135960A1 (ja) ユーザインタフェース実行装置およびユーザインタフェース設計装置
JP5262362B2 (ja) サーバ装置、クライアント装置、及びプログラム
JP5315862B2 (ja) サーバ装置、クライアント装置、およびプログラム
JP2010055189A (ja) サーバベース・コンピューティング・システムのサーバ装置、クライアント装置、サーバ制御プログラム及びクライアント制御プログラム
JP5692291B2 (ja) 表示端末装置、情報処理装置、およびプログラム
JP6266925B2 (ja) 制御装置、制御方法、およびプログラム
JP5347271B2 (ja) 端末装置及びプログラム
JP6164344B2 (ja) ユーザインタフェース実行装置およびユーザインタフェース設計装置
JP5136680B2 (ja) クライアント装置及びサーバベース・コンピューティング・システム
JP5895978B2 (ja) 端末装置及びプログラム
JP5637404B2 (ja) 端末装置及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111006

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130808

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131021

R150 Certificate of patent or registration of utility model

Ref document number: 5407386

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150