JP2000148503A - 動的モジュール構成方式及び動的モジュール構成方法及びデバイス - Google Patents

動的モジュール構成方式及び動的モジュール構成方法及びデバイス

Info

Publication number
JP2000148503A
JP2000148503A JP10318602A JP31860298A JP2000148503A JP 2000148503 A JP2000148503 A JP 2000148503A JP 10318602 A JP10318602 A JP 10318602A JP 31860298 A JP31860298 A JP 31860298A JP 2000148503 A JP2000148503 A JP 2000148503A
Authority
JP
Japan
Prior art keywords
module
function execution
request
server
function
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.)
Pending
Application number
JP10318602A
Other languages
English (en)
Inventor
Tomohisa Yamaguchi
智久 山口
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP10318602A priority Critical patent/JP2000148503A/ja
Priority to US09/337,500 priority patent/US7177914B1/en
Publication of JP2000148503A publication Critical patent/JP2000148503A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 メモリ容量等のリソースに厳しい制限を持つ
ようなデバイスに組み込まれるサーバにおいても、クラ
イアントに対して様々なコンテンツやサービスの提供を
行えるようにしたい。 【解決手段】 クライアント5とサーバ6とモジュール
格納サーバ7がネットワーク8に接続されていて、クラ
イアント5からの各要求に対して、サーバ6は、クライ
アント5からの各要求に対応した処理を行う機能実行モ
ジュール9をモジュール格納サーバ7から取り出し、こ
の機能実行モジュール9を実行させ、実行が終了した後
は、サーバ7からこの機能実行モジュール9を消去す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、クライアントとサ
ーバがネットワークに接続されているシステムに関する
ものである。特に、この発明は、サーバ自身が電化製品
やオフィス機器等のデバイスに組み込まれるために、メ
モリ等のリソースに厳しい制限を持つ場合に用いられる
ものである。また、サーバがクライアントからの要求に
対して、サーバ内のモジュールを使用して応答を生成
し、この応答をクライアントに返すようなクライアント
・サーバシステムにおいてモジュールを動的に構成する
方式に関するものである。
【0002】
【従来の技術】従来のクライアント・サーバシステムの
構成を図12に示す。図12において、1は要求を行う
クライアント、2はクライアント1からの要求に対し
て、応答を返すサーバ、3はクライアント1、サーバ2
が接続されているネットワーク、4はクライアント1か
らの各要求に対する応答を生成する機能実行モジュール
である。クライアント1が要求できるコンテンツやサー
ビスは、サーバ2に格納されている機能実行モジュール
の種類と数によって静的に決定される。
【0003】
【発明が解決しようとする課題】図12のような構成の
システムでは、クライアント1からの要求に対して、応
答を生成する機能実行モジュール4は、サーバ2のメモ
リ等のリソース制限(例えば、メモリの容量)により、
種類や数が限定されてしまい、サーバ2がクライアント
1に提供できるコンテンツやサービスは、予めサーバ2
に格納されている機能実行モジュール4によって静的に
決定され、これ以外のコンテンツやサービスを提供する
ことができないという問題がある。
【0004】本発明は、以上のような問題を解決するた
めに、クライアントからの各要求に対応した機能実行モ
ジュールを動的に取り出し、サーバには機能実行モジュ
ールの取り出しを行う基本的なモジュールのみを持たせ
ることによって、メモリ等のリソースに厳しい制限を持
つようなデバイスに組み込まれるサーバにおいても、様
々なコンテンツやサービスの提供を行えるようにするこ
とを目的とする。
【0005】
【課題を解決するための手段】この発明に係るネットワ
ークを用いた動的モジュール構成方式は、以下の要素を
有することを特徴とする。 (a)ネットワークに接続され、所定の処理を実行する
機能実行モジュールを記憶する記憶装置、(b)所定の
処理の実行要求をネットワークへ出力する要求装置、
(c)要求装置から出力された実行要求をネットワーク
から受信し、その実行要求を実現するための機能実行モ
ジュールをネットワークを介して記憶装置から取り出し
て実行する実行装置。
【0006】上記実行装置は、機能実行モジュールの実
行後、機能実行モジュールを消去することを特徴とす
る。
【0007】上記実行装置は、機能実行モジュールの実
行後、この機能実行モジュールを格納しておき、この機
能実行モジュールが再び実行されるとき、格納した機能
実行モジュールを再実行することを特徴とする。
【0008】上記記憶装置は、一度取り出された機能実
行モジュールをキャッシングしておき、この機能実行モ
ジュールが再び取り出されるとき、キャッシングした機
能実行モジュールを取り出すことを特徴とする。
【0009】上記要求装置と記憶装置とは同一の装置で
あることを特徴とする。
【0010】上記要求装置は、コンテンツ要求を出力す
るクライアントであり、上記実行装置は、コンテンツ要
求を受信して、コンテンツ要求に対して応答するサーバ
であり、上記記憶装置は、コンテンツ要求に対して応答
するための機能を持った機能実行モジュールを格納した
モジュール格納サーバであることを特徴とする。
【0011】上記サーバは、クライアントからのコンテ
ンツ要求の受信を行うコンテンツ要求受信モジュール
と、コンテンツ要求受信モジュールで受信したコンテン
ツ要求の解析を行い、クライアントにコンテンツを返す
ために必要となる機能を持った機能実行モジュールの選
択を行うコンテンツ要求解析モジュールと、コンテンツ
要求解析モジュールで解析を行った結果、必要になった
機能実行モジュールをモジュール格納サーバに要求し、
モジュール格納サーバから送られてくる機能実行モジュ
ールの受信を行うモジュール要求モジュールと、モジュ
ール要求モジュールが受信した機能実行モジュールを実
行させるモジュール実行モジュールとを備えたことを特
徴とする。
【0012】上記モジュール格納サーバは、モジュール
要求モジュールからのモジュール要求の受信を行うモジ
ュール要求受信モジュールと、モジュール要求受信モジ
ュールで受信したモジュール要求に従い、要求された機
能実行モジュールを取り出すモジュール取り出しモジュ
ールと、モジュール取り出しモジュールで取り出した機
能実行モジュールをサーバに送信するモジュール送信モ
ジュールとを備えたことを特徴とする。
【0013】上記サーバは、更に、モジュール格納サー
バから取り出した機能実行モジュールをサーバ上のリソ
ースで許される範囲で格納しておくモジュール格納モジ
ュールを備えたことを特徴とする。
【0014】上記モジュール格納サーバは、更に、要求
された機能実行モジュールをサーバに送信したあと、こ
の機能実行モジュールをキャッシングするモジュールキ
ャッシングモジュールを備えたことを特徴とする。
【0015】この発明に係るネットワークを用いた動的
モジュール構成方法は、以下の工程を有することを特徴
とする。 (a)所定の処理を実行する機能実行モジュールを記憶
装置に記憶する工程、(b)所定の処理の実行要求をネ
ットワークへ出力する工程、(c)出力された実行要求
をネットワークから受信し、その実行要求を実現するた
めの機能実行モジュールをネットワークを介して記憶装
置から取り出して実行する工程。
【0016】上記実行する工程は、機能実行モジュール
の実行後、機能実行モジュールを消去する工程を有する
ことを特徴とする。
【0017】上記実行する工程は、機能実行モジュール
の実行後、この機能実行モジュールを格納しておき、こ
の機能実行モジュールが再び実行されるとき、格納した
機能実行モジュールを再実行する工程を有することを特
徴とする。
【0018】上記記憶する工程は、一度取り出された機
能実行モジュールをキャッシングしておき、この機能実
行モジュールが再び取り出されるとき、キャッシングし
た機能実行モジュールを取り出す工程を有することを特
徴とする。
【0019】この発明に係るデバイスは、以下の要素を
有することを特徴とする。(a)デバイス自身の機能を
達成するために設けられた内部リソース、(b)上記内
部リソースを用いて、デバイスが保持する情報をアクセ
スする要求を受信し、その要求を実現するための機能実
行モジュールを上記内部リソース以外の外部リソースか
ら取り出して実行する実行装置。
【0020】上記内部リソースは、セントラルプロセッ
シングユニットとメモリであり、実行装置は、メモリに
記憶され、セントラルプロセッシングユニットにより実
行されるプログラムであり、上記外部リソースは、機能
実行モジュールを記憶するとともに、デバイス自身の機
能を達成するためには必要のない別個の独立した記憶装
置であることを特徴とする。
【0021】
【発明の実施の形態】以下、図面を用いながら本発明の
実施の形態について説明する。
【0022】実施の形態1.図1に、本発明の実施の形
態1におけるシステム構成を示す。図1において、8は
ネットワーク、70はネットワークに接続され、所定の
処理を実行する機能実行モジュール9を記憶する記憶装
置、50は所定の処理の実行要求をネットワークへ出力
する要求装置、60は要求装置から出力された実行要求
をネットワークから受信し、その実行要求を実現するた
めの機能実行モジュールをネットワークを介して記憶装
置から取り出して実行する実行装置である。200は実
行装置60を組み込んだデバイスである。デバイス20
0は、例えば、プリンタ、ファクシミリ、ディスクドラ
イブ、パーソナルコンピュータ、電話機、テレビ、ラジ
オ、エアコンディショナー、冷蔵庫、自動車、飛行機、
電車、工作機械、エレベータ、エスカレータ、監視カメ
ラ等どのようなデバイスでもよい。即ち、デバイス20
0は、外部からアクセスしてそのデバイスの状態やデバ
イスの情報を取得したいものであれば、どのようなもの
でもよい。一般に、デバイス200には、そのデバイス
本来の機能を達成するための内部リソースを有してい
る。内部リソースとは、デバイスのハードウエア(図示
せず)及びその制御部(図示せず)を意味する。制御部
は、通常、セントラルプロセッシングユニット(CP
U)とメモリを有しており、メモリに記憶されたプログ
ラムをCPUで実行することによりデバイスの各部のハ
ードウェアを制御し、そのデバイス本来の機能を達成す
る。通常は、デバイス200のコストを低くするため、
そのデバイス本来の機能を達成するために最低限必要な
ハードウウェアや、そのデバイス本来の機能を達成する
ために最低限必要な処理能力を持ったCPUや、そのデ
バイス本来の機能を達成するために最低限必要な容量を
持ったメモリがデバイス200に搭載される。特に、大
量生産される家庭電化製品やオフィスオートメーション
機器は、原価低減のために無用な部分をできるだけなく
して生産される。即ち、量産されるデバイスほどそのデ
バイスの機能を達成するために必要最低限の内部リソー
スで生産される。この実施の形態は、このように、デバ
イスに十分な内部リソースがないデバイス200に対し
て、サーバの機能を持つ実行装置60をインストールす
ることができるとともに、サーバの機能を持つ実行装置
60をインストールした場合でも、十分にサーバの機能
を発揮できるようにするものである。
【0023】本実施の形態での方式は、実行装置60の
インストール及びサーバの機能実行ために必要な内部リ
ソースを小さくするために、要求装置50からの要求に
対して、その要求を実現するための機能実行モジュール
を記憶装置70から取り出し、取り出した機能実行モジ
ュールを実行装置60で実行し、その結果を応答として
要求装置50に渡すものである。本実施の形態での方式
では、機能実行モジュールが実行装置60に常駐してい
ない。機能実行モジュールは、記憶装置70に常駐して
る。記憶装置70は、デバイス200とは全く関係のな
い独立した外部リソースである。実行装置60には、記
憶装置70から機能実行モジュールを取り出して実行す
るモジュールのみを持たせ、要求がある度に、要求にあ
った機能実行モジュールを記憶装置70から取り出して
実行する。このように構成することにより、実行装置6
0のために用いられるデバイスの内部リソースは小さく
て済む。従って、家庭電化製品のように、限られた内部
リソースしかないデバイス200に対して、実行装置6
0をインストールできるとともに、デバイス200の限
られた内部リソースを用いて要求にあった機能実行モジ
ュールが実行できるのである。
【0024】図2に、図1の具体的システム構成を示
す。図2において、5はコンテンツの要求を行うクライ
アント(要求装置50の一例)、6はクライアント5か
らのコンテンツ要求に対してコンテンツを返すサーバ
(実行装置60の一例)、7はサーバ6がクライアント
5からのコンテンツ要求に対してコンテンツを返すため
に必要となる機能を持ったモジュールを格納しているモ
ジュール格納サーバ(記憶装置70の一例)、20はサ
ーバ6を組み込んだプリンタ(デバイス200の一例)
である。8はクライアント5、サーバ6、モジュール格
納サーバ7が接続されているネットワーク、9はモジュ
ール格納サーバに格納されているサーバ6がクライアン
ト5にコンテンツを返すために必要となる機能を持った
機能実行モジュール、10はクライアント5からのコン
テンツ要求の受信を行うコンテンツ要求受信モジュー
ル、11はコンテンツ要求受信モジュール10で受信し
たコンテンツ要求の解析を行い、クライアント5にコン
テンツを返すために必要となる機能を持った機能実行モ
ジュール9の選択を行うコンテンツ要求解析モジュー
ル、12はコンテンツ要求解析モジュール11で解析を
行った結果、必要になった機能実行モジュール9をモジ
ュール格納サーバ7に要求し、モジュール格納サーバ7
から送られてくる機能実行モジュール9の受信を行うモ
ジュール要求モジュール、13はモジュール要求モジュ
ール12が受信した機能実行モジュール9を実行させる
モジュール実行モジュールである。14はモジュール要
求モジュール12からのモジュール要求の受信を行うモ
ジュール要求受信モジュール、15はモジュール要求受
信モジュール14で受信したモジュール要求に従い、要
求された機能実行モジュール9を取り出すモジュール取
り出しモジュール、16はモジュール取り出しモジュー
ル15で取り出した機能実行モジュール9をサーバ6に
送信するモジュール送信モジュールである。
【0025】本実施の形態のシステムは、以上のような
構成であり、以下、クライアント5、サーバ6、モジュ
ール格納サーバ7の処理を図3,図4,図5に示すフロ
ーチャート及び図2に示すモジュール間の通信の様子を
示した矢印に基づき、詳細に説明する。
【0026】図3,図4は、サーバ6での処理である。
また、図5は、モジュール格納サーバ7での処理であ
る。本実施の形態のサーバとは、一般のクライアント・
サーバ・システムにおけるサーバとは異なる。本実施の
形態のサーバとは、サーバとして独立したハードウェア
と独立したソフトウェアが予め準備されているものでは
ない。本実施の形態のサーバとは、本来ある機能が備わ
っているデバイスに対して2次的にインストールされた
ものである。即ち、本実施の形態のサーバとは、デバイ
ス本来の機能を達成するために設けられたデバイスの内
部リソースを借用して実現されるサーバである。例え
ば、サーバ6は、プリンタ20の制御部(図示せず)の
メモリに記憶されたプログラムとして実現される。この
プログラムが制御部のCPUにより実行されることによ
り、図3,図4に示したサーバ6の処理が実行されるこ
とになる。例えば、一例として、クライアント5がプリ
ンタ20に対して、プリンタ20が印刷中であるか否か
という印刷状態を問い合わせたり、プリンタ20の印刷
待ち状態を問い合わせたりした場合、プリンタ20にイ
ンストールされたサーバ6により以下に述べる処理が開
始される。まず、サーバ6では、コンテンツ要求受信モ
ジュール10がクライアント5からのコンテンツ要求を
待っている(S31)。次に、クライアント5では、コ
ンテンツの要求をサーバ6に対して行う(1)。次に、
コンテンツ要求受信モジュール10がクライアント5か
らのコンテンツ要求を受け取り、このコンテンツ要求を
コンテンツ要求解析モジュール11に渡す(2)。次
に、コンテンツ要求を受け取ったコンテンツ要求解析モ
ジュール11は、このコンテンツ要求を解析し、コンテ
ンツをクライアント5に返すために必要となる機能を持
った機能実行モジュール9を選択し、この選択された機
能実行モジュール9をモジュール要求モジュール12に
知らせる(S32),(3)。次に、モジュール要求モ
ジュール12は、機能実行モジュール9の要求をモジュ
ール格納サーバ7に対して行う(S33),(4)。一
方、モジュール格納サーバ7では、モジュール要求受信
モジュール14がサーバ6からのモジュール要求を待っ
ている(S51)。次に、モジュール要求受信モジュー
ル14がサーバ6からのモジュール要求を受け取り、こ
のモジュール要求をモジュール取り出しモジュール15
に渡す(5)。次に、モジュール要求を受け取ったモジ
ュール取り出しモジュール15は、要求された機能実行
モジュール9を取り出し(S52),(6)、モジュー
ル送信モジュール16に渡す(7)。次に、機能実行モ
ジュール9を受け取ったモジュール送信モジュール16
は、サーバ6に機能実行モジュール9を送信する(S5
3),(8)。一方、サーバ6では、モジュール要求モ
ジュール12がモジュール格納サーバ7にモジュール要
求を行った後、機能実行モジュール9を待っている(S
34)。次に、モジュール要求モジュール12が機能実
行モジュール9を受け取り(8)、この機能実行モジュ
ール9をモジュール実行モジュール13に渡す(9)。
次に、モジュール実行モジュール13は、機能実行モジ
ュール9を実行するための図4に示す別スレッドを起動
し(S35)、制御をコンテンツ要求受信モジュール1
0に返す。ここで、機能実行モジュール9を実行するた
めの別スレッドを起動したが、別プロセスであっても構
わないし、同一プロセス内の処理として実行してもよ
い。コンテンツ要求受信モジュール10では、上記した
ように、クライアント5からのコンテンツ要求を待ち、
上記した処理を繰り返す。一方、別スレッドでは、機能
実行モジュール9を起動し(10)、機能実行モジュー
ル9が終了するまで待つ(S41)。次に、機能実行モ
ジュール9は、クライアント5にコンテンツを返すため
の処理を行い、クライアント5に対してコンテンツを返
し、処理を終了する(11)。別スレッドでは、機能実
行モジュール9が終了した後、機能実行モジュールをサ
ーバ6上から消去する(S42)。こうして、プリンタ
20の印刷状態や印刷待ち状態がクライアント5に対し
て返送される。
【0027】以上のように、この実施の形態の方式は、
クライアント5とサーバ6とモジュール格納サーバ7が
ネットワーク8に接続されていて、クライアント5から
の各要求に対して、サーバ6は、クライアント5からの
各要求に対応した処理を行う機能実行モジュール9をモ
ジュール格納サーバ7から取り出し、この機能実行モジ
ュール9を実行させ、実行が終了した後は、サーバ7か
らこの機能実行モジュール9を消去することを特徴とす
る。以上のような方式により、サーバ6は、クライアン
ト5からのデバイス20に関する様々なコンテンツ要求
に対し、それに対応した機能実行モジュール9をモジュ
ール格納サーバ7から取り出し、処理させることによ
り、少ないメモリで様々なサービスを提供することが可
能になる。
【0028】なお、実施の形態1では、モジュール格納
サーバ7に機能実行モジュールを格納する構成である
が、図6に示すように、機能実行モジュールをクライア
ント5に持たせることも可能である。
【0029】図6に示す方式は、クライアント5とサー
バ6がネットワーク8に接続されていて、クライアント
5からの各要求に対して、サーバ6は、クライアント5
からの各要求に対応した処理を行う機能実行モジュール
9をクライアント5から取り出し、この機能実行モジュ
ール9を実行させ、実行が終了した後は、サーバ6から
このモジュールを消去することを特徴とする。
【0030】実施の形態2.図7に、本発明の実施の形
態2における具体的システム構成を示す。図7におい
て、5〜16,20は実施の形態1と同様である。17
はモジュール格納サーバから取り出した機能実行モジュ
ール9をサーバ6上のリソースで許される範囲で格納し
ておくモジュール格納モジュール、18はモジュール要
求に従い、要求された機能実行モジュール9をサーバ6
に送信した後、この機能実行モジュール9をキャッシン
グするモジュールキャッシングモジュールである。
【0031】本実施の形態のシステムは、以上のような
構成であり、以下クライアント5、サーバ6、モジュー
ル格納サーバ7の処理を図8,図9,図10に示すフロ
ーチャート及び図7に示すモジュール間の通信の様子を
示した矢印に基づき、詳細に説明する。
【0032】図8,図9は、サーバ6での処理である。
また、図10は、モジュール格納サーバ7での処理であ
る。まず、サーバ6では、コンテンツ要求受信モジュー
ル10がクライアント5からのコンテンツ要求を待って
いる(S31)。次に、クライアント5では、コンテン
ツの要求をサーバ6に対して行う(1)。次に、コンテ
ンツ要求受信モジュール10がクライアント5からのコ
ンテンツ要求を受け取り、このコンテンツ要求をコンテ
ンツ要求解析モジュール11に渡す(2)。次に、コン
テンツ要求を受け取ったコンテンツ要求解析モジュール
11は、このコンテンツ要求を解析し、コンテンツをク
ライアント5に返すために必要となる機能を持った機能
実行モジュール9を選択し、この選択された機能実行モ
ジュール9をモジュール要求モジュール12に知らせる
(S32),(3)。次に、モジュール要求モジュール
12は、機能実行モジュール9がサーバ6に格納されて
いるかのチェックをモジュール格納モジュール17に対
して行う(S81),(4)。次に、モジュール格納モ
ジュール17は、機能実行モジュール9が格納されてい
れば、機能実行モジュール9をモジュール要求モジュー
ル12に渡す。もし、格納されていなければ、格納され
ていない旨をモジュール要求モジュール12に知らせる
(4)。次に、モジュール要求モジュール12は、も
し、モジュール格納モジュール17から機能実行モジュ
ール9が渡されてきた場合は、これをモジュール実行モ
ジュール13に渡す。もし、格納されていない旨を知ら
せてきた場合は、機能実行モジュール9の要求をモジュ
ール格納サーバ7に対して行う(S33)。一方、モジ
ュール格納サーバ7では、モジュール要求受信モジュー
ル14がサーバ6からのモジュール要求を待っている
(S51)。次に、モジュール要求受信モジュール14
がサーバ6からのモジュール要求を受け取り(5)、こ
のモジュール要求をモジュール取り出しモジュール15
に渡す(6)。次に、モジュール要求を受け取ったモジ
ュール取り出しモジュール15は、要求された機能実行
モジュール9がキャッシングされているかのチェックを
モジュールキャッシングモジュール18に対して行う
(S101),(7)。次に、モジュールキャッシング
モジュール18は、機能実行モジュール9がキャッシン
グされていれば、機能実行モジュール9をモジュール取
り出しモジュール15に渡す。もし、キャッシングされ
ていなければ、キャッシングされていない旨をモジュー
ル取り出しモジュール15に知らせる(7)。次に、モ
ジュール取り出しモジュール15は、もし、モジュール
キャッシングモジュール18から機能実行モジュール9
が渡されてきた場合は、これをモジュール送信モジュー
ル16に渡す(10)。もし、キャッシングされていな
い旨を知らせてきた場合は、要求された機能実行モジュ
ール9を取り出し(S52),(10)、これをモジュ
ールキャッシングモジュール18とモジュール送信モジ
ュール16に渡す(9),(10)。モジュールキャッ
シングモジュール18は、この機能実行モジュール9の
キャッシングを行う(S102)。次に、機能実行モジ
ュール9を受け取ったモジュール送信モジュール16
は、サーバ6に機能実行モジュール9を送信する(S5
3),(11)。一方、サーバ6では、モジュール要求
モジュール12がモジュール格納サーバ7にモジュール
要求を行った場合は、機能実行モジュール9を待ってい
る(S34)。次に、モジュール要求モジュール12が
機能実行モジュール9を受け取り(11)、この機能実
行モジュール9をモジュール実行モジュール13に渡す
(13)。もし、この機能実行モジュール9がモジュー
ル格納サーバ7からのものであったなら、モジュール格
納モジュール17にも渡し、モジュール格納モジュール
17は、サーバ6のリソースに従い、リソースにまだ余
裕があるようなら、今渡された機能実行モジュールの格
納を行い、もし、リソースに余裕がない場合には、今渡
された機能実行モジュールを格納するために必要なリソ
ース分を占める最も古い機能実行モジュールから消去し
て、今渡された機能実行モジュールを格納する(S8
4),(12)。ここでは、格納アルゴリズムとしてF
IFOを使用したが、他のアルゴリズムを使用してもよ
い。次に、モジュール実行モジュール13は、機能実行
モジュール9を実行するための別スレッドを起動し(S
35)、制御をコンテンツ要求受信モジュール10に返
す。ここで機能実行モジュール9を実行するための別ス
レッドを起動したが、別プロセスであっても構わない
し、同一プロセス内の処理として実行してもよい。コン
テンツ要求受信モジュール10では、上記したように、
クライアント5からのコンテンツ要求を待ち、上記した
処理を繰り返す。一方、別スレッドでは、機能実行モジ
ュール9を起動し(14)、機能実行モジュール9が終
了するまで待つ(S41)。次に、機能実行モジュール
9は、クライアント5にコンテンツを返すための処理を
行い、クライアント5に対してコンテンツを返し、処理
を終了する(15)。別スレッドでは、機能実行モジュ
ール9が終了した後、機能実行モジュールをサーバ6上
から消去する(S42)。
【0033】以上のように、この実施の形態の方式は、
モジュールの実行が終了した後は、サーバ6のリソース
が許す範囲でこのモジュールを格納しておき、再度この
モジュールが利用される場合には、この格納しておいた
モジュールを使用することを特徴とする。
【0034】また、モジュール格納サーバ7では、サー
バが取り出したモジュールをキャッシングしておき、再
度このモジュールの取り出しが発生した場合には、キャ
ッシュからこのモジュールを取り出し、サーバ6に送る
ことを特徴とする。
【0035】以上のような方式により、サーバ6は、ク
ライアント5からの様々なコンテンツ要求に対し、それ
に対応した機能実行モジュール9をモジュール格納サー
バ7から取り出し、処理させることにより、少ないメモ
リで様々なサービスを提供することが可能になる。ま
た、サーバで機能実行モジュールを格納したり、モジュ
ール格納サーバでキャッシングを行うことにより、クラ
イアントへの応答速度が速くなるし、また、サーバとモ
ジュール格納サーバ間の接続などの処理やネットワーク
に流れるデータも少なくなるという利点がある。
【0036】なお、実施の形態2では、モジュール格納
サーバに機能実行モジュールを格納する構成であるが、
図11に示すように、機能実行モジュールをクライアン
トに持たせることも可能である。
【0037】図11に示す方式は、モジュールの実行が
終了した後は、サーバ6のリソースが許す範囲でこのモ
ジュールを格納しておき、再度このモジュールが利用さ
れる場合には、この格納しておいたモジュールを使用す
ることを特徴とする。
【0038】また、クライアント5では、サーバ6が取
り出したモジュールをキャッシングしておき、再度この
モジュールの取り出しが発生した場合には、キャッシュ
からこのモジュールを取り出し、サーバ6に送ることを
特徴とする。
【0039】なお、上記各実施の形態で説明した各モジ
ュールは、ハードウェア、ソフトウェア、ファームウェ
ア、或いは、それらの組み合わせのいずれかで実現され
るものであればよい。
【0040】
【発明の効果】以上のように、この発明によれば、クラ
イアントからの各要求に対応した機能実行モジュールを
動的に取り出し、サーバには、機能実行モジュールを取
り出しを行う基本的なモジュールのみを持たせるので、
サーバのリソースが限られていても、柔軟なシステムを
構築できるという効果がある。
【0041】また、この発明によれば、メモリ等のリソ
ースに厳しい制限を持つようなデバイスに組み込まれる
サーバにおいても、クライアントに対して様々なコンテ
ンツやサービスの提供を行えるという効果がある。
【図面の簡単な説明】
【図1】 本発明の実施の形態1におけるシステム構成
を示す図。
【図2】 図1の具体的システム構成を示す図。
【図3】 サーバ6での処理フローチャート図。
【図4】 サーバ6での処理フローチャート図。
【図5】 モジュール格納サーバ7での処理フローチャ
ート図。
【図6】 本発明の他のシステム構成を示す図。
【図7】 本発明の実施の形態2における具体的システ
ム構成を示す図。
【図8】 サーバ6での処理フローチャート図。
【図9】 サーバ6での処理フローチャート図。
【図10】 モジュール格納サーバ7での処理フローチ
ャート図。
【図11】 本発明の他のシステム構成を示す図。
【図12】 従来のクライアント・サーバシステムの構
成を示す図。
【符号の説明】
5 クライアント、6 サーバ、7 モジュール格納サ
ーバ、8 ネットワーク、9 機能実行モジュール、1
0 コンテンツ要求受信モジュール、11 コンテンツ
要求解析モジュール、12 モジュール要求モジュー
ル、13 モジュール実行モジュール、14 モジュー
ル要求受信モジュール、15 モジュール取り出しモジ
ュール、16 モジュール送信モジュール、17 モジ
ュール格納モジュール、18 モジュールキャッシング
モジュール。

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 以下の要素を有するネットワークを用い
    た動的モジュール構成方式(a)ネットワークに接続さ
    れ、所定の処理を実行する機能実行モジュールを記憶す
    る記憶装置、(b)所定の処理の実行要求をネットワー
    クへ出力する要求装置、(c)要求装置から出力された
    実行要求をネットワークから受信し、その実行要求を実
    現するための機能実行モジュールをネットワークを介し
    て記憶装置から取り出して実行する実行装置。
  2. 【請求項2】 上記実行装置は、機能実行モジュールの
    実行後、機能実行モジュールを消去することを特徴とす
    る請求項1記載の動的モジュール構成方式。
  3. 【請求項3】 上記実行装置は、機能実行モジュールの
    実行後、この機能実行モジュールを格納しておき、この
    機能実行モジュールが再び実行されるとき、格納した機
    能実行モジュールを再実行することを特徴とする請求項
    1記載の動的モジュール構成方式。
  4. 【請求項4】 上記記憶装置は、一度取り出された機能
    実行モジュールをキャッシングしておき、この機能実行
    モジュールが再び取り出されるとき、キャッシングした
    機能実行モジュールを取り出すことを特徴とする請求項
    1記載の動的モジュール構成方式。
  5. 【請求項5】 上記要求装置と記憶装置とは同一の装置
    であることを特徴とする請求項1記載の動的モジュール
    構成方式。
  6. 【請求項6】 上記要求装置は、コンテンツ要求を出力
    するクライアントであり、 上記実行装置は、コンテンツ要求を受信して、コンテン
    ツ要求に対して応答するサーバであり、 上記記憶装置は、コンテンツ要求に対して応答するため
    の機能を持った機能実行モジュールを格納したモジュー
    ル格納サーバであることを特徴とする請求項1記載の動
    的モジュール構成方式。
  7. 【請求項7】 上記サーバは、 クライアントからのコンテンツ要求の受信を行うコンテ
    ンツ要求受信モジュールと、 コンテンツ要求受信モジュールで受信したコンテンツ要
    求の解析を行い、クライアントにコンテンツを返すため
    に必要となる機能を持った機能実行モジュールの選択を
    行うコンテンツ要求解析モジュールと、 コンテンツ要求解析モジュールで解析を行った結果、必
    要になった機能実行モジュールをモジュール格納サーバ
    に要求し、モジュール格納サーバから送られてくる機能
    実行モジュールの受信を行うモジュール要求モジュール
    と、 モジュール要求モジュールが受信した機能実行モジュー
    ルを実行させるモジュール実行モジュールとを備えたこ
    とを特徴とする請求項6記載の動的モジュール構成方
    式。
  8. 【請求項8】 上記モジュール格納サーバは、 モジュール要求モジュールからのモジュール要求の受信
    を行うモジュール要求受信モジュールと、 モジュール要求受信モジュールで受信したモジュール要
    求に従い、要求された機能実行モジュールを取り出すモ
    ジュール取り出しモジュールと、 モジュール取り出しモジュールで取り出した機能実行モ
    ジュールをサーバに送信するモジュール送信モジュール
    とを備えたことを特徴とする請求項7記載の動的モジュ
    ール構成方式。
  9. 【請求項9】 上記サーバは、更に、モジュール格納サ
    ーバから取り出した機能実行モジュールをサーバ上のリ
    ソースで許される範囲で格納しておくモジュール格納モ
    ジュールを備えたことを特徴とする請求項7記載の動的
    モジュール構成方式。
  10. 【請求項10】 上記モジュール格納サーバは、更に、
    要求された機能実行モジュールをサーバに送信したあ
    と、この機能実行モジュールをキャッシングするモジュ
    ールキャッシングモジュールを備えたことを特徴とする
    請求項8記載の動的モジュール構成方式。
  11. 【請求項11】 以下の工程を有するネットワークを用
    いた動的モジュール構成方法(a)所定の処理を実行す
    る機能実行モジュールを記憶装置に記憶する工程、
    (b)所定の処理の実行要求をネットワークへ出力する
    工程、(c)出力された実行要求をネットワークから受
    信し、その実行要求を実現するための機能実行モジュー
    ルをネットワークを介して記憶装置から取り出して実行
    する工程。
  12. 【請求項12】 上記実行する工程は、機能実行モジュ
    ールの実行後、機能実行モジュールを消去する工程を有
    することを特徴とする請求項11記載の動的モジュール
    構成方法。
  13. 【請求項13】 上記実行する工程は、機能実行モジュ
    ールの実行後、この機能実行モジュールを格納してお
    き、この機能実行モジュールが再び実行されるとき、格
    納した機能実行モジュールを再実行する工程を有するこ
    とを特徴とする請求項11記載の動的モジュール構成方
    法。
  14. 【請求項14】 上記記憶する工程は、一度取り出され
    た機能実行モジュールをキャッシングしておき、この機
    能実行モジュールが再び取り出されるとき、キャッシン
    グした機能実行モジュールを取り出す工程を有すること
    を特徴とする請求項11記載の動的モジュール構成方
    法。
  15. 【請求項15】 以下の要素を有するデバイス(a)デ
    バイス自身の機能を達成するために設けられた内部リソ
    ース、(b)少なくとも上記内部リソースの一部を用い
    て、デバイスが保持する情報をアクセスする要求を受信
    し、その要求を実現するための機能実行モジュールを上
    記内部リソース以外の外部リソースから取り出して実行
    する実行装置。
  16. 【請求項16】 上記内部リソースは、セントラルプロ
    セッシングユニットとメモリであり、 実行装置は、メモリに記憶され、セントラルプロセッシ
    ングユニットにより実行されるプログラムであり、 上記外部リソースは、機能実行モジュールを記憶すると
    ともに、デバイス自身の機能を達成するためには必要の
    ない別個の独立した記憶装置であることを特徴とする請
    求項15記載のデバイス。
