(57)【要約】【課題】通信制御装置のように、予め組み込まれたコンピュータをファームウェアにしたがって作動させることにより固有の機能を実現する電子機器において、ファームウェアを更新することなく機能拡張を行うことを可能にする。【解決手段】互いに異なる２つの通信網に接続され、一方の通信網から他方の通信網へと送信されるデータの転送制御処理をファームウェアにしたがってコンピュータを作動させることにより実現する通信制御装置に、当該通信制御装置に新たな機能として常駐型の機能を付与するための命令群が所定のスクリプト言語を用いて記述された機能拡張用スクリプトを読み込み、当該機能拡張用スクリプトに記述されている命令をその記述順に実行し、当該通信制御装置が持つ機能を拡張するスクリプト実行手段を設ける。【選択図】図２
2014059919.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信網に接続される第１の通信インタフェースと、
前記第１の通信網とは異なる第２の通信網に接続される第２の通信インタフェースと、
前記第１および第２の通信網の何れか一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行するとともに、当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張するスクリプト実行処理を実行する制御部と、
ことを特徴とする通信制御装置。
【請求項２】
前記機能拡張用スクリプトの実行により実現される新たな機能は、当該通信制御装置の運用管理を支援する機能、またはデータの転送制御により実現される通信の状態を監視する機能であることを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記制御部は、前記機能拡張用スクリプトの実行により常駐型の機能が新たに付与される場合には、前記スクリプト実行処理による処理負荷が所定の閾値を上回らないようにその実行を制限する処理を実行することを特徴とする請求項１または２に記載の通信制御装置。
【請求項４】
前記制御部は、前記データの転送制御の実行状況に応じて前記閾値を更新することを特徴とする請求項３に記載の通信制御装置。
【請求項５】
前記機能拡張用スクリプトが記憶された記憶部を有し、前記制御部は、前記記憶部から前記機能拡張用スクリプトを読み込んで実行することを特徴とする請求項１〜４の何れか１項に記載の通信制御装置。
【請求項６】
操作子の設けられた操作部を有するとともに、前記記憶部に記憶された前記機能拡張用スクリプトには前記操作子のうちの特定のものが対応付けられており、前記制御部は前記特定の操作子に対する操作を契機として前記機能拡張用スクリプトを前記記憶部から読み込んで実行することを特徴とする請求項５に記載の通信制御装置。
【請求項７】
前記記憶部に記憶された機能拡張用スクリプトの実行開始時刻或いは実行停止時刻についてのスケジュール設定を行わせ、前記制御部は、前記スケジュール設定にしたがって前記機能拡張用スクリプトの実行開始或いは実行停止を制御することを特徴とする請求項５に記載の通信制御装置。
【請求項８】
前記機能拡張用スクリプトを構成する命令群をコマンドライン入力するためのコンソールが接続される外部機器インタフェース部を有し、前記制御部は、前記外部機器インタフェース部に接続されたコンソールを介して入力された機能拡張用スクリプトを実行することを特徴とする請求項１〜４の何れか１項に記載の通信制御装置。
【請求項９】
第１の通信網に接続される第１の通信インタフェースと、
前記第１の通信網とは異なる第２の通信網に接続される第２の通信インタフェースと、
前記第１および第２の通信網の何れか一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行するとともに、当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、新な通信関連の機能を実現するスクリプト実行処理を実行する制御部と、
ことを特徴とする通信制御装置。
【請求項１０】
コンピュータを
互いに異なる２つの通信網の一方から他方へと送信されるデータを受信し、その転送制御をファームウェアにしたがって実行する通信制御手段と、
当該コンピュータに付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該コンピュータの持つ機能を拡張するスクリプト実行手段と、
として機能させることを特徴とするプログラム。
【請求項１１】
コンピュータを
互いに異なる２つの通信網の一方から他方へと送信されるデータを受信し、その転送制御をファームウェアにしたがって実行する通信制御手段と、
当該コンピュータに付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、新たな通信関連の機能を実現するスクリプト実行手段と、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータが組み込まれた電子機器に関し、特に、そのコンピュータによって実現される機能の拡張を行う技術に関する。
【背景技術】
【０００２】
携帯電話機や所謂ＩＴ家電のように、予め組み込まれたコンピュータによる作動制御によって高機能を実現する電子機器が普及している。この種の電子機器においては、ファームウェアと呼ばれるプログラムをそのコンピュータに実行させることにより、その電子機器固有の機能（携帯電話機であれば通話や電子メールの送受信などの通信機能、電子炊飯器であれば、炊き上がり時刻を設定させる機能やその時刻にご飯が炊き上がるように火加減を調整しつつ炊飯する機能）が実現される。ファームウェアは、例えばＲＯＭ（Read Only Memory）などの不揮発性メモリに書き込まれた状態で電子機器に組み込まれることが多い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２２９１４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、この種の電子機器は、新型のものであるほど高機能であることが多く、既存の電子機器の利用者のなかには利用中の電子機器に最新のものと同様な機能を付与するといった機能拡張を行うことを望んでいるものもいる。前述したように、この種の電子機器の機能はファームウェアによって実現されているのであるから、機能拡張を行うにはファームウェアの更新が必要となる。しかし、ファームウェアは、不揮発性メモリに書き込まれた状態で電子機器に組み込まれるため、その更新には電子機器を分解して元々組み込まれていた不揮発性メモリを新たなファームウェアが書き込まれたものに差換えるといった作業が必要となり、容易ではない。
【０００５】
近年では、ファームウェアにバグなどの不具合があった場合にその不具合を簡便に是正することができるようにするため、フラッシュメモリなどの書き換え可能な不揮発性メモリにファームウェアを書き込んで電子機器に組み込み、外部のコンピュータからそのファームウェアを書き換えることができるようにしたものもある。このようにファームウェアの書き換えが可能な電子機器においては、ファームウェアを更新することで機能拡張することができる。しかし、利用者の所望する機能を付加するようなファームウェアが電子機器の開発元から提供されているとは限らず、所望する機能を付加するようなファームウェアが提供されていない場合にはその作成を電子機器の開発元に依頼しなければならない。電子機器の利用者がファームウェアを改造することは不可能だからである。しかし、このような依頼が電子機器の開発元に受け入れられるとは限らず、依頼が受け入れられない場合には、結局、電子機器に所望の機能を付加することはできない。このように、ファームウェアの書き換えが容易な構成となっている電子機器であっても、所望の機能を新たに付加するような機能拡張を常に行うことができるとは限らない。
【０００６】
本発明は上記課題に鑑みて為されたものであり、予め組み込まれたコンピュータをファームウェアにしたがって作動させることにより固有の機能を実現する電子機器において、ファームウェアを更新することなく簡便に機能拡張を行えるようにする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、ファームウェアにしたがって処理を実行し、当該電子機器固有の機能を実現するファームウェア実行手段と、当該電子機器に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、前記新たな機能を実現するスクリプト実行手段とを有することを特徴とする電子機器、を提供する。このような電子機器においては、新たに付与する機能に応じた機能拡張用スクリプトを作成し、その機能拡張用スクリプトを当該電子機器に記憶させてその実行を行わせることで、ファームウェアの更新を行うことなく電子機器の機能拡張を行うことが可能になる。なお、特許文献１に開示された技術は、フラッシュメモリなどの書き換え可能な不揮発性メモリに書き込まれているデータやプログラムの書き換えを支援し電子機器の保守作業を容易にする技術であって、電子機器に任意の機能を付与する機能拡張を実現する技術ではない。
【０００８】
このような電子機器の具体例としては、以下の構成の通信制御装置が挙げられる。すなわち、互いに異なる２つの通信網に接続され、それら２つの通信網の一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行する通信制御手段と当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張する（或いは新たな通信関連の機能を実現する）スクリプト実行手段とを有する構成の通信制御装置である。
【０００９】
また、このような通信制御装置の他の構成例としては、第１の通信網に接続される第１の通信インタフェースと、前記第１の通信網とは異なる第２の通信網に接続される第２の通信インタフェースと、前記第１および第２の通信網の何れか一方から他方へと送信されるデータの転送制御処理をファームウェアにしたがって実行するとともに、当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張する（或いは新たな通信関連の機能を実現する）スクリプト実行処理を実行する制御部とを有することを特徴とする構成が考えられる。そして、このような構成の通信制御装置においては、データの転送制御処理とスクリプト実行処理の両者が一つの制御部で実行されるため、スクリプト実行処理の処理負荷が高くなりすぎるとデータの転送制御処理の実行に支障が生じる虞があり、特に、上記新たな機能が常駐型のものである場合にはその虞は顕著になる。そこで、機能拡張用スクリプトの実行により常駐型の機能が新たに付与される場合には、前記スクリプト実行処理による処理負荷が所定の閾値を上回らないようにその実行を制限する処理を上記制御部に実行させるようにしても良い。
【図面の簡単な説明】
【００１０】
【図１】本発明に係る電子機器の一実施形態である通信制御装置１０を含む通信システム１の構成例を示すブロック図である。
【図２】同通信制御装置１０の構成例を示すブロック図である。
【図３】同通信制御装置１０に付与される新規機能である通信状態監視機能における処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面を参照しつつ本発明の一実施形態について説明する。
図１は、本発明に係る電子機器の一実施形態である通信制御装置１０を含む通信システム１の構成例を示すブロック図である。この通信システム１は、例えば企業における社内情報システムを為すものである。この通信システム１は、上記企業の本社内に敷設された本社側ＬＡＮ（Local Area Network）と、同企業の支店に敷設された支店側ＬＡＮと、をインターネットなどの広域網に接続して構成されている。より詳細に説明すると、図１に示すように、本社側ＬＡＮは、例えばルータなどの通信制御装置を介して広域網に接続されており、支店側ＬＡＮは、通信制御装置１０およびゲートウェイ装置ＧＷを介して広域網に接続されている。図１のゲートウェイ装置ＧＷは、インターネット側から支店側ＬＡＮへの不正アクセスや、逆に支店側ＬＡＮのＰＣからインターネットへのアクセス制限を実現するための関門中継装置である。図１では詳細な図示は省略したが、本社側ＬＡＮとインターネットとを接続する通信制御装置とインターネットとの間にも同様のゲートウェイ装置が設けられている。
【００１２】
通信制御装置１０は、例えばルータであり、支店側ＬＡＮに接続されている通信装置（例えば、パーソナルコンピュータ：図１では「ＰＣ」と表記）と、インターネットに接続されている他の通信装置（例えば、ＷＷＷサーバ装置）或いは本社側ＬＡＮに接続されているＰＣとの間でＴＣＰ／ＩＰ（Transport Control Protocol/Internet Protocol）に従って送受信されるデータの転送制御を行う電子機器である。通信制御装置１０には、予めコンピュータ（ＣＰＵ：Central Processing Unit）が組み込まれており、このコンピュータをファームウェアにしたがって作動させることによって上記転送制御が実現される。この通信制御装置１０は、上記ファームウェアの更新を行うことなく、新たな機能を付加することができるように（すなわち、機能拡張を行えるように）構成されている点に特徴がある。
以下、通信制御装置１０を中心に説明する。
【００１３】
図２は、通信制御装置１０の構成例を示すブロック図である。図２に示すように通信制御装置１０は、制御部１００、第１通信インタフェース（以下、「Ｉ／Ｆ」）部１１０、第２通信Ｉ／Ｆ部１２０、外部機器Ｉ／Ｆ部１３０、記憶部１４０、および、これら構成要素間のデータ授受を仲介するバス１５０を含んでいる。
【００１４】
制御部１００は、ＣＰＵ（すなわち、通信制御装置１０に組み込まれているコンピュータ）である。この制御部１００は、記憶部１４０（より正確には、記憶部１４０に含まれている不揮発性記憶部１４４）に格納されているファームウェアを実行することにより、通信制御装置１０の制御中枢として機能する。詳細については後述するが、本実施形態では、通信制御装置１０のファームウェアとして通信制御プログラム１４４ａが不揮発性記憶部１４４に予め格納されている。
【００１５】
第１通信Ｉ／Ｆ部１１０は、ＮＩＣ（Network Interface Card）であり、図１の支店側ＬＡＮに接続されている。第１通信Ｉ／Ｆ部１１０は、支店側ＬＡＮから送信されてくるパケットを受信して制御部１００へ引渡す一方、制御部１００から引渡されるパケットを支店側ＬＡＮへと送出する。第２通信Ｉ／Ｆ部１２０も第１通信Ｉ／Ｆ部１１０と同様にＮＩＣであり、専用線（図示略）等を介してゲートウェイ装置ＧＷに接続されている。この第２通信Ｉ／Ｆ部１２０は、ゲートウェイ装置ＧＷから送信されてくるパケットを受信して制御部１００へ引渡す一方、制御部１００から受け取ったパケットをゲートウェイ装置ＧＷへと送信する。
【００１６】
外部機器Ｉ／Ｆ部１３０は、ＵＳＢ等の外部記憶媒体やシリアルコンソールなどの外部機器との間で所定のプロトコル（ＵＳＢやＲＳ−２３２Ｃ）にしたがってデータの授受を行うためのものである。例えば、外部機器としてＵＳＢメモリを用いる場合には、ＵＳＢインタフェースで外部機器Ｉ／Ｆ部１３０を構成すれば良く、外部機器としてシリアルコンソールを用いる場合には、ＲＳ−２３２Ｃインタフェースなどのシリアルインタフェースで外部機器Ｉ／Ｆ部１３０を構成すれば良い。外部機器Ｉ／Ｆ部１３０は、この外部機器Ｉ／Ｆ部１３０に接続される外部機器から通信制御装置１０に対して各種指示やデータを与えるためのものである。
【００１７】
記憶部１４０は、図２に示すように揮発性記憶部１４２と不揮発性記憶部１４４を含んでいる。揮発性記憶部１４２は、例えばＲＡＭ（Random Access Memory）であり、各種プログラムを実行する際のワークエリアとして制御部１００によって利用される。一方、不揮発性記憶部１４４は、ハードディスクやフラッシュメモリである。図２に示すように不揮発性記憶部１４４には、通信制御装置１０のファームウェアである通信制御プログラム１４４ａの他に、スクリプト実行プログラム１４４ｂ、設定ファイル１４４ｃ、および機能拡張用スクリプト１４４ｄが格納されている。
【００１８】
通信制御プログラム１４４ａは、支店側ＬＡＮと本社側ＬＡＮとの間にＩＰ−ｓｅｃトンネルを確立する処理や、このＩＰ−ｓｅｃトンネルを介したパケットの転送制御処理を制御部１００に実行させるプログラムである。これらの処理は、設定ファイル１４４ｃに書き込まれた各種設定値にしたがって実行される。この設定ファイル１４４ｃには、デフォルトゲートウェイ（本実施形態では、ゲートウェイ装置ＧＷ）の通信アドレスやＩＰ−ｓｅｃトンネルの確立先の通信アドレスなどが予め書き込まれている。
【００１９】
スクリプト実行プログラム１４４ｂは、所定のスクリプト言語（本実施形態では、Ｌｕａ）で記述された命令群であるスクリプトを実行するスクリプト実行処理を制御部１００に実行させるためのプログラムである。本実施形態では、スクリプト言語としてＬｕａが採用されているため、上記スクリプト実行処理は、処理対象のスクリプトをバイトコードと呼ばれる中間コードに変換する処理と、そのバイトコードをＬｕａＶＭにより実行する処理とを含んでいる。換言すれば、スクリプト実行プログラム１４４ｂは、上記バイトコードへの変換を行うルーチンとＬｕａＶＭとして機能するルーチンとを含んでいる。そして、本実施形態では、通信制御装置１０に付与する新たな機能を実現するための処理手順を上記スクリプト言語で記述したスクリプト（以下、機能拡張用スクリプト）を上記スクリプト実行処理により実行することで、当該新たな機能が通信制御装置１０に付与されるのである。
【００２０】
通信制御装置１０に対する機能拡張用スクリプトの与え方の具体的な態様としては、種々の態様が考えられる。例えば、外部機器Ｉ／Ｆ部１３０に接続されているシリアルコンソールを介して機能拡張用スクリプトを構成する命令群の各々をコマンドライン入力する態様や、上記命令群を記述したテキストファイルを予め作成しておき、このテキストファイルを機能拡張用スクリプトとして入力する態様が考えられる。なお、テキストファイルとして作成された機能拡張用スクリプトを通信制御装置１０に与える具体的な手法としては、ＵＳＢメモリ等の外部記憶媒体を利用した手法が考えられる。具体的には、テキストファイルとして作成した機能拡張用スクリプトをＵＳＢメモリに格納しておき、このＵＳＢメモリを通信制御装置１０の外部機器Ｉ／Ｆ部１３０に装着する。そして、通信制御装置１０の制御部１００には、外部機器Ｉ／Ｆ部１３０を介してＵＳＢメモリから上記テキストファイルを読み出して記憶（或いは、実行）する処理を行わせるのである。
【００２１】
本実施形態では、テキストファイルとして与えられた機能拡張用スクリプトが不揮発性記憶部１４４に予め格納されており（図２に示す機能拡張用スクリプト１４４ｄ）、制御部１００は、外部機器Ｉ／Ｆ部１３０に接続されているシリアルコンソールからスクリプト実行指示が与えられたことを契機として、スクリプト実行処理による機能拡張用スクリプト１４４ｄの実行が開始され、新たな機能が通信制御装置１０に付与される。このように機能拡張用スクリプトを利用して機能拡張を実現したのは、ファームウェア（通信制御プログラム１４４ａ）の改造を通信制御装置１０の利用者が行うことは不可能であり、ファームウェアの改造を行うことなく機能拡張を実現するためである。また、本実施形態にて機能拡張用スクリプトを記述するスクリプト言語としてＬｕａを採用したのは、ｐｅｒｌなどの他のスクリプト言語に比較してスクリプト実行処理の処理負荷が低い（スクリプト実行プログラム１４４ｂの実行に要するメモリ量が少ないなど）といった特徴を有しており、電子機器への組み込みに好適だからである。
【００２２】
ここで、機能拡張用スクリプトの実行により通信制御装置１０に付与される新たな機能としては、常駐型の機能（当該機能を実現する処理手順に無限ループが含まれており、割り込み処理等により実行停止が指示されるまで処理を継続する機能）と、ターンアラウンド型の機能（処理結果の記憶や出力で処理を終了する機能）とが考えられる。例えば、ターンアラウンド型の機能の一例としては、設定ファイル１４４ｃの設定内容や通信制御装置１０の稼動ログファイルを所定の出力先（外部機器Ｉ／Ｆ部１３０に接続されたシリアルコンソールやＵＳＢメモリ）に出力する機能が挙げられる。このような機能を付与することで、通信制御装置１０に対する動作設定の設定内容や稼動ログのレポート出力が可能となり、通信制御装置１０の運用管理がし易くなる、といった利点がある。
【００２３】
これに対して、常駐型の機能の一例としては、図３に示すフローチャートで処理手順が示される通信状態監視機能が上げられる。この通信状態監視機能は、一定の時間間隔（本実施形態では、６００秒）でゲートウェイ装置ＧＷとの間の通信状態を監視し、その監視結果に応じたＱｏＳ（Quality of Service：例えば、ＩＰ−ｓｅｃトンネルを介したパケットの送受信が優先されるようにする制御）の開始（或いは停止）およびその監視結果を所定の宛先に通知する機能である。図３に示すように、この通信状態監視機能は、所定回数だけｐｉｎｇパケットをゲートウェイ装置ＧＷへ送信する処理（ステップＳＡ１００）、これらｐｉｎｇパケットに対する応答パケットの受信数から算出されるパケットロス率に応じてＱｏＳの開始および停止を制御する処理（ステップＳＡ１１０、ＳＡ１２０、ＳＡ１５０およびＳＡ１６０）、その監視結果を示すデータを所定の宛先へ電子メール等で通知する処理（ステップＳＡ１３０）、および、６００秒間の休眠を行う処理（ステップＳＡ１４０）、を順次実行することで実現される。
【００２４】
上記通信状態監視機能を通信制御装置１０に新たに付与することを所望する場合には、図３のフローチャートに示す処理手順をＬｕａにより記述して機能拡張用スクリプトを生成し、この機能拡張用スクリプトをスクリプト実行処理により実行する処理を通信制御装置１０の制御部１００に実行させるようにすれば良い。なお、ｐｉｎｇパケットをゲートウェイ装置ＧＷへ送信する際には、ゲートウェイ装置ＧＷの通信アドレスが必要となるのであるが、ゲートウェイ装置ＧＷの通信アドレスのように通信制御装置毎に異なり得る値については、環境変数として通信制御装置１０に設定しておき、その環境変数をｇｅｔｅｎｖコマンドにより取得するようにすれば良い。このようにすることで、１つの機能拡張用スクリプトを複数の通信制御装置で共通して使用することが可能になり、利便性が向上するからである。
【００２５】
このように、本実施形態では、通信制御装置１０に対して新たに付与することを所望する機能における処理手順を所定のスクリプト言語で記述した機能拡張用スクリプトを作成し、この機能拡張用スクリプトをスクリプト実行処理により実行することで、ファームウェア（すなわち、通信制御プログラム１４４ａ）を更新することなく、通信制御装置１０の機能拡張を行うことが可能になる。また、ファームウェアの更新による機能拡張の場合は、一旦、通信制御装置を停止させてファームウェアの更新を行った後に通信制御装置を再起動する必要があったが、本実施形態では、機能拡張用スクリプトの実行を開始させるだけで機能拡張を実現できるため、通信制御装置を稼動させたまま機能拡張を行うことが可能になる。
【００２６】
以上本発明の一実施形態について説明したが、この実施形態を以下のように変形しても勿論良い。
（１）上述した実施形態では、通信制御装置１０の機能を拡張するためのスクリプトの記述言語としてＬｕａを用いたが、制御部１００の処理能力や記憶部１４０の記憶容量に余裕がある場合には、Ｐｅｒｌなどの他のスクリプト言語を用いても勿論良い。
【００２７】
（２）上述した実施形態では、互いに異なる２つの通信網に接続され、一方の通信網から他方の通信網へと送信されたデータの転送制御を行う通信制御装置に本発明を適用し、特定の通信装置（上記実施形態では、ゲートウェイ装置ＧＷ）へのアクセス状況を監視し、アクセス状況を示すメールを所定の宛先へ定期的に転送する常駐型の新規機能を追加する場合について説明した。上記実施形態では、通信制御処理と新規機能を実現するためのスクリプト実行処理は共に制御部１００によって実行されるため、スクリプト実行処理の処理負荷が高すぎると通信制御処理に支障が生じ、パケットロスが発生するなどの不具合が生じる虞がある。そこで、新たに追加される機能が常駐型のものである場合には、スクリプト実行処理による処理負荷が所定の閾値を上回らないようにその実行を制限する処理を制御部１００に実行させるようにしても良い。また、通信制御処理の実行状況（すなわち、通信制御処理の実行に要している処理負荷の高さ）に応じて上記閾値を動的に更新しても良い。例えば、通信制御処理の実行に要している処理負荷が高いほど上記閾値を小さくする（例えば、上記閾値を環境変数として設定しておき、通信制御処理の処理負荷に応じてその環境変数を更新する）のである。さらに、上記のような不具合が発生しないようにするため、ファームウェアを実行する手段とスクリプト実行処理を実行する手段とを各々別個に設けても良い。
【００２８】
（３）上述した実施形態では、外部機器Ｉ／Ｆ部１３０に接続されたシリアルコンソールから与えられる指示に応じて機能拡張用スクリプト１４４ｄの実行を開始する場合について説明した。しかし、例えば支店側ＬＡＮなどの通信網経由で与えられる指示（例えば、ｔｅｌｎｅｔを利用した通信により与えられる指示）に応じてスクリプトの実行開始および実行終了を制御しても良い。また、通信制御装置１０の操作部に設けられている操作子のうちの特定のもの（以下、スクリプトボタン）に予め機能拡張用スクリプトを対応づけておき、そのスクリプトボタンが押下されたことを契機としてそのスクリプトボタンに対応付けられているスクリプトの実行を開始（或いは、実行中のスクリプトを停止）させても良い。また、所定の時刻になったらスクリプトの実行を開始（或いは、停止）させるようなスケジュール設定を行えるようにしても良い。
【００２９】
（４）上述した実施形態では、通信制御装置１０に付与する新たな機能における処理手順の全てを機能拡張用スクリプト１４４ｄにて規定した。しかし、所定の通信装置へｐｉｎｇを送信する機能を実現するスクリプトや所定の宛先へ電子メールを送信する機能など通信制御装置での利用頻度が高いと考えられる機能を関数化してライブラリを作成し、これらライブラリに含まれている関数を呼び出すためのインタフェース（所謂ＡＰＩ：Application ProgrammingInterface)を用意しておいても良い。このようなライブラリの提供、およびＡＰＩの公開を行うことで、所定の通信装置へｐｉｎｇを送信する機能を実現するためのスクリプトを逐一作成する必要がなくなり、機能拡張用スクリプトの作成が容易になる。なお、上記各関数についてはスクリプト言語でその処理手順を記述しても良く、また、Ｃ言語や機械語などでその処理手順を記述しても良い。また、上記のようなライブラリおよびＡＰＩを作成する場合には、様々な種類の電子機器で使用されると考えられる関数のライブラリおよびＡＰＩ（共通ライブラリ）と、電子機器の機種毎に固有のライブラリおよびＡＰＩ（以下、機種固有ライブラリ）とに分けて提供および公開を行っても良い。
【００３０】
（５）上述した実施形態では、通信制御装置１０の特徴を顕著に示す通信制御処理およびスクリプト実行処理をソフトウェアで実現した。しかし、通信制御処理を実行する通信制御手段とスクリプト実行処理を実行するスクリプト実行手段の各々を電子回路などのハードウェアで実現し、これら各手段と、第１通信Ｉ／Ｆ部１１０と、第２通信Ｉ／Ｆ部１２０とを組み合わせて通信制御装置を構成しても勿論良い。また、上述した実施形態では、スクリプト実行プログラム１４４ｂが通信制御装置１０の不揮発性記憶部１４４に予め格納されていたが、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）などのコンピュータ読み取り可能な記録媒体に上記スクリプト実行プログラム１４４ｂを書き込んで配布しても良く、また、インターネットなどの電気通信回線経由のダウンロードにより上記スクリプト実行プログラム１４４ｂを配布しても良い。また、上述した実施形態では、通信制御処理を実現するファームウェア（通信制御プログラム１４４ａ）とスクリプト実行処理を実現するスクリプト実行プログラム１４４ｂとを各々別個のプログラムとして構成したが、両者を１つのプログラムにまとめても勿論良い。
【００３１】
（６）上述した実施形態では、通信制御装置への本発明の適用例を説明したが、例えば携帯電話機や所謂ＩＴ家電への適用が可能であることは言うまでも無い。要は、予め組み込まれたコンピュータをファームウェアにしたがって作動させることにより固有の機能を実現する電子機器であれば、本発明を適用することによりファームウェアの更新を行うことなく機能拡張をすることが可能になるのである。
【符号の説明】
【００３２】
１…通信システム、１０…通信制御装置、１００…制御部、１１０…第１通信Ｉ／Ｆ部、１２０…第２通信Ｉ／Ｆ部、１３０…外部機器Ｉ／Ｆ部、１４０…記憶部、１４２…揮発性記憶部、１４４…不揮発性記憶部、１４４ａ…通信制御プログラム、１４４ｂ…スクリプト実行プログラム、１４４ｃ…設定ファイル、１４４ｄ…機能拡張用スクリプト、１５０…バス。
【図１】
2014059919.tif 000003
【図２】
2014059919.tif 000004
【図３】
2014059919.tif 000005