JP5821495B2 - プログラム再利用システムおよびプログラム再利用方法 - Google Patents

プログラム再利用システムおよびプログラム再利用方法 Download PDF

Info

Publication number
JP5821495B2
JP5821495B2 JP2011222710A JP2011222710A JP5821495B2 JP 5821495 B2 JP5821495 B2 JP 5821495B2 JP 2011222710 A JP2011222710 A JP 2011222710A JP 2011222710 A JP2011222710 A JP 2011222710A JP 5821495 B2 JP5821495 B2 JP 5821495B2
Authority
JP
Japan
Prior art keywords
information
source code
extraction
search
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011222710A
Other languages
English (en)
Other versions
JP2013084085A (ja
Inventor
繁樹 鈴木
繁樹 鈴木
丈瑠 黒岩
丈瑠 黒岩
紀之 小宮
紀之 小宮
山彦 伊藤
山彦 伊藤
太一 石阪
太一 石阪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011222710A priority Critical patent/JP5821495B2/ja
Publication of JP2013084085A publication Critical patent/JP2013084085A/ja
Application granted granted Critical
Publication of JP5821495B2 publication Critical patent/JP5821495B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

この発明は、組み込みソフトウェア開発において、過去に開発した電子機器製品に内蔵する周辺装置であるデバイス(以降、単にデバイスと称す)を制御するソフトウェアを異なる製品へ再利用する場合にソフトウェア開発者を支援するシステムに関するものである。
従来のプログラム再利用システムは、異なるプラットフォーム(ハードウェアやオペレーティングシステムの構成)間でプログラムの移植を行う際に、プログラムの移植が可能かどうか、もし不可能な場合にはどのAPI(Application Program Interface)関数がネックになっているかを自動的に判定している(例えば、特許文献1参照。)。
特開2004−246690号公報
その際、過去に開発した製品を構成するデバイスと新規に開発する製品を構成するデバイスが同じであれば、そのデバイスを制御する部分のプログラムは流用が可能である。しかし、過去に開発したプログラムが多ければ多いほど流用できる可能性は大きくなるが、従来技術では該当するプログラムを抽出する作業は手動で行われていたという課題があった。
また、プログラムの移植は、API関数のみではなく、CPUからデバイスへのアクセス方法の違い、CPUに依存したアセンブリ言語の違いやオペレーティングシステム(以下OSと記す)のシステムコールの違いなども考慮して行わなければならず、従来技術ではその変更箇所を探す作業を手動で実施していたという課題もあった。
この発明は、上記のような課題を解決するためになされたもので、第1の目的は、デバイスの種別、名称などのデバイス情報を入力することで、過去に開発した同じデバイスの制御プログラムがあれば、そのソースコードを自動的に抽出することによりプログラム開発の作業を効率的に行うことができるプログラム再利用システムを得るものである。
また、第2の目的は、CPUからデバイスへアクセスしている箇所、またはCPUに依存したアセンブリ言語が記述されている箇所、またはOSのシステムコールを行っている箇所、すなわち、ハードウェアやOSに依存するソースコードの記載箇所を移植対象となるソースコードに示すことにより、ソフトウェア開発者がプログラムの移植作業を効率的に行うことができるプログラム再利用システムを得るものである。
この発明に係るプログラム再利用システムは、
CPUを備えた装置を動作させるソフトウェアプログラムのソースコードを複数保存するソースコード保存手段と、
装置に内蔵する周辺機能部であるデバイスのデバイス情報を有するプロジェクト情報を複数記憶するプロジェクト情報記憶手段と、
デバイス情報には、そのデバイスを特定する情報と、ソースコード保存手段に保存した該デバイスを制御するプログラムのソースコード情報と、が含まれ、
前記プロジェクト情報記憶手段に記憶したプロジェクト情報の中から、検索対象のデバイスを特定する情報と一致するデバイス情報を検索する検索手段と、
前記検索手段で検索した結果のデバイス情報に含まれたソースコード情報に基づき、前記ソースコード保存手段に保存されたソースコードを抽出する抽出手段と、
前記抽出手段が抽出した抽出結果を表示する表示手段と、
を備えたことを特徴とするものである。
この発明のプログラム再利用システムは、デバイスの種別、名称などのデバイス情報を入力することにより、過去に開発した同じデバイスのプログラムがあれば、そのソースコードを自動的に抽出することでソフトウェア開発者がプログラム開発を効率的に行うことができるという効果がある。
この発明の実施の形態1を示すシステムの構成図である。 この発明の実施の形態1に係る検索情報入力手段によりデバイス情報を入力する画面の例である。 この発明の実施の形態1に係るプロジェクト情報記憶手段に記憶されているプロジェクト情報の例である。 この発明の実施の形態1に係るソースコードの例である。 この発明の実施の形態1に係るソースコード検索のフローチャート図である。 この発明の実施の形態1に係るCPU情報の例である。 この発明の実施の形態1に係るOS情報の例である。 この発明の実施の形態1に係る移植対象の行を抽出するフローチャート図である。 この発明の実施の形態1に係るCPUからデバイスへアクセスしている箇所およびCPUに依存したアセンブリ言語が記述されている箇所およびOSのシステムコールを行っている箇所を移植対象となるソースコードに表示した例である。
実施の形態1.
まず、実施の形態1のプログラム再利用システムの構成について説明する。
図1はこの発明の実施の形態1におけるプログラム再利用システムの構成図である。
図1において、この発明の実施の形態1におけるプログラム再利用システム100は、今回開発するデバイスの情報を入力する検索情報入力手段101と、1つの製品に関するソフトウェア開発を1つのプロジェクトと定義すると、過去に開発した製品毎に、使用されているCPU、OS、デバイス情報などが記録された情報をプロジェクト情報として記憶してあるプロジェクト情報記憶手段102と、過去に開発した製品のプログラムのソースコードが保存してある既存ソースコード保存手段103と、検索情報入力手段101で入力されたデバイス情報からプロジェクト情報記憶手段102に記憶されているプロジェクト情報を検索して一致するデバイス情報に対応するソースコードを既存ソースコード保存手段103から抽出する検索抽出手段104と、CPUに依存したインストラクションを示したCPU情報記憶手段105と、OSのシステムコールに関する情報を記憶したOS情報記憶手段106と、検索抽出手段104により抽出したソースコードにおいて、CPU情報記憶手段105に記憶されているCPUに依存したインストラクションが記載されたコードを抽出し、OS情報記憶手段106に記憶されているOSのシステムコールが記載されたコードを抽出するコード抽出手段107と、検索抽出手段104により抽出したソースコードおよびコード抽出手段107により抽出した依存コードを表示する表示手段108とから構成される。
次に動作について説明する。
図2は、検索情報入力手段101によるデバイス情報入力画面200の例である。図2のように検索情報入力手段101では、デバイス情報としてUSB(Universal Serial Bus)やLAN(Local Area Network)やRS−232C等のデバイスの種類を示すデバイス種別201、そのデバイスの製造会社名を示すデバイスメーカー202、そのデバイスの製品型名を示すデバイス型名203を入力する。ここでは、理解を容易化するため具体例として、デバイス種別201を“USB”、デバイスメーカー202を“Maker−1”、デバイス型名203を“USB−1”と入力した場合について説明する。
図3は、プロジェクト情報記憶手段102に記憶されているプロジェクト情報の例である。プロジェクト情報記憶手段102には、前述のように、過去に開発した製品に対応して複数個のプロジェクト情報300が記憶されている。プロジェクト情報300には、各プロジェクト情報を構成する情報として、過去に開発された製品で使用されていたCPUの種類を示すCPU310、OSの種類を示すOS320、後述するデバイスに関する情報を示すデバイス情報330が記録されている。
デバイス情報330には、そのデバイスの種類を示すデバイス種別331とそのデバイスの製造会社を示すメーカー332とそのデバイスの製品型名を示す型名333とCPUがデバイスにアクセスする方式であるアクセス方式334とCPUがデバイスにアクセスする場合のアクセス先のアドレスを示すアドレス情報335とソースコード情報としてそのデバイスの制御プログラムのソースコードが既存ソースコード保存手段103に保存されているファイル名を示すソースファイル名336が記録されている。
アクセス方式334には、メモリマップド方式とポートマップドI/O方式がある。
メモリマップド方式とは、デバイスを制御するレジスタをアドレスに配置し、CPUがメモリにアクセスするのと同様にそのアドレスに読み書きして制御する方式である。アクセス方式334に「メモリマップド」が記録されていた場合、アドレス情報335にはデバイスのレジスタが配置されたアドレスを記録する。
ポートマップドI/O方式とは、デバイスを制御するポートがアドレスに配置され、CPUからそのアドレスに読み書きして制御する方式である。アクセス方式334に「ポートマップド」が記録されていた場合、アドレス情報335にはデバイスのポートが配置されたアドレスを記録する。
次に、図3の例により、プロジェクト情報300に記載された情報について説明する。すなわち、“プロジェクト1”における製品では、CPU310が示すCPUの種類が“CPU−1”、OS320が示すOSの種類が“OS−1”、デバイスは2種類で構成され、1つ目のデバイス情報330としてデバイス種別331が示すデバイスの種類が“USB”、メーカー332が示すデバイスの製造会社が“Maker−1”、型名333が示すデバイスの製造型名が“USB−1”、アクセス方式334が示すデバイスへのアクセス方式が“メモリマップド”(メモリマップド方式)、アドレス情報335が示すデバイスのレジスタが配置されたアドレス番地が“0x800−0x80FF”、ソースファイル名336が示すソースファイル名が“ファイル−01”である。2つ目のデバイス情報、および“プロジェクト2”についても同様である。
図4は、既存ソースコード保存手段103に保存されているソースコードの例を示している。この例では、図3で示したソースファイル名336に示すファイル名が“ファイル−01”であり、先頭の1行目から6行目まではコメント行で、デバイス情報330と同等の情報を記載している。
7行目の#define文で、レジスタのアドレスを定義し、プログラムから“REG“でレジスタにアクセスできるようになっていることを示す。
また、11行目では、インラインアセンブラで、CPUインストラクションを使用していることを示す。
また、12行目では、OSのシステムコールを使用していることを示す。
図6は、CPU情報記憶手段105に記憶されているCPU情報400の例である。CPU情報400には過去に開発したプロジェクトで使用したすべてのCPUに関する情報が記録されており、この例では、CPUのアセンブリ言語のインストラクションコードを示し、CPU名401と命令分類402とインストラクションコード403と命令の意味404とから構成されている。
ここでは、CPU名401が“CPU−1”の場合のインストラクションコードの一覧(インストラクションコードテーブル)を示している。
図7は、OS情報記憶手段106に記憶されているOS情報500の例である。OS情報500には、過去に開発したプロジェクトで使用したすべてのOSについて記録されており、この例では、OSの名前であるOS名501とシステムコールの種別を示すシステムコール分類502とシステムコールであるAPI名503とシステムコールの意味504とから構成されている。
ここでは、OS名501が“OS−1”の場合のシステムコールの一覧(システムコールテーブル)を示している。
次に、図5に示すフローチャートにより、入力されたデバイス情報に一致するデバイスの制御プログラムのソースコードを検索する検索抽出手段104の動作を説明する。
まず、検索情報入力手段101により新規に開発する機器装置で使用するデバイスのデバイス種別201とデバイスメーカー202とデバイス型名203をデバイス情報200として入力する(S10)。
次に、検索抽出手段104は、プロジェクト情報記憶手段102に記憶されている過去に開発した製品に対応する複数のプロジェクト情報300の中からデバイス情報330を検索する(S11)。
次に、プロジェクト情報300の中のデバイス情報330がステップS10で入力されたデバイス情報と一致するか確認する(S12)。
ステップS12でデバイス情報が一致した場合には、そのデバイスの制御プログラムのソースファイル名336を表示し、終了する(S13)。
一方、ステップS12でデバイス情報が一致しなかった場合には、同じプロジェクトの中の全てのデバイスについて検索したか確認し(S14)、まだデバイス情報がある場合にはステップS11に戻り、同じプロジェクトの次のデバイス情報を検索する(S11)。
ステップS14で1つのプロジェクトの中の全てのデバイス情報を検索しても見つからなかった場合には、全てのプロジェクト情報について検索したか確認し(S15)、まだプロジェクト情報がある場合には、ステップ11に戻り(S15でNoの場合)、次のプロジェクト情報の中のデバイス情報を検索する(S11)。
一方、ステップS15でプロジェクト情報記憶手段102に記憶されている全てのプロジェクト情報のデバイス情報を検索しても見つからない場合には終了する(S16)。
なお、図5の例では、プロジェクト情報記憶手段102に記憶されているプロジェクト情報からのみ所望のデバイス情報を検索する例を示したが、図4に示すようにソースコード中のコメント行でデバイス情報を記載している場合には、既存ソースコード保存手段103に保存してあるすべてのソースコード中を所望のデバイス情報の検索を行うようにしても良い。
ソースコード中のデバイス情報を検索する場合は、図5に示すすべてのプロジェクト情報のデバイス情報を検索した後にすべてのソースコード中のデバイス情報を検索するようにしても良いし、プロジェクト情報の記録が充分でない場合は、ソースコード中のみ所望のデバイス情報を検索するようにしても良い。
次に、図8に示すフローチャートにより、検索抽出手段104で見つかったソースコードに対して、デバイスにアクセスしているソースコード部分およびCPUの命令コードを使用しているソースコード部分およびOSのシステムコールを使用しているソースコード部分を抽出するコード抽出手段107の動作を説明する。
まず、検索抽出手段104で見つかったソースファイル名のファイルを開き、1行読み込む(S50)。
次に、プロジェクト情報300から検索抽出手段104で見つかったソースファイル名のファイルが属するデバイス情報330のアドレス情報335に記載されているアドレス空間、例えば図2の例では“0x8000−0x80FF”のアドレス空間の文字列が含まれているかを調べる(S51)。該当する行であればステップS52へ移行し、ステップS51で該当していなければステップS53へ移行する。
ステップS52では、その行にデバイスに依存するコードであることを示すマークをし、次のステップS53に移行する。
次に、検索抽出手段104で見つかったソースファイル名のファイルが属するプロジェクト情報300のCPU310によりプロジェクトで使用されたCPU(図2の例では“CPU−1”)からCPU情報記憶手段105に記憶されているインストラクションコード一覧を取得し、ステップS50で読み込んだ行に該当するインストラクションコードがあるか調べる(S53)。該当する行であればステップS54へ移行し、ステップS53で該当していなければステップS55へ移行する。
ステップS54では、その行にCPUに依存するコードであることを示すマークをし、次のステップS55に移行する。
次に、検索抽出手段104で見つかったソースファイル名のファイルが属するプロジェクト情報300のOS320によりプロジェクトで使用されたOS(図2の例では“OS−1”)からOS情報記憶手段106に記憶されているシステムコールであるAPI名一覧を取得し、ステップS50で読み込んだ行に該当するシステムコールがあるか調べる(S55)。該当する行であればステップS56へ移行し、ステップS51で該当していなければステップS57へ移行する。
ステップS56では、その行にOSに依存するコードであることを示すマークをし、次のステップS57に移行する。
ステップS57では、ソースファイルのすべての行を調べていなければステップS50へ戻り次の行を読み込む。すべての行が調べ終わっていればコード抽出手段107は終了する。
図9は、コード抽出手段107により抽出した結果を表示手段108に表示した例である。一番左の欄から“デバイス”欄は当該行がデバイスに依存した行を示し、“CPU”欄は当該行がCPUに依存したコードである行であることを示し、“OS”欄は当該行がOSに依存した行であることを示し、“行”欄はソースコードの行番号を示し、“ソースコード”欄は当該行のソースコードを示している。
図9の例では、7行目にデバイスのアドレス情報“0x8000−0x80FF”のアドレス空間に一致した“0x8000”があるため、“デバイス”欄に○印が表示されてデバイスに依存したコードが記載された行であることを示している。
11行目には、“CPU−1”のCPU情報400のインストラクションコード403である“CPU1_INS_1”が使用されているため、“CPU”欄に○印が表示されてCPUに依存したコードが記載された行であることを示している。
12行目には、“OS−1”のOS情報500のAPI名503である“OS1_API_1”が使用されているため、“OS”欄に○印が表示されてOSに依存したコードが記載された行であることを示している。
なお、実施の形態1の図1、図9の例では、デバイスにアクセスしているソースコード部分およびCPUの命令コードを使用しているソースコード部分およびOSのシステムコールを使用しているソースコード部分を抽出する機能をコード抽出手段107によりすべてを実施しているが、それぞれ、デバイスアクセスコード抽出手段、命令コード抽出手段、システムコールコード抽出手段として、別々の構成としても良い。
また、図9の例では、該当する行に「○」印を付けてデバイス依存またはCPU依存またはOS依存を示すマークとしたが、該当する行を異なる色で表示することでデバイス依存またはCPU依存またはOS依存を示してもよい。
以上のように、実施の形態1では、新規に開発する装置を構成するデバイスのデバイス情報を入力することにより、過去に開発した同じデバイスの制御プログラムのソースコードを検索し表示するようにしているので、新規開発の装置を構成するデバイスの制御プログラムを過去に開発した同じデバイスの制御プログラムを流用し移植する作業を効率的に行うことができる。
また、CPUからデバイスへのアクセス方法の違いや、CPUに依存したアセンブリ言語の違い、または、OSのシステムコールの違いを、移植するソースコード上に示すようにしているので、移植作業を行う場合に修正すべきソースコード行を一目で見つけることができるようになるため、移植作業の効率をさらに向上することができる。
本発明の活用例として、組み込みソフトウェアシステムのデバイス制御プログラムの開発支援装置として利用することが可能である。
100 プログラム再利用システム
101 検索情報入力手段
102 プロジェクト情報記憶手段
103 既存ソースコード保存手段
104 検索抽出手段
105 CPU情報記憶手段
106 OS情報記憶手段
107 コード抽出手段
108 表示手段
200 デバイス情報入力画面
201 デバイス種別
202 デバイスメーカー
203 デバイス型名
300 プロジェクト情報
310 CPU
320 OS
330 デバイス情報
331 デバイス種別
332 メーカー
333 型名
334 アクセス方式
335 アドレス情報
336 ソースファイル名
400 CPU情報
401 CPU名
402 命令分類
403 インストラクションコード
404 命令の意味
500 OS情報
501 OS名
502 システムコール分類
503 API名
504 システムコールの意味

Claims (5)

  1. CPUを備えた装置を動作させるソフトウェアプログラムのソースコードを複数保存するソースコード保存手段と、
    前記装置に内蔵する周辺機能部であるデバイスのデバイス情報を有するプロジェクト情報を複数記憶するプロジェクト情報記憶手段と、
    前記デバイス情報には、前記デバイスを特定する情報と前記ソースコード保存手段に保存した前記デバイスを制御するプログラムのソースコード情報とが含まれ、
    前記プロジェクト情報記憶手段に記憶したプロジェクト情報の中から、検索対象のデバイスを特定する情報と一致するデバイス情報を検索する検索手段と、
    前記検索手段で検索した結果のデバイス情報に含まれたソースコード情報に基づき、前記ソースコード保存手段に保存されたソースコードを抽出する抽出手段と、
    前記抽出手段が抽出した抽出結果を表示する表示手段と、
    を備えたことを特徴とするプログラム再利用システム。
  2. 前記プロジェクト情報記憶手段に記憶したデバイス情報には、前記デバイスにアクセスするアドレス情報がさらに含まれ、
    前記検索手段により検索されたデバイス情報に含まれる前記アドレス情報を抽出し、前記抽出手段により前記抽出したソースコード中において、前記抽出したアドレス情報にアクセスしているソースコード部分を抽出するデバイスアクセスコード抽出手段と、を備え
    前記表示手段は、
    前記抽出手段および前記デバイスアクセスコード抽出手段の少なくとも一つの抽出結果を表示する
    ことを特徴とする請求項1に記載のプログラム再利用システム。
  3. 前記プロジェクト情報記憶手段に記憶したプロジェクト情報には、
    前記CPUの名前を示すCPU情報がさらに含まれ、
    複数のCPUのCPU名と命令コードと該命令コードの動作とで構成されるインストラクションコードテーブルと、
    前記検索手段により検索されたデバイス情報を有するプロジェクト情報に基づいて前記CPU名を抽出し、前記検索手段が抽出したソースコード中において、前記インストラクションコードテーブルから前記抽出したCPU名に対応する命令コードを使用しているソースコード部分を抽出する命令コード抽出手段と、を備え
    前記表示手段は、
    前記抽出手段、前記デバイスアクセスコード抽出手段、前記命令コード抽出手段の少なくとも一つの抽出結果を表示する
    ことを特徴とする請求項1または2に記載のプログラム再利用システム。
  4. 前記プロジェクト情報記憶手段に記憶したプロジェクト情報には、
    前記装置を構成するオペレーティングシステムを特定するOS名を含むオペレーティングシステム情報がさらに含まれ、
    複数のオペレーティングシステムのOS名とオペレーティングシステムが独自に持つシステムコール名と該システムコールの動作とで構成されるシステムコールテーブルと、
    前記検索手段により検索されたデバイス情報を有するプロジェクト情報に基づいて前記OS名を抽出し、前記検索手段が抽出したソースコード中において、前記システムコールテーブルから前記抽出したOS名のオペレーティングシステムが持つシステムコールを使用しているソースコード部分を抽出するシステムコールコード抽出手段と、を備え
    前記表示手段は、
    前記抽出手段、前記デバイスアクセスコード抽出手段、前記命令コード抽出手段、前記システムコールコード抽出手段の少なくとも一つの抽出結果を表示する
    ことを特徴とする請求項1乃至3いずれかに記載のプログラム再利用システム。
  5. CPUを備えた装置を動作させるソフトウェアプログラムのソースコードを複数保存するソースコード保存手段と、
    前記装置に内蔵する周辺機能部であるデバイスのデバイス情報を有するプロジェクト情報を複数記憶するプロジェクト情報記憶手段と、備えたプログラム再利用システムに使用される方法であって、
    前記デバイス情報には、前記デバイスを特定する情報と、前記ソースコード保存手段に保存した前記デバイスを制御するプログラムのソースコード情報と、が含まれ、
    検索対象のデバイスを特定する情報である検索情報を入力する入力ステップと、
    前記入力ステップで入力された検索情報と一致するデバイス情報を、前記プロジェクト情報記憶手段に記憶したプロジェクト情報の中から検索する検索ステップと、
    前記検索ステップで検索した結果のデバイス情報に含まれたソースコード情報に基づき、前記ソースコード保存手段に保存されたソースコードを抽出する抽出ステップと、
    前記抽出ステップで抽出した抽出結果を表示する表示ステップと、
    を備えたことを特徴とするプログラム再利用方法。
JP2011222710A 2011-10-07 2011-10-07 プログラム再利用システムおよびプログラム再利用方法 Expired - Fee Related JP5821495B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011222710A JP5821495B2 (ja) 2011-10-07 2011-10-07 プログラム再利用システムおよびプログラム再利用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011222710A JP5821495B2 (ja) 2011-10-07 2011-10-07 プログラム再利用システムおよびプログラム再利用方法

Publications (2)

Publication Number Publication Date
JP2013084085A JP2013084085A (ja) 2013-05-09
JP5821495B2 true JP5821495B2 (ja) 2015-11-24

Family

ID=48529226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011222710A Expired - Fee Related JP5821495B2 (ja) 2011-10-07 2011-10-07 プログラム再利用システムおよびプログラム再利用方法

Country Status (1)

Country Link
JP (1) JP5821495B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263509A (ja) * 1995-03-24 1996-10-11 Toshiba Corp ソフトウェア利用装置
JPH08314699A (ja) * 1995-05-15 1996-11-29 Hitachi Ltd オペレーティングシステムの生成方法、生成装置および計算機システム
JP2001195254A (ja) * 1999-10-25 2001-07-19 Matsushita Electric Works Ltd ソフトウェア開発支援システム
JP2001282523A (ja) * 2000-03-30 2001-10-12 Hitachi Software Eng Co Ltd プログラム移植支援装置および記録媒体
JP2002108611A (ja) * 2000-09-28 2002-04-12 Fujitsu Ltd プログラム変換装置およびプログラム変換方法
JP2002351938A (ja) * 2001-05-22 2002-12-06 Mitsubishi Electric Corp 設計自動化装置
JP2004246690A (ja) * 2003-02-14 2004-09-02 Canon Inc プログラム移植支援システム

Also Published As

Publication number Publication date
JP2013084085A (ja) 2013-05-09

Similar Documents

Publication Publication Date Title
JP7090657B2 (ja) アプリケーションをアップグレードするための方法、装置、デバイスならびに記憶媒体
CN103744709B (zh) 补丁加载方法及装置
CN110287702B (zh) 一种二进制漏洞克隆检测方法及装置
TWI521428B (zh) 用於可延伸韌體抽取之方法及相關計算平台
US20080295069A1 (en) User-extensible rule-based source code modification
CN107480476B (zh) 一种基于ELF感染的Android本地层指令编译虚拟化加壳方法
CN105446725A (zh) 用于模型驱动开发的方法和系统
KR20220092615A (ko) 적시(Just-In-Time) 컨테이너
EP2778629A1 (en) Method and device for code change detection
WO2017020459A1 (zh) 一种为宿主配置插件包的方法与装置
US20160246709A1 (en) Source code unit testing using an indexing tool
US10387124B2 (en) System and method for creating domain specific language
US20230315416A1 (en) Code translation method and apparatus, and device
CN106201564B (zh) 在线升级基于内核虚拟机模块的设备和方法
US8819626B2 (en) Sharable development environment bookmarks for functional/data flow
JP5821495B2 (ja) プログラム再利用システムおよびプログラム再利用方法
Szolek HLA typing from short-read sequencing data with OptiType
US10649743B2 (en) Application developing method and system
CN112003837B (zh) 基于Modbus协议的设备智能适配方法、装置及存储介质
CN112463202B (zh) 操作系统功能组件的配置方法及装置
JPWO2018116522A1 (ja) 判定装置、判定方法及び判定プログラム
CN106598839A (zh) 一种面向目标代码的程序静态分析方法
JP2008204023A (ja) プログラマブルコントローラシステム、プログラマブルコントローラのデバッグ方法
JP2011113298A (ja) 流用ソースコード解析システム及びプログラム並びに記録媒体
JP2017091027A (ja) システム開発支援システム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20140326

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150908

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150921

R151 Written notification of patent or utility model registration

Ref document number: 5821495

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees