| 【発明の名称】 |
システムパートプログラムのダウンロード方法、それに用いるシステムメモリおよびシステムパートプログラム |
| 【発明者】 |
【氏名】藤野 賀須男
|
| 【要約】 |
【課題】時間短縮可能なるシステムプログラムのダウンロード方法を提供する。
【解決手段】システムプログラムを通信を介したマシンコントローラのシステムパートプログラムのダウンロード方法において、リロケータブルオブジェクトファイルのシステムパートプログラムを受信してシステムメモリに新セクションとして格納するプログラム格納手段S101と、セクション名チェックを行い、同名セクションが無い場合は新セクションを削除するセクション名チェック手段S102と、セクション名が存在する場合は新セクションのグローバルシンボルと既存セクションのグローバルシンボルの一致をチェックし、一致しなければ新セクションを削除するシンボル情報チェック手段S105と、一致した場合は新セクションのロケートを実施してロケートロケーション情報を作成するロケート手段S107と、既存セクションのリロケートを行い削除するリロケート手段109とを有するようにした。 |
【特許請求の範囲】
【請求項1】 システムプログラムを通信を介してダウンロードすることによりバージョンアップ等を行うマシンコントローラのシステムパートプログラムのダウンロード方法において、セクション名とシンボル情報のリロケーション情報を有するリロケータブルオブジェクトファイルで構成するシステムパートプログラムを受信してセクション毎に分割されたシステムメモリのシステムメモリプールに新セクションとして格納するプログラム格納手段と、前記新セクションのセクション名を使用してシステムメモリに同名のセクションが存在するかをチェックし同名セクションが無い場合は前記新セクションを削除するセクション名チェック手段と、前記システムメモリに同名のセクション名が存在する場合は新セクションのグローバルシンボルと既存セクションのグローバルシンボルの一致をチェックして一致しなければ前記新セクションを削除するシンボル情報チェック手段と、前記グローバルシンボルが一致した場合は前記新セクションのリロケーション情報のグローバルシンボルについてロケートを実施しロケートしたアドレスをリロケーション情報に付加してロケーション情報を作成し、ロケートが正常かを判断して正常にロケートできない場合は前記新セクションを削除するロケート手段と、前記ロケートが正常に行われた場合はグローバルシンボルが一致する既存セクションのリロケートを行って前記既存セクションを削除するリロケート手段と、を有してシステムパートプログラムを前記セクション毎にダウンロードすることを特徴とするシステムパートプログラムのダウンロード方法。 【請求項2】 マシンコントローラによるシステムパートプログラムのダウンロードに用いるシステムメモリにおいて、用途毎にコード(プログラム)、データと前記コードおよびデータのアドレス配置情報を格納したロケーション情報とで構成されるセクション毎に分割して、空き領域としてシステムメモリプールを有していることを特徴とするシステムパートプログラムのダウンロードに用いるシステムメモリ。 【請求項3】 マシンコントローラによるシステムパートプログラムのダウンロードに用いるシステムパートプログラムにおいて、システムメモリの1つのセクションにダウンロードされるアドレスの再配置が可能なコード、データとダウンロード対象を示すセクション名と再配置するシンボル情報を格納したリロケーション情報とを有するリロケータブルオブジェクトファイルとして作成したことを特徴とするシステムパートプログラムのダウンロードに用いるシステムパートプログラム。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、マシンコントローラのシステムプログラムの部分的なロードを可能にすることにより、システムプログラムのダウンロード時間の短縮を図るシステムプログラムのダウンロード方式に関する。 【0002】 【従来の技術】従来は、図4に示すように、マシンコントローラ42において、システムプログラム41は、書き換え不可能なブートメモリ43を除き、全てのシステムメモリ領域44に対して通信を介してダウンロードしていた。また、システムプログラム41は1つの実行可能オブジェクトファイルで構成されていた。 【0003】 【発明が解決しようとする課題】しかしながら、従来方式においては、全てのシステムプログラムをダウンロードしていたために、データ通信に時間が掛かりダウンロード時間が長くなるという問題があった。また、例えば、バージョンアップにより異なるライブラリ等を使用したいような場合に、システムプログラムの1部分(ライブラリ)を入れ替えたいと思っても、全システムプログラムを入れ替える必要があるので無駄が多いという問題があった。そこで、本発明は、変更のあったセクションのシステムプログラムのみリロケータブルオブジェクトファイルにてダウンロードして、マシンコントローラ内のロケート手段によってロケートを実行するすることにより、システムプログラムの部分ロードを可能にしてダウンロード時間を短縮できるシステムパートプログラムのダウンロード方法を提供することを目的としている。 【0004】 【課題を解決するための手段】上記目的を達成するため、請求項1に記載の発明は、システムプログラムを通信を介してダウンロードすることによりバージョンアップ等を行うマシンコントローラのシステムパートプログラムのダウンロード方法において、セクション名とシンボル情報のリロケーション情報を有するリロケータブルオブジェクトファイルで構成するシステムパートプログラムを受信してセクション毎に分割されたシステムメモリのシステムメモリプールに新セクションとして格納するプログラム格納手段と、前記新セクションのセクション名を使用してシステムメモリに同名のセクションが存在するかをチェックし同名セクションが無い場合は前記新セクションを削除するセクション名チェック手段と、前記システムメモリに同名のセクション名が存在する場合は新セクションのグローバルシンボルと既存セクションのグローバルシンボルの一致をチェックして一致しなければ前記新セクションを削除するシンボル情報チェック手段と、前記グローバルシンボルが一致した場合は前記新セクションのリロケーション情報のグローバルシンボルについてロケートを実施しロケートしたアドレスをリロケーション情報に付加してロケーション情報を作成し、ロケートが正常かを判断して正常にロケートできない場合は前記新セクションを削除するロケート手段と、前記ロケートが正常に行われた場合はグローバルシンボルが一致する既存セクションのリロケートを行って前記既存セクションを削除するリロケート手段と、を有してシステムパートプログラムを前記セクション毎にダウンロードすることを特徴としている。また、請求項2に記載の発明は、マシンコントローラによるシステムパートプログラムのダウンロードに用いるシステムメモリにおいて、用途毎にコード(プログラム)、データと前記コードおよびデータのアドレス配置情報を格納したロケーション情報とで構成されるセクション毎に分割され、空き領域としてシステムメモリプールを有していることを特徴としている。また、請求項3に記載の発明は、マシンコントローラによるシステムパートプログラムのダウンロードに用いるシステムパートプログラムにおいて、システムメモリの1つのセクションにダウンロードされるアドレスの再配置が可能なコード、データとダウンロード対象を示すセクション名と再配置するシンボル情報を格納したリロケーション情報とを有するリロケータブルオブジェクトファイルとして作成されることを特徴としている。このシステムパートプログラムのダウンロード方法によれば、バージョンアップなどの場合のマシンコントローラのシステムプログラムのダウンロード時に、マシンコントローラのシステムメモリをセクション毎に分割する。一方、そのセクション単位にダウンロードするシステムパートプログラムを、アドレスの再配置が可能なコード、データとダウンロード対象を示すセクション名と再配置するシンボル情報を格納したリロケーション情報とで構成するリロケータブルオブジェクトファイルとして作成して置いて、コントローラのチェック手段により、システムメモリの新セクションに格納したシステムパートプログラムのグローバルシンボルをシステムメモリの同一セクション名の既存セクションのシステムプログラムのグローバルシンボルと比較して一致すれば、ロケート手段によって新セクションのロケートを実施してシステムメモリの実アドレスに変換し、リロケート手段により既存システムプログラムのシンボルをリロケートして旧セクションを削除することにより、セクション毎の入れ替えが可能となる。この場合、プログラムのシンボル情報は、ファイル全領域で有効なグローバル・シンボルで定義されてリロケートが行われるので、システムメモリへの1部のダウンロードが可能になる。 【0005】 【発明の実施の形態】以下、本発明の実施の形態について図を参照して説明する。図1は本発明の実施の形態に係るシステムパートプログラムのダウンロード方法におけるシステムメモリの概略構成図である。図2は図1に示すライブラリプログラムのダウンロードを示す図である。図3は図2に示すライブラリプログラムのダウンロードのフローチャートである。図1において、2はダウンロード対象のマシンコントローラである。4はセクション毎に分割されたシステムプログラムと、空きメモリであるシステムメモリプールで構成されるシステムメモリである。6はダウンロードされるリロケータブルオブジェクトファイルで作成されたシステムパートプログラムである。このシステムパートプログラム(例として、ライブラリプログラム等)6は、通信を介してシステムプログラム4の1つのセクションプログラムとしてダウンロードされる。 【0006】図2において、図2はライブラリプログラム6をダウンロードする例を示している。システムメモリ4は、カーネルセクション10、ライブラリセクション11、ドライバセクション12等の用途別に分割されたセクションと空きメモリであるシステムメモリプール13とで構成されている。1つのセクションは、例えば、カーネルセクション10は、コード(プログラム)18、データ22、コードとデータに含まれるリロケート可能なシンボル情報とロケートした時のアドレス情報が格納されたロケーション情報14で構成される。システムパートプログラム(ライブラリプログラム)6も1つのセクションと同様の構造の他に、セクション名9が付加され構成されている。ダウンロード時には、ダウンロードされたライブラリプログラム6は、システムメモリプール13に格納され、ロケートされてリロケーション情報からロケーション情報に書き換えられる。この後、元のライブラリセクション11は削除されてシステムメモリプールになる。 【0007】つぎに各図を参照して動作について説明する。図3を参照すると、先ず、マシンコントローラ2はシステムパートプログラム6を受信し(S100)、プログラム格納手段によりシステムメモリプール13に新セクションとして格納する(S101)。次に、格納したシステムパートプログラムに付加されて送られてきたセクション名9を使用してセクション名チェック手段により、システムメモリ4に同名のセクションが存在するかチェックして(S102)。セクション名が一致しなければ(S103)、システムメモリプール13に確保した新セクションを削除する(S104)。S103の判断でセクション名が一致した場合はシンボル情報チェック手段により、既存セクションのロケーション情報15に格納されているグローバルシンボルと、ダウンロードされた新セクションのリロケーション情報17に格納されたグローバルシンボルをチェックして(S105)、双方のグローバルシンボルが一致しなければ(106)、システムメモリプール13に確保した新セクションを削除する(S104)。又、S106の判断でグローバルシンボルが一致した場合はロケート手段によって、新セクションのリロケーション情報17のシンボルについてロケートを実行し、ロケートしたアドレスをリロケーション情報17に付加してロケーション情報を作成する(S107)。そのロケーション情報に誤りがあって正常にロケートできない場合(S108)、システムメモリプール13に確保した新セクションを削除する(S104)。S108の判断で正常にロケートされたと判断された場合はリロケート手段により、新セクションのグローバルシンボルと一致するグローバルシンボルを持つ既存セクション(この場合は、ライブラリセクション11)のリロケートを実行する(S109)。最後に旧セクション11を削除してシステムメモリプールに変更する(S110)。この状態が、図2に矢印で示すシステムメモリの状態であり、バージョンアップされたライブラリセクションが入れ替わって、システムパートプログラム(ライブラリプログラム)6のダウンロードが終了する。なお、ここまでは、ライブラリセクション11とバージョンアツプのライブラリプログラム6を入れ替える、ダウンロードについて説明したが、ライブラリプログラムに限定されないことは勿論である。 【0008】 【発明の効果】以上説明したように、セクション毎に分割されたセクションメモリの、変更のあったセクションのシステムプログラムのみリロケータブルオブジェクトファイルにてダウンロードし、マシンコントローラのロケート手段によってロケートを実行することで、システムプログラムの1部分のダウンロードが可能になり、例えば、異なるライブラリを使用したいような場合に従来のように全システムプログラムを入替える必要がなくなり、ライブラリプログラムだけをダウンロードすればよいので、システムプログラムのダウンロード時間が短縮できるという効果がある。
|
| 【出願人】 |
【識別番号】000006622 【氏名又は名称】株式会社安川電機
|
| 【出願日】 |
平成13年3月29日(2001.3.29) |
| 【代理人】 |
【識別番号】100105647 【弁理士】 【氏名又は名称】小栗 昌平 (外4名)
|
| 【公開番号】 |
特開2002−297388(P2002−297388A) |
| 【公開日】 |
平成14年10月11日(2002.10.11) |
| 【出願番号】 |
特願2001−96443(P2001−96443) |
|