JP7067781B2 - 動的リンク管理装置、動的リンク管理方法、及びプログラム - Google Patents

動的リンク管理装置、動的リンク管理方法、及びプログラム Download PDF

Info

Publication number
JP7067781B2
JP7067781B2 JP2018031369A JP2018031369A JP7067781B2 JP 7067781 B2 JP7067781 B2 JP 7067781B2 JP 2018031369 A JP2018031369 A JP 2018031369A JP 2018031369 A JP2018031369 A JP 2018031369A JP 7067781 B2 JP7067781 B2 JP 7067781B2
Authority
JP
Japan
Prior art keywords
subprogram
condition
measured
dynamic
dynamic link
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.)
Active
Application number
JP2018031369A
Other languages
English (en)
Other versions
JP2019145049A (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.)
NEC Solutions Innovators Ltd
Original Assignee
NEC Solutions Innovators Ltd
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 NEC Solutions Innovators Ltd filed Critical NEC Solutions Innovators Ltd
Priority to JP2018031369A priority Critical patent/JP7067781B2/ja
Publication of JP2019145049A publication Critical patent/JP2019145049A/ja
Application granted granted Critical
Publication of JP7067781B2 publication Critical patent/JP7067781B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、主プログラムに副プログラムを連結させるための動的リンクを管理する、動的リンク管理装置、及び動的リンク管理方法に関し、更には、これらを実現するためのプログラムに関する。
従来から、プログラム間のリンクの方法としては、静的リンクと動的リンクとの2つの方法が知られている。このうち、静的リンクは、主プログラムと、その実行に必要な副プログラムとを、予め連結するリンクであり、主プログラムの開発の時点で設定される。一方、動的リンクは、主プログラムと、その実行に必要な副プログラムとを、実行時に連結するリンクである。
ところで、これらのリンクのうち、動的リンクを採用した場合は、主プログラムが論理空間にロードされても、副プログラムはロードされないため、プロセス起動時のロード時間を短縮することもできる。また、動的リンクを採用した場合は、副プロラムは使用時にのみ呼び出され、処理終了後に解放され、その後、削除される(例えば、特許文献1及び2参照)。このため、動的リンクは、十分な論理空間が確保されていないシステムに有効である。
特開平7-114470号公報 特開平7-182239号公報
ところで、動的リンクにおいて、副プログラムを解放するためには、プログラマーが、主プログラムにおいて、解放指示をプログラミングする必要がある。しかしながら、特に、論理空間が十分に確保されていないシステムにおいては、プログラマーは、使用セグメント数、動的リンクによるオーバーヘッドを考慮して、解放指示をプログラミングする必要があり、動的リンクの使用はプログラマーにとって大きな負担となっている。
本発明の目的の一例は、上記問題を解消し、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定し得る、動的リンク管理装置、動的リンク管理方法、及びプログラムを提供することにある。
上記目的を達成するため、本発明の一側面における動的リンク管理装置は、
動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
を備えていることを特徴とする。
また、上記目的を達成するため、本発明の一側面における動的リンク管理方法は、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を有することを特徴とする。
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を実行させることを特徴とする。
以上のように本発明によれば、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定することができる。
図1は、本発明の実施の形態における動的リンク管理装置の概略構成を示すブロック図である。 図2は、本発明の実施の形態における動的リンク管理装置の具体的構成を示すブロック図である。 図3は、本発明の実施の形態で用いられる副プログラム監視テーブルの一例を示す図である。 図4は、本発明の実施の形態における動的リンク管理装置の解放条件設定時及び更新時の動作を示すフロー図である。 図5は、本発明の実施の形態における動的リンク管理装置の解放条件判定時の動作を示すフロー図である。 図6は、本発明の実施の形態における動的リンク管理装置を実現するコンピュータの一例を示すブロック図である。
(実施の形態)
以下、本発明の実施の形態における、動的リンク管理装置、動的リンク管理方法、及びプログラムについて、図1~図6を参照しながら説明する。
[装置構成]
最初に、本実施の形態における動的リンク管理装置の概略構成について説明する。図1は、本発明の実施の形態における動的リンク管理装置の概略構成を示すブロック図である。
図1に示す、本実施の形態における動的リンク管理装置10は、主プログラムに副プロ
グラムを連結させる動的リンクを管理するための装置である。図1に示すように、動的リンク管理装置10は、非稼働回数計測部11と、設定条件判定部12と、プログラム解放部13とを備えている。
非稼働回数計測部11は、動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する。設定条件判定部12は、計測された回数が、予め設定された条件(以下「解放条件」と表記する。)を満たすかどうかを判定する。プログラム解放部13は、設定条件判定部12によって、計測された回数が、予め設定された解放条件を満たすと判定された場合に、副プログラムを動的リンクから解放する。
このように、本実施の形態では、動的リンクによって主プログラムに連結されている副プログラムは、一定条件下で、自動的に動的リンクから解放される。このため、本実施の形態によれば、動的リンクによるオーバーヘッド発生を抑止すると同時に、人手によることなく、副プログラムの解放指示を行うことができる。
続いて、図2を用いて、本実施の形態における動的リンク管理装置10の構成をより具体的に説明する。図2は、本発明の実施の形態における動的リンク管理装置の具体的構成を示すブロック図である。
図2に示すように、本実施の形態における動的リンク管理装置10は、コンピュータ20のオペレーティングシステム21上に、プログラムによって構築されている。コンピュータ20は、例えば、サーバ装置である。また、オペレーティングシステム21上には、主プログラム22と副プログラム24とを動的にリンクする動的リンク23が構築されている。動的リンク23は、副プログラムを主プログラムに連結するための動的リンクを生成する機能と、副プログラムを解放して動的リンクを削除する機能とを備えている。
また、図2に示すように、本実施の形態では、動的リンク管理装置10は、上述した、非稼働回数計測部11、設定条件判定部12、及びプログラム解放部13に加えて、条件設定部14と、監視テーブル格納部15とを備えている。
条件設定部14は、副プログラムの状況に応じて、解放条件を設定する。条件設定部14は、例えば、解放条件として、副プログラムが実行される論理空間で副プログラムが使用するセグメントの枚数に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定する。また、条件設定部14は、解放条件として、副プログラムが連結されている動的リンクの数に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定することもできる。
また、条件設定部14は、動的リンクから解放されたことがある副プログラムに対しては、解放条件として、副プログラムにおける解放されてからの経過時間に応じて、非稼働回数計測部11によって計測された回数の上限となる閾値を設定することもできる。
監視テーブル格納部15は、副プログラム監視テーブル16を格納している。副プログラム監視テーブル16には、非稼働回数計測部11によって計測された、主プログラム22に連結されている副プログラム24が設定時間の間稼働しなかった回数(以下「動的リンク制御カウンタ」とも表記する)が、登録される。また、副プログラム監視テーブル16には、条件設定部14によって設定された、解放条件となる閾値(以下「動的リンク制御カウンタ閾値」とも表記する)も登録される。
ここで、図3を用いて、副プログラム監視テーブル16の具体例について説明する。図
3は、本発明の実施の形態で用いられる副プログラム監視テーブルの一例を示す図である。
図3に示すように、副プログラム監視テーブル16には、副プログラム毎に、動的リンクフラグ、実行カウンタ、稼働フラグ、動的リンク制御カウンタ、動的リンク制御カウンタ閾値、及び副プログラム解放時間が登録されている。
このうち、動的リンクフラグは、対応する副プログラム24の主プログラムとの連結状態を示すフラグである。動的リンクフラグは、対応する副プログラム24が動的リンク23によって主プログラムに連結されると、「on」となり、解放されると、「off」となる。実行カウンタは、対応する副プログラムに連結されている主プログラムの数を示している。また、稼働フラグは、対応する副プログラムの稼働状態を示すフラグである。
動的リンク制御カウンタは、上述した、非稼働回数計測部11によって計測された、副プログラム24が設定時間の間稼働しなかった回数である。動的リンク制御カウンタ閾値は、条件設定部14によって設定された閾値である。また、動的リンク制御カウンタ閾値は、条件設定部14によって閾値が設定される度に更新される。副プログラム解放時間は、副プログラムが動的リンクから解放されてからの経過時間である。
[装置構成]
次に、本発明の実施の形態における動的リンク管理装置10の動作について図4及び図5を用いて説明する。以下の説明においては、適宜図1~図3を参酌する。また、本実施の形態では、動的リンク管理装置10を動作させることによって、動的リンク管理方法が実施される。よって、本実施の形態における動的リンク管理方法の説明は、以下の動的リンク管理装置10の動作説明に代える。
最初に、図4を用いて、解放条件(動的リンク制御カウンタ閾値)の設定処理及び更新処理について説明する。図4は、本発明の実施の形態における動的リンク管理装置の解放条件設定時及び更新時の動作を示すフロー図である。
図4に示すように、最初に、条件設定部14は、オペレーティングシステム21上に用意されている副プログラム24のうちの1つを選択する(ステップA1)。次に、条件設定部14は、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在しているかどうかを判定する(ステップA2)。
ステップA2の判定の結果、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在していない場合は、条件設定部14は、副プログラム監視テーブル16に、選択した副プログラム24のエントリを作成する(ステップA3)。
次に、条件設定部14は、選択した副プログラム24が実行される論理空間でのセグメント使用枚数に応じて、動的リンク制御カウンタ閾値を設定する(ステップA4)。更に、条件設定部14は、選択した副プログラム24の実行カウンタを「0(ゼロ)」に設定し、次いで、動的リンクフラグをonとして(ステップA5)、処理を終了する。
また、上述のステップA2の判定の結果、選択した副プログラム24のエントリが、副プログラム監視テーブル16に存在している場合は、条件設定部14は、選択した副プログラム24が動的リンク23によって主プログラム22に連結されているかどうかを判定する(ステップA6)。
ステップA6の判定の結果、選択した副プログラム24が動的リンク23によって主プ
ログラム22に連結されている場合は、条件設定部14は、動的リンク制御カウンタ閾値を1増加させ(ステップA7)、処理を終了する。
一方、ステップA6の判定の結果、選択した副プログラム24が動的リンク23によって主プログラム22に連結されていない場合は、条件設定部14は、ステップA8を実行する。ステップA8では、条件設定部14は、選択した副プログラム24が動的リンクから解放された時からの経過時間が、基準値より短いかどうかを判定する。
ステップA8の判定の結果、選択した副プログラム24が動的リンク23から解放された時からの経過時間が、基準値より短い場合は、条件設定部14は、ステップA7を実行し、動的リンク制御カウンタ閾値を1増加させる。一方、ステップA8の判定の結果、選択した副プログラム24が動的リンクから解放された時からの経過時間が、基準値より短くない場合は、条件設定部14は、処理を終了する。
ステップA1~A8の実行により、副プログラム24に対して、動的リンク制御カウンタ閾値の設定又は更新が実行される。また、ステップA1~A8は、全ての副プログラム24を対象にして繰り返し実行される。
また、条件設定部14は、選択した副プログラム24が稼働した場合は、その稼働フラグをonに設定すると共に、実行カウンタを1増加させる。更に、条件設定部14は、主プログラム22が稼働して、処理が、稼働している副プログラム24から主プログラム22に戻ると、この副プログラム24の実行カウンタを1減少させる。
続いて、図5を用いて、解放条件の判定処理について説明する。図5は、本発明の実施の形態における動的リンク管理装置の解放条件判定時の動作を示すフロー図である。
図5に示すように、非稼働回数計測部11は、主プログラム22に動的リンク23によって連結されている副プログラム24の1つを選択する(ステップB1)。次に、非稼働回数計測部11は、副プログラム監視テーブル16に基づいて、選択した副プログラム24が稼働しているかどうかを判定する(ステップB2)
ステップB2の判定の結果、選択した副プログラム24が稼働している場合は、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の動的リンク制御カウンタを「0(ゼロ)」に設定する(ステップB3)。次いで、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の稼働フラグをoffに設定し(ステップB4)、処理を終了する。
ステップB2の判定の結果、選択した副プログラム24が稼働していない場合は、非稼働回数計測部11は、選択した副プログラム24が実行されているかどうかを判定する(ステップB5)。ステップB5の判定の結果、選択した副プログラム24が実行されている場合は、非稼働回数計測部11は、処理を終了する。
一方、ステップB5の判定の結果、選択した副プログラム24が実行されていない場合は、非稼働回数計測部11は、副プログラム監視テーブル16において、選択した副プログラム24の動的リンク制御カウンタを1増加させる(ステップB6)。
次に、ステップB6が実行されると、設定条件判定部12は、ステップB1で選択された副プログラム24において、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えているかどうかを判定する(ステップB7)。即ち、設定条件判定部12は、解放条件が満たされているかどうかを判定する。
ステップB7の判定の結果、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えていない場合、即ち、解放条件が満たされていない場合は、設定条件判定部12は、処理を終了する。
一方、ステップB7の判定の結果、動的リンク制御カウンタの値が、動的リンク制御カウンタ閾値を超えている場合、即ち、解放条件が満たされている場合は、設定条件判定部12は、そのことをプログラム解放部13に通知する。
これにより、プログラム解放部13は、動的リンク23に対して、選択された副プログラム24を解放するように指示を与え、この副プログラム24を動的リンク23から解放する(ステップB8)。
また、ステップB8の実行時においては、プログラム解放部13は、解放された副プログラム24の動的リンク制御カウンタを「0(ゼロ)」に設定し、稼働フラグ及び動的リンクフラグをoffに設定し、更に、この副プログラムの解放時からの経過時間の計測を開始する。
ステップB1~B8の実行により、解放条件を満たす副プログラム24は、人手によることなく、動的リンク23から解放される。また、ステップB1~B8は、動的リンクによって主プログラム22に連結されている全ての副プログラム24を対象にして、繰り返し実行される。
[実施の形態による効果]
以上のように、本実施の形態によれば、動的リンク23によって主プログラム22に連結されている副プログラム24は、解放条件を満たすと、自動的に動的リンクから解放される。本実施の形態によれば、人手によることなく、副プログラムの解放指示を行うことができる。また、この解放条件は、副プログラム24の状況に応じて、最適化されるので、動的リンクによるオーバーヘッドの発生をより確実に抑止することができる。
[プログラム]
本実施の形態におけるプログラムは、コンピュータに、図4に示すステップA1~A8、図5に示すステップB1~B8を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における動的リンク管理装置10と動的リンク管理方法とを実現することができる。この場合、コンピュータのプロセッサは、非稼働回数計測部11、設定条件判定部12、プログラム解放部13、及び条件設定部14として機能し、処理を行なう。また、本実施の形態では、監視テーブル格納部15は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって実現できる。
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、非稼働回数計測部11、設定条件判定部12、プログラム解放部13、及び条件設定部14のいずれかとして機能しても良い。また、監視テーブル格納部15は、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていても良い。
ここで、本実施の形態におけるプログラムを実行することによって、動的リンク管理装置を実現するコンピュータ20について図6を用いて説明する。図6は、本発明の実施の形態における動的リンク管理装置を実現するコンピュータの一例を示すブロック図である
。また、図6は、図2示したコンピュータ20の物理的構成を示している。
図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)を備えていても良い。
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ20における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体が挙げられる。
なお、本実施の形態における動的リンク管理装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、動的リンク管理装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
上述した実施の形態の一部又は全部は、以下に記載する(付記1)~(付記15)によって表現することができるが、以下の記載に限定されるものではない。
(付記1)
動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
を備えていることを特徴とする動的リンク管理装置。
(付記2)
付記1に記載の動的リンク管理装置であって、
前記副プログラムの状況に応じて、前記条件を設定する、条件設定部を更に備えている、
ことを特徴とする動的リンク管理装置。
(付記3)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(付記4)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(付記5)
付記2に記載の動的リンク管理装置であって、
前記条件設定部が、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理装置。
(付記6)
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を有することを特徴とする動的リンク管理方法。
(付記7)
付記6に記載の動的リンク管理方法であって、
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に有する、ことを特徴とする動的リンク管理方法。
(付記8)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(付記9)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(付記10)
付記7に記載の動的リンク管理方法であって、
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とする動的リンク管理方法。
(付記11)
コンピュータに、
(a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
(b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
(c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
を実行させるプログラム。
(付記12)
付記11に記載のプログラムであって、
前記コンピュータに、
(d)前記副プログラムの状況に応じて、前記条件を設定する、ステップを更に実行させる、
ことを特徴とするプログラム。
(付記13)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
(付記14)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
(付記15)
付記12に記載のプログラムであって、
前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
ことを特徴とするプログラム。
以上のように本発明によれば、動的リンクによるオーバーヘッド発生を抑止しつつ、人手によることなく、副プログラムの解放指示を設定することができる。本発明は、動的リンクが利用される各種コンピュータシステムに有用である。
10 動的リンク管理装置
11 非稼働回数計測部
12 設定条件判定部
13 プログラム解放部
14 条件設定部
15 監視テーブル格納部
16 副プログラム監視テーブル
20 コンピュータ
21 オペレーティングシステム
22 主プログラム
23 動的リンク
24 副プログラム
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

Claims (9)

  1. 動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
    計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
    前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
    前記副プログラムの状況に応じて、前記条件を設定する、条件設定部と、
    を備え
    前記条件設定部が、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理装置。
  2. 動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
    計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
    前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
    前記副プログラムの状況に応じて、前記条件を設定する、条件設定部と、
    を備え、
    前記条件設定部が、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理装置。
  3. 動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、非稼働回数計測部と、
    計測された前記回数が、予め設定された条件を満たすかどうかを判定する、設定条件判定部と、
    前記設定条件判定部によって、計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、プログラム解放部と、
    前記副プログラムの状況に応じて、前記条件を設定する、条件設定部と、
    を備え、
    前記条件設定部が、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理装置。
  4. (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を有し、
    前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理方法。
  5. (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を有し、
    前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理方法。
  6. (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を有し、
    前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とする動的リンク管理方法。
  7. コンピュータに、
    (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を実行させ、
    前記(d)のステップにおいて、前記条件として、前記副プログラムが実行される論理空間で前記副プログラムが使用するセグメントの枚数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とするプログラム。
  8. コンピュータに、
    (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を実行させ、
    前記(d)のステップにおいて、前記条件として、前記副プログラムが連結されている動的リンクの数に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とするプログラム。
  9. コンピュータに、
    (a)動的リンクによって主プログラムに連結されている副プログラムが、設定時間の間、稼働しなかった回数を計測する、ステップと、
    (b)前記(a)のステップで計測された前記回数が、予め設定された条件を満たすかどうかを判定する、ステップと、
    (c)前記(b)のステップによって、前記(a)のステップで計測された前記回数が、予め設定された条件を満たすと判定された場合に、前記副プログラムを前記動的リンクから解放する、ステップと、
    (d)前記副プログラムの状況に応じて、前記条件を設定する、ステップと、
    を実行させ、
    前記(d)のステップにおいて、動的リンクから解放されたことがある前記副プログラムに対しては、前記条件として、前記副プログラムにおける解放されてからの経過時間に応じて、計測された前記回数の上限となる閾値を設定する、
    ことを特徴とするプログラム。
JP2018031369A 2018-02-23 2018-02-23 動的リンク管理装置、動的リンク管理方法、及びプログラム Active JP7067781B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018031369A JP7067781B2 (ja) 2018-02-23 2018-02-23 動的リンク管理装置、動的リンク管理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018031369A JP7067781B2 (ja) 2018-02-23 2018-02-23 動的リンク管理装置、動的リンク管理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019145049A JP2019145049A (ja) 2019-08-29
JP7067781B2 true JP7067781B2 (ja) 2022-05-16

Family

ID=67772483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018031369A Active JP7067781B2 (ja) 2018-02-23 2018-02-23 動的リンク管理装置、動的リンク管理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7067781B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 (ja) 2005-12-26 2007-07-05 Nec Corp 情報処理装置、ソフトウェアモジュールのリンク管理方法及びプログラム
JP2010128522A (ja) 2008-11-25 2010-06-10 Nec Corp データ処理装置、そのコンピュータプログラムおよびデータ処理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11232103A (ja) * 1998-02-12 1999-08-27 Matsushita Electric Ind Co Ltd プログラムリンク方式及びメソッドサーチ方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 (ja) 2005-12-26 2007-07-05 Nec Corp 情報処理装置、ソフトウェアモジュールのリンク管理方法及びプログラム
JP2010128522A (ja) 2008-11-25 2010-06-10 Nec Corp データ処理装置、そのコンピュータプログラムおよびデータ処理方法

Also Published As

Publication number Publication date
JP2019145049A (ja) 2019-08-29

Similar Documents

Publication Publication Date Title
US8898394B2 (en) Data migration method
US8443178B2 (en) Operating system image shrinking apparatus and method and computer readable tangible medium storing a program for operating system image shrinking
US9250889B2 (en) Assigning severity to a software update
JP2020091835A (ja) 情報を処理するための方法及び装置
US10025670B2 (en) Information processing apparatus, memory dump method, and storage medium
US9575827B2 (en) Memory management program, memory management method, and memory management device
JP6829168B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP7067781B2 (ja) 動的リンク管理装置、動的リンク管理方法、及びプログラム
US9442790B2 (en) Computer and dumping control method
JP6229733B2 (ja) 情報処理装置、方法、プログラム及び記録媒体
US9971614B2 (en) Information processing apparatus and method of controlling the same
US10430287B2 (en) Computer
US20160259579A1 (en) Storage control apparatus and storage control method
JP5694100B2 (ja) 情報処理装置、プログラムおよび情報処理方法
JP7141939B2 (ja) 産業用コントローラ
US9069742B1 (en) Information processing apparatus
US9104559B2 (en) Preventing out-of-space errors for legacy option ROM in a computing system
US9619306B2 (en) Information processing device, control method thereof, and recording medium
JP2012185605A (ja) 仮想マシンシステム、仮想ディスク管理方法、及び仮想ディスク管理プログラム
JP6812332B2 (ja) 情報処理システム及び情報処理方法
US20230076302A1 (en) Computer-readable recording medium having stored therein control program, information processing apparatus, and method for controlling
US20220179579A1 (en) Monitoring performance of remote distributed storage
JP2007172519A (ja) 情報処理装置、ソフトウェアモジュールのリンク管理方法及びプログラム
US20210263825A1 (en) Computing device monitoring
JP2019168952A (ja) メモリ管理装置、メモリ管理方法、及びプログラム

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