呼制御装置、方法及びプログラム
【課題】メインメモリ上で更新された呼制御アプリケーション及び呼制御情報を不揮発性メモリに保存できるようにする。
【解決手段】本発明の呼制御装置は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置で、RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション、呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション、呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段を備える。
【解決手段】本発明の呼制御装置は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置で、RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション、呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション、呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、呼制御装置、方法及びプログラムに関し、例えば、交換機のメインメモリで更新された呼制御情報(例えば、局データ、加入者データ等)及び呼制御アプリケーションを適宜に不揮発性メモリに記憶する呼制御装置、方法及びプログラムに適用し得るものである。
【背景技術】
【0002】
旧来の電子交換機では、交換システムで動作させる呼制御アプリケーション及び局データを、揮発性メモリに格納した状態で運用する構成をとるのが一般的である。
【0003】
電子交換機に電源を投入すると、呼制御アプリケーション及び局データが、不揮発性メモリから揮発性メモリに呼び込まれる。そのため、電子交換機の呼制御アプリケーション及び局データの更新を行う際に、運用中のデータ更新のための揮発性メモリへの更新作業と、次回の電子交換機の起動の際に読み出されることとなる不揮発性メモリへの更新作業の2つの更新作業が必要になる。
【0004】
また、現代の電子交換機として、揮発性メモリとしてのDIMM(Dual Inline Memory Module)や不揮発性メモリとしてのSSD(Solid State Drive)の採用、RAMディスクによる揮発性メモリ及び不揮発性メモリの管理方法の適用がある。
【0005】
現代の電子交換機においても、呼制御アプリケーション及び局データの更新の際には、揮発性メモリと不揮発性メモリとの双方の更新が必要である。
【0006】
例えば、特許文献1に記載の技術は、操作者が保守コンソールから交換機のメモリ書き込みプログラム及びメモリ読み出しプログラムを制御し、メモリから情報を出し入れするという技術が記載されている。
【0007】
さらに、現代の電子交換機の構成としては、例えば汎用的なPC/AT互換のMB(Main Bord)で外部記憶装置としてSSDを有し、メインメモリとしてDIMMを有するものが挙げられる。
【0008】
この場合、DIMM上にRAMディスクを形成し、DIMMを記憶装置のように扱える仮想ディスク(Virtual Disk)の技術が利用されることがある。ところが、RAMディスク領域は揮発性メモリ(DIMM)内に生成した仮装ディスク領域なので、例えば停電などにより交換機への給電が絶たれシステムダウンすると、RAMディスク上のデータは、交換機のリセットに伴い消去されるため、適宜、RAMディスクの内容をSSDに反映する必要がある。
【0009】
このRAMディスクに適用される仮想ディスクの技術としてEWF(Enhanced Write Filter)等が存在し、例えば特許文献2には、RAMディスクの内容をDMA転送で磁気ディスクに書き込む方法が示されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開平5−300229号公報
【特許文献2】特開平2−39342号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
ところで、汎用的なMBに、不揮発性メモリのSSDの記憶装置、揮発性メモリのDIMMのメモリを有し、DIMM上にRAMディスクを形成して動作する交換機において、電源が投入されOSが起動すると、例えばOS状態情報、OS起動ログ、ネットワークからのアクセスログ、呼制御アプリケーションの起動ログ、呼制御により発生する課金情報等を記憶するためにディスクI/Oが発生する。このディスクI/Oは、EWFの仕組みでRAMディスク領域に書き込み情報として保存される。
【0012】
また、例えばバグの修正や機能追加等のために作業者がSSD内に記憶されている呼制御アプリケーションをバージョンアップする場合や、例えば交換機の収容端末の増減に伴って局データを更新する場合にもディスクI/Oが行われ、ディスクI/OがEWFの仕組みでRAMディスク領域に書き込み情報として保存される。
【0013】
しかしながら、呼制御アプリケーション及び局データは、交換機として最低限必要な要素であり、直ちにSSDに記憶する必要がある。
【0014】
また、記憶装置として適用される不揮発性メモリのSSDは、その書き込み・削除回数に限界があるため(例えば10万回)、なるべくSSDへの書き込み・削除回数を減らし、SSDの寿命を延命させることが望まれる。
【0015】
そのため、呼制御アプリケーションと呼制御情報(例えば局データなど)が更新されたときに、RAMディスク領域に保存される不揮発性メモリに対する書き込み情報の内容が不揮発性メモリ上に反映させることができ、かつ、書き込み・削除回数が限定されている不揮発性メモリの寿命を延命させることができる呼制御装置、方法及びプログラムが求められている。
【課題を解決するための手段】
【0016】
第1の本発明の呼制御装置は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置において、(1)RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、(2)更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段を備えることを特徴とする。
【0017】
第2の本発明の呼制御方法は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置の呼制御方法において、(1)更新検知処理手段が、RAMディスク領域の書き込み情報から呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理工程と、(2)書き込み処理手段が、更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理工程を有することを特徴とする。
【0018】
第3の本発明の呼制御プログラムは、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置を、(1)RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、(2)更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段として機能させることを特徴とする。
【発明の効果】
【0019】
本発明によれば、呼制御アプリケーションと呼制御情報(例えば局データなど)が更新されたときに、RAMディスク領域に格納される書き込み情報の内容が不揮発性メモリ上に反映させることができ、かつ、書き込み・削除回数が限定されている不揮発性メモリの寿命を延命させることができる。
【図面の簡単な説明】
【0020】
【図1】第1〜第5の実施形態の交換機の内部構成を示す構成図である。
【図2】第1〜第5の実施形態の通話システムの構成を示す構成図である。
【図3】第1の実施形態の交換機において、フラッシュメモリ部への書き込み処理を示すフローチャートである。
【図4】第1の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図5】第1の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図6】フラッシュメモリ部への書き込み処理を説明する説明図である。
【図7】第2の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図8】第2の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図9】第3の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図10】第3の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図11】フラッシュメモリ部の保存領域の構成と、局データ及び呼制御プログラムの書き換えとを説明する説明図である。
【図12】第4の実施形態のフラッシュメモリ部への書き込みを判断する判断テーブルの構成を示す構成図である。
【図13】第5の実施形態のフラッシュメモリ部への書き込みを判断する判断テーブルの構成を示す構成図である。
【発明を実施するための形態】
【0021】
(A)第1の実施形態
以下では、本発明の呼制御装置、方法及びプログラムの第1の実施形態について、図面を参照しながら説明する。
【0022】
第1の実施形態は、揮発性メモリ上にRAMディスク領域を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報(局データ、加入者データ等)を揮発性メモリにローディングして呼制御を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置に、本発明を適用する実施形態を説明する。
【0023】
(A−1)第1の実施形態の構成
図2は、第1の実施形態の通話システムの全体構成を示す全体構成図である。また、図1は、第1の実施形態の交換機の構成を示す構成図である。
【0024】
図2において、第1の実施形態の通話システム10は、交換機1、電話端末2−1〜2−n(nは正の整数)を有して構成される。
【0025】
図1において、第1の実施形態の交換機1は、制御部11、通信部12、RAM部13、フラッシュメモリ部15を少なくとも有して構成される。
【0026】
通信部12は、接続する通信回線との間で、所定の通信方式に従って情報の送受信を行うものである。通信部12の接続回線は、例えばアナログ回線、IP(インターネットプロトコル)回線、ディジタル回線、光回線等を適用することができ、又通信方式は、種々の方式を適用することができる。
【0027】
制御部11は、交換機1の呼制御機能を司るものであり、例えばCPU等が該当する。
【0028】
RAM部13は、揮発性メモリであり、DIMMを適用することができる。また、RAM部13は、メモリ領域上の一部にRAMディスク部14を形成するものである。
【0029】
RAMディスク部14は、フラッシュメモリ部15に対する書き込み情報を格納する領域である。
【0030】
フラッシュメモリ部15は、不揮発性メモリであり、例えばSSDを適用することができる。また、フラッシュメモリ部15は、制御部11の制御を受けて、RAMディスク部14に格納される書き込み情報の内容を保存するものである。さらに、フラッシュメモリ部15は、OS(オペレーティングシステム)16、呼制御アプリケーション17、局データ18を格納する。この呼制御アプリケーション17と局データ18を、制御部11がRAM13に呼び込み(ローディング)呼制御に利用する。
【0031】
OS16は、RAM部13上に生成されたRAMディスク部14を使用可能にするオペレーティングシステムであり、例えば、Microsoft(登録商標) Windows(登録商標) embeddedが適用できる。
【0032】
続いて、交換機1において、RAM部13にローディングされた呼制御アプリケーション17及び局データ18のいずれか又は両方を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知する場合に、その検知に基づいてRAMディスク部14の書き込み情報のうち呼制御アプリケーション17及び局データ18のいずれか又は両方の書き込み情報の内容を、フラッシュメモリ部15に書き込みを行う書き込み処理の機能部を説明する。
【0033】
なお、以下では、局データ18が更新された場合に、更新された局データ18をフラッシュメモリ部15に書き込む場合を例示するが、呼制御アプリケーション17の更新の場合も基本的には同様に機能する。
【0034】
図5は、RAMディスク部14の内容をフラッシュメモリ部15に書き込み行う書き込み処理を実現する機能部の構成を示すブロック図である。
【0035】
図5に示すように、第1の実施形態の書き込み処理を実現する機能部としては、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25がある。
【0036】
局データ更新検知部21は、呼制御の開始後に、RAMディスク部14に格納される書き込み情報から、RAM部13にローディングされた局データ18を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知することで局データ18が更新されたか否かを検知するものである。
【0037】
ここで、局データ18の更新検知方法としては、例えば、フラッシュメモリ部15に格納された局データ18のファイル名に対する書き込み情報を検知する方法等を適用することができる。このファイル名は、OS16がフラッシュメモリ部15をマウントした際のファイルシステムに基づくファイル名で、ファイルシステム中に存在するファイルの領域を特定する識別子である。また、ファイル名の表し方としては、単にファイル名を示す場合と、ファイルシステム中のディレクトリ構造を含めた絶対パス又は相対パスで示す場合が適用できる。
【0038】
また、局データ更新検知部21は、局データ18を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知するために、局データ18がローディングされるときに局データ18のファイル名を保持しておく。
【0039】
また、呼制御アプリケーション17の更新検知方法としては、上記のファイル名に対する書き込み情報を検知する方法に加え、例えば、呼制御アプリケーション18のバージョン変化を検知する方法等を適用することができる。この場合、局データ更新検知部21は、呼制御アプリケーション17を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知するために、呼制御アプリケーション17がローディングされるときに呼制御アプリケーション17のファイル名又はバージョンを保持しておく。バージョンの情報は、呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージから受け取ることで取得できるものである。
【0040】
局データ呼び込み制御部22は、局データ更新検知部21が局データ18の更新を検知した場合に、呼制御アプリケーション17に対して、更新された局データ18を呼び込ませるものである。
【0041】
局データ復旧部23は、呼制御アプリケーション17が更新された局データ18を呼び込む際に、更新された局データ18の呼び込みが失敗したときに、それ以前の局データ18を復旧するものである。
【0042】
CPU使用率確認部24は、呼制御アプリケーション17により更新された局データ18の呼び込みが正常に行われた場合に、CPU使用率が閾値を超えているか否かを確認するものである。
【0043】
書き込み制御部25は、RAMディスク部14に格納されている内容を、フラッシュメモリ部15に書き込み制御するものである。
【0044】
ここで、後述するフラッシュメモリ部15(例えばSSD)は、書き込み制限が設けられている(例えば10万回)。従って、最新の呼制御アプリケーション17及び局データ18を正しくフラッシュメモリ部15に効率的かつ有効に保存するために、第1の実施形態の書き込み制御部25は、フラッシュメモリ部15への書き込み制限を掛けながら行う。
【0045】
書き込み制御部25は、例えば、Enhanced Write Filter(以下、EWFという)を利用する。このEWFは、Microsoft Windows embeddedのOSに特有の機能であり、OSランタイムイメージへの書き込み制限を行う機能である。
【0046】
これにより、RAM部13上のRAMディスク部14を保護パティーションに対する書き込み情報をリダイレクトする領域とし、RAMディスク部14に格納された書き込み情報をフラッシュメモリ部15の空き領域に格納することができる。つまり、リダイレクトする領域であるRAMディスク部14はEWFの仕組におけるオーバーレイの領域で、オーバーレイの領域にはディスクI/Oがリダイレクトされ書き込みI/O後のディスクの状態(I/O結果)を表すI/Oキャッシュ(ディスクイメージ)が保存される。したがって、このリダイレクトとはフラッシュメモリ部15に対するすべての書き込み情報をRAMディスク部14にキャッシュを格納し保存することである。
【0047】
そのため、図6に示すように、フラッシュメモリ部(SSD)15からのデータ読み込みや、RAMディスク部(オーバレイ)14へのデータ書き込み又は再読み込みが可能となる。再読み込みについては、RAMディスク部14に書き込み情報がある場合にはRAMディスク部14から書き込み情報に基づいて読み込みを行い、書き込み情報がない場合にはフラッシュメモリ部15から読み込みを行うことで再読込みを行う。
【0048】
また、RAMディスク部14は、揮発性メモリであるRAM部13上に形成された領域なので、リブートするとRAMディスク部14の格納内容は破棄される。
【0049】
さらに、第1の実施形態では、RAMディスク部14に格納される書き込み情報から局データ18の更新を検知し、更新した場合にフラッシュメモリ部15に書き込むようにし、直接フラッシュメモリ部15への書き込まれないようにしたので、フラッシュメモリ部15への書き込み回数を削減することができる。
【0050】
さらに、急な電源断(例えば、PKG抜去、交換機1の電源OFF等)に対してシステムを保護することができる。
【0051】
(A−2)第1の実施形態の動作
次に、第1の実施形態の交換機1において、RAMディスク部14の内容をフラッシュメモリ部15に書き込みを行う処理の動作を、図面を参照しながら説明する。
【0052】
以下では、図1において、最初に電話端末2−1及び電話端末2−2のみが交換機1と接続しており、その後新たに電話端末2−nが追加され、この追加に伴い局データ18を更新する場合を例示して説明する。
【0053】
なお、以下では、局データ18の更新の場合を例示するが、呼制御アプリケーション17の更新の場合にも基本的な処理は同様の処理で実現できる。
【0054】
ただし、図4のステップS41では、局データ18の場合と呼制御アプリケーション17の場合とで具体的な処理が異なるので、この点について後で詳細に説明する。
【0055】
図3は、第1の実施形態の交換機1における局データが更新されない場合の処理を示すフローチャートである。また、図4は、第1の実施形態の交換機1における局データの更新後の処理を示すフローチャートである。
【0056】
まず、交換機1に電源が投入されて起動すると、交換機1は呼制御を開始できるよう準備する。
【0057】
具体的には、交換機1において、OS16が起動し(ステップS31)、RAM部13の領域にRAMディスク部14が構築され(ステップS32)、呼制御アプリケーション17の起動(ステップS33)及び局データ18の呼び込み(ステップS34)が行われ、かかる後に呼制御を開始(ステップS35)する。ここで、OS16はRAMディスク部14を構築する機能を有しており、これを使用することでRAM部13の領域にRAMディスク部14を構築することができる。RAMディスク部14の構築後は、OS状態情報、OS起動ログ、ネットワークからのアクセスログ、呼制御アプリケーションの起動ログ、呼制御により発生する課金情報等を記憶するためのフラッシュメモリ部15に対する書き込みは、RAMディスク部14に書き込み情報として格納される。
ステップS36で、交換機1が電話端末2−1及び電話端末2−2間の呼制御を開始した後、局データ18の更新がない場合であって、交換機1においてシャットダウンした場合(ステップS37)、RAMディスク部14の内容をフラッシュメモリ部15に書き込み(ステップS38)、この書き込み終了後に、交換機1が停止する。
【0058】
ステップS38において、フラッシュメモリ部15への書き込みについては、OS16のシャットダウン処理の一環として実行されるため、書き込みの際には、CPU使用率は参照されない。このステップS38は、RAMディスク部14のすべての内容をフラッシュメモリ部15に書き込むものである。
【0059】
なお、ステップS36において局データの更新がなく、さらに交換機1がシャットダウンしない場合(ステップS37)には、通常の運用中であるとみなし、フラッシュメモリ部15への書き込みアクセスを行わない。
【0060】
ステップS36において、交換機1で呼制御が行われている状態で、局データ18が更新されたことを検出した際の動作について図4を参照しながら説明する。
【0061】
例えば、交換機1が新たに電話端末2−nを収容することに伴い、局データ18が更新されると(ステップS36)、ステップS41に遷移する。
【0062】
ここで、更新された局データ18はRAMディスク部14に書き込み情報として格納される。
【0063】
なお、ここでの事例では1台の電話端末の追加を例示しているが、長時間に亘る大容量の局データ18の更新作業を考慮して、局データ18の更新を検知した後に、一定時間待ち状態とし、この待ち状態の間に局データ18が更新されなかった場合に局データ18の更新作業が終了したとみなして処理ステップS41に遷移させるようにしてもよい。
【0064】
この場合、待ち状態の間に局データ18が更新された場合には、局データ18の更新作業が継続する可能性があると判断し、局データ18の更新作業が終了するまでステップS41への処理に遷移させることを保留させる。
【0065】
ステップS41では、呼制御アプリケーション17が、局データ18を正常に呼び込めることを確認する。そして、呼制御アプリケーション17が局データ18の呼び込みに成功した場合は前記局データ18をフラッシュメモリ部15に書き込み可能と判断し、ステップS42に遷移する。
【0066】
ここで、呼び込む局データ18は更新された局データ18であるから、呼制御アプリケーション17はRAMディスク部14の書き込み情報に基づいて再読み込みし、局データ18を呼び込む。
【0067】
なお、局データ18の呼び出し方法としては、例えば、更新されたデータのみを呼び込む方法(例えば、新たな電話端末2−nに関する局データ18のみを呼び出す方法等)、局データ18全体を呼び込む方法等を適用することができる。
【0068】
呼制御アプリケーション17が正常に局データ18を呼び込めない場合、ステップS37に遷移して通常の運用状態に戻り、RAMディスク部14の内容をフラッシュメモリ部15に書き込まないようにする(ステップS41)。
【0069】
ここで、上述したように、局データ18の呼び込みの正常性判断の具体的な方法と、呼制御アプリケーション17の呼び込みの正常性判断の具体的な方法とは異なるので、この点について詳細に説明する。
【0070】
(ア)局データ18の呼び込みの正常性判断の方法
呼制御アプリケーション17による局データ18の呼び込みの正常性判断の方法としては、次の2つのいずれか又は双方を適用することができる。なお、次の2つのいずれか又は双方を適用するか否かは予め交換機1に設定しておくことで実現できる。
【0071】
第1の方法は、呼制御アプリケーション17が局データ18を呼び込むためのルーチン(routine)のリターンコードで正常に呼び込めたか否かを判断する方法である。リターンコード0のとき正常に呼び込みができたことを示し、リターンコード1のとき正常に呼び込みができなかったことを示す。この場合、制御部11は、呼制御アプリケーションからリターンコードを受け取るインタフェースを有することが必要であり、このインタフェースを介して受け取ったリターンコードから判断することで実現できる。
【0072】
第2の方法は、呼制御アプリケーション17が局データ18を呼び込んだ結果、出力する自律メッセージにより正常に呼び込んだか否かを判断する方法である。呼制御アプリケーション17は、局データ18を呼び込んだ際、正常に呼び込めたか否かを自律メッセージに出力する。この自律メッセージはログファイルに出力される場合と、OSの標準出力に出力される場合とを適用できる。この場合、制御部11は、ログファイルにアクセスするインタフェース又は標準出力を受け取るインタフェースを有することが必要であり、制御部11がログの内容から正常に呼び込めたか否かを判断する。具体的には、制御部11はログの内容から、自律メッセージのタイプが通常メッセージであることを示す「#・・」を検索できた場合、局データ18のローディングが成功して出力されていることを判断し、局データ18を正常に呼び込めたものと判断し、通常メッセージを示す「#・・」を検索できなかった場合、局データ18のローディングが成功して出力されていないと判断し、局データ18の呼び込みが正常でないと判断することができる。
【0073】
ここで、自律メッセージには、例えば、重要度により最緊急メッセージ、緊急メッセージ、エラーメッセージおよび通常メッセージの4つのタイプがある。
【0074】
例えば、最緊急メッセージはメッセージの冒頭に「***」が付与されるもので、呼制御アプリケーションのシステム動作確認により装置のハード及びソフトを含めて障害の状態と検出し、呼処理を再開できないシステムダウンの状態を示すものである。緊急メッセージはメッセージの冒頭に「**・」が付与されるもので、呼制御アプリケーションのシステム動作確認は行っていないが装置が故障の状態であり、故障状態で強制的に呼処理を継続しシステムダウンに至る恐れがある状態を示すものである。エラーメッセージはメッセージの冒頭に「*・・」が付与されるもので、呼処理エラーやプログラムエラーの状態を示すものである。通常メッセージはメッセージの冒頭に「#・・」が付与されるもので、局データのローディングの成功、回線接続成功、PKG挿抜、PKG制御などの状態を示すものである。
【0075】
なお、第1の実施形態では、第1の方法により、制御部11が、呼制御アプリケーション17による局データ18の呼び込みが正常に行われたことを判断する場合を示す。
【0076】
また、呼制御アプリケーション17が局データ18の呼び込みに失敗した場合、その局データ18を以前の局データ18に復旧するようにしても良い。
【0077】
この局データ18の復旧方法としては、例えば、フラッシュメモリ部15から局データ18を再度RAM部13に呼び込んで復旧する方法を適用したりRAM部13で以前の局データ18を保持しておき、新しい局データ18の呼び出しに失敗した場合に、その更新前の局データ18に切り戻す方法等を適用することができる。
【0078】
(イ)呼制御アプリケーションデータ17の呼び込みの正常性判断の方法
呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージにより正常に呼び込めたか否かを判断する方法である。呼制御アプリケーション17は、自身が呼び込まれた際、呼び込みにより自身が障害や異常を検出すると自律メッセージに出力する。この自律メッセージはログファイルに出力される場合と、OSの標準出力に出力される場合とを適用できる。この場合、制御部11は、ログファイルにアクセスするインタフェース又は標準出力を受け取るインタフェースを有することが必要であり、制御部11がログの内容から正常に呼び込めたか否かを判断する。具体的には、交換機1で呼制御アプリケーション17を呼び込み障害や異常を検出せず呼処理をし、更新により新たな呼制御アプリケーション17を呼び込み障害や異常を検出し自律メッセージに出力すれば、新たな呼制御アプリケーション17は正常でないと判断できる。
【0079】
したがって、制御部11はログの内容から、「***」を検索し自律メッセージの最緊急メッセージが出力されていないことを判断することで障害や異常あるか否かを判断することができる。
【0080】
ステップS42では、交換機1のCPU使用率がある閾値以下になった時点で、RAMディスク部14に保存される書き込み情報の内容をフラッシュメモリ部15に書き込めるようにし(ステップS43)、ステップS37に遷移する。
【0081】
ステップS42を実行する時点でのCPU使用率が閾値より大きい場合、再度ステップS42に遷移し、CPU使用率が閾値を下回るまで待つ。
【0082】
ここで、CPU使用率の閾値の決定方法としては、交換機1の環境に応じて適宜決定することができるが、例えばWindows(登録商標)をOSに使用する場合においては、CPU使用率を80%以内の状態でコンピュータを動作させることを推奨することがあり、この推奨値からの猶予を見て、閾値を70%とする。他のOSによるRAMディスク部14からフラッシュメモリ部15への書き込み処理においても、同様にして閾値を決定することが可能であり、70%以外の値を設定可能であることは当然である。
【0083】
ステップS43で、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込めるようにしてステップS37に遷移し、交換機1が通常の動作をすれば、RAMディスク部14の内容が、フラッシュメモリ部15に書き込まれる。このステップS43は、RAMディスク部14に格納される書き込み情報のうち更新された局データ18の書き込み情報の内容をフラッシュメモリ部15に書き込むものである。
【0084】
なお、ステップS36の局データ18の更新の検知で、フラッシュメモリ部15に格納された局データ18のファイル名に対する書き込み情報を検知するので、ステップS43の書き込みの際、RAMディスク部14に格納される書き込み情報のうち更新された局データ18に関わる書き込み情報とそれ以外の書き込み情報を区別できるものである。
【0085】
(A−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、フラッシュメモリ部15に更新後の局データ18以外を書き込まない制限をしつつ、局データ18の更新要求のみで、RAMディスク部14に対してのみならず、フラッシュメモリ部15に対して更新後の局データ18を保存することができる。
【0086】
これにより、局データ18の更新手順の簡素化、局データ18のフラッシュメモリ部15への更新漏れの防止、交換機1の故障によるRAMディスク部14の局データ18の消失に対する救済策の提供が可能となる。
【0087】
(B)第2の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第2の実施形態について図面を参照しながら説明する。
【0088】
第1の実施形態では、局データ(又は呼制御アプリケーション)の更新があった場合に、局データの呼び込みが正常に行えたか否かを判断した後に、RAMディスク部に格納される書き込み情報の内容をフラッシュメモリ部に書き込む実施形態を例示した。
【0089】
しかしながら、更新後の局データのシンタックスが正常であるために、呼制御アプリケーションが呼び込みに成功できたとしても、実際の交換システムで正しく動作する保証は必ずしもない。
【0090】
このような場合に、フラッシュメモリ部15への書き込みを許容すると、正しく動作し得ない局データをフラッシュメモリ部15に保存することになる。また、この余分な書き込み作業により書き込み回数を消費することにもなる。
【0091】
そこで、第2の実施形態は、局データの更新があった場合に、呼制御に成功したか否かを判断した後に、RAMディスク部に格納される書き込み情報の内容をフラッシュメモリ部に書き込む実施形態を例示する。
【0092】
(B−1)第2の実施形態の構成
第2の実施形態が第1の実施形態の構成と異なる点は、フラッシュメモリ部15への書き込み処理を実現する機能部である。そこで、第2の実施形態では、この書き込み処理の機能部の構成について詳細に説明し、第1の実施形態で既に説明した構成の説明については省略する。
【0093】
図7は、第2の実施形態のフラッシュメモリ部15への書き込みを行う書き込み処理の機能部の構成を示す構成図である。図7において、第2の実施形態の書き込み処理機能部は、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、呼制御確認部26、呼制御エラー発生状況確認部27、異常通知部28、書き込み制御部25を有する。
【0094】
なお、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25は、第1の実施形態で説明した機能と同じであるので、ここでの説明を省略する。
【0095】
呼制御確認部26は、局データ18又は呼制御アプリケーション17が更新された後、当該交換機1がその更新された局データ18を用いて呼制御を行い、その呼制御が成功するか否かを確認するものである。
【0096】
呼制御エラー発生状況確認部27は、呼制御確認部26により呼制御が失敗したと判断した場合に、局データ18又は呼制御アプリケーション17の更新から現時点までの呼制御エラーの発生状況を確認するものである。
【0097】
異常通知部28は、呼制御のエラーが頻繁に発生するような場合に、交換機1の作業者に対し、更新後の局データ18又は呼制御アプリケーション17に異常があったこと、かかる異常に付随するエラーログ、更新後の局データ18又は呼制御アプリケーション17のフラッシュメモリ部15への書き込みが行われないこと、局データ18又は呼制御アプリケーション17への更新を破棄する旨のいずれか又はこれらを組み合わせた情報を通知するものである。エラーログの情報は、呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージから受け取ることで取得できるものである。
【0098】
(B−2)第2の実施形態の動作
次に、第2の実施形態の交換機1において、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込みを行う書き込み処理の動作を図面を参照しながら説明する。
【0099】
第2の実施形態は、局データ18の更新後の処理が第1の実施形態と異なる。従って、局データ18が更新されない場合の処理(図3に示す処理)は、第1の実施形態と同じであるので、ここでの再度の説明は省略する。
【0100】
なお、局データ18の更新の場合を例示するが、呼制御アプリケーション17の更新の場合を同様にして適用できる。
【0101】
図8は、第2の実施形態の局データの更新後の処理を示すフローチャートである。
【0102】
まず、交換機1において呼制御の開始後、局データ18が更新するとステップS51に遷移する。
【0103】
ステップS51では、呼制御アプリケーション17が更新後の局データ18を呼び込むことにより、更新後の局データ18の正常性を確認すると(ステップS51)、呼制御アプリケーション17は、更新後の局データ18を使用して呼制御の実行を待つ(ステップS52)。
【0104】
ステップS52において、例えば交換機1が電話端末2−nからの通話要求を受信する場合に、その呼制御が成功したとき、制御部11は、CPU使用率が閾値以下であるか否かを確認して閾値以下であれば(ステップS55)、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込む(ステップS56)。
【0105】
ここで、実際の交換システム10の運用における呼制御確認のタイミングとしては、例えば、保守作業の確認時としても良いし、局データ18の更新後に最初のオペレータが発呼するタイミングとしても良い。すなわち、必ずしもリアルタイムに呼制御の確認を行う必要はない。
【0106】
一方、ステップS52では、例えば、着信先の無応答や着信先の話中といった発呼のタイミングにより解決可能な呼制御エラーや、また例えば、更新後の局データ18の内容と電話端末情報の相違の存在や、呼制御アプリケーション17やOS16の不具合といった、交換機1に起因する呼制御エラーが発生し得る。このような呼制御に関するエラーが生じた場合、呼制御に失敗したとして、ステップS53に遷移する。
【0107】
ステップS53では、局データ18の更新後から現時点までの、呼制御エラーの発生状況を確認する(ステップS53)。
【0108】
ここで、呼制御エラーの発生状況の確認としては、例えば、過去のエラー発生回数が少ない(閾値以下である場合)又はエラー発生頻度が低い(閾値以下である場合)には、直近の呼制御エラーは一時的な事象であるとみなし、ステップS52に遷移し、処理を繰り返す。
【0109】
一方、過去の呼制御エラー発生回数が多い(閾値を超えている場合)又はエラー発生頻度が高い(閾値を超えている場合)、直近の局データ18の更新により呼制御を正常に行えなくなったとみなし、ステップS54に遷移する。
【0110】
ここで、ステップS53におけるエラー発生状況の確認方法としては、種々の方法を適用できるが、例えば、所定時間の間に、所定回数以上の呼制御エラーが発生しているかどうかを確認する方法や、同種類の呼制御エラーが所定回数以上発生しているか否かを確認する方法や、ステップS52における全ての呼制御エラーが所定回数以上発生しているかどうかを確認する方法を適用することができる。
【0111】
なお、ステップS53からステップS54に遷移する場合には、制御部11は、交換機1の作業者に対し、更新後の局データ18に異常があったこと、かかる異常に付随するエラーログ、更新後の局データ18のフラッシュメモリ部15への書き込みが行われないこと、及び又は、局データ18への更新を破棄する旨を通知するようにしてもよい。
【0112】
ステップS54では、直近の局データ18の更新を破棄し、更新直前の局データ18にロールバックして、図3のステップS37に遷移する(ステップS54)。
【0113】
このように、呼制御が正常に行われた後に、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込むようにしたので、呼制御を正常に行えない局データ18をフラッシュメモリ部15に書き込むことを防ぐことができる。
【0114】
また、局データ18の更新により呼制御が正常に行われなくなった場合であっても、過去の正常に動作することを保証された局データ18への回復及び回復後の局データ18を用いた交換機1の稼動、及び交換機1が稼動状態に復帰可能であることにより、局データ18の更新の失敗後であっても、局データ18に対する新たなデータ更新を受理することが可能となる。
【0115】
(B−3)第2の実施形態の効果
以上のように、第2の実施形態では、第1の実施形態により得られる効果に加えて、実際に呼制御が可能な局データ18のみをRAMディスク部14の書き込み情報の内容からフラッシュメモリ部15に書き込むことが可能になった。
【0116】
これにより、交換機1として正常に動作する局データ18のみを選別してフラッシュメモリ部15に書き込むことが可能になる。
【0117】
さらに、第2の実施形態によれば、呼制御に供することができない局データのフラッシュメモリ部15への書き込み処理による、フラッシュメモリ部15の書き込み回数の延命が可能になる。
【0118】
(C)第3の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第3の実施形態について図面を参照しながら説明する。
【0119】
第3の実施形態は、局データの更新があるときに、直ちにフラッシュメモリ部15に書き込みをした後にシステムを再起動又はシャットダウンする実施形態を例示して説明する。
【0120】
(C−1)第3の実施形態の構成
第3の実施形態が第1の実施形態の構成と異なる点は、フラッシュメモリ部15への書き込みを行う書き込み処理の機能部の構成であるので、以下では、第3の実施形態の書き込み処理機能部の構成を詳細に説明し、第1の実施形態で既に説明した構成の説明については省略する。
【0121】
図9は、第3の実施形態の書き込み処理の機能部の構成を示す構成図である。図9において、第3の実施形態の書き込み機能部は、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25、再起動部29を有する。
【0122】
なお、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25は、第1の実施形態で説明した機能と同じであるので、ここでの説明を省略する。
【0123】
再起動部29は、局データ18の更新があるときに、直ちにフラッシュメモリ部15に書き込みをした後にシステムを再起動又はシャットダウンするものである。
【0124】
(C−2)第3の実施形態の動作
次に、第3の実施形態の交換機1において、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込みを行う書き込み処理の動作を、図面を参照しながら説明する。
【0125】
図10は、第3の実施形態の交換機1における処理を示すフローチャートである。図10において、図3に示す処理と同一の処理については、同一の番号を付与する。
【0126】
交換機1においてOSが起動し、呼制御が開始した後(ステップS31〜S35)、呼制御アプリケーション17は、局データ18の更新を監視し、局データ18の更新がない限り、通常の交換機1を運用する(ステップS61)。
【0127】
ステップS61において、局データ18の更新処理が検知されると、ステップS62に遷移する。ステップS62では、RAMディスク部14に格納される書き込み情報の内容が、フラッシュメモリ部15に書き込まれる(ステップS62)。
【0128】
なお、局データ18の更新検知方法や、局データ18のフラッシュメモリ部15への書き込み方法は、第1の実施形態と同様の処理を適用できる。
【0129】
また、ステップS61からステップS62に遷移する前に、第1又は第2の実施形態で説明した処理を適用することができる。
【0130】
つまり、制御部11において監視しているCPU使用率が閾値を下回るまで待機させることも可能であること(図4におけるステップS42の挿入)、呼制御アプリケーション17が更新後の局データ18を呼び込み、かかる呼び込みが成功した場合にのみステップS62に遷移し、RAMディスク部14に格納された局データ18をフラッシュメモリ部15に書き込むことも可能であること(図4におけるステップS41の挿入)、および実際の呼制御が成功した場合にのみステップS62に遷移し、RAMディスク部14に格納された局データ18をフラッシュメモリ部15に書き込むことも可能であること(図8におけるステップS52の挿入)は当然である。
【0131】
次に、ステップS63では、RAMディスク部14に格納された局データ18のフラッスメモリ部15への書き込み処理の終了後に、OS16は交換機1をシャットダウン又はリブートする。
【0132】
このように、OS16がシャットダウン又はリブートすることにより、RAMディスク部14を開放し、起動時に再度構築することで、RAMディスク部14のクリーンアップを行い、新たな局データ18をローディングした呼制御アプリケーション17で呼制御を行うことができる。
【0133】
また、交換機1がリブートされた場合、ステップS31に遷移し、再度呼制御を提供できる状態となる。
【0134】
(C−3)第3の実施形態の効果
以上のように、第3の実施形態によれば、第1の実施形態の効果に加えて、更新された局データをフラッシュメモリ部15に書き込みした後に、OSが再起動することにより、再度RAMディスク部14をクリーンアップして再構築することができ、新たな局データ18で呼制御を行うことができる。
【0135】
(D)第4の実施形態
次の本発明の呼制御装置、方法及びプログラムの第4の実施形態を、図面を参照しながら説明する。
【0136】
第4の実施形態は、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込む際、フラッシュメモリ部15の空き領域を判断した後に書き込みを行う実施形態を例示する。
【0137】
図11(A)は、フラッシュメモリ部15の保存領域を説明する説明図である。図11に示すように、フラッシュメモリ部15の保存領域の構成を見ると、OS16等の保存領域、呼制御アプリケーション17の保存領域、局データ18の保存領域があり、この他に空きの保存領域が存在する。
【0138】
このとき、局データ18又は呼制御アプリケーション17をフラッシュメモリ部15に書き込む際、この書き込みを許容するためには、空きの保存領域の容量を考慮する必要がある。
【0139】
つまり、図11(B)に示すように、新たにフラッシュメモリ部15に書き込みを行う局データ18の保存領域の容量は、現在の局データ18の保存領域の容量に、現在の局データ18の空きの保存領域の容量を加えた範囲内であることが望ましい。この点については、呼制御プログラムの場合も同様である。
【0140】
そこで、第4の実施形態では、フラッシュメモリ部15に更新後の局データ18又は呼制御アプリケーション17を書き込む際に、空きの保存領域も判断する。
【0141】
書き込み制御部25は、第1〜第3の実施形態と同様の処理を行うと共に、フラッッ種メモリ部15への書き込みの際に、更新後の局データ18の保存領域の容量と、現在の局データ18の保存領域及び空き領域の容量とを比較して、その比較結果に応じて更新後の局データ18の書き込みをするか否かの判断を行う。
【0142】
そして、書き込み制御部25は、書き込みOKと判断した場合、更新後の局データ18をフラッシュメモリ部18に書き込み、そうでない場合、更新後の局データ18の書き込みを行わない。なお、書き込み制御部25は、呼制御アプリケーション17の場合も同様に行う。
【0143】
また、第3の実施形態ではフラッシュメモリ部15への書き込み終了後に、リブートなどを行う場合を説明したが、その場合でも、更新後の局データ18(又は呼制御アプリケーション17)をフラッシュメモリ部15に書き込んだ後にリブート等を行うため、更新後の局データ18等を担保することができる。つまり更新した最新の局データ(もしくは呼制御プログラム)をフラッシュメモリに記憶しつつ運用を継続ができる。
【0144】
この書き込み制御部25による判断方法としては、例えば、図12に示す判断テーブルを用いて行う。
【0145】
図12において、新たな呼制御アプリケーション17の保存領域の容量が、現在の呼制御プログラムの保存領域に空き領域を加えた保存領域の容量を超越する場合、書き込み制御部25は、新たな呼制御アプリケーション17のフラッシュメモリ部15への書き込みを行わない。
【0146】
一方、新たな呼制御アプリケーション17の保存領域の容量が、現在の呼制御プログラムの保存領域に空き領域を加えた保存領域の容量以下である場合、書き込み制御部25は、新たな呼制御アプリケーション17のフラッシュメモリ部15への書き込みを行う。
【0147】
局データ18の場合も同様に、新たな局データ18の保存領域の容量が、現在の局データ18の保存領域に空き領域を加えた保存領域の容量を超越する場合、書き込み制御部25は、新たな局データ18のフラッシュメモリ部15への書き込みを行わない。
【0148】
一方、新たな局データ18の保存領域の容量が、現在の局データ18の保存領域に空き領域を加えた保存領域の容量以下である場合、書き込み制御部25は、新たな局データ18のフラッシュメモリ部15への書き込みを行う。
【0149】
新たな局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に書き込みを行わない場合、RAMディスク部14上にキャッシュとして残る。しかし、再起動すると、その新たな局データ18及び呼制御アプリケーション17はフラッシュメモリ部15に保存されていないので、更新後の局データ18及び呼制御アプリケーション17を担保することはできない。つまり更新した最新の局データ(もしくは呼制御プログラム)で単に運用を継続する。
【0150】
こうすることで、フラッシュメモリ部15の空き容量があるときに適宜にRAMディスク部14上の内容がフラッシュメモリ部15上に反映され、書き込み・削除回数の限定されているフラッシュメモリ部15の寿命を延命することができる。
【0151】
例えば、WindowsなどのOSで、100MBの空き容量があるHDDに、300MBのファイルを書き込もうとするとき、300MBのうち100MB書き込みを行い101MBの書き込みを行うときにHDDの空き容量が無いという警告のポップアップウインドウが表示される。
【0152】
このとき、HDDでは100MBの空き容量に100MBを書き込み、(HDDの空き容量が無いという警告のポップアップウインドウを作業者に表示し)その後、書き込んだ100MBを削除する処理をする。HDDがSSDである場合も同じであるから、書き込み・削除回数が限定されているSSDの寿命が目減りしてしまう。
【0153】
しかし、第4の実施形態によれば、更新後の局データ18等の容量が、保存領域の容量を超えている場合には、その局データ18等の書き込み自体を行わないので、書き込み回数を減らすことができ、フラッシュメモリ部15の寿命を延命できる。
【0154】
(E)第5の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第5の実施形態を、図面を参照しながら説明する。
【0155】
第4の実施形態では、フラッシュメモリ部15への書き込みを行う際に、フラッシュメモリ部15の空き領域の容量を判断することとした。
【0156】
第5の実施形態では、第4の実施形態において、局データ18と呼制御アプリケーション17の双方が更新されたときに、フラッシュメモリ部15の空き領域に対し、局データ18と呼制御アプリケーション17の双方が書き込めるか否かの判断をし、書き込みをする実施形態を説明する。
【0157】
書き込み制御部25は、第1〜第4の実施形態で説明した処理の他に、更新後の局データ18と更新後の呼制御アプリケーション17の双方を、フラッシュメモリ部15に書き込む際に、更新後の局データ18及び呼制御プログラムの双方の容量と、それぞれの空き領域の容量とを比較して、これら更新後の局データ18及び呼制御プログラムの書き込みを行うかどうかを判断するものである。
【0158】
この書き込み制御部25の判断方法としては、例えば、図13に示す判断テーブルを用いて判断する。
【0159】
例えば、図3及び図4において、作業者により局データ18の更新が行われると、図3のステップS36から、図4のステップS41及びS42を経て、ステップS43に至る。このとき、ステップS43では、更新後の局データ18の容量が、フラッシュメモリ部15の空き領域の容量を超えるか又は容量以下であるかを判断し、所定時間の待ち状態となる。
【0160】
また、この待ち状態のあいだに、作業者により呼制御アプリケーション17の更新が行われると、図3のステップS36から、図4のステップS41及びS42を経て、ステップS43に至る。このときも、ステップS43では、呼制御アプリケーション17の容量が、フラッシュメモリ部15の空き領域の容量を用いた判断を行う。
【0161】
上記のような状況の場合、書き込み制御部25は、図13に示す判断テーブルを用いて判断を行う。
【0162】
例えば、図13に示すように、「新たな局データ18の容量が空き領域の容量以下」で「新たな呼制御アプリケーション17の容量が空き領域の容量以下」の場合は、新たな局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に書き込みを行う。つまり、更新した最新の局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に記憶しつつ運用を継続する。
【0163】
一方、「新たな局データ18の容量が空き領域の容量を超え」で「新たな呼制御アプリケーション17の容量が空き領域の容量を超える」の場合は、新たな局データ18及び呼制御アプリケーション17のフラッシュメモリ部15への書き込みは行わない。
【0164】
ところで、図13に示すように、例えば、「新たな呼制御アプリケーション17の容量が空き領域の容量を超え」の条件で、「新たな局データ17の容量が空き領域の容量以下」となる場合、新たな局データ17は、空き容量以下であるから書き込みが可能だが、ここではNGの判断をし、書き込みを行わない。逆に、
これは、交換機特有の理由があるからである。旧来のD60形自動交換機などのディジタル交換機は、交換用プログラムと局データが備えられ、これらにより電話の接続処理をしている。この交換用プログラムはプログラムごとに局データの構成が異なっている。なぜなら交換用プログラムのシステムデータで信号形式やサービス条件が決定し、信号形式やサービス条件が決定したこの交換用プログラムを含む局の局条件としてハード構成や課金条件や番号計画などを決定するものが局データだからである。
【0165】
交換用プログラムごとに局データの構成が異なるから、単に新たな局データを生成し、これを更新したとしても、交換用プログラムの信号形式やサービス条件に見合った構成の局データでなければ、この局データは交換用プログラムで利用できない。
【0166】
また、単に新たな交換用プログラムを生成し、これを更新したとしても、新たな交換用プログラムの信号形式やサービス条件に見合った構成の局データがなければ、この交換用プログラムは利用できない。つまり、交換用プログラムと局データは双方が利用できるものを対にしておく必要がある。
【0167】
したがって、第5の実施形態でも同様に、例えば図13の左の列の最上段から一つ下の段で「新たな呼制御プログラムが空き容量以上」の条件で、右から2列目の最上段から二つ下の段で「新たな局データが空き領域以下」となっている場合、新たな局データ18は空き容量以下であるから書き込みが可能だが、新たな呼制御アプリケーション17が空き容量以上なので、結局のところ新たな局データ18しか書き込めず、交換機1として動作できなくなる可能性が生じ得る。
【0168】
そのため、ここでは、局データ18及び呼制御アプリケーション17の書き込みを行わない。
【0169】
なお、ステップS43での待ち時間のあいだに、作業者による更新がないと第4の実施形態と同様の動作になる。
【0170】
また、図13で、NGの判断のときは書き込みを行わず、RAMディスク上にキャッシュとして残るのみである。書き込みを行いませんので装置が再起動すると更新した局データおよび呼制御プログラムは担保されない。つまり更新した最新の局データおよび呼制御プログラムで単に運用を継続する。
【0171】
(F)他の実施形態
(F−1)第1〜第5の実施形態では、局データ18の更新を契機に、RAMディスク部14上の更新後の局データ18の内容をフラッシュメモリ部15に書き込む動作を説明したが、更新後の呼制御アプリケーション17の更新動作についても、同様の処理によりフラッシュメモリ部15に書き込むことができる。
【0172】
(F−2)本発明は、アナログ電話に限定せず、IP電話等にも適用可能である。
【0173】
また、本発明は、交換機1のコンソールを経由した局データ18の更新、電話端末を経由した局データ18の更新、自動実行による局データ18の更新においても適用可能である。また、交換機1のコンソールについては、ローカルアクセス、リモートアクセスの別を問わない。
【0174】
(F−3)第1〜第5の実施形態で、局データ18をフラッシュメモリ部15(SSD)に更新すると同時に、交換機1において重要な情報となる、呼処理するごとにRAMディスク領域の課金情報のファイル(データ)の書き込み情報の内容もフラッシュメモリ部15(SSD)に反映するようにしてもよい。
【0175】
(F−4)第5の実施形態においては、呼制御アプリケーション17と局データ18の双方を判断しましたが、主装置が加入者データを記憶する場合は、呼制御アプリケーションと局データと加入者データの3つの書き込みが行えるか否かの判断をしてもよい。
【0176】
ここで、加入者データは加入者に対するサービス条件をいう。これは、呼制御アプリケーションが決定すると局データの構成が決定し、局データの構成が決定すると加入者データの構成が決定する関係にある。
【符号の説明】
【0177】
1…交換機、11…制御部、12…通信部、13…RAM部、14…RAMディスク部、
15…フラッシュメモリ部、16…OS、17…呼制御アプリケーション、
18…局データ、2−1〜2−n…電話端末、10…通話システム。
【技術分野】
【0001】
本発明は、呼制御装置、方法及びプログラムに関し、例えば、交換機のメインメモリで更新された呼制御情報(例えば、局データ、加入者データ等)及び呼制御アプリケーションを適宜に不揮発性メモリに記憶する呼制御装置、方法及びプログラムに適用し得るものである。
【背景技術】
【0002】
旧来の電子交換機では、交換システムで動作させる呼制御アプリケーション及び局データを、揮発性メモリに格納した状態で運用する構成をとるのが一般的である。
【0003】
電子交換機に電源を投入すると、呼制御アプリケーション及び局データが、不揮発性メモリから揮発性メモリに呼び込まれる。そのため、電子交換機の呼制御アプリケーション及び局データの更新を行う際に、運用中のデータ更新のための揮発性メモリへの更新作業と、次回の電子交換機の起動の際に読み出されることとなる不揮発性メモリへの更新作業の2つの更新作業が必要になる。
【0004】
また、現代の電子交換機として、揮発性メモリとしてのDIMM(Dual Inline Memory Module)や不揮発性メモリとしてのSSD(Solid State Drive)の採用、RAMディスクによる揮発性メモリ及び不揮発性メモリの管理方法の適用がある。
【0005】
現代の電子交換機においても、呼制御アプリケーション及び局データの更新の際には、揮発性メモリと不揮発性メモリとの双方の更新が必要である。
【0006】
例えば、特許文献1に記載の技術は、操作者が保守コンソールから交換機のメモリ書き込みプログラム及びメモリ読み出しプログラムを制御し、メモリから情報を出し入れするという技術が記載されている。
【0007】
さらに、現代の電子交換機の構成としては、例えば汎用的なPC/AT互換のMB(Main Bord)で外部記憶装置としてSSDを有し、メインメモリとしてDIMMを有するものが挙げられる。
【0008】
この場合、DIMM上にRAMディスクを形成し、DIMMを記憶装置のように扱える仮想ディスク(Virtual Disk)の技術が利用されることがある。ところが、RAMディスク領域は揮発性メモリ(DIMM)内に生成した仮装ディスク領域なので、例えば停電などにより交換機への給電が絶たれシステムダウンすると、RAMディスク上のデータは、交換機のリセットに伴い消去されるため、適宜、RAMディスクの内容をSSDに反映する必要がある。
【0009】
このRAMディスクに適用される仮想ディスクの技術としてEWF(Enhanced Write Filter)等が存在し、例えば特許文献2には、RAMディスクの内容をDMA転送で磁気ディスクに書き込む方法が示されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開平5−300229号公報
【特許文献2】特開平2−39342号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
ところで、汎用的なMBに、不揮発性メモリのSSDの記憶装置、揮発性メモリのDIMMのメモリを有し、DIMM上にRAMディスクを形成して動作する交換機において、電源が投入されOSが起動すると、例えばOS状態情報、OS起動ログ、ネットワークからのアクセスログ、呼制御アプリケーションの起動ログ、呼制御により発生する課金情報等を記憶するためにディスクI/Oが発生する。このディスクI/Oは、EWFの仕組みでRAMディスク領域に書き込み情報として保存される。
【0012】
また、例えばバグの修正や機能追加等のために作業者がSSD内に記憶されている呼制御アプリケーションをバージョンアップする場合や、例えば交換機の収容端末の増減に伴って局データを更新する場合にもディスクI/Oが行われ、ディスクI/OがEWFの仕組みでRAMディスク領域に書き込み情報として保存される。
【0013】
しかしながら、呼制御アプリケーション及び局データは、交換機として最低限必要な要素であり、直ちにSSDに記憶する必要がある。
【0014】
また、記憶装置として適用される不揮発性メモリのSSDは、その書き込み・削除回数に限界があるため(例えば10万回)、なるべくSSDへの書き込み・削除回数を減らし、SSDの寿命を延命させることが望まれる。
【0015】
そのため、呼制御アプリケーションと呼制御情報(例えば局データなど)が更新されたときに、RAMディスク領域に保存される不揮発性メモリに対する書き込み情報の内容が不揮発性メモリ上に反映させることができ、かつ、書き込み・削除回数が限定されている不揮発性メモリの寿命を延命させることができる呼制御装置、方法及びプログラムが求められている。
【課題を解決するための手段】
【0016】
第1の本発明の呼制御装置は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置において、(1)RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、(2)更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段を備えることを特徴とする。
【0017】
第2の本発明の呼制御方法は、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置の呼制御方法において、(1)更新検知処理手段が、RAMディスク領域の書き込み情報から呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理工程と、(2)書き込み処理手段が、更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理工程を有することを特徴とする。
【0018】
第3の本発明の呼制御プログラムは、揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を揮発性メモリにローディングして呼処理を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置を、(1)RAMディスク領域の書き込み情報から、呼処理により揮発性メモリにローディングされた呼制御アプリケーション及び又は呼制御情報を格納する不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、(2)更新検知処理手段の検知に基づいてRAMディスク領域の書き込み情報のうち呼制御アプリケーション及び又は呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段として機能させることを特徴とする。
【発明の効果】
【0019】
本発明によれば、呼制御アプリケーションと呼制御情報(例えば局データなど)が更新されたときに、RAMディスク領域に格納される書き込み情報の内容が不揮発性メモリ上に反映させることができ、かつ、書き込み・削除回数が限定されている不揮発性メモリの寿命を延命させることができる。
【図面の簡単な説明】
【0020】
【図1】第1〜第5の実施形態の交換機の内部構成を示す構成図である。
【図2】第1〜第5の実施形態の通話システムの構成を示す構成図である。
【図3】第1の実施形態の交換機において、フラッシュメモリ部への書き込み処理を示すフローチャートである。
【図4】第1の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図5】第1の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図6】フラッシュメモリ部への書き込み処理を説明する説明図である。
【図7】第2の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図8】第2の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図9】第3の実施形態の書き込み処理の機能部の構成を示すブロック図である。
【図10】第3の実施形態の交換機においてフラッシュメモリ部への書き込み処理示すフローチャートである。
【図11】フラッシュメモリ部の保存領域の構成と、局データ及び呼制御プログラムの書き換えとを説明する説明図である。
【図12】第4の実施形態のフラッシュメモリ部への書き込みを判断する判断テーブルの構成を示す構成図である。
【図13】第5の実施形態のフラッシュメモリ部への書き込みを判断する判断テーブルの構成を示す構成図である。
【発明を実施するための形態】
【0021】
(A)第1の実施形態
以下では、本発明の呼制御装置、方法及びプログラムの第1の実施形態について、図面を参照しながら説明する。
【0022】
第1の実施形態は、揮発性メモリ上にRAMディスク領域を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報(局データ、加入者データ等)を揮発性メモリにローディングして呼制御を行い、不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置に、本発明を適用する実施形態を説明する。
【0023】
(A−1)第1の実施形態の構成
図2は、第1の実施形態の通話システムの全体構成を示す全体構成図である。また、図1は、第1の実施形態の交換機の構成を示す構成図である。
【0024】
図2において、第1の実施形態の通話システム10は、交換機1、電話端末2−1〜2−n(nは正の整数)を有して構成される。
【0025】
図1において、第1の実施形態の交換機1は、制御部11、通信部12、RAM部13、フラッシュメモリ部15を少なくとも有して構成される。
【0026】
通信部12は、接続する通信回線との間で、所定の通信方式に従って情報の送受信を行うものである。通信部12の接続回線は、例えばアナログ回線、IP(インターネットプロトコル)回線、ディジタル回線、光回線等を適用することができ、又通信方式は、種々の方式を適用することができる。
【0027】
制御部11は、交換機1の呼制御機能を司るものであり、例えばCPU等が該当する。
【0028】
RAM部13は、揮発性メモリであり、DIMMを適用することができる。また、RAM部13は、メモリ領域上の一部にRAMディスク部14を形成するものである。
【0029】
RAMディスク部14は、フラッシュメモリ部15に対する書き込み情報を格納する領域である。
【0030】
フラッシュメモリ部15は、不揮発性メモリであり、例えばSSDを適用することができる。また、フラッシュメモリ部15は、制御部11の制御を受けて、RAMディスク部14に格納される書き込み情報の内容を保存するものである。さらに、フラッシュメモリ部15は、OS(オペレーティングシステム)16、呼制御アプリケーション17、局データ18を格納する。この呼制御アプリケーション17と局データ18を、制御部11がRAM13に呼び込み(ローディング)呼制御に利用する。
【0031】
OS16は、RAM部13上に生成されたRAMディスク部14を使用可能にするオペレーティングシステムであり、例えば、Microsoft(登録商標) Windows(登録商標) embeddedが適用できる。
【0032】
続いて、交換機1において、RAM部13にローディングされた呼制御アプリケーション17及び局データ18のいずれか又は両方を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知する場合に、その検知に基づいてRAMディスク部14の書き込み情報のうち呼制御アプリケーション17及び局データ18のいずれか又は両方の書き込み情報の内容を、フラッシュメモリ部15に書き込みを行う書き込み処理の機能部を説明する。
【0033】
なお、以下では、局データ18が更新された場合に、更新された局データ18をフラッシュメモリ部15に書き込む場合を例示するが、呼制御アプリケーション17の更新の場合も基本的には同様に機能する。
【0034】
図5は、RAMディスク部14の内容をフラッシュメモリ部15に書き込み行う書き込み処理を実現する機能部の構成を示すブロック図である。
【0035】
図5に示すように、第1の実施形態の書き込み処理を実現する機能部としては、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25がある。
【0036】
局データ更新検知部21は、呼制御の開始後に、RAMディスク部14に格納される書き込み情報から、RAM部13にローディングされた局データ18を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知することで局データ18が更新されたか否かを検知するものである。
【0037】
ここで、局データ18の更新検知方法としては、例えば、フラッシュメモリ部15に格納された局データ18のファイル名に対する書き込み情報を検知する方法等を適用することができる。このファイル名は、OS16がフラッシュメモリ部15をマウントした際のファイルシステムに基づくファイル名で、ファイルシステム中に存在するファイルの領域を特定する識別子である。また、ファイル名の表し方としては、単にファイル名を示す場合と、ファイルシステム中のディレクトリ構造を含めた絶対パス又は相対パスで示す場合が適用できる。
【0038】
また、局データ更新検知部21は、局データ18を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知するために、局データ18がローディングされるときに局データ18のファイル名を保持しておく。
【0039】
また、呼制御アプリケーション17の更新検知方法としては、上記のファイル名に対する書き込み情報を検知する方法に加え、例えば、呼制御アプリケーション18のバージョン変化を検知する方法等を適用することができる。この場合、局データ更新検知部21は、呼制御アプリケーション17を格納するフラッシュメモリ部15の領域に対する書き込み情報を検知するために、呼制御アプリケーション17がローディングされるときに呼制御アプリケーション17のファイル名又はバージョンを保持しておく。バージョンの情報は、呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージから受け取ることで取得できるものである。
【0040】
局データ呼び込み制御部22は、局データ更新検知部21が局データ18の更新を検知した場合に、呼制御アプリケーション17に対して、更新された局データ18を呼び込ませるものである。
【0041】
局データ復旧部23は、呼制御アプリケーション17が更新された局データ18を呼び込む際に、更新された局データ18の呼び込みが失敗したときに、それ以前の局データ18を復旧するものである。
【0042】
CPU使用率確認部24は、呼制御アプリケーション17により更新された局データ18の呼び込みが正常に行われた場合に、CPU使用率が閾値を超えているか否かを確認するものである。
【0043】
書き込み制御部25は、RAMディスク部14に格納されている内容を、フラッシュメモリ部15に書き込み制御するものである。
【0044】
ここで、後述するフラッシュメモリ部15(例えばSSD)は、書き込み制限が設けられている(例えば10万回)。従って、最新の呼制御アプリケーション17及び局データ18を正しくフラッシュメモリ部15に効率的かつ有効に保存するために、第1の実施形態の書き込み制御部25は、フラッシュメモリ部15への書き込み制限を掛けながら行う。
【0045】
書き込み制御部25は、例えば、Enhanced Write Filter(以下、EWFという)を利用する。このEWFは、Microsoft Windows embeddedのOSに特有の機能であり、OSランタイムイメージへの書き込み制限を行う機能である。
【0046】
これにより、RAM部13上のRAMディスク部14を保護パティーションに対する書き込み情報をリダイレクトする領域とし、RAMディスク部14に格納された書き込み情報をフラッシュメモリ部15の空き領域に格納することができる。つまり、リダイレクトする領域であるRAMディスク部14はEWFの仕組におけるオーバーレイの領域で、オーバーレイの領域にはディスクI/Oがリダイレクトされ書き込みI/O後のディスクの状態(I/O結果)を表すI/Oキャッシュ(ディスクイメージ)が保存される。したがって、このリダイレクトとはフラッシュメモリ部15に対するすべての書き込み情報をRAMディスク部14にキャッシュを格納し保存することである。
【0047】
そのため、図6に示すように、フラッシュメモリ部(SSD)15からのデータ読み込みや、RAMディスク部(オーバレイ)14へのデータ書き込み又は再読み込みが可能となる。再読み込みについては、RAMディスク部14に書き込み情報がある場合にはRAMディスク部14から書き込み情報に基づいて読み込みを行い、書き込み情報がない場合にはフラッシュメモリ部15から読み込みを行うことで再読込みを行う。
【0048】
また、RAMディスク部14は、揮発性メモリであるRAM部13上に形成された領域なので、リブートするとRAMディスク部14の格納内容は破棄される。
【0049】
さらに、第1の実施形態では、RAMディスク部14に格納される書き込み情報から局データ18の更新を検知し、更新した場合にフラッシュメモリ部15に書き込むようにし、直接フラッシュメモリ部15への書き込まれないようにしたので、フラッシュメモリ部15への書き込み回数を削減することができる。
【0050】
さらに、急な電源断(例えば、PKG抜去、交換機1の電源OFF等)に対してシステムを保護することができる。
【0051】
(A−2)第1の実施形態の動作
次に、第1の実施形態の交換機1において、RAMディスク部14の内容をフラッシュメモリ部15に書き込みを行う処理の動作を、図面を参照しながら説明する。
【0052】
以下では、図1において、最初に電話端末2−1及び電話端末2−2のみが交換機1と接続しており、その後新たに電話端末2−nが追加され、この追加に伴い局データ18を更新する場合を例示して説明する。
【0053】
なお、以下では、局データ18の更新の場合を例示するが、呼制御アプリケーション17の更新の場合にも基本的な処理は同様の処理で実現できる。
【0054】
ただし、図4のステップS41では、局データ18の場合と呼制御アプリケーション17の場合とで具体的な処理が異なるので、この点について後で詳細に説明する。
【0055】
図3は、第1の実施形態の交換機1における局データが更新されない場合の処理を示すフローチャートである。また、図4は、第1の実施形態の交換機1における局データの更新後の処理を示すフローチャートである。
【0056】
まず、交換機1に電源が投入されて起動すると、交換機1は呼制御を開始できるよう準備する。
【0057】
具体的には、交換機1において、OS16が起動し(ステップS31)、RAM部13の領域にRAMディスク部14が構築され(ステップS32)、呼制御アプリケーション17の起動(ステップS33)及び局データ18の呼び込み(ステップS34)が行われ、かかる後に呼制御を開始(ステップS35)する。ここで、OS16はRAMディスク部14を構築する機能を有しており、これを使用することでRAM部13の領域にRAMディスク部14を構築することができる。RAMディスク部14の構築後は、OS状態情報、OS起動ログ、ネットワークからのアクセスログ、呼制御アプリケーションの起動ログ、呼制御により発生する課金情報等を記憶するためのフラッシュメモリ部15に対する書き込みは、RAMディスク部14に書き込み情報として格納される。
ステップS36で、交換機1が電話端末2−1及び電話端末2−2間の呼制御を開始した後、局データ18の更新がない場合であって、交換機1においてシャットダウンした場合(ステップS37)、RAMディスク部14の内容をフラッシュメモリ部15に書き込み(ステップS38)、この書き込み終了後に、交換機1が停止する。
【0058】
ステップS38において、フラッシュメモリ部15への書き込みについては、OS16のシャットダウン処理の一環として実行されるため、書き込みの際には、CPU使用率は参照されない。このステップS38は、RAMディスク部14のすべての内容をフラッシュメモリ部15に書き込むものである。
【0059】
なお、ステップS36において局データの更新がなく、さらに交換機1がシャットダウンしない場合(ステップS37)には、通常の運用中であるとみなし、フラッシュメモリ部15への書き込みアクセスを行わない。
【0060】
ステップS36において、交換機1で呼制御が行われている状態で、局データ18が更新されたことを検出した際の動作について図4を参照しながら説明する。
【0061】
例えば、交換機1が新たに電話端末2−nを収容することに伴い、局データ18が更新されると(ステップS36)、ステップS41に遷移する。
【0062】
ここで、更新された局データ18はRAMディスク部14に書き込み情報として格納される。
【0063】
なお、ここでの事例では1台の電話端末の追加を例示しているが、長時間に亘る大容量の局データ18の更新作業を考慮して、局データ18の更新を検知した後に、一定時間待ち状態とし、この待ち状態の間に局データ18が更新されなかった場合に局データ18の更新作業が終了したとみなして処理ステップS41に遷移させるようにしてもよい。
【0064】
この場合、待ち状態の間に局データ18が更新された場合には、局データ18の更新作業が継続する可能性があると判断し、局データ18の更新作業が終了するまでステップS41への処理に遷移させることを保留させる。
【0065】
ステップS41では、呼制御アプリケーション17が、局データ18を正常に呼び込めることを確認する。そして、呼制御アプリケーション17が局データ18の呼び込みに成功した場合は前記局データ18をフラッシュメモリ部15に書き込み可能と判断し、ステップS42に遷移する。
【0066】
ここで、呼び込む局データ18は更新された局データ18であるから、呼制御アプリケーション17はRAMディスク部14の書き込み情報に基づいて再読み込みし、局データ18を呼び込む。
【0067】
なお、局データ18の呼び出し方法としては、例えば、更新されたデータのみを呼び込む方法(例えば、新たな電話端末2−nに関する局データ18のみを呼び出す方法等)、局データ18全体を呼び込む方法等を適用することができる。
【0068】
呼制御アプリケーション17が正常に局データ18を呼び込めない場合、ステップS37に遷移して通常の運用状態に戻り、RAMディスク部14の内容をフラッシュメモリ部15に書き込まないようにする(ステップS41)。
【0069】
ここで、上述したように、局データ18の呼び込みの正常性判断の具体的な方法と、呼制御アプリケーション17の呼び込みの正常性判断の具体的な方法とは異なるので、この点について詳細に説明する。
【0070】
(ア)局データ18の呼び込みの正常性判断の方法
呼制御アプリケーション17による局データ18の呼び込みの正常性判断の方法としては、次の2つのいずれか又は双方を適用することができる。なお、次の2つのいずれか又は双方を適用するか否かは予め交換機1に設定しておくことで実現できる。
【0071】
第1の方法は、呼制御アプリケーション17が局データ18を呼び込むためのルーチン(routine)のリターンコードで正常に呼び込めたか否かを判断する方法である。リターンコード0のとき正常に呼び込みができたことを示し、リターンコード1のとき正常に呼び込みができなかったことを示す。この場合、制御部11は、呼制御アプリケーションからリターンコードを受け取るインタフェースを有することが必要であり、このインタフェースを介して受け取ったリターンコードから判断することで実現できる。
【0072】
第2の方法は、呼制御アプリケーション17が局データ18を呼び込んだ結果、出力する自律メッセージにより正常に呼び込んだか否かを判断する方法である。呼制御アプリケーション17は、局データ18を呼び込んだ際、正常に呼び込めたか否かを自律メッセージに出力する。この自律メッセージはログファイルに出力される場合と、OSの標準出力に出力される場合とを適用できる。この場合、制御部11は、ログファイルにアクセスするインタフェース又は標準出力を受け取るインタフェースを有することが必要であり、制御部11がログの内容から正常に呼び込めたか否かを判断する。具体的には、制御部11はログの内容から、自律メッセージのタイプが通常メッセージであることを示す「#・・」を検索できた場合、局データ18のローディングが成功して出力されていることを判断し、局データ18を正常に呼び込めたものと判断し、通常メッセージを示す「#・・」を検索できなかった場合、局データ18のローディングが成功して出力されていないと判断し、局データ18の呼び込みが正常でないと判断することができる。
【0073】
ここで、自律メッセージには、例えば、重要度により最緊急メッセージ、緊急メッセージ、エラーメッセージおよび通常メッセージの4つのタイプがある。
【0074】
例えば、最緊急メッセージはメッセージの冒頭に「***」が付与されるもので、呼制御アプリケーションのシステム動作確認により装置のハード及びソフトを含めて障害の状態と検出し、呼処理を再開できないシステムダウンの状態を示すものである。緊急メッセージはメッセージの冒頭に「**・」が付与されるもので、呼制御アプリケーションのシステム動作確認は行っていないが装置が故障の状態であり、故障状態で強制的に呼処理を継続しシステムダウンに至る恐れがある状態を示すものである。エラーメッセージはメッセージの冒頭に「*・・」が付与されるもので、呼処理エラーやプログラムエラーの状態を示すものである。通常メッセージはメッセージの冒頭に「#・・」が付与されるもので、局データのローディングの成功、回線接続成功、PKG挿抜、PKG制御などの状態を示すものである。
【0075】
なお、第1の実施形態では、第1の方法により、制御部11が、呼制御アプリケーション17による局データ18の呼び込みが正常に行われたことを判断する場合を示す。
【0076】
また、呼制御アプリケーション17が局データ18の呼び込みに失敗した場合、その局データ18を以前の局データ18に復旧するようにしても良い。
【0077】
この局データ18の復旧方法としては、例えば、フラッシュメモリ部15から局データ18を再度RAM部13に呼び込んで復旧する方法を適用したりRAM部13で以前の局データ18を保持しておき、新しい局データ18の呼び出しに失敗した場合に、その更新前の局データ18に切り戻す方法等を適用することができる。
【0078】
(イ)呼制御アプリケーションデータ17の呼び込みの正常性判断の方法
呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージにより正常に呼び込めたか否かを判断する方法である。呼制御アプリケーション17は、自身が呼び込まれた際、呼び込みにより自身が障害や異常を検出すると自律メッセージに出力する。この自律メッセージはログファイルに出力される場合と、OSの標準出力に出力される場合とを適用できる。この場合、制御部11は、ログファイルにアクセスするインタフェース又は標準出力を受け取るインタフェースを有することが必要であり、制御部11がログの内容から正常に呼び込めたか否かを判断する。具体的には、交換機1で呼制御アプリケーション17を呼び込み障害や異常を検出せず呼処理をし、更新により新たな呼制御アプリケーション17を呼び込み障害や異常を検出し自律メッセージに出力すれば、新たな呼制御アプリケーション17は正常でないと判断できる。
【0079】
したがって、制御部11はログの内容から、「***」を検索し自律メッセージの最緊急メッセージが出力されていないことを判断することで障害や異常あるか否かを判断することができる。
【0080】
ステップS42では、交換機1のCPU使用率がある閾値以下になった時点で、RAMディスク部14に保存される書き込み情報の内容をフラッシュメモリ部15に書き込めるようにし(ステップS43)、ステップS37に遷移する。
【0081】
ステップS42を実行する時点でのCPU使用率が閾値より大きい場合、再度ステップS42に遷移し、CPU使用率が閾値を下回るまで待つ。
【0082】
ここで、CPU使用率の閾値の決定方法としては、交換機1の環境に応じて適宜決定することができるが、例えばWindows(登録商標)をOSに使用する場合においては、CPU使用率を80%以内の状態でコンピュータを動作させることを推奨することがあり、この推奨値からの猶予を見て、閾値を70%とする。他のOSによるRAMディスク部14からフラッシュメモリ部15への書き込み処理においても、同様にして閾値を決定することが可能であり、70%以外の値を設定可能であることは当然である。
【0083】
ステップS43で、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込めるようにしてステップS37に遷移し、交換機1が通常の動作をすれば、RAMディスク部14の内容が、フラッシュメモリ部15に書き込まれる。このステップS43は、RAMディスク部14に格納される書き込み情報のうち更新された局データ18の書き込み情報の内容をフラッシュメモリ部15に書き込むものである。
【0084】
なお、ステップS36の局データ18の更新の検知で、フラッシュメモリ部15に格納された局データ18のファイル名に対する書き込み情報を検知するので、ステップS43の書き込みの際、RAMディスク部14に格納される書き込み情報のうち更新された局データ18に関わる書き込み情報とそれ以外の書き込み情報を区別できるものである。
【0085】
(A−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、フラッシュメモリ部15に更新後の局データ18以外を書き込まない制限をしつつ、局データ18の更新要求のみで、RAMディスク部14に対してのみならず、フラッシュメモリ部15に対して更新後の局データ18を保存することができる。
【0086】
これにより、局データ18の更新手順の簡素化、局データ18のフラッシュメモリ部15への更新漏れの防止、交換機1の故障によるRAMディスク部14の局データ18の消失に対する救済策の提供が可能となる。
【0087】
(B)第2の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第2の実施形態について図面を参照しながら説明する。
【0088】
第1の実施形態では、局データ(又は呼制御アプリケーション)の更新があった場合に、局データの呼び込みが正常に行えたか否かを判断した後に、RAMディスク部に格納される書き込み情報の内容をフラッシュメモリ部に書き込む実施形態を例示した。
【0089】
しかしながら、更新後の局データのシンタックスが正常であるために、呼制御アプリケーションが呼び込みに成功できたとしても、実際の交換システムで正しく動作する保証は必ずしもない。
【0090】
このような場合に、フラッシュメモリ部15への書き込みを許容すると、正しく動作し得ない局データをフラッシュメモリ部15に保存することになる。また、この余分な書き込み作業により書き込み回数を消費することにもなる。
【0091】
そこで、第2の実施形態は、局データの更新があった場合に、呼制御に成功したか否かを判断した後に、RAMディスク部に格納される書き込み情報の内容をフラッシュメモリ部に書き込む実施形態を例示する。
【0092】
(B−1)第2の実施形態の構成
第2の実施形態が第1の実施形態の構成と異なる点は、フラッシュメモリ部15への書き込み処理を実現する機能部である。そこで、第2の実施形態では、この書き込み処理の機能部の構成について詳細に説明し、第1の実施形態で既に説明した構成の説明については省略する。
【0093】
図7は、第2の実施形態のフラッシュメモリ部15への書き込みを行う書き込み処理の機能部の構成を示す構成図である。図7において、第2の実施形態の書き込み処理機能部は、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、呼制御確認部26、呼制御エラー発生状況確認部27、異常通知部28、書き込み制御部25を有する。
【0094】
なお、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25は、第1の実施形態で説明した機能と同じであるので、ここでの説明を省略する。
【0095】
呼制御確認部26は、局データ18又は呼制御アプリケーション17が更新された後、当該交換機1がその更新された局データ18を用いて呼制御を行い、その呼制御が成功するか否かを確認するものである。
【0096】
呼制御エラー発生状況確認部27は、呼制御確認部26により呼制御が失敗したと判断した場合に、局データ18又は呼制御アプリケーション17の更新から現時点までの呼制御エラーの発生状況を確認するものである。
【0097】
異常通知部28は、呼制御のエラーが頻繁に発生するような場合に、交換機1の作業者に対し、更新後の局データ18又は呼制御アプリケーション17に異常があったこと、かかる異常に付随するエラーログ、更新後の局データ18又は呼制御アプリケーション17のフラッシュメモリ部15への書き込みが行われないこと、局データ18又は呼制御アプリケーション17への更新を破棄する旨のいずれか又はこれらを組み合わせた情報を通知するものである。エラーログの情報は、呼制御アプリケーション17を呼び込んだ結果、出力する自律メッセージから受け取ることで取得できるものである。
【0098】
(B−2)第2の実施形態の動作
次に、第2の実施形態の交換機1において、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込みを行う書き込み処理の動作を図面を参照しながら説明する。
【0099】
第2の実施形態は、局データ18の更新後の処理が第1の実施形態と異なる。従って、局データ18が更新されない場合の処理(図3に示す処理)は、第1の実施形態と同じであるので、ここでの再度の説明は省略する。
【0100】
なお、局データ18の更新の場合を例示するが、呼制御アプリケーション17の更新の場合を同様にして適用できる。
【0101】
図8は、第2の実施形態の局データの更新後の処理を示すフローチャートである。
【0102】
まず、交換機1において呼制御の開始後、局データ18が更新するとステップS51に遷移する。
【0103】
ステップS51では、呼制御アプリケーション17が更新後の局データ18を呼び込むことにより、更新後の局データ18の正常性を確認すると(ステップS51)、呼制御アプリケーション17は、更新後の局データ18を使用して呼制御の実行を待つ(ステップS52)。
【0104】
ステップS52において、例えば交換機1が電話端末2−nからの通話要求を受信する場合に、その呼制御が成功したとき、制御部11は、CPU使用率が閾値以下であるか否かを確認して閾値以下であれば(ステップS55)、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込む(ステップS56)。
【0105】
ここで、実際の交換システム10の運用における呼制御確認のタイミングとしては、例えば、保守作業の確認時としても良いし、局データ18の更新後に最初のオペレータが発呼するタイミングとしても良い。すなわち、必ずしもリアルタイムに呼制御の確認を行う必要はない。
【0106】
一方、ステップS52では、例えば、着信先の無応答や着信先の話中といった発呼のタイミングにより解決可能な呼制御エラーや、また例えば、更新後の局データ18の内容と電話端末情報の相違の存在や、呼制御アプリケーション17やOS16の不具合といった、交換機1に起因する呼制御エラーが発生し得る。このような呼制御に関するエラーが生じた場合、呼制御に失敗したとして、ステップS53に遷移する。
【0107】
ステップS53では、局データ18の更新後から現時点までの、呼制御エラーの発生状況を確認する(ステップS53)。
【0108】
ここで、呼制御エラーの発生状況の確認としては、例えば、過去のエラー発生回数が少ない(閾値以下である場合)又はエラー発生頻度が低い(閾値以下である場合)には、直近の呼制御エラーは一時的な事象であるとみなし、ステップS52に遷移し、処理を繰り返す。
【0109】
一方、過去の呼制御エラー発生回数が多い(閾値を超えている場合)又はエラー発生頻度が高い(閾値を超えている場合)、直近の局データ18の更新により呼制御を正常に行えなくなったとみなし、ステップS54に遷移する。
【0110】
ここで、ステップS53におけるエラー発生状況の確認方法としては、種々の方法を適用できるが、例えば、所定時間の間に、所定回数以上の呼制御エラーが発生しているかどうかを確認する方法や、同種類の呼制御エラーが所定回数以上発生しているか否かを確認する方法や、ステップS52における全ての呼制御エラーが所定回数以上発生しているかどうかを確認する方法を適用することができる。
【0111】
なお、ステップS53からステップS54に遷移する場合には、制御部11は、交換機1の作業者に対し、更新後の局データ18に異常があったこと、かかる異常に付随するエラーログ、更新後の局データ18のフラッシュメモリ部15への書き込みが行われないこと、及び又は、局データ18への更新を破棄する旨を通知するようにしてもよい。
【0112】
ステップS54では、直近の局データ18の更新を破棄し、更新直前の局データ18にロールバックして、図3のステップS37に遷移する(ステップS54)。
【0113】
このように、呼制御が正常に行われた後に、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込むようにしたので、呼制御を正常に行えない局データ18をフラッシュメモリ部15に書き込むことを防ぐことができる。
【0114】
また、局データ18の更新により呼制御が正常に行われなくなった場合であっても、過去の正常に動作することを保証された局データ18への回復及び回復後の局データ18を用いた交換機1の稼動、及び交換機1が稼動状態に復帰可能であることにより、局データ18の更新の失敗後であっても、局データ18に対する新たなデータ更新を受理することが可能となる。
【0115】
(B−3)第2の実施形態の効果
以上のように、第2の実施形態では、第1の実施形態により得られる効果に加えて、実際に呼制御が可能な局データ18のみをRAMディスク部14の書き込み情報の内容からフラッシュメモリ部15に書き込むことが可能になった。
【0116】
これにより、交換機1として正常に動作する局データ18のみを選別してフラッシュメモリ部15に書き込むことが可能になる。
【0117】
さらに、第2の実施形態によれば、呼制御に供することができない局データのフラッシュメモリ部15への書き込み処理による、フラッシュメモリ部15の書き込み回数の延命が可能になる。
【0118】
(C)第3の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第3の実施形態について図面を参照しながら説明する。
【0119】
第3の実施形態は、局データの更新があるときに、直ちにフラッシュメモリ部15に書き込みをした後にシステムを再起動又はシャットダウンする実施形態を例示して説明する。
【0120】
(C−1)第3の実施形態の構成
第3の実施形態が第1の実施形態の構成と異なる点は、フラッシュメモリ部15への書き込みを行う書き込み処理の機能部の構成であるので、以下では、第3の実施形態の書き込み処理機能部の構成を詳細に説明し、第1の実施形態で既に説明した構成の説明については省略する。
【0121】
図9は、第3の実施形態の書き込み処理の機能部の構成を示す構成図である。図9において、第3の実施形態の書き込み機能部は、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25、再起動部29を有する。
【0122】
なお、局データ更新検知部21、局データ呼び込み制御部22、局データ復旧部23、CPU使用率確認部24、書き込み制御部25は、第1の実施形態で説明した機能と同じであるので、ここでの説明を省略する。
【0123】
再起動部29は、局データ18の更新があるときに、直ちにフラッシュメモリ部15に書き込みをした後にシステムを再起動又はシャットダウンするものである。
【0124】
(C−2)第3の実施形態の動作
次に、第3の実施形態の交換機1において、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込みを行う書き込み処理の動作を、図面を参照しながら説明する。
【0125】
図10は、第3の実施形態の交換機1における処理を示すフローチャートである。図10において、図3に示す処理と同一の処理については、同一の番号を付与する。
【0126】
交換機1においてOSが起動し、呼制御が開始した後(ステップS31〜S35)、呼制御アプリケーション17は、局データ18の更新を監視し、局データ18の更新がない限り、通常の交換機1を運用する(ステップS61)。
【0127】
ステップS61において、局データ18の更新処理が検知されると、ステップS62に遷移する。ステップS62では、RAMディスク部14に格納される書き込み情報の内容が、フラッシュメモリ部15に書き込まれる(ステップS62)。
【0128】
なお、局データ18の更新検知方法や、局データ18のフラッシュメモリ部15への書き込み方法は、第1の実施形態と同様の処理を適用できる。
【0129】
また、ステップS61からステップS62に遷移する前に、第1又は第2の実施形態で説明した処理を適用することができる。
【0130】
つまり、制御部11において監視しているCPU使用率が閾値を下回るまで待機させることも可能であること(図4におけるステップS42の挿入)、呼制御アプリケーション17が更新後の局データ18を呼び込み、かかる呼び込みが成功した場合にのみステップS62に遷移し、RAMディスク部14に格納された局データ18をフラッシュメモリ部15に書き込むことも可能であること(図4におけるステップS41の挿入)、および実際の呼制御が成功した場合にのみステップS62に遷移し、RAMディスク部14に格納された局データ18をフラッシュメモリ部15に書き込むことも可能であること(図8におけるステップS52の挿入)は当然である。
【0131】
次に、ステップS63では、RAMディスク部14に格納された局データ18のフラッスメモリ部15への書き込み処理の終了後に、OS16は交換機1をシャットダウン又はリブートする。
【0132】
このように、OS16がシャットダウン又はリブートすることにより、RAMディスク部14を開放し、起動時に再度構築することで、RAMディスク部14のクリーンアップを行い、新たな局データ18をローディングした呼制御アプリケーション17で呼制御を行うことができる。
【0133】
また、交換機1がリブートされた場合、ステップS31に遷移し、再度呼制御を提供できる状態となる。
【0134】
(C−3)第3の実施形態の効果
以上のように、第3の実施形態によれば、第1の実施形態の効果に加えて、更新された局データをフラッシュメモリ部15に書き込みした後に、OSが再起動することにより、再度RAMディスク部14をクリーンアップして再構築することができ、新たな局データ18で呼制御を行うことができる。
【0135】
(D)第4の実施形態
次の本発明の呼制御装置、方法及びプログラムの第4の実施形態を、図面を参照しながら説明する。
【0136】
第4の実施形態は、RAMディスク部14に格納される書き込み情報の内容をフラッシュメモリ部15に書き込む際、フラッシュメモリ部15の空き領域を判断した後に書き込みを行う実施形態を例示する。
【0137】
図11(A)は、フラッシュメモリ部15の保存領域を説明する説明図である。図11に示すように、フラッシュメモリ部15の保存領域の構成を見ると、OS16等の保存領域、呼制御アプリケーション17の保存領域、局データ18の保存領域があり、この他に空きの保存領域が存在する。
【0138】
このとき、局データ18又は呼制御アプリケーション17をフラッシュメモリ部15に書き込む際、この書き込みを許容するためには、空きの保存領域の容量を考慮する必要がある。
【0139】
つまり、図11(B)に示すように、新たにフラッシュメモリ部15に書き込みを行う局データ18の保存領域の容量は、現在の局データ18の保存領域の容量に、現在の局データ18の空きの保存領域の容量を加えた範囲内であることが望ましい。この点については、呼制御プログラムの場合も同様である。
【0140】
そこで、第4の実施形態では、フラッシュメモリ部15に更新後の局データ18又は呼制御アプリケーション17を書き込む際に、空きの保存領域も判断する。
【0141】
書き込み制御部25は、第1〜第3の実施形態と同様の処理を行うと共に、フラッッ種メモリ部15への書き込みの際に、更新後の局データ18の保存領域の容量と、現在の局データ18の保存領域及び空き領域の容量とを比較して、その比較結果に応じて更新後の局データ18の書き込みをするか否かの判断を行う。
【0142】
そして、書き込み制御部25は、書き込みOKと判断した場合、更新後の局データ18をフラッシュメモリ部18に書き込み、そうでない場合、更新後の局データ18の書き込みを行わない。なお、書き込み制御部25は、呼制御アプリケーション17の場合も同様に行う。
【0143】
また、第3の実施形態ではフラッシュメモリ部15への書き込み終了後に、リブートなどを行う場合を説明したが、その場合でも、更新後の局データ18(又は呼制御アプリケーション17)をフラッシュメモリ部15に書き込んだ後にリブート等を行うため、更新後の局データ18等を担保することができる。つまり更新した最新の局データ(もしくは呼制御プログラム)をフラッシュメモリに記憶しつつ運用を継続ができる。
【0144】
この書き込み制御部25による判断方法としては、例えば、図12に示す判断テーブルを用いて行う。
【0145】
図12において、新たな呼制御アプリケーション17の保存領域の容量が、現在の呼制御プログラムの保存領域に空き領域を加えた保存領域の容量を超越する場合、書き込み制御部25は、新たな呼制御アプリケーション17のフラッシュメモリ部15への書き込みを行わない。
【0146】
一方、新たな呼制御アプリケーション17の保存領域の容量が、現在の呼制御プログラムの保存領域に空き領域を加えた保存領域の容量以下である場合、書き込み制御部25は、新たな呼制御アプリケーション17のフラッシュメモリ部15への書き込みを行う。
【0147】
局データ18の場合も同様に、新たな局データ18の保存領域の容量が、現在の局データ18の保存領域に空き領域を加えた保存領域の容量を超越する場合、書き込み制御部25は、新たな局データ18のフラッシュメモリ部15への書き込みを行わない。
【0148】
一方、新たな局データ18の保存領域の容量が、現在の局データ18の保存領域に空き領域を加えた保存領域の容量以下である場合、書き込み制御部25は、新たな局データ18のフラッシュメモリ部15への書き込みを行う。
【0149】
新たな局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に書き込みを行わない場合、RAMディスク部14上にキャッシュとして残る。しかし、再起動すると、その新たな局データ18及び呼制御アプリケーション17はフラッシュメモリ部15に保存されていないので、更新後の局データ18及び呼制御アプリケーション17を担保することはできない。つまり更新した最新の局データ(もしくは呼制御プログラム)で単に運用を継続する。
【0150】
こうすることで、フラッシュメモリ部15の空き容量があるときに適宜にRAMディスク部14上の内容がフラッシュメモリ部15上に反映され、書き込み・削除回数の限定されているフラッシュメモリ部15の寿命を延命することができる。
【0151】
例えば、WindowsなどのOSで、100MBの空き容量があるHDDに、300MBのファイルを書き込もうとするとき、300MBのうち100MB書き込みを行い101MBの書き込みを行うときにHDDの空き容量が無いという警告のポップアップウインドウが表示される。
【0152】
このとき、HDDでは100MBの空き容量に100MBを書き込み、(HDDの空き容量が無いという警告のポップアップウインドウを作業者に表示し)その後、書き込んだ100MBを削除する処理をする。HDDがSSDである場合も同じであるから、書き込み・削除回数が限定されているSSDの寿命が目減りしてしまう。
【0153】
しかし、第4の実施形態によれば、更新後の局データ18等の容量が、保存領域の容量を超えている場合には、その局データ18等の書き込み自体を行わないので、書き込み回数を減らすことができ、フラッシュメモリ部15の寿命を延命できる。
【0154】
(E)第5の実施形態
次に、本発明の呼制御装置、方法及びプログラムの第5の実施形態を、図面を参照しながら説明する。
【0155】
第4の実施形態では、フラッシュメモリ部15への書き込みを行う際に、フラッシュメモリ部15の空き領域の容量を判断することとした。
【0156】
第5の実施形態では、第4の実施形態において、局データ18と呼制御アプリケーション17の双方が更新されたときに、フラッシュメモリ部15の空き領域に対し、局データ18と呼制御アプリケーション17の双方が書き込めるか否かの判断をし、書き込みをする実施形態を説明する。
【0157】
書き込み制御部25は、第1〜第4の実施形態で説明した処理の他に、更新後の局データ18と更新後の呼制御アプリケーション17の双方を、フラッシュメモリ部15に書き込む際に、更新後の局データ18及び呼制御プログラムの双方の容量と、それぞれの空き領域の容量とを比較して、これら更新後の局データ18及び呼制御プログラムの書き込みを行うかどうかを判断するものである。
【0158】
この書き込み制御部25の判断方法としては、例えば、図13に示す判断テーブルを用いて判断する。
【0159】
例えば、図3及び図4において、作業者により局データ18の更新が行われると、図3のステップS36から、図4のステップS41及びS42を経て、ステップS43に至る。このとき、ステップS43では、更新後の局データ18の容量が、フラッシュメモリ部15の空き領域の容量を超えるか又は容量以下であるかを判断し、所定時間の待ち状態となる。
【0160】
また、この待ち状態のあいだに、作業者により呼制御アプリケーション17の更新が行われると、図3のステップS36から、図4のステップS41及びS42を経て、ステップS43に至る。このときも、ステップS43では、呼制御アプリケーション17の容量が、フラッシュメモリ部15の空き領域の容量を用いた判断を行う。
【0161】
上記のような状況の場合、書き込み制御部25は、図13に示す判断テーブルを用いて判断を行う。
【0162】
例えば、図13に示すように、「新たな局データ18の容量が空き領域の容量以下」で「新たな呼制御アプリケーション17の容量が空き領域の容量以下」の場合は、新たな局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に書き込みを行う。つまり、更新した最新の局データ18及び呼制御アプリケーション17を、フラッシュメモリ部15に記憶しつつ運用を継続する。
【0163】
一方、「新たな局データ18の容量が空き領域の容量を超え」で「新たな呼制御アプリケーション17の容量が空き領域の容量を超える」の場合は、新たな局データ18及び呼制御アプリケーション17のフラッシュメモリ部15への書き込みは行わない。
【0164】
ところで、図13に示すように、例えば、「新たな呼制御アプリケーション17の容量が空き領域の容量を超え」の条件で、「新たな局データ17の容量が空き領域の容量以下」となる場合、新たな局データ17は、空き容量以下であるから書き込みが可能だが、ここではNGの判断をし、書き込みを行わない。逆に、
これは、交換機特有の理由があるからである。旧来のD60形自動交換機などのディジタル交換機は、交換用プログラムと局データが備えられ、これらにより電話の接続処理をしている。この交換用プログラムはプログラムごとに局データの構成が異なっている。なぜなら交換用プログラムのシステムデータで信号形式やサービス条件が決定し、信号形式やサービス条件が決定したこの交換用プログラムを含む局の局条件としてハード構成や課金条件や番号計画などを決定するものが局データだからである。
【0165】
交換用プログラムごとに局データの構成が異なるから、単に新たな局データを生成し、これを更新したとしても、交換用プログラムの信号形式やサービス条件に見合った構成の局データでなければ、この局データは交換用プログラムで利用できない。
【0166】
また、単に新たな交換用プログラムを生成し、これを更新したとしても、新たな交換用プログラムの信号形式やサービス条件に見合った構成の局データがなければ、この交換用プログラムは利用できない。つまり、交換用プログラムと局データは双方が利用できるものを対にしておく必要がある。
【0167】
したがって、第5の実施形態でも同様に、例えば図13の左の列の最上段から一つ下の段で「新たな呼制御プログラムが空き容量以上」の条件で、右から2列目の最上段から二つ下の段で「新たな局データが空き領域以下」となっている場合、新たな局データ18は空き容量以下であるから書き込みが可能だが、新たな呼制御アプリケーション17が空き容量以上なので、結局のところ新たな局データ18しか書き込めず、交換機1として動作できなくなる可能性が生じ得る。
【0168】
そのため、ここでは、局データ18及び呼制御アプリケーション17の書き込みを行わない。
【0169】
なお、ステップS43での待ち時間のあいだに、作業者による更新がないと第4の実施形態と同様の動作になる。
【0170】
また、図13で、NGの判断のときは書き込みを行わず、RAMディスク上にキャッシュとして残るのみである。書き込みを行いませんので装置が再起動すると更新した局データおよび呼制御プログラムは担保されない。つまり更新した最新の局データおよび呼制御プログラムで単に運用を継続する。
【0171】
(F)他の実施形態
(F−1)第1〜第5の実施形態では、局データ18の更新を契機に、RAMディスク部14上の更新後の局データ18の内容をフラッシュメモリ部15に書き込む動作を説明したが、更新後の呼制御アプリケーション17の更新動作についても、同様の処理によりフラッシュメモリ部15に書き込むことができる。
【0172】
(F−2)本発明は、アナログ電話に限定せず、IP電話等にも適用可能である。
【0173】
また、本発明は、交換機1のコンソールを経由した局データ18の更新、電話端末を経由した局データ18の更新、自動実行による局データ18の更新においても適用可能である。また、交換機1のコンソールについては、ローカルアクセス、リモートアクセスの別を問わない。
【0174】
(F−3)第1〜第5の実施形態で、局データ18をフラッシュメモリ部15(SSD)に更新すると同時に、交換機1において重要な情報となる、呼処理するごとにRAMディスク領域の課金情報のファイル(データ)の書き込み情報の内容もフラッシュメモリ部15(SSD)に反映するようにしてもよい。
【0175】
(F−4)第5の実施形態においては、呼制御アプリケーション17と局データ18の双方を判断しましたが、主装置が加入者データを記憶する場合は、呼制御アプリケーションと局データと加入者データの3つの書き込みが行えるか否かの判断をしてもよい。
【0176】
ここで、加入者データは加入者に対するサービス条件をいう。これは、呼制御アプリケーションが決定すると局データの構成が決定し、局データの構成が決定すると加入者データの構成が決定する関係にある。
【符号の説明】
【0177】
1…交換機、11…制御部、12…通信部、13…RAM部、14…RAMディスク部、
15…フラッシュメモリ部、16…OS、17…呼制御アプリケーション、
18…局データ、2−1〜2−n…電話端末、10…通話システム。
【特許請求の範囲】
【請求項1】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置において、
上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、
上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段と
を備えることを特徴とする呼制御装置。
【請求項2】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報の正常性を確認した後に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項1に記載の呼制御装置。
【請求項3】
上記書き込み処理手段が、さらに当該呼制御装置のCPU使用率が閾値以下である場合に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項2に記載の呼制御装置。
【請求項4】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報を用いた呼制御処理が成功した後に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項1〜3のいずれかに記載の呼制御装置。
【請求項5】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報を用いた呼制御処理が失敗した場合、更新前の上記呼制御アプリケーション及び又は上記呼制御情報を復旧させ、これを用いて再開させることを特徴とする請求項4に記載の呼制御装置。
【請求項6】
上記書き込み処理手段が、更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込み後、直ちに再起動を行う請求項1〜5のいずれかに記載の呼制御装置。
【請求項7】
上記書き込み処理手段が、上記不揮発性メモリに書き込みを行う前に、更新された上記呼制御アプリケーション又は上記呼制御情報の容量と、上記不揮発性メモリ上の空き領域の容量とを比較して保存領域の容量以下の場合に、上記不揮発性メモリへの書き込みを許容することを特徴とする請求項1〜6のいずれかに記載の呼制御装置。
【請求項8】
上記書き込み処理手段が、更新された上記呼制御アプリケーションと上記呼制御情報との双方を上記不揮発性メモリに書き込みを行う前に、更新された上記呼制御アプリケーションの容量と空き領域の容量との比較、及び、更新された上記呼制御情報の容量と空き領域の容量との比較により、上記不揮発性メモリへの書き込みをするか否かを判断することを特徴とする請求項1〜7のいずれかに記載の呼制御装置。
【請求項9】
上記書き込み処理手段が、更新された上記呼制御アプリケーション又は上記呼制御情報のいずれかの容量が空き領域の容量以下であっても、更新された上記呼制御情報又は上記呼制御アプリケーションが空き領域を超越している場合、上記不揮発性メモリへの書き込みを抑制することを特徴とする請求項8に記載の呼制御装置。
【請求項10】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報を上記RAMディスク領域に格納する呼制御装置の呼制御方法において、
更新検知処理手段が、上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理工程と、
書き込み処理手段が、上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の上記不揮発性メモリへの書き込みを行う書き込み処理工程と
を有することを特徴とする呼制御方法。
【請求項11】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報を上記RAMディスク領域に格納する呼制御装置を、
上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段、
上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の上記不揮発性メモリへの書き込みを行う書き込み処理手段
として機能させることを特徴とする呼制御プログラム。
【請求項1】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報をRAMディスク領域に格納する呼制御装置において、
上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段と、
上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の不揮発性メモリへの書き込みを行う書き込み処理手段と
を備えることを特徴とする呼制御装置。
【請求項2】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報の正常性を確認した後に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項1に記載の呼制御装置。
【請求項3】
上記書き込み処理手段が、さらに当該呼制御装置のCPU使用率が閾値以下である場合に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項2に記載の呼制御装置。
【請求項4】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報を用いた呼制御処理が成功した後に、その更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込みを行うことを特徴とする請求項1〜3のいずれかに記載の呼制御装置。
【請求項5】
上記書き込み処理手段は、更新された上記呼制御アプリケーション及び又は上記呼制御情報を用いた呼制御処理が失敗した場合、更新前の上記呼制御アプリケーション及び又は上記呼制御情報を復旧させ、これを用いて再開させることを特徴とする請求項4に記載の呼制御装置。
【請求項6】
上記書き込み処理手段が、更新された上記呼制御アプリケーション及び又は上記呼制御情報の上記不揮発性メモリへの書き込み後、直ちに再起動を行う請求項1〜5のいずれかに記載の呼制御装置。
【請求項7】
上記書き込み処理手段が、上記不揮発性メモリに書き込みを行う前に、更新された上記呼制御アプリケーション又は上記呼制御情報の容量と、上記不揮発性メモリ上の空き領域の容量とを比較して保存領域の容量以下の場合に、上記不揮発性メモリへの書き込みを許容することを特徴とする請求項1〜6のいずれかに記載の呼制御装置。
【請求項8】
上記書き込み処理手段が、更新された上記呼制御アプリケーションと上記呼制御情報との双方を上記不揮発性メモリに書き込みを行う前に、更新された上記呼制御アプリケーションの容量と空き領域の容量との比較、及び、更新された上記呼制御情報の容量と空き領域の容量との比較により、上記不揮発性メモリへの書き込みをするか否かを判断することを特徴とする請求項1〜7のいずれかに記載の呼制御装置。
【請求項9】
上記書き込み処理手段が、更新された上記呼制御アプリケーション又は上記呼制御情報のいずれかの容量が空き領域の容量以下であっても、更新された上記呼制御情報又は上記呼制御アプリケーションが空き領域を超越している場合、上記不揮発性メモリへの書き込みを抑制することを特徴とする請求項8に記載の呼制御装置。
【請求項10】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報を上記RAMディスク領域に格納する呼制御装置の呼制御方法において、
更新検知処理手段が、上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理工程と、
書き込み処理手段が、上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の上記不揮発性メモリへの書き込みを行う書き込み処理工程と
を有することを特徴とする呼制御方法。
【請求項11】
揮発性メモリ上にRAMディスク領域部を生成しておき、不揮発性メモリに格納される呼制御アプリケーション及び呼制御情報を上記揮発性メモリにローディングして呼処理を行い、上記不揮発性メモリに対する書き込み情報を上記RAMディスク領域に格納する呼制御装置を、
上記RAMディスク領域の書き込み情報から、呼処理により上記揮発性メモリにローディングされた上記呼制御アプリケーション及び又は上記呼制御情報を格納する上記不揮発性メモリの領域に対する書き込み情報を検知する更新検知処理手段、
上記更新検知処理手段の検知に基づいて上記RAMディスク領域の書き込み情報のうち上記呼制御アプリケーション及び又は上記呼制御情報の領域に対する書き込み情報の上記不揮発性メモリへの書き込みを行う書き込み処理手段
として機能させることを特徴とする呼制御プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2010−212990(P2010−212990A)
【公開日】平成22年9月24日(2010.9.24)
【国際特許分類】
【出願番号】特願2009−56895(P2009−56895)
【出願日】平成21年3月10日(2009.3.10)
【出願人】(308033722)株式会社OKIネットワークス (165)
【Fターム(参考)】
【公開日】平成22年9月24日(2010.9.24)
【国際特許分類】
【出願日】平成21年3月10日(2009.3.10)
【出願人】(308033722)株式会社OKIネットワークス (165)
【Fターム(参考)】
[ Back to top ]