(57)【要約】【課題】コンピュータシステムに使用するプログラムの一部を修正しつつ延命させることが可能なプログラムの製造方法、及びコンピュータシステムのアップデート方法を提供する。【解決手段】プログラムの製造方法は、第１プログラム言語で記述されたソースプログラムの第２部分を切り出す手順と、前記第２部分を第２プログラム言語を用いて書き換え、かつ、修正部分を修正する手順と、前記第２部分以外の残余部を第１部分とした場合に、第１部分をコンパイルして第１オブジェクトファイルを生成する手順と、第２部分をコンパイルして第２オブジェクトファイルを生成する手順と、前記第１オブジェクトファイルと第２オブジェクトファイルとをリンクすることにより、一つの実行プログラムを生成する手順と、を備える。【選択図】図７
2018169887.tif 000002
【特許請求の範囲】
【請求項１】
第１プログラム言語で記述されたソースプログラムの第２部分を切り出す手順と、
前記第２部分を第２プログラム言語を用いて書き換え、かつ、修正部分を修正する手順と、
前記第２部分以外の残余部を第１部分とした場合に、第１部分をコンパイルして第１オブジェクトファイルを生成する手順と、
第２部分をコンパイルして第２オブジェクトファイルを生成する手順と、
前記第１オブジェクトファイルと第２オブジェクトファイルとをリンクすることにより、一つの実行プログラムを生成する手順と、を備えるプログラムの製造方法。
【請求項２】
前記第１プログラム言語はＦｏｒｔｒａｎであり、前記第２言語はＣである、請求項１に記載のプログラムの製造方法。
【請求項３】
プログラムと、プログラムを実行することにより所定の処理を行うコンピュータとを備えたコンピュータシステムのアップデート方法であって、第１プログラム言語で記述されたプログラムのうち修正の必要が生じた部分（以下、第２部分と称する）と、第２部分以外の部分である第１部分とを備えたプログラムについて、
前記第２部分を第２プログラム言語を用いて書き換え、かつ、修正部分を修正して修正ブロックを作成する手順と、
前記第１部分をコンパイルして第１オブジェクトファイルを生成し、前記修正ブロックをコンパイルして第２オブジェクトファイルを生成する手順と、
前記第１オブジェクトファイルと前記第２オブジェクトファイルをリンクさせることにより、実行プログラムを製造する手順と、
前記実行プログラムを用いて前記システムをアップデートする手順と、を備える、コンピュータシステムのアップデート方法。
【請求項４】
前記第１プログラム言語はＦｏｒｔｒａｎであり、前記第２言語はＣである、請求項３に記載のコンピュータシステムのアップデート方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、プログラムの製造方法、及びコンピュータシステムのアップデート方法に関する。
【背景技術】
【０００２】
例えば変圧器電気設計システムにおいて、当該システムを構築するプログラムとして例えばＦＯＲＴＲＡＮにより記述されたプログラムが使用されている場合がある。ＦＯＲＴＲＡＮは科学技術計算に適したプログラム言語として高い評価を受けているが、ＦＯＲＴＲＡＮを扱うことができる人材が枯渇しつつあり、当該システムに使用するプログラムのうち、修正が必要な部分を修正しつつ延命して当該プログラムを使用することが困難となっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１５１６１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実施形態は、上記課題に鑑みたものであり、コンピュータシステムに使用するプログラムの一部を修正しつつ延命させることが可能なプログラムの製造方法、及びコンピュータシステムのアップデート方法を提供する。
【課題を解決するための手段】
【０００５】
実施形態に係るプログラムの製造方法は、第１プログラム言語で記述されたソースプログラムの第２部分を切り出す手順と、前記第２部分を第２プログラム言語を用いて書き換え、かつ、修正部分を修正する手順と、前記第２部分以外の残余部を第１部分とした場合に、第１部分をコンパイルして第１オブジェクトファイルを生成する手順と、第２部分をコンパイルして第２オブジェクトファイルを生成する手順と、前記第１オブジェクトファイルと第２オブジェクトファイルとをリンクすることにより、一つの実行プログラムを生成する手順と、を備える。
【図面の簡単な説明】
【０００６】
【図１】コンピュータシステムの概略構成を示すブロック図
【図２】ソースプログラムの概略構成を示す図
【図３】ソースプログラムからの修正を行うブロックの切り出しの概略構成を示す図
【図４】コンパイル手順の概略構成を示す図
【図５】コンパイル手順の概略構成を示す図
【図６】リンク手順の概略構成を示す図
【図７】処理手順の流れを示すフロー図
【発明を実施するための形態】
【０００７】
以下、実施形態について図面に基づいて説明する。実施形態の説明において実質的に同一の構成部位には同一の符号を付し、説明を省略する。
図１は実施形態で用いられるコンピュータシステムの概略構成を示す図である。図２は、ソースプログラム１０の概略構成を示す図である。図３はソースプログラム１０から修正対象ブロックＦ３を切り出す手順を示す図である。図４は、ソースプログラムブロックＦ１〜Ｆｎのうち、修正対象ブロックＦ３を切り出した残余部分のコンパイル手順を示す図である。図５は、修正対象ブロックＦ３の書き換え、修正、及びコンパイルを行う手順を示す図である。図６は、生成したオブジェクトファイルＦと修正オブジェクトファイルＣ３−ｏｂｊをリンクして実行ファイルを生成する際のリンク手順を示す図である。図７は処理手順の流れを示すフロー図である。
【０００８】
図１に示すように、コンピュータシステム１２は制御部１６、表示部２４、入力部２６及び格納部２８を備えている。制御部１６はマイクロコンピュータ１４を主体として構築されており、切り出し修正処理部１８、コンパイル処理部２０及びリンク処理部２２を備えている。
【０００９】
マイクロコンピュータ１４はＣＰＵ、ＲＡＭ及びＲＯＭ等の記憶部、Ｉ／Ｏ等により構成されている。マイクロコンピュータ１４は、例えばＲＯＭに格納されたコンピュータプログラムを読み込み、ＣＰＵにおいて実行させることにより、切り出し修正処理部１８、コンパイル処理部２０、リンク処理部２２等の各処理部の各機能を実現している。切り出し修正処理部１８、コンパイル処理部２０、リンク処理部２２の各処理部については後述する。
【００１０】
本実施形態に係るコンピュータシステム１２は、静止誘導機器として例えば変圧器に用いられる鉄心の各種設計値を計算するための変圧器電気設計システムである。このシステムは、例えば、鉄心を構成する鋼板薄帯の膜厚、幅、巻回数、巻回芯寸法等の最適設計値を計算する。
【００１１】
表示部２４は例えば液晶画面であり、各種情報を視認可能に表示する。入力部２６は例えばキーボードであり、コンピュータシステム１２に、命令、パラメータ、その他の情報を入力するための入力部として機能する。格納部２８は例えばハードディスクドライブであり、マイクロコンピュータ１４において処理するための様々のデータや、計算結果を格納するための格納部として機能する。また、格納部２８に、コンピュータシステム１２において実行されるプログラムファイルを格納してもよい。
【００１２】
本実施形態における処理は以下のように実行される。図１〜図７に示すように、ソースプログラム１０はソースプログラムブロックＦ１〜Ｆｎを備えている。各ソースプログラムブロックＦ（Ｆ１〜Ｆｎ）はソースプログラム１０を構成する機能単位を概念的に表示している。ソースプログラムブロックＦ１〜Ｆｎは、例えば、鉄心に用いる鋼板薄帯の、膜厚計算ブロック、幅計算ブロック、巻回数計算ブロック、等である。ソースプログラム１０は例えば第１のプログラム言語であるＦｏｒｔｒａｎにより構築されている。
【００１３】
ここでは、例えば、修正対象ブロックＦ３について修正の必要が生じた場合を想定する。また、ソースプログラム１０のうち、修正対象ブロックＦ３を除いた部分を残余ブロックＦｒと称する。
【００１４】
まず、コンピュータシステム１２の切り出し修正処理部１８は、入力部２６からの入力に応じてソースプログラムブロックＦ１〜Ｆｎから修正対象ブロックＦ３を選択し、修正対象ブロックＦ３を切り出す（Ｓ１）。次に、切り出し修正処理部１８は、入力部２６からの入力に応じて、修正対象ブロックＦ３の内容を修正するが、詳細には以下のように処理する。
【００１５】
切り出し修正処理部１８は、図５に示すように、切り出された修正対象ブロックＦ３に相当する部分を、第２のプログラム言語として例えばＣ言語により書き換える。そして、入力部２６からの入力に応じて、必要部分を修正し、修正ブロックＣ３を生成する（Ｓ２）。次に、コンパイル処理部２０は、修正ブロックＣ３をコンパイルし、修正オブジェクトファイルＣ−ｏｂｊを生成する（Ｓ３）。
【００１６】
また、コンパイル処理部２０は、残余ブロックＦｒをコンパイルし、オブジェクトファイルＦ−ｏｂｊを生成する（Ｓ４）。なお、ステップＳ３とＳ４の順序は入れ替えてもよい。次いで、リンク処理部２２は図５に示すように、オブジェクトファイルＦ−ｏｂｊと修正オブジェクトファイルＣ−ｏｂｊをリンクし、実行プログラムＰを生成する（Ｓ５）。
【００１７】
以上の手順により、目的の実行プログラムＰを製造し、この実行プログラムＰをコンピュータシステム１２にインストールすることによりコンピュータシステム１２のアップデートを行う。
【００１８】
その後は、この実行プログラムＰを用いて、鉄心の各パラメータ構成を計算する。しかし、また暫く経過して、次に、新たな修正箇所として、例えばソースプログラムブロックＦ４の修正の必要が生じた場合には、ソースプログラムブロックＦ４について、修正対象ブロックＦ３について行った上記処理と同様の処理を行う。以後、同様の場合には順次修正ブロックを切り出し、上記の処理を行うことにより順次コンピュータシステム１２をアップデートすることができる。
【００１９】
上記に説明した実施形態に係るプログラムの製造方法、及び、コンピュータシステム１２のアップデート方法によれば、以下の効果を奏する。
【００２０】
実施形態によれば、ソースプログラム１０のうち、修正が必要な修正対象ブロックＦ３を切り出し、この部分だけ第２プログラム言語で書き換え及び必要部分の修正を行うことにより修正ブロックＣ３を生成する。残余ブロックＦｒは第１プログラム言語のままコンパイル処理部２０によりコンパイルし、修正ブロックＣ３は第２プログラム言語でコンパイルされる。そして、生成されたオブジェクトファイルをリンクさせることにより、目的の実行プログラムＰを取得する。従って、第１プログラム言語を使用することはできないが、第２プログラム言語を使用可能な技術者が、ソースプログラム１０のうち必要部分のみを修正し、目的の実行プログラムＰを生成することが可能となる。また、この実行プログラムＰを用いてコンピュータシステム１２をアップデートすることができるため、コンピュータシステム１２を延命することができる。
【００２１】
ソースプログラム１０全体の使用言語の更新を完了するには相当の時間を要するが、上記の構成によれば、修正が不要な部分は第１言語のままで残し、修正が必要な部分のみを第２言語に置き換えて、第１言語部分と第２言語部分が混在した状態でコンパイルすることにより所望の実行ファイルを得ることができる。これにより、日常の処理を止めることなく、プログラム、及び、コンピュータシステムを順次アップデートしていくことが可能となる。
【００２２】
以上のように、実施形態は、コンピュータシステム１２として、変圧器に用いられる鉄心の各種設計値を計算するための変圧器電気設計システムを想定して説明したがこれに限定されることはない。発明の趣旨を逸脱しない範囲で、広く様々なコンピュータシステムに適用することができる。
【００２３】
以上のように、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００２４】
１０…ソースプログラム、１２…コンピュータシステム、１４…マイクロコンピュータ、１６…制御部、１８…切り出し修正処理部、２０…コンパイル処理部、２２…リンク処理部、２４…表示部、２６…入力部、２８…格納部、Ｆ１〜Ｆｎ…ソースプログラムブロック、Ｆ３…修正対象ブロック、Ｃ３…修正ブロック、Ｃ−ｏｂｊ…修正オブジェクトファイル、Ｆｒ…残余ブロック、Ｆ−ｏｂｊ…オブジェクトファイル、Ｐ…実行プログラム、
【図１】
2018169887.tif 000003
【図２】
2018169887.tif 000004
【図３】
2018169887.tif 000005
【図４】
2018169887.tif 000006
【図５】
2018169887.tif 000007
【図６】
2018169887.tif 000008
【図７】
2018169887.tif 000009