JP10318602A 1998-11-10 1998-11-10 動的モジュール構成方式及び動的モジュール構成方法及びデバイス Pending JP2000148503A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP10318602A JP2000148503A (ja) 1998-11-10 1998-11-10 動的モジュール構成方式及び動的モジュール構成方法及びデバイス
US09/337,500 US7177914B1 (en) 1998-11-10 1999-06-22 System of dynamic module configuration and a method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10318602A JP2000148503A (ja) 1998-11-10 1998-11-10 動的モジュール構成方式及び動的モジュール構成方法及びデバイス

Publications (1)

Publication Number Publication Date
JP2000148503A true JP2000148503A (ja) 2000-05-30

Family

ID=18100978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10318602A Pending JP2000148503A (ja) 1998-11-10 1998-11-10 動的モジュール構成方式及び動的モジュール構成方法及びデバイス

Country Status (2)

Country Link
US (1) US7177914B1 (ja)
JP (1) JP2000148503A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287671A (ja) * 2007-05-21 2008-11-27 Nippon Telegr & Teleph Corp <Ntt> サーブレット起動プログラムおよびホームゲートウェイ装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9414951D0 (en) * 1994-07-25 1994-09-14 British Telecomm Computer system having client-server architecture
US6161147A (en) * 1995-03-31 2000-12-12 Sun Microsystems, Inc. Methods and apparatus for managing objects and processes in a distributed object operating environment
US5889957A (en) * 1995-06-07 1999-03-30 Tandem Computers Incorporated Method and apparatus for context sensitive pathsend
JP3515839B2 (ja) * 1995-10-11 2004-04-05 富士通株式会社 コンピュータシステム間通信システム
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US6237024B1 (en) * 1998-03-20 2001-05-22 Sun Microsystem, Inc. Method and apparatus for the suspension and continuation of remote processes
US5815718A (en) * 1996-05-30 1998-09-29 Sun Microsystems, Inc. Method and system for loading classes in read-only memory
US6237031B1 (en) * 1997-03-25 2001-05-22 Intel Corporation System for dynamically controlling a network proxy
US6317795B1 (en) * 1997-07-22 2001-11-13 International Business Machines Corporation Dynamic modification of multimedia content
US6247050B1 (en) * 1997-09-12 2001-06-12 Intel Corporation System for collecting and displaying performance improvement information for a computer
US6157924A (en) * 1997-11-07 2000-12-05 Bell & Howell Mail Processing Systems Company Systems, methods, and computer program products for delivering information in a preferred medium
US6260069B1 (en) * 1998-02-10 2001-07-10 International Business Machines Corporation Direct data retrieval in a distributed computing system
US6360330B1 (en) * 1998-03-31 2002-03-19 Emc Corporation System and method for backing up data stored in multiple mirrors on a mass storage subsystem under control of a backup server
US6243738B1 (en) * 1998-04-06 2001-06-05 National Instruments Corporation Data acquisition system which includes remote access to data acquisition devices
US6330689B1 (en) * 1998-04-23 2001-12-11 Microsoft Corporation Server architecture with detection and recovery of failed out-of-process application
US6289506B1 (en) * 1998-06-30 2001-09-11 Intel Corporation Method for optimizing Java performance using precompiled code
US6279030B1 (en) * 1998-11-12 2001-08-21 International Business Machines Corporation Dynamic JAVA™ class selection and download based on changeable attributes
US6317743B1 (en) * 1998-12-04 2001-11-13 Sun Microsystems, Inc. System for retrieving compiling and loading management information in a digital data network
US6289376B1 (en) * 1999-03-31 2001-09-11 Diva Systems Corp. Tightly-coupled disk-to-CPU storage server
JP3916806B2 (ja) * 1999-07-26 2007-05-23 富士通株式会社 リモートローディング実行方法、リモートローディング実行システム、情報処理装置、管理装置及びコンピュータ読み取り可能な記録媒体
JP2004151849A (ja) * 2002-10-29 2004-05-27 Toshiba Corp クライアントサーバシステムにおけるクライアントとサーバ間の接続管理装置および接続管理方法、プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287671A (ja) * 2007-05-21 2008-11-27 Nippon Telegr & Teleph Corp <Ntt> サーブレット起動プログラムおよびホームゲートウェイ装置

