JP2019145049A - Dynamic link management device, method for managing dynamic link, and program - Google Patents
Dynamic link management device, method for managing dynamic link, and program Download PDFInfo
- Publication number
- JP2019145049A JP2019145049A JP2018031369A JP2018031369A JP2019145049A JP 2019145049 A JP2019145049 A JP 2019145049A JP 2018031369 A JP2018031369 A JP 2018031369A JP 2018031369 A JP2018031369 A JP 2018031369A JP 2019145049 A JP2019145049 A JP 2019145049A
- Authority
- JP
- Japan
- Prior art keywords
- dynamic link
- subprogram
- condition
- program
- link management
- 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.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、主プログラムに副プログラムを連結させるための動的リンクを管理する、動的リンク管理装置、及び動的リンク管理方法に関し、更には、これらを実現するためのプログラムに関する。 The present invention relates to a dynamic link management apparatus and a dynamic link management method for managing a dynamic link for linking a sub program to a main program, and further relates to a program for realizing these.
従来から、プログラム間のリンクの方法としては、静的リンクと動的リンクとの2つの方法が知られている。このうち、静的リンクは、主プログラムと、その実行に必要な副プログラムとを、予め連結するリンクであり、主プログラムの開発の時点で設定される。一方、動的リンクは、主プログラムと、その実行に必要な副プログラムとを、実行時に連結するリンクである。 Conventionally, as a method of linking between programs, two methods of a static link and a dynamic link are known. Among these, the static link is a link that links the main program and the subprogram necessary for its execution in advance, and is set at the time of development of the main program. On the other hand, a dynamic link is a link that links a main program and a subprogram necessary for its execution at the time of execution.
ところで、これらのリンクのうち、動的リンクを採用した場合は、主プログラムが論理空間にロードされても、副プログラムはロードされないため、プロセス起動時のロード時間を短縮することもできる。また、動的リンクを採用した場合は、副プロラムは使用時にのみ呼び出され、処理終了後に解放され、その後、削除される(例えば、特許文献1及び2参照)。このため、動的リンクは、十分な論理空間が確保されていないシステムに有効である。 By the way, among these links, when the dynamic link is adopted, even if the main program is loaded into the logical space, the sub-program is not loaded. Therefore, the load time at the time of starting the process can be shortened. When dynamic linking is adopted, the secondary program is called only at the time of use, released after the process is completed, and then deleted (see, for example, Patent Documents 1 and 2). For this reason, the dynamic link is effective for a system in which sufficient logical space is not secured.
ところで、動的リンクにおいて、副プログラムを解放するためには、プログラマーが、主プログラムにおいて、解放指示をプログラミングする必要がある。しかしながら、特に、論理空間が十分に確保されていないシステムにおいては、プログラマーは、使用セグメント数、動的リンクによるオーバーヘッドを考慮して、解放指示をプログラミングする必要があり、動的リンクの使用はプログラマーにとって大きな負担となっている。 By the way, in order to release a subprogram in dynamic linking, the programmer needs to program a release instruction in the main program. However, especially in a system where the logical space is not sufficiently secured, the programmer needs to program the release instruction in consideration of the number of segments used and the overhead due to dynamic linking. It is a big burden for us.
本発明の目的の一例は、上記問題を解消し、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定し得る、動的リンク管理装置、動的リンク管理方法、及びプログラムを提供することにある。 An example of an object of the present invention is to provide a dynamic link management device and a dynamic link management capable of setting a subprogram release instruction without manual operation while solving the above-described problems and suppressing overhead due to dynamic links. It is to provide a method and a program.
上記目的を達成するため、本発明の一側面における動的リンク管理装置は、
動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
を備えていることを特徴とする。
In order to achieve the above object, a dynamic link management device according to one aspect of the present invention includes:
A non-operation count measurement unit that measures the number of times that a subprogram connected to the main program by dynamic linking does not operate during a set time;
A setting condition determination unit that determines whether the measured number of times satisfies a preset condition;
A program release unit that releases the subprogram from the dynamic link when it is determined by the setting condition determination unit that the measured number of times satisfies a preset condition;
It is characterized by having.
また、上記目的を達成するため、本発明の一側面における動的リンク管理方法は、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を有することを特徴とする。
In order to achieve the above object, a dynamic link management method according to one aspect of the present invention includes:
(A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
It is characterized by having.
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を実行させることを特徴とする。
Furthermore, in order to achieve the above object, a program according to one aspect of the present invention is provided.
On the computer,
(A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
Is executed.
以上のように本発明によれば、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定することができる。 As described above, according to the present invention, it is possible to set an instruction to release a subprogram without manual operation while suppressing overhead generation due to dynamic linking.
(実施の形態)
以下、本発明の実施の形態における、動的リンク管理装置、動的リンク管理方法、及びプログラムについて、図1〜図6を参照しながら説明する。
(Embodiment)
Hereinafter, a dynamic link management device, a dynamic link management method, and a program according to an embodiment of the present invention will be described with reference to FIGS.
[装置構成]
最初に、本実施の形態における動的リンク管理装置の概略構成について説明する。図1は、本発明の実施の形態における動的リンク管理装置の概略構成を示すブロック図である。
[Device configuration]
First, a schematic configuration of the dynamic link management device according to the present embodiment will be described. FIG. 1 is a block diagram showing a schematic configuration of a dynamic link management device according to an embodiment of the present invention.
図1に示す、本実施の形態における動的リンク管理装置10は、主プログラムに副プロ
グラムを連結させる動的リンクを管理するための装置である。図1に示すように、動的リンク管理装置10は、非稼働回数計測部11と、設定条件判定部12と、プログラム解放部13とを備えている。
A dynamic
非稼働回数計測部11は、動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する。設定条件判定部12は、計測された回数が、予め設定された条件(以下「解放条件」と表記する。)を満たすかどうかを判定する。プログラム解放部13は、設定条件判定部12によって、計測された回数が、予め設定された解放条件を満たすと判定された場合に、副プログラムを動的リンクから解放する。
The non-operation
このように、本実施の形態では、動的リンクによって主プログラムに連結されている副プログラムは、一定条件下で、自動的に動的リンクから解放される。このため、本実施の形態によれば、動的リンクによるオーバーヘッド発生を抑止すると同時に、人手によることなく、副プログラムの解放指示を行うことができる。 As described above, in this embodiment, the subprogram connected to the main program by the dynamic link is automatically released from the dynamic link under a certain condition. For this reason, according to the present embodiment, it is possible to instruct the release of the subprogram without manual intervention while suppressing the overhead generation due to the dynamic link.
続いて、図2を用いて、本実施の形態における動的リンク管理装置10の構成をより具体的に説明する。図2は、本発明の実施の形態における動的リンク管理装置の具体的構成を示すブロック図である。
Next, the configuration of the dynamic
図2に示すように、本実施の形態における動的リンク管理装置10は、コンピュータ20のオペレーティングシステム21上に、プログラムによって構築されている。コンピュータ20は、例えば、サーバ装置である。また、オペレーティングシステム21上には、主プログラム22と副プログラム24とを動的にリンクする動的リンク23が構築されている。動的リンク23は、副プログラムを主プログラムに連結するための動的リンクを生成する機能と、副プログラムを解放して動的リンクを削除する機能とを備えている。
As shown in FIG. 2, the dynamic
また、図2に示すように、本実施の形態では、動的リンク管理装置10は、上述した、非稼働回数計測部11、設定条件判定部12、及びプログラム解放部13に加えて、条件設定部14と、監視テーブル格納部15とを備えている。
As shown in FIG. 2, in the present embodiment, the dynamic
条件設定部14は、副プログラムの状況に応じて、解放条件を設定する。条件設定部14は、例えば、解放条件として、副プログラムが実行される論理空間で副プログラムが使用するセグメントの枚数に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定する。また、条件設定部14は、解放条件として、副プログラムが連結されている動的リンクの数に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定することもできる。
The
また、条件設定部14は、動的リンクから解放されたことがある副プログラムに対しては、解放条件として、副プログラムにおける解放されてからの経過時間に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定することもできる。
In addition, the
監視テーブル格納部15は、副プログラム監視テーブル16を格納している。副プログラム監視テーブル16には、非稼働回数計測部11によって計測された、主プログラム22に連結されている副プログラム24が設定時間の間稼働しなかった回数(以下「動的リンク制御カウンタ」とも表記する)が、登録される。また、副プログラム監視テーブル16には、条件設定部14によって設定された、解放条件となる閾値(以下「動的リンク制御カウンタ閾値」とも表記する)も登録される。
The monitoring
ここで、図3を用いて、副プログラム監視テーブル16の具体例について説明する。図
3は、本発明の実施の形態で用いられる副プログラム監視テーブルの一例を示す図である。
Here, a specific example of the subprogram monitoring table 16 will be described with reference to FIG. FIG. 3 is a diagram showing an example of a subprogram monitoring table used in the embodiment of the present invention.
図3に示すように、副プログラム監視テーブル16には、副プログラム毎に、動的リンクフラグ、実行カウンタ、稼働フラグ、動的リンク制御カウンタ、動的リンク制御カウンタ閾値、及び副プログラム解放時間が登録されている。 As shown in FIG. 3, the subprogram monitoring table 16 includes a dynamic link flag, an execution counter, an operation flag, a dynamic link control counter, a dynamic link control counter threshold, and a subprogram release time for each subprogram. It is registered.
このうち、動的リンクフラグは、対応する副プログラム24の主プログラムとの連結状態を示すフラグである。動的リンクフラグは、対応する副プログラム24が動的リンク23によって主プログラムに連結されると、「on」となり、解放されると、「off」となる。実行カウンタは、対応する副プログラムに連結されている主プログラムの数を示している。また、稼働フラグは、対応する副プログラムの稼働状態を示すフラグである。
Among these, the dynamic link flag is a flag indicating a connection state of the
動的リンク制御カウンタは、上述した、非稼働回数計測部11によって計測された、副プログラム24が設定時間の間稼働しなかった回数である。動的リンク制御カウンタ閾値は、条件設定部14によって設定された閾値である。また、動的リンク制御カウンタ閾値は、条件設定部14によって閾値が設定される度に更新される。副プログラム解放時間は、副プログラムが動的リンクから解放されてからの経過時間である。
The dynamic link control counter is the number of times that the
[装置構成]
次に、本発明の実施の形態における動的リンク管理装置10の動作について図4及び図5を用いて説明する。以下の説明においては、適宜図1〜図3を参酌する。また、本実施の形態では、動的リンク管理装置10を動作させることによって、動的リンク管理方法が実施される。よって、本実施の形態における動的リンク管理方法の説明は、以下の動的リンク管理装置10の動作説明に代える。
[Device configuration]
Next, the operation of the dynamic
最初に、図4を用いて、解放条件(動的リンク制御カウンタ閾値)の設定処理及び更新処理について説明する。図4は、本発明の実施の形態における動的リンク管理装置の解放条件設定時及び更新時の動作を示すフロー図である。 First, the release condition (dynamic link control counter threshold) setting process and update process will be described with reference to FIG. FIG. 4 is a flowchart showing operations at the time of release condition setting and update of the dynamic link management device according to the embodiment of the present invention.
図4に示すように、最初に、条件設定部14は、オペレーティングシステム21上に用意されている副プログラム24のうちの1つを選択する(ステップA1)。次に、条件設定部14は、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在しているかどうかを判定する(ステップA2)。
As shown in FIG. 4, first, the
ステップA2の判定の結果、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在していない場合は、条件設定部14は、副プログラム監視テーブル16に、選択した副プログラム24のエントリを作成する(ステップA3)。
If it is determined in step A2 that the entry of the selected
次に、条件設定部14は、選択した副プログラム24が実行される論理空間でのセグメント使用枚数に応じて、動的リンク制御カウンタ閾値を設定する(ステップA4)。更に、条件設定部14は、選択した副プログラム24の実行カウンタを「0(ゼロ)」に設定し、次いで、動的リンクフラグをonとして(ステップA5)、処理を終了する。
Next, the
また、上述のステップA2の判定の結果、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在している場合は、条件設定部14は、選択した副プログラム24が動的リンク23によって主プログラム22に連結されているかどうかを判定する(ステップA6)。
If the entry of the selected
ステップA6の判定の結果、選択した副プログラム24が動的リンク23によって主プ
ログラム22に連結されている場合は、条件設定部14は、動的リンク制御カウンタ閾値を1増加させ(ステップA7)、処理を終了する。
As a result of the determination in step A6, when the selected
一方、ステップA6の判定の結果、選択した副プログラム24が動的リンク23によって主プログラム22に連結されていない場合は、条件設定部14は、ステップA8を実行する。ステップA8では、条件設定部14は、選択した副プログラム24が動的リンクから解放された時からの経過時間が、基準値より短いかどうかを判定する。
On the other hand, if the result of determination in step A6 is that the selected
ステップA8の判定の結果、選択した副プログラム24が動的リンク23から解放された時からの経過時間が、基準値より短い場合は、条件設定部14は、ステップA7を実行し、動的リンク制御カウンタ閾値を1増加させる。一方、ステップA8の判定の結果、選択した副プログラム24が動的リンクから解放された時からの経過時間が、基準値より短くない場合は、条件設定部14は、処理を終了する。
If it is determined in step A8 that the elapsed time from when the selected
ステップA1〜A8の実行により、副プログラム24に対して、動的リンク制御カウンタ閾値の設定又は更新が実行される。また、ステップA1〜A8は、全ての副プログラム24を対象にして繰り返し実行される。
By executing steps A1 to A8, the dynamic link control counter threshold value is set or updated for the
また、条件設定部14は、選択した副プログラム24が稼働した場合は、その稼働フラグをonに設定すると共に、実行カウンタを1増加させる。更に、条件設定部14は、主プログラム22が稼働して、処理が、稼働している副プログラム24から主プログラム22に戻ると、この副プログラム24の実行カウンタを1減少させる。
In addition, when the selected
続いて、図5を用いて、解放条件の判定処理について説明する。図5は、本発明の実施の形態における動的リンク管理装置の解放条件判定時の動作を示すフロー図である。 Next, the release condition determination process will be described with reference to FIG. FIG. 5 is a flowchart showing an operation at the time of release condition determination of the dynamic link management device according to the embodiment of the present invention.
図5に示すように、非稼働回数計測部11は、主プログラム22に動的リンク23によって連結されている副プログラム24の1つを選択する(ステップB1)。次に、非稼働回数計測部11は、副プログラム監視テーブル16に基づいて、選択した副プログラム24が稼働しているかどうかを判定する(ステップB2)
As illustrated in FIG. 5, the non-working
ステップB2の判定の結果、選択した副プログラム24が稼働している場合は、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の動的リンク制御カウンタを「0(ゼロ)」に設定する(ステップB3)。次いで、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の稼働フラグをoffに設定し(ステップB4)、処理を終了する。
If the selected
ステップB2の判定の結果、選択した副プログラム24が稼働していない場合は、非稼働回数計測部11は、選択した副プログラム24が実行されているかどうかを判定する(ステップB5)。ステップB5の判定の結果、選択した副プログラム24が実行されている場合は、非稼働回数計測部11は、処理を終了する。
If the selected
一方、ステップB5の判定の結果、選択した副プログラム24が実行されていない場合は、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の動的リンク制御カウンタを1増加させる(ステップB6)。
On the other hand, if the selected
次に、ステップB6が実行されると、設定条件判定部12は、ステップB1で選択された副プログラム24において、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えているかどうかを判定する(ステップB7)。即ち、設定条件判定部12は、解放条件が満たされているかどうかを判定する。
Next, when step B6 is executed, the setting
ステップB7の判定の結果、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えていない場合、即ち、解放条件が満たされていない場合は、設定条件判定部12は、処理を終了する。
As a result of the determination in step B7, when the value of the dynamic link control counter does not exceed the dynamic link control counter threshold value, that is, when the release condition is not satisfied, the setting
一方、ステップB7の判定の結果、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えている場合、即ち、解放条件が満たされている場合は、設定条件判定部12は、そのことをプログラム解放部13に通知する。
On the other hand, as a result of the determination in step B7, when the value of the dynamic link control counter exceeds the dynamic link control counter threshold value, that is, when the release condition is satisfied, the setting
これにより、プログラム解放部13は、動的リンク23に対して、選択された副プログラム24を解放するように指示を与え、この副プログラム24を動的リンク23から解放する(ステップB8)。
As a result, the
また、ステップB8の実行時においては、プログラム解放部13は、解放された副プログラム24の動的リンク制御カウンタを「0(ゼロ)」に設定し、稼働フラグ及び動的リンクフラグをoffに設定し、更に、この副プログラムの解放時からの経過時間の計測を開始する。
At the time of execution of Step B8, the
ステップB1〜B8の実行により、解放条件を満たす副プログラム24は、人手によることなく、動的リンク23から解放される。また、ステップB1〜B8は、動的リンクによって主プログラム22に連結されている全ての副プログラム24を対象にして、繰り返し実行される。
By executing Steps B1 to B8, the
[実施の形態による効果]
以上のように、本実施の形態によれば、動的リンク23によって主プログラム22に連結されている副プログラム24は、解放条件を満たすと、自動的に動的リンクから解放される。本実施の形態によれば、人手によることなく、副プログラムの解放指示を行うことができる。また、この解放条件は、副プログラム24の状況に応じて、最適化されるので、動的リンクによるオーバーヘッドの発生をより確実に抑止することができる。
[Effects of the embodiment]
As described above, according to the present embodiment, the
[プログラム]
本実施の形態におけるプログラムは、コンピュータに、図4に示すステップA1〜A8、図5に示すステップB1〜B8を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における動的リンク管理装置10と動的リンク管理方法とを実現することができる。この場合、コンピュータのプロセッサは、非稼働回数計測部11、設定条件判定部12、プログラム解放部13、及び条件設定部14として機能し、処理を行なう。また、本実施の形態では、監視テーブル格納部15は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって実現できる。
[program]
The program in the present embodiment may be a program that causes a computer to execute steps A1 to A8 shown in FIG. 4 and steps B1 to B8 shown in FIG. By installing and executing this program on a computer, the dynamic
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、非稼働回数計測部11、設定条件判定部12、プログラム解放部13、及び条件設定部14のいずれかとして機能しても良い。また、監視テーブル格納部15は、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていても良い。
The program in the present embodiment may be executed by a computer system constructed by a plurality of computers. In this case, for example, each computer may function as any one of the non-operation
ここで、本実施の形態におけるプログラムを実行することによって、動的リンク管理装置を実現するコンピュータ20について図6を用いて説明する。図6は、本発明の実施の形態における動的リンク管理装置を実現するコンピュータの一例を示すブロック図である
。また、図6は、図2示したコンピュータ20の物理的構成を示している。
Here, a
図6に示すように、コンピュータ20は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ20は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていても良い。
As shown in FIG. 6, the
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
The
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
Specific examples of the
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ20における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
The data reader /
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記録媒体が挙げられる。
Specific examples of the
なお、本実施の形態における動的リンク管理装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、動的リンク管理装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
Note that the dynamic
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記15)によって表現することができるが、以下の記載に限定されるものではない。 Part or all of the above-described embodiment can be expressed by (Appendix 1) to (Appendix 15) described below, but is not limited to the following description.
(付記1)
動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
を備えていることを特徴とする動的リンク管理装置。
(Appendix 1)
A non-operation count measurement unit that measures the number of times that a subprogram connected to the main program by dynamic linking does not operate during a set time;
A setting condition determination unit that determines whether the measured number of times satisfies a preset condition;
A program release unit that releases the subprogram from the dynamic link when it is determined by the setting condition determination unit that the measured number of times satisfies a preset condition;
A dynamic link management device comprising:
(付記2)
付記1に記載の動的リンク管理装置であって、
前記副プログラムの状況に応じて、前記条件を設定する、条件設定部を更に備えている、
ことを特徴とする動的リンク管理装置。
(Appendix 2)
The dynamic link management device according to attachment 1, wherein
A condition setting unit for setting the condition according to the status of the subprogram;
A dynamic link management device characterized by that.
(付記3)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(Appendix 3)
The dynamic link management device according to
The condition setting unit sets, as the condition, a threshold value that is an upper limit of the measured number of times according to the number of segments used by the subprogram in a logical space in which the subprogram is executed.
A dynamic link management device characterized by that.
(付記4)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(Appendix 4)
The dynamic link management device according to
The condition setting unit sets, as the condition, a threshold value that is an upper limit of the measured number of times according to the number of dynamic links to which the subprogram is connected.
A dynamic link management device characterized by that.
(付記5)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(Appendix 5)
The dynamic link management device according to
For the subprogram that has been released from the dynamic link by the condition setting unit, as the condition, the upper limit of the measured number of times according to the elapsed time from the release in the subprogram Set the threshold value to be
A dynamic link management device characterized by that.
(付記6)
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を有することを特徴とする動的リンク管理方法。
(Appendix 6)
(A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
A dynamic link management method characterized by comprising:
(付記7)
付記6に記載の動的リンク管理方法であって、
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に有する、ことを特徴とする動的リンク管理方法。
(Appendix 7)
The dynamic link management method according to attachment 6, wherein
(D) The dynamic link management method further comprising a step of setting the condition according to the status of the subprogram.
(付記8)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(Appendix 8)
The dynamic link management method according to
In the step (d), as the condition, a threshold value that is the upper limit of the measured number is set according to the number of segments used by the subprogram in the logical space in which the subprogram is executed.
A dynamic link management method characterized by the above.
(付記9)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(Appendix 9)
The dynamic link management method according to
In the step (d), as the condition, a threshold value that is the upper limit of the measured number of times is set according to the number of dynamic links to which the subprogram is connected.
A dynamic link management method characterized by the above.
(付記10)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(Appendix 10)
The dynamic link management method according to
In the step (d), for the subprogram that has been released from the dynamic link, as the condition, the number of times measured according to the elapsed time from the release in the subprogram Set a threshold that is the upper limit of
A dynamic link management method characterized by the above.
(付記11)
コンピュータに、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を実行させるプログラム。
(Appendix 11)
On the computer,
(A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
A program that executes
(付記12)
付記11に記載のプログラムであって、
前記コンピュータに、
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に実行させる、
ことを特徴とするプログラム。
(Appendix 12)
The program according to
In the computer,
(D) According to the status of the subprogram, the condition is set, and a step is further executed.
A program characterized by that.
(付記13)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
(Appendix 13)
The program according to
In the step (d), as the condition, a threshold value that is the upper limit of the measured number is set according to the number of segments used by the subprogram in the logical space in which the subprogram is executed.
A program characterized by that.
(付記14)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
(Appendix 14)
The program according to
In the step (d), as the condition, a threshold value that is the upper limit of the measured number of times is set according to the number of dynamic links to which the subprogram is connected.
A program characterized by that.
(付記15)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
(Appendix 15)
The program according to
In the step (d), for the subprogram that has been released from the dynamic link, as the condition, the number of times measured according to the elapsed time from the release in the subprogram Set a threshold that is the upper limit of
A program characterized by that.
以上のように本発明によれば、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定することができる。本発明は、動的リンクが利用される各種コンピュータシステムに有用である。 As described above, according to the present invention, it is possible to set an instruction to release a subprogram without manual operation while suppressing overhead generation due to dynamic linking. The present invention is useful for various computer systems in which dynamic links are used.
10 動的リンク管理装置
11 非稼働回数計測部
12 設定条件判定部
13 プログラム解放部
14 条件設定部
15 監視テーブル格納部
16 副プログラム監視テーブル
20 コンピュータ
21 オペレーティングシステム
22 主プログラム
23 動的リンク
24 副プログラム
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス
DESCRIPTION OF
112
Claims (15)
計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
を備えていることを特徴とする動的リンク管理装置。 A non-operation count measurement unit that measures the number of times that a subprogram connected to the main program by dynamic linking does not operate during a set time;
A setting condition determination unit that determines whether the measured number of times satisfies a preset condition;
A program release unit that releases the subprogram from the dynamic link when it is determined by the setting condition determination unit that the measured number of times satisfies a preset condition;
A dynamic link management device comprising:
前記副プログラムの状況に応じて、前記条件を設定する、条件設定部を更に備えている、
ことを特徴とする動的リンク管理装置。 The dynamic link management device according to claim 1,
A condition setting unit for setting the condition according to the status of the subprogram;
A dynamic link management device characterized by that.
前記条件設定部が、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。 The dynamic link management device according to claim 2,
The condition setting unit sets, as the condition, a threshold value that is an upper limit of the measured number of times according to the number of segments used by the subprogram in a logical space in which the subprogram is executed.
A dynamic link management device characterized by that.
前記条件設定部が、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。 The dynamic link management device according to claim 2,
The condition setting unit sets, as the condition, a threshold value that is an upper limit of the measured number of times according to the number of dynamic links to which the subprogram is connected.
A dynamic link management device characterized by that.
前記条件設定部が、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。 The dynamic link management device according to claim 2,
For the subprogram that has been released from the dynamic link by the condition setting unit, as the condition, the upper limit of the measured number of times according to the elapsed time from the release in the subprogram Set the threshold value to be
A dynamic link management device characterized by that.
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を有することを特徴とする動的リンク管理方法。 (A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
A dynamic link management method characterized by comprising:
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に有する、ことを特徴とする動的リンク管理方法。 The dynamic link management method according to claim 6,
(D) The dynamic link management method further comprising a step of setting the condition according to the status of the subprogram.
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。 The dynamic link management method according to claim 7,
In the step (d), as the condition, a threshold value that is the upper limit of the measured number is set according to the number of segments used by the subprogram in the logical space in which the subprogram is executed.
A dynamic link management method characterized by the above.
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。 The dynamic link management method according to claim 7,
In the step (d), as the condition, a threshold value that is the upper limit of the measured number of times is set according to the number of dynamic links to which the subprogram is connected.
A dynamic link management method characterized by the above.
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。 The dynamic link management method according to claim 7,
In the step (d), for the subprogram that has been released from the dynamic link, as the condition, the number of times measured according to the elapsed time from the release in the subprogram Set a threshold that is the upper limit of
A dynamic link management method characterized by the above.
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を実行させるプログラム。 On the computer,
(A) measuring the number of times that a subprogram connected to the main program by a dynamic link has not been operated for a set time; and
(B) determining whether the number of times measured in the step (a) satisfies a preset condition;
(C) When the step (b) determines that the number of times measured in the step (a) satisfies a preset condition, the subprogram is released from the dynamic link. , Steps and
A program that executes
前記コンピュータに、
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に実行させる、
ことを特徴とするプログラム。 The program according to claim 11,
In the computer,
(D) According to the status of the subprogram, the condition is set, and a step is further executed.
A program characterized by that.
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。 A program according to claim 12,
In the step (d), as the condition, a threshold value that is the upper limit of the measured number is set according to the number of segments used by the subprogram in the logical space in which the subprogram is executed.
A program characterized by that.
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。 A program according to claim 12,
In the step (d), as the condition, a threshold value that is the upper limit of the measured number of times is set according to the number of dynamic links to which the subprogram is connected.
A program characterized by that.
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。 A program according to claim 12,
In the step (d), for the subprogram that has been released from the dynamic link, as the condition, the number of times measured according to the elapsed time from the release in the subprogram Set a threshold that is the upper limit of
A program characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018031369A JP7067781B2 (en) | 2018-02-23 | 2018-02-23 | Dynamic link management device, dynamic link management method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018031369A JP7067781B2 (en) | 2018-02-23 | 2018-02-23 | Dynamic link management device, dynamic link management method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019145049A true JP2019145049A (en) | 2019-08-29 |
JP7067781B2 JP7067781B2 (en) | 2022-05-16 |
Family
ID=67772483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018031369A Active JP7067781B2 (en) | 2018-02-23 | 2018-02-23 | Dynamic link management device, dynamic link management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7067781B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11232103A (en) * | 1998-02-12 | 1999-08-27 | Matsushita Electric Ind Co Ltd | Program link system and method search system |
US20040015877A1 (en) * | 1998-09-29 | 2004-01-22 | Arrouye Yan J. | Method and apparatus for "just-in-time" dynamic loading and unloading of computer software libraries |
JP2007172519A (en) * | 2005-12-26 | 2007-07-05 | Nec Corp | Information processor, link management method for software module, and program |
JP2010128522A (en) * | 2008-11-25 | 2010-06-10 | Nec Corp | Data processing apparatus, computer program thereof, and data processing method |
-
2018
- 2018-02-23 JP JP2018031369A patent/JP7067781B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11232103A (en) * | 1998-02-12 | 1999-08-27 | Matsushita Electric Ind Co Ltd | Program link system and method search system |
US20040015877A1 (en) * | 1998-09-29 | 2004-01-22 | Arrouye Yan J. | Method and apparatus for "just-in-time" dynamic loading and unloading of computer software libraries |
JP2007172519A (en) * | 2005-12-26 | 2007-07-05 | Nec Corp | Information processor, link management method for software module, and program |
JP2010128522A (en) * | 2008-11-25 | 2010-06-10 | Nec Corp | Data processing apparatus, computer program thereof, and data processing method |
Also Published As
Publication number | Publication date |
---|---|
JP7067781B2 (en) | 2022-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8443178B2 (en) | Operating system image shrinking apparatus and method and computer readable tangible medium storing a program for operating system image shrinking | |
US9465675B2 (en) | Communication control device, information processing apparatus, parallel computer system, and control method for parallel computer system | |
US20170353541A1 (en) | Non-transitory recording medium, information processing method, management node and information processing system | |
US10853128B2 (en) | Virtual machine management device and virtual machine management method | |
US9575827B2 (en) | Memory management program, memory management method, and memory management device | |
CN110609807A (en) | Method, apparatus, and computer-readable storage medium for deleting snapshot data | |
US20160266808A1 (en) | Information processing device, information processing method, and recording medium | |
US9971614B2 (en) | Information processing apparatus and method of controlling the same | |
US9411666B2 (en) | Anticipatory protection of critical jobs in a computing system | |
JP2019145049A (en) | Dynamic link management device, method for managing dynamic link, and program | |
CN111427588A (en) | Suspending installation of firmware packages | |
US8799873B2 (en) | Collecting tracepoint data | |
US9836315B1 (en) | De-referenced package execution | |
JP2008003940A (en) | Protection control device, protection control method, and protection control program | |
JP7141939B2 (en) | industrial controller | |
US20150100865A1 (en) | Apparatus and method for determining one of control units to perform a verification process on data | |
US9069888B2 (en) | Tracking errors in a computing system | |
US9619306B2 (en) | Information processing device, control method thereof, and recording medium | |
US20140019950A1 (en) | Information processing apparatus and method for determining whether a modified program is to be applied | |
JP2009157441A (en) | Information processor, file rearrangement method, and program | |
US20170293504A1 (en) | Dynamically provisioning, managing, and executing tasks | |
JP6226666B2 (en) | Batch processing control program, batch processing system | |
JP2019008437A (en) | Data access device and access error notification method | |
US20220413996A1 (en) | Computer-readable recording medium storing acceleration test program, acceleration test method, and acceleration test apparatus | |
JP5577518B2 (en) | Memory management method, computer and memory management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220315 |
|
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: 20220329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220421 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7067781 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |