(57)【要約】【課題】動作停止時間を短縮し得るパッチ処理。【解決手段】形式情報を含むファイル様式で保持されるプログラムがローディングされ該プログラムに基づく動作を制御する起動制御部を備えた伝送装置の前記プログラムに対しパッチ処理を行う方法において、対象ファイルの形式情報に基づいて得た揮発性記憶媒体におけるプログラムのアドレスと、利用者から与えられるパッチ処理プログラムのアドレスとサイズとに基づいて、揮発性記憶媒体にパッチ処理プログラムを保持させる領域を確保し、起動制御部によりプログラムが一時的に停止している間に、確保した領域にパッチ処理プログラムを保持し、識別結果に基づいて前記ファイルを参照して得た不揮発性記憶媒体におけるプログラムのアドレスとパッチ処理プログラムのアドレスとサイズに基づいて、不揮発性記憶媒体にパッチ処理プログラムを保持させる領域を確保する。【選択図】        図１
2004302747.tif 000002
【特許請求の範囲】
【請求項１】
ファイルの形式を示す形式情報を含むファイル様式により不揮発性記憶媒体に保持されるプログラムが、前記不揮発性記憶媒体から揮発性記憶媒体へローディングされ、当該プログラムに基づいて動作し、かつ該動作の停止および再起動を制御する起動制御部とを備えた伝送装置の前記プログラムに対し、パッチ制御部によりパッチ処理を行う方法において、
前記プログラムを示す対象ファイルの形式情報に基づいて、当該ファイルのファイル形式を識別すること、
識別結果に基づいて前記ファイルを参照して得る前記揮発性記憶媒体における前記プログラムのアドレスと、利用者から与えられるパッチ処理プログラムのアドレスおよびそのサイズとに基づいて、前記揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保すること、
伝送に関する前記プログラムに基づく動作が、前記起動制御部により一時的に停止している間に、前記揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持すること、
前記起動制御部により停止が解除された後、前記識別結果に基づいて当該ファイルを参照して得る前記不揮発性記憶媒体における前記プログラムのアドレスと、前記パッチ処理プログラムの前記アドレスと、前記パッチ処理プログラムの前記サイズとに基づいて、前記不揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保すること、
前記不揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持することを特徴とするパッチ処理方法。
【請求項２】
ファイルの形式を示す形式情報を含むファイル様式により不揮発性記憶媒体に保持されるプログラムが、前記不揮発性記憶媒体から揮発性記憶媒体へローディングされ、当該プログラムに基づいて動作し、かつ該動作の停止および再起動を制御する起動制御部と、前記プログラムに対しパッチ処理を行うパッチ制御部を備えた伝送装置において、
前記プログラムを示す対象ファイルの形式情報に基づいて、当該ファイルのファイル形式を識別する手段と、
識別結果に基づいて当該ファイルを参照して得る前記揮発性記憶媒体における前記プログラムのアドレスと、利用者から与えられるパッチ処理プログラムのアドレスおよびそのサイズとに基づいて、前記揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保する手段と、
伝送に関する前記プログラムに基づく動作が、前記起動制御部により一時的に停止している間に、前記揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持する手段と、
前記起動制御部により停止が解除された後、前記識別結果に基づいて当該ファイルを参照して得る前記不揮発性記憶媒体における前記プログラムのアドレスと、前記パッチ処理プログラムの前記アドレスと、前記パッチ処理プログラムの前記サイズとに基づいて、前記不揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保する手段と、
前記不揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持する手段とを備えることを特徴とする伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、伝送に関するプログラムに対しパッチ処理を行う方法および伝送装置に関する。
【０００２】
【従来の技術】
通信システムにおける伝送装置は、不揮発性記憶媒体としてのＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）と、揮発性記憶媒体としてのメモリと、該メモリの制御を行うメモリ制御部とを備えている。前記伝送装置は、従来から知られたＥＬＦ（Ｅｘｅｃｕｔａｂｌｅ  ａｎｄ  Ｌｉｎｋｉｎｇ  Ｆｏｒｍａｔ）形式もしくはＣＯＦＦ（Ｃｏｍｍｏｎ  Ｏｂｊｅｃｔ  Ｆｉｌｅ  Ｆｏｒｍａｔ）形式などのファイル形式で示されたプログラムを前記ＨＤＤに保持しており、該ＨＤＤで保持するプログラムをマシン語形式で前記メモリに展開（ローディング）すべく、メモリに対しての読み書き制御をメモリ制御部が行う。前記メモリ制御部は、メモリに対する読書き制御以外に、メモリに展開するプログラムの停止および再起動の制御を行う起動制御の機能も有する。
伝送装置は、前記したメモリ制御部により制御を受けたプログラムに基づいて動作する。
【０００３】
前記した伝送装置のプログラムにおいて、該プログラムの不具合を発見すると、当該不具合を補正すべく、不具合が補正されたプログラムが作成される。作成したプログラムを、ファイル形式でＨＤＤに保持させるべく、不具合を補正したプログラムを示す所定の形式のファイルを作成する。その後、作成した当該ファイルと、不具合のある既存ファイルとを置き換えることにより、不具合を補正していた。前記した方法は、不具合を修正する以外に、機能追加などの仕様変更を行うときにも採用されていた。
【０００４】
【発明が解決しようとする課題】
ところで、従来のパッチ処理方法は、前記伝送装置に新たに作成したファイルと、既存のファイルとを入れ替えるとき、該伝送装置で動作中のプログラムを停止させ、その停止期間中に当該ファイルと既存のファイルとを前記ＨＤＤにそっくり入れ替えた後、再度起動を行う。この起動は、前記ＨＤＤに保持しているファイル形式のプログラムを、ファイル形式に従って前記メモリにローディング（展開）し直し、当該プログラムで用いるワークエリアなどを初期化する。従って、動作中のプログラムを停止してから、ファイルを入れ替えて再起動を行い、入れ替えたファイルに示されるプログラムに基づいて正常に動作するまでの時間が長く、これが問題となっていた。
前記した課題に鑑みて、本発明は、パッチ処理において伝送に関する動作停止時間を短縮し得るパッチ処理方法と、該方法によりパッチ処理を行う伝送装置とを提供することにある。
【０００５】
【課題を解決するための手段】
本発明は、以上の点を解決するために、次の構成を採用する。
ファイルの形式を示す形式情報を含むファイル様式により不揮発性記憶媒体に保持されるプログラムが、前記不揮発性記憶媒体から揮発性記憶媒体へローディングされ、当該プログラムに基づいて動作し、かつ該動作の停止および再起動を制御する起動制御部とを備えた伝送装置の前記プログラムに対し、パッチ制御部によりパッチ処理を行う方法において、前記プログラムを示す対象ファイルの形式情報に基づいて、当該ファイルのファイル形式を識別すること、識別結果に基づいて前記ファイルを参照して得る前記揮発性記憶媒体における前記プログラムのアドレスと、利用者から与えられるパッチ処理プログラムのアドレスおよびそのサイズとに基づいて、前記揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保すること、伝送に関する前記プログラムに基づく動作が、前記起動制御部により一時的に停止している間に、前記揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持すること、前記起動制御部により停止が解除された後、前記識別結果に基づいて当該ファイルを参照して得る前記不揮発性記憶媒体における前記プログラムのアドレスと、前記パッチ処理プログラムの前記アドレスと、前記パッチ処理プログラムの前記サイズとに基づいて、前記不揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保すること、前記不揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持することを特徴とする。
【０００６】
ファイルの形式を示す形式情報を含むファイル様式により不揮発性記憶媒体に保持されるプログラムが、前記不揮発性記憶媒体から揮発性記憶媒体へローディングされ、当該プログラムに基づいて動作し、かつ該動作の停止および再起動を制御する起動制御部と、前記プログラムに対しパッチ処理を行うパッチ制御部を備えた伝送装置において、前記プログラムを示す対象ファイルの形式情報に基づいて、当該ファイルのファイル形式を識別する手段と、識別結果に基づいて当該ファイルを参照して得る前記揮発性記憶媒体における前記プログラムのアドレスと、利用者から与えられるパッチ処理プログラムのアドレスおよびそのサイズとに基づいて、前記揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保する手段と、伝送に関する前記プログラムに基づく動作が、前記起動制御部により一時的に停止している間に、前記揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持する手段と、前記起動制御部により停止が解除された後、前記識別結果に基づいて当該ファイルを参照して得る前記不揮発性記憶媒体における前記プログラムのアドレスと、前記パッチ処理プログラムの前記アドレスと、前記パッチ処理プログラムの前記サイズとに基づいて、前記不揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保する手段と、前記不揮発性記憶媒体に確保した領域に前記パッチ処理プログラムを保持する手段とを備えることを特徴とする。
【０００７】
【発明の実施の形態】
以下、本発明の実施の形態を図を用いて詳細に説明する。
図１は、本発明のパッチ処理方法を示したフローチャートである。
該フローチャートの説明に先立ち、本発明のパッチ処理方法によりパッチ処理を行うパッチ制御部１９を含む伝送装置１０の構成を図２に示し、該図を参照しながら伝送装置１０を説明する。
伝送装置１０は、ネットワークに接続されており、例えばオペレーションシステム３０とルーター４０を介して接続されている。該伝送装置１０は、不揮発性記憶媒体としてのＨＤＤ１１と、揮発性記憶媒体としてのメモリ１２と、ＨＤＤ１１に保持するＥＬＦ形式やＣＯＦＦ形式のファイルを階層的に管理するためのファイル管理部１３と、メモリ１２にマシン語で保持されるプログラムの読出し書込み制御と伝送に関するプログラムに基づく動作の停止制御および再起動制御とを行う起動制御部としてのメモリ制御部１４と、前記制御プログラムの実行を制御するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）１５と、前記プログラムに対しパッチ処理を行うパッチ制御部１９とを備える。
ＯＳ１５は、複数のプログラムにおいて、動作の優先順位を加味してその実行を制御する実行制御部１６と、該実行制御部１６で用いるファイル（タスク）の管理を行うタスク管理部１７とで構成されている。
【０００８】
前記伝送装置１０のＨＤＤ１１で保持するプログラムは、例えば通信系や制御系などのパッケージソフトと称される複数のプログラムソフトなどであり、各プログラムソフトが、所定のファイル形式でファイル１８としてＨＤＤ１１に保持されている。
ファイル管理部１３は、ファイルの形式を解析し、その解析結果に基づいて、前記ファイルを階層的にＨＤＤ１１で保持させるための管理を行う。ＨＤＤ１１で保持する前記ファイルは、プログラムと、そのプログラムで用いるデータと、該プログラムをメモリ１２の所定の領域にマシン語で割り付けるための割付情報などで構成されている。
メモリ制御部１４は、メモリ１２に対する読出し書込み制御を行う他に、伝送に関するプログラムに基づく動作を停止したり、その停止を解除する起動制御部としての機能を備えている。
【０００９】
ここで、前記したＥＬＦ形式のファイル構造を図３に、ＣＯＦＦ形式のファイル構造を図４に示し、これらのファイル構造を説明する。ＥＬＦ形式およびＣＯＦＦ形式のそれぞれは、ファイル形式を識別可能な形式情報およびプログラムをメモリ１２の所定の領域にマシン語で割り付けるための割付情報が示されたファイルヘッダ部と、プログラムが示されたテキスト部と、該プログラムで用いるデータが示されたデータ部とで構成されている。
ＥＬＦ形式のファイルヘッダ部は、図３に示すように、先頭に“．ｅｌｆ”と示された後、プログラム（テキスト）をメモリのテキスト領域に割り付けるためのテキスト割付情報と、データをメモリのデータ領域に割り付けるためのデータ割付情報とで構成され、前記各割付情報は、その割付先頭アドレスとサイズとで示されている。
一方、ＣＯＦＦ形式のファイルヘッダ部は、図４に示すように、固定長のヘッダ情報と、可変長のオプションヘッダ情報と、プログラム（テキスト）をメモリ１２のテキストセクションに割り付けるためのテキスト割付情報と、データをメモリ１２のデータセクションに割り付けるためのデータ割付情報とで構成され、前記各割付情報は、その割付先頭アドレスとサイズとで示されている。前記ヘッダ情報には、該ヘッダ情報を認識するためのマジック番号と、セクション数などが示されており、オプションヘッダ情報には、該オプションヘッダを認識するためのマジック番号と、ＣＯＦＦ形式の版数を示すバージョンなどが示されている。
【００１０】
パッチ制御部１９は、利用者から指示されたＨＤＤ１１に保持しているファイルの形式情報、つまりパッチ処理すべきプログラムが示されたファイルの形式情報を参照し、該形式情報に示されたファイル形式に応じて、前記テキスト割付情報および前記データ割付情報に示された、それぞれの割付先頭アドレスおよびサイズを取得する。取得したこれらの情報と、利用者から与えられるパッチ処理プログラムを挿入する先頭アドレスと該パッチ処理プログラムのサイズとに基づいて、パッチ制御部１９は、メモリ１２に展開するプログラムの相対アドレスを算出し、該アドレスに挿入するパッチ処理プログラムのマシン語ワード数が超過するか否かを判断する。超過するとき、パッチ制御部１９は、挿入するパッチ処理プログラムを保持する領域をメモリ１２の空き領域に確保する。その後、パッチ制御部１９は、確保した領域にパッチ処理プログラムを保持させるべく、メモリ制御部１４に指示する。指示を受けたメモリ制御部１４は、テキスト部のプログラムとデータ部のデータとを確保した領域にそれぞれ保持する。
【００１１】
詳細には、パッチ制御部１９により、起動制御部としてのメモリ制御部１４に対し、実行中のプログラムを一旦停止する設定が行われ、該設定に基づいてメモリ制御部１４は、実行中のプログラム、つまり伝送に関するプログラムに基づく動作を停止する。この停止期間中に、メモリ制御部１４は、メモリ１２に確保した領域にプログラムおよびデータを書き込む。パッチ制御部１９は、書込みが終了したメモリ制御部１４に対し再起動の設定を行う。該設定を受けたメモリ制御部１４は、停止を解除すべく停止中のプログラムを動作させる。
【００１２】
ここで、図１に戻り、該図のフローチャートを用いて、パッチ処理を行う方法を説明する。
パッチ制御部１９は、利用者から与えられたファイル名に基づいて、対象ファイルをＨＤＤ１１から取得すると、取得した対象ファイルのファイルヘッダ部を参照すべく、ファイルの先頭から２５６バイトを読み出す（ステップＳ１０）。
２５６バイトを読み出すことにより、可変長のファイルヘッダ部を確実に参照することができる。
【００１３】
次に、パッチ制御部１９は、読み出したファイルヘッダ部を解析して、該ヘッダ部に示される形式情報に基づいて、ファイル形式を識別する（ステップＳ２０）。
例えば、対象ファイルがＥＬＦ形式であるとき、ファイルヘッダ部の先頭には、“．ｅｌｆ”と示されていることから、パッチ制御部１９は、ファイルヘッダの先頭に“．ｅｌｆ”と記述された対象ファイルをＥＬＦ形式であると判断する。一方、対象ファイルがＣＯＦＦ形式であるとき、ファイルヘッダ部には、マジック番号およびセクション数などが示された固定長のヘッダ情報と、マジック番号およびＣＯＦＦ形式のバージョンなどが示された可変長のオプションヘッダ情報とが存在することから、これらの情報を有するファイルは、ＣＯＦＦ形式であると判断する。
【００１４】
パッチ制御部１９が対象ファイルがＥＬＦ形式であると識別したとき、パッチ制御部１９は、識別したＥＬＦ形式に対応して対象ファイルを参照し、テキスト領域を示すファイルヘッダ部のテキスト割付情報と、データ領域を示すファイルヘッダ部のデータ割付情報とを取得する（ステップＳ３０）。
一方、パッチ制御部１９が対象ファイルがＣＯＦＦ形式であると識別したとき、パッチ制御部１９は、ＣＯＦＦ形式に対応して対象ファイルを参照し、テキストセクションを示すファイルヘッダ部のテキスト割付情報と、データセクションを示すファイルヘッダ部のデータ割付情報とを取得する（ステップＳ４０）。
前記したファイルヘッダ部の解析において、何れの形式にも該当しないとき、パッチ制御部１９は、処理対象以外のファイル形式であると判断し、パッチ処理を行うことなく終了する。
【００１５】
パッチ制御部１９は、ファイル形式に応じて参照したテキスト割付情報およびデータ割付情報と、利用者から与えられるパッチ処理プログラムのアドレスと、該パッチ処理プログラムに基づき算出するサイズとに基づいて、メモリ１２に割り付ける領域を確保すべく、その確認を行う（ステップＳ５０）。
パッチ制御部１９は、パッチ処理プログラムを挿入するメモリ１２の領域が不足していると判断したとき、つまり当該セクションの範囲内に収まらないとき、該セクションの拡張を行う。
メモリ１２に保持させる領域を確保した後、パッチ制御部１９は、実行中のプログラムを所望のブレークポイントで一旦停止させるべく、起動制御部としてのメモリ制御部１４に対し、ブレーク要求の設定を行う（ステップＳ６０）。ブレーク要求を受けたメモリ制御部１４は、伝送に関するプログラムに基づく動作を一旦停止する。
【００１６】
ところで、前記した所望のブレークポイントとは、伝送に関するプログラムに基づく動作により、データを読み書きする恐れのないポイントである。つまり、複数のプログラム（タスク）がＯＳ１５の制御を受けて動作する伝送装置において、各タスクに悪影響をおよぼさないポイントである。更に、前記したブレークポイントは、例えばルーター４０を介して接続するオペレーションシステム３０や他の伝送装置などに対しても、悪影響をおよぼさないポイントである。前記したブレークポイントを示すアドレスと、プログラムカウンタが示すアドレスとが一致したとき、割り込みが生じて、動作中のプログラム、つまり伝送に関するプログラムに基づく動作が停止する。
【００１７】
動作中のプログラムが、要求したブレークポイントで一旦停止すると、パッチ制御部１９は、メモリ制御部１４に対しパッチ処理プログラムを挿入する旨を指示する。指示を受けたメモリ制御部１４は、確保したメモリ１２の領域にパッチ処理プログラムを保持するための制御を行う（ステップＳ７０）。
【００１８】
その後、パッチ制御部１９は、メモリ制御部１４に対しブレーク解除設定を要求する（ステップＳ８０）。この設定を受けたメモリ制御部１４は、停止中のプログラムに基づく動作を再開させる。
ブレークが解除された後、ファイル形式に応じてＨＤＤ１１にパッチ処理プログラムを保持させるべく、パッチ制御部１９は、識別した前記ファイル形式に応じて分岐処理を行う（ステップＳ９０）。
【００１９】
パッチ制御部１９は、識別結果に応じて前記対象ファイルに示された前記プログラムの先頭アドレスと、前記パッチ処理プログラムの前記アドレスおよび前記サイズとに基づいて、ＨＤＤ１１に前記パッチ処理プログラムを保持する領域を確保すべく、ＨＤＤ１１に保持する対象ファイルにおけるアドレスを算出し、算出したアドレスに前記パッチ処理プログラムを挿入する領域の確認を行う（ステップＳ１００、Ｓ１１０）。
パッチ制御部１９は、パッチ処理プログラムをＨＤＤ１１に挿入する領域が不足していると判断したとき、つまり当該セクションの範囲内に収まらないとき、該セクションの拡張を行う。
パッチ制御部１９は、ＨＤＤ１１に確保した領域に前記パッチ処理プログラムを保持する。つまり、算出したアドレスを先頭にパッチ処理プログラムと既存のプログラムとを入れ替える。（ステップＳ１２０）。
【００２０】
前記したように、本発明のパッチ処理方法によれば、パッチ処理対象のプログラムが示されたファイルの形式情報に基づいて、当該ファイルに示されたメモリに割り付けるための情報を参照し、この参照で得たメモリ１２に展開するパッチ処理対象プログラムの先頭アドレスと、利用者から与えられるパッチ処理プログラムのアドレスおよびそのサイズとに基づいて、前記揮発性記憶媒体に前記パッチ処理プログラムを保持させる領域を確保した後、動作中のプログラムを一旦停止して、確保した領域にパッチ処理プログラムを挿入する。その後、識別したファイル形式に基づいて前記ファイルを参照し、ＨＤＤ１１にファイル様式で保持しているパッチ処理対象のプログラムのアドレスと、前記パッチ処理プログラムの前記アドレスおよび前記サイズとに基づいて、パッチ処理プログラムを挿入すべきアドレスを算出し、算出したアドレスにパッチ処理プログラムを挿入する。従って、本発明のパッチ処理方法は、メモリ１２にパッチ処理プログラムを挿入する間のみ伝送に関するプログラムに基づく動作を一時的に停止すればよいことから、従来のように、伝送装置の動作を停止して、パッチ処理対象のファイルを、そっくり入れ替えた後、再度起動し直す必要がなく、パッチ処理における伝送装置の停止時間を短縮することができ、パッチ処理の作業効率を向上することができる。
更に、本発明によれば、当該伝送装置およびネットワークを介して接続する他の装置に悪影響を与えないブレークポイントで、動作中のプログラムを一旦停止して、パッチ処理プログラムのみを挿入することから、当該伝送装置およびネットワークを介して接続する他の装置における運用上の停止時間も短縮することができる。従って短時間の停止により、ネットワークに接続する各装置が配置された各部門間において、長時間の運用停止で必要となる停止調整作業を省くことができ、パッチ処理の作業効率を向上することができる。
【００２１】
本具体例では、ＥＬＦ形式およびＣＯＦＦ形式に限って説明したが、このファイル形式に限る必要はなく、ファイルヘッダ部を解析することにより、ファイル形式を識別可能な様々な形式のファイルに対しても、本発明を適用することができる。
【００２２】
【発明の効果】
前記したように、本発明によれば、パッチ処理すべきプログラムが示されたファイルのファイル形式を解析し、その解析で得た形式情報に基づいて、揮発性記憶媒体にパッチ処理プログラムを挿入するための領域を確保した後、伝送に関するプログラムの動作を一時停止している間に、確保した領域にパッチ処理プログラムを挿入する。その後、本発明は、前記形式情報に基づいて、不揮発性記憶媒体にパッチ処理プログラムを挿入するための領域を確保し、確保した領域にパッチ処理プログラムを挿入する。これにより、本発明のパッチ処理方法は、不揮発性記憶媒体に確保した領域にパッチ処理プログラムを保持させる期間だけ、伝送装置に関する動作を停止することができる。
従って、本発明のパッチ処理方法によれば、装置を停止してパッチ処理すべきプログラムが示されたファイルを、そっくり入れ替える従来のパッチ処理方法と比較して、その停止時間を短縮することができる。
【図面の簡単な説明】
【図１】本発明のパッチ処理プログラムを挿入する方法を示すフローチャートである。
【図２】伝送装置を示すブロック図である。
【図３】ＥＬＦ形式のファイル構成を示す図である。
【図４】ＣＯＦＦ形式のファイル構成を示す図である。
【符号の説明】
１０  伝送装置
１１  ＨＤＤ
１２  メモリ
１３  ファイル管理部
１４  メモリ制御部
１５  ＯＳ（オペレーティングシステム）
１６  実行制御部
１７  タスク管理部
１８  ファイル
１９  パッチ制御部
３０  オペレーションシステム
４０  ルーター
【図１】
2004302747.tif 000003
【図２】
2004302747.tif 000004
【図３】
2004302747.tif 000005
【図４】
2004302747.tif 000006