Also Published As

Publication number Publication date
US7177914B1 (en) 2007-02-13

Similar Documents

Publication Publication Date Title
US6636891B1 (en) Methods and apparatus for controlling an input or output device over the internet
US6038603A (en) Processing customized uniform resource locators
US5881232A (en) Generic SQL query agent
US6144996A (en) Method and apparatus for providing a guaranteed minimum level of performance for content delivery over a network
US6611870B1 (en) Server device and communication connection scheme using network interface processors
US5659795A (en) System and method for controlling computer output devices by utilizing both their static and dynamic attributes
US8121954B2 (en) Information processor, method for controlling the same, and image forming system
US5828887A (en) Network based program loader system and method of operation
US6934761B1 (en) User level web server cache control of in-kernel http cache
US7069297B2 (en) Data transfer scheme using re-direct response message for reducing network load
WO2005112394A1 (en) Access control for requested web objects based on http validation
US5968138A (en) Method and apparatus for peripheral system management, using multiple object interfaces
US6988123B2 (en) Methods and apparatus for remote execution of an application over the internet
US6622167B1 (en) Document shadowing intranet server, memory medium and method
US20090157896A1 (en) Tcp offload engine apparatus and method for system call processing for static file transmission
US7516199B2 (en) Storage device managing system, method and program
JP2000148503A (ja) 動的モジュール構成方式及び動的モジュール構成方法及びデバイス
US7287228B2 (en) On-demand and incremental application adaptation
US20060106924A1 (en) Data-processing device, communication method, and computer program
US5539913A (en) System for judging whether a main processor after processing an interrupt is required to process the I/O control of an I/O control local processor
US11755534B2 (en) Data caching method and node based on hyper-converged infrastructure
US20220164317A1 (en) Remote file access apparatus and method thereof
JPH1165912A (ja) 並列処理データベースシステム
JP2002251312A (ja) 通信プロキシ装置
JPH1049319A (ja) 印刷装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050926

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081002

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081202