JP6221314B2 - Information processing apparatus and program - Google Patents
Information processing apparatus and program Download PDFInfo
- Publication number
- JP6221314B2 JP6221314B2 JP2013082424A JP2013082424A JP6221314B2 JP 6221314 B2 JP6221314 B2 JP 6221314B2 JP 2013082424 A JP2013082424 A JP 2013082424A JP 2013082424 A JP2013082424 A JP 2013082424A JP 6221314 B2 JP6221314 B2 JP 6221314B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- add
- program
- application domain
- resource information
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、情報処理装置及びプログラムに関する。 The present invention relates to an information processing apparatus and a program.
近年、アドインと呼ばれるソフトウェアの拡張機構を採用し、柔軟に機能追加を行えるアプリケーションが開発されている。このようなアプリケーションは、プラットフォームと呼ばれる実行可能形式のプログラムが、第三者から提供されたアドインのDLL(Dynamic Link Library)形式のプログラムを読み込むことで、機能拡張される。これらのプログラムは、通常、コンピュータ上の一のプロセスで動作する。従って、上記のプログラムが使用するリソース情報(例えば、CPU使用率やメモリ使用量)は、一のプロセス単位で取得される。 In recent years, applications that can add functions flexibly have been developed by adopting a software expansion mechanism called add-in. Such an application is expanded in function by an executable program called a platform that reads an add-in DLL (Dynamic Link Library) program provided by a third party. These programs usually operate in one process on the computer. Therefore, resource information (for example, CPU usage rate and memory usage) used by the above program is acquired in one process unit.
特許文献1には、CPU負荷が高い時に動作していた関数の名前を把握することのできる、プログラム解析技術が開示されている。 Patent Document 1 discloses a program analysis technique that can grasp the name of a function that was operating when the CPU load is high.
一方、Microsoft社(登録商標)の提供する.NET Framework(登録商標)は、各プログラム間で使用されるリソースを分離するために使用可能な、より安全で柔軟性に富んだ処理単位であるアプリケーションドメインを用意している。各アプリケーションドメインは、例えば、一のプロセスに内にロードされ得る(非特許文献1)。 On the other hand, provided by Microsoft (registered trademark). The NET Framework (registered trademark) provides an application domain that is a safer and more flexible processing unit that can be used to separate resources used between programs. Each application domain can be loaded in one process, for example (Non-Patent Document 1).
アドイン形式のプログラムを利用するアプリケーションの、システムに与える負荷が異常な場合等には、その原因を突き止めるために、各アドインが使用するリソースの情報を取得する必要がある。しかしながら、従来の技術では、プラットフォームとアドインとが一のプロセス内で動作するため、各アドインが使用するリソース情報を把握することができなかった。 When the load applied to the system of an application that uses an add-in format program is abnormal, it is necessary to acquire information on resources used by each add-in in order to determine the cause. However, in the conventional technology, the platform and the add-in operate in one process, and thus resource information used by each add-in cannot be grasped.
本発明は、このような問題に鑑みてなされたものであり、アドイン毎に使用されるリソースの情報を把握できるようにすることを目的とする。 The present invention has been made in view of such a problem, and an object thereof is to make it possible to grasp information on resources used for each add-in.
上述した課題を解決し目的を達成するため、本発明の一実施形態における情報処理装置は、
.NET Frameworkのアプリケーションドメインを用いて複数のプログラムを実行可能な情報処理装置であって、
前記複数のプログラムは一のプロセスで動作し、
前記プログラムを、該プログラムごとに異なるアプリケーションドメインに登録する登録部と、
前記プロセスで使用されているリソースの情報と、前記アプリケーションドメインで使用されているリソースの情報を取得する取得部と、
前記取得部が取得した前記リソースの情報を、前記プログラムで使用されているリソースの情報として出力する出力部と、
を有し、
前記出力部は、前記プロセスで使用されているリソースの情報が第二の閾値以上であり、かつ、前記アプリケーションドメインで使用されているリソースの情報が第一の閾値以上である場合に、前記アプリケーションドメインで使用されているリソースの情報を出力する。
In order to solve the above-described problems and achieve the object, an information processing apparatus according to an embodiment of the present invention provides:
. An information processing apparatus capable of executing a plurality of programs using a NET Framework application domain,
The plurality of programs operate in one process,
A registration unit for registering the program in a different application domain for each program;
An acquisition unit that acquires information on resources used in the process and information on resources used in the application domain;
An output unit that outputs the resource information acquired by the acquisition unit as information of a resource used in the program;
I have a,
The output unit, when the resource information used in the process is equal to or greater than a second threshold value and the resource information used in the application domain is equal to or greater than a first threshold value, Outputs information about resources used in the domain .
また、本発明の一実施形態におけるプログラムは、
コンピュータに、
一のプロセスで動作する複数のプログラムを、該プログラムごとに異なる.NET Frameworkのアプリケーションドメインに登録する登録段階と、
前記プロセスで使用されているリソースの情報と、前記アプリケーションドメインで使用されているリソースの情報を取得する取得段階と、
前記取得段階により取得された前記リソースの情報を、前記プログラムで使用されているリソースの情報として出力する出力段階と、
を実行させ、
前記出力段階は、前記プロセスで使用されているリソースの情報が第二の閾値以上であり、かつ、前記アプリケーションドメインで使用されているリソースの情報が第一の閾値以上である場合に、前記アプリケーションドメインで使用されているリソースの情報を出力する。
Moreover, the program in one embodiment of the present invention is:
On the computer,
A plurality of programs operating in one process are different for each program. A registration stage for registering in the application domain of the NET Framework;
And information resources used in the process, an acquisition step for acquiring information of resources used by the application domain,
An output step of outputting the resource information acquired in the acquisition step as information of a resource used in the program;
Was executed,
In the output step, when the resource information used in the process is equal to or greater than a second threshold and the resource information used in the application domain is equal to or greater than the first threshold, the application Outputs information about resources used in the domain .
本発明によれば、アドイン毎に使用されるリソースの情報を把握できる。 According to the present invention, it is possible to grasp resource information used for each add-in.
以下、本発明の実施形態を図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
1.システムの概要
2.ハードウェア構成
3.機能構成
4.動作例
なお、本明細書では、プログラムの語を、アプリケーション又はライブラリを含む概念として、使用する。
1. 1. System overview 2. Hardware configuration Functional configuration Operation Example In this specification, the word “program” is used as a concept including an application or a library.
≪ 1. システムの概要 ≫
図1は、本発明の一実施形態におけるシステムの概要を表す図である。システムは、情報処理装置1と一以上の監視装置2a、2b(以下、まとめて監視装置2と表現する)を含む。情報処理装置1は、例えば、工業プラント内に設置されるコンピュータであり、Microsoft社の提供する.NET Frameworkの実行環境(ランタイム)を備えている。
≪ 1. System overview ≫
FIG. 1 is a diagram showing an overview of a system according to an embodiment of the present invention. The system includes an information processing device 1 and one or more monitoring devices 2a and 2b (hereinafter collectively referred to as monitoring device 2). The information processing apparatus 1 is, for example, a computer installed in an industrial plant and provided by Microsoft Corporation. It has a NET Framework execution environment (runtime).
情報処理装置1には、プラットフォームと呼ばれるプログラム(アプリケーション)がインストールされている。プラットフォームは、プラント内のネットワークを介して接続された監視装置2から送信される情報をはじめ、カレンダー情報や、プラント内の設備一覧の情報等、プラントの管理者に有用な情報を、一元的に表示するアプリケーションである。これらの情報は、プラットフォーム向けに開発された、DLL形式のアドインのプログラム(ライブラリ)によって提供される。 A program (application) called a platform is installed in the information processing apparatus 1. The platform centrally collects information useful for plant managers, such as information sent from the monitoring device 2 connected via the network in the plant, calendar information, and information on the list of equipment in the plant. It is an application to display. These pieces of information are provided by a DLL (add-in) program (library) developed for the platform.
図2は、プラットフォームの表示する画面の例を表す。図2に示すように、プラットフォーム(ここでは、「マルチプラットフォーム」と名付けられている)のウィンドウの内部に、複数のアドインの表示領域が含まれる。各アドインは、これらの表示領域を利用して、様々な情報を表示することができる。 FIG. 2 shows an example of a screen displayed by the platform. As shown in FIG. 2, a display area for a plurality of add-ins is included inside a window of a platform (herein, named “multi-platform”). Each add-in can display various information using these display areas.
また、プラットフォームは、アドインごとに、使用するリソースの情報(以下、「リソース情報」とする)を取得し、出力することができる。リソース情報には、例えば、1秒あたりのCPU使用率や、メモリ使用量(瞬時値)が含まれる。プラットフォームは、管理者等からの指示があった場合、あるいは、所定の条件が満たされた場合に、図3に例示されるアドイン管理画面を表示し、アドインの使用するリソース情報を一覧表示する。管理者等は、例えば、情報処理装置1のシステム負荷が異常に高くなっているとき、アドインがその原因となっていないか確認することができる。 Further, the platform can acquire and output information on resources to be used (hereinafter referred to as “resource information”) for each add-in. The resource information includes, for example, a CPU usage rate per second and a memory usage amount (instantaneous value). The platform displays the add-in management screen illustrated in FIG. 3 when there is an instruction from the administrator or the like or when a predetermined condition is satisfied, and displays a list of resource information used by the add-in. For example, when the system load of the information processing apparatus 1 is abnormally high, the administrator or the like can check whether the add-in is the cause.
プラットフォームは、DLL形式のアドインの各々のリソース情報を得るために、.NET Frameworkのアプリケーションドメインの機能を使用する。アプリケーションドメインとは、CPUやメモリ等のリソースを管理する一単位であり、一のプロセス内で動作する。プラットフォームは、各アドインを、アドインごとに異なるアプリケーションドメイン内で動作させる。プラットフォームは、各アプリケーションドメインのリソース情報を取得し、このリソース情報を、アドインのリソース情報とみなすことにより、アドインごとのリソース情報を得ることができる。 The platform obtains resource information for each add-in in DLL format. Use the application domain function of NET Framework. An application domain is a unit for managing resources such as a CPU and a memory, and operates within one process. The platform operates each add-in in a different application domain for each add-in. The platform can obtain resource information for each add-in by acquiring resource information of each application domain and regarding the resource information as resource information of the add-in.
図4は、プラットフォーム及びアドインのアプリケーションドメインの構成例を示している。プラットフォームの実行ファイル10は、機能拡張用のDLLであるアドインA11と、アドインB12をロードする。ここで、図4には、プラットフォーム10がロードするライブラリA13(非アドイン)と、アドインB12がロードするライブラリB14(非アドイン)も記載されている。プラットフォーム10(及びライブラリA13)は、アプリケーションドメインA15で動作する。一方で、アドインA11は、プラットフォームのアプリケーションドメインA15とは異なる、アプリケーションドメインB16で動作する。さらに、アドインB12(及びライブラリB14)は、プラットフォーム及びアドインA11のアプリケーションドメインA、Bとは異なる、アプリケーションドメインC17で動作する。 FIG. 4 shows a configuration example of the application domain of the platform and the add-in. The platform executable file 10 loads add-in A11 and add-in B12 which are DLLs for function expansion. Here, FIG. 4 also shows a library A13 (non-add-in) loaded by the platform 10 and a library B14 (non-add-in) loaded by the add-in B12. The platform 10 (and library A13) operates in the application domain A15. On the other hand, the add-in A11 operates in an application domain B16 that is different from the platform application domain A15. Further, the add-in B12 (and the library B14) operates in an application domain C17 that is different from the application domains A and B of the platform and the add-in A11.
以上のように、本発明の一実施形態における情報処理装置1により、プラットフォームとなるアプリケーション上で動作する、DLL形式のアドインのリソース使用状況を把握することができる。その結果、情報処理装置1の負荷が異常に高い場合等に、如何なるアドインが原因となっているかを突き止めることが可能となる。 As described above, the information processing apparatus 1 according to an embodiment of the present invention can grasp the resource usage status of a DLL-type add-in that operates on an application serving as a platform. As a result, when the load on the information processing apparatus 1 is abnormally high, it is possible to determine what add-in is the cause.
なお、情報処理装置1は、プラント内に設置されたコンピュータの例に限られず、任意の場所に設置された、任意のコンピュータであってもよい。 The information processing apparatus 1 is not limited to an example of a computer installed in a plant, and may be an arbitrary computer installed in an arbitrary place.
≪ 2. ハードウェア構成 ≫
図5は、本発明の一実施形態における情報処理装置1のハードウェア構成例を表す図である。図1に例示される情報処理装置1は、CPU21と、ROM22と、RAM23と、HDD(Hard Disk Drive)/SSD(Solid State Drive)24と、NIC(Network Interface Card)25と、ディスプレイ26と、キーボード27と、マウス28と、バス29を有する。
≪ 2. Hardware configuration ≫
FIG. 5 is a diagram illustrating a hardware configuration example of the information processing apparatus 1 according to the embodiment of the present invention. An information processing apparatus 1 illustrated in FIG. 1 includes a CPU 21, a ROM 22, a RAM 23, an HDD (Hard Disk Drive) / SSD (Solid State Drive) 24, a NIC (Network Interface Card) 25, a display 26, A keyboard 27, a mouse 28, and a bus 29 are provided.
CPU21は、情報処理装置1の動作制御を行うOS及びシステムプログラム、並びに、プラットフォーム等のアプリケーションを実行する。ROM22は、CPU21が実行するシステムプログラム等を記憶する。RAM23は、CPU21のワークエリアを構成する。HDD/SSD24は、プラットフォームやアドイン等のプログラムやライブラリ、監視装置2から受け取ったデータ等を記憶する。NIC25は、有線の通信インターフェースとその制御装置を含み、外部の装置と通信を行うために用いられる。ディスプレイ26は、液晶ディスプレイ及びグラフィックスコントローラを含み、ユーザに対して情報を提示する。キーボード27及びマウス28は、管理者等から入力を受け付ける。バス29は、当該情報処理装置1を構成する上記の装置を相互に接続し、データのやり取りを行う。 The CPU 21 executes an OS and a system program that perform operation control of the information processing apparatus 1 and an application such as a platform. The ROM 22 stores a system program executed by the CPU 21 and the like. The RAM 23 constitutes a work area for the CPU 21. The HDD / SSD 24 stores programs and libraries such as platforms and add-ins, data received from the monitoring device 2, and the like. The NIC 25 includes a wired communication interface and its control device, and is used to communicate with an external device. The display 26 includes a liquid crystal display and a graphics controller, and presents information to the user. The keyboard 27 and mouse 28 accept input from an administrator or the like. The bus 29 connects the above-described devices constituting the information processing apparatus 1 to each other and exchanges data.
上記構成により、本発明の一実施形態における情報処理装置1は、.NET Frameworkのランタイム上で、プラットフォーム及びアドインを動作させ、アドインごとのリソース情報を出力することができる。 With the above configuration, the information processing apparatus 1 according to the embodiment of the present invention The platform and the add-in can be operated on the runtime of the NET Framework, and resource information for each add-in can be output.
≪ 3. 機能構成 ≫
次に、図6を用いて、本発明の一実施形態における情報処理装置1の機能ブロックを説明する。図6には、情報処理装置1が備える様々な要素のうち、本実施形態の説明に特に関連する要素が示されている。図6に示される情報処理装置1は、アドイン格納部51と、登録部52と、制御部53と、条件格納部54、取得部55と、閾値格納部56と、比較部57と、出力制御部58と、出力部59と、表示部60と、通信部61とを有する。
≪ 3. Functional configuration ≫
Next, functional blocks of the information processing apparatus 1 according to an embodiment of the present invention will be described with reference to FIG. FIG. 6 shows elements that are particularly relevant to the description of the present embodiment among various elements included in the information processing apparatus 1. The information processing apparatus 1 illustrated in FIG. 6 includes an add-in storage unit 51, a registration unit 52, a control unit 53, a condition storage unit 54, an acquisition unit 55, a threshold storage unit 56, a comparison unit 57, and output control. A unit 58, an output unit 59, a display unit 60, and a communication unit 61.
アドイン格納部51は、HDD/SSD24によって実現され、DLL形式で提供されるアドインのプログラムを格納する。 The add-in storage unit 51 is realized by the HDD / SSD 24 and stores an add-in program provided in the DLL format.
登録部52は、主にCPU21の処理によって実現され、アドイン格納部51に格納されたアドインを読み込み、アドインごとに、異なるアプリケーションドメインを定義する。そして、各アドインを、定義したアプリケーションドメインに、それぞれ登録する。また、登録部52は、プラットフォームを、アドインのアプリケーションドメインと異なるアプリケーションドメインに登録する。なお、このように定義された各アドイン及びプラットフォームのアプリケーションドメインは、一のプロセス内で動作する。 The registration unit 52 is realized mainly by the processing of the CPU 21, reads the add-in stored in the add-in storage unit 51, and defines a different application domain for each add-in. Each add-in is registered in the defined application domain. The registration unit 52 registers the platform in an application domain different from the add-in application domain. Note that each add-in and platform application domain defined in this way operates in one process.
制御部53は、主にCPU21の処理によって実現される、.NET Framworkのランタイムである。.NET Frameworkは、アプリケーションドメイン単位で、CPUやメモリ等のリソースを管理する。また、.NET Frameworkは、アプリケーションドメインを定義するクラス(AppDomain)のプロパティを通じて、アプリケーションドメインで使用されているリソース情報を提供する。 The control unit 53 is realized mainly by the processing of the CPU 21. It is a runtime of NET Framework. . The NET Framework manages resources such as a CPU and a memory for each application domain. Also,. The NET Framework provides resource information used in the application domain through properties of a class (AppDomain) that defines the application domain.
条件格納部54は、HDD/SSD24によって実現され、アドインごとの、リソース情報の取得条件又は出力条件を格納する。具体的な条件の例は、以下の通りである。
(1)リソース情報の取得対象か否か
(2)リソース情報の出力対象か否か
(3)リソース情報の出力周期
上記の他に、リソース情報の取得又は出力に関する、他の条件が任意に定義され得る。
The condition storage unit 54 is realized by the HDD / SSD 24 and stores resource information acquisition conditions or output conditions for each add-in. Examples of specific conditions are as follows.
(1) Resource information acquisition target (2) Resource information output target (3) Resource information output cycle In addition to the above, other conditions relating to resource information acquisition or output are arbitrarily defined Can be done.
取得部55は、主にCPU21の処理によって実現され、登録部52が登録したアプリケーションドメインの使用するリソース情報を、条件格納部54に格納された条件(1)に従って、取得する。すなわち、取得部55は、条件格納部54で、「リソース情報の取得対象」となっているアドインに対応する、アプリケーションドメインのリソース情報を取得する。 The acquisition unit 55 is realized mainly by the processing of the CPU 21, and acquires the resource information used by the application domain registered by the registration unit 52 according to the condition (1) stored in the condition storage unit 54. That is, the acquisition unit 55 acquires the resource information of the application domain corresponding to the add-in that is the “resource information acquisition target” in the condition storage unit 54.
ここで、リソース情報は、例えば、1秒あたりのCPU使用率(%)又はメモリ使用量(バイト;瞬時値)である。1秒あたりのCPU使用率は、.NET Frameworkの提供する機能(例えば、AppDomainクラスのMonitoringTotalProcessorTimeプロパティ)により取得される、アプリケーションドメインの使用したCPU時間に基づいて、算出することができる。具体的な算出方法については、後述する。また、メモリ使用量(瞬時値)も、同様に、.NET Frameworkの提供する機能(例えば、AppDomainクラスのMonitoringSurvivedMemorySize プロパティ等)により、取得され得る。 Here, the resource information is, for example, a CPU usage rate (%) or memory usage (bytes; instantaneous value) per second. CPU usage per second is. It can be calculated based on the CPU time used by the application domain, which is obtained by a function provided by the NET Framework (for example, the MonitoringTotalProcessorTime property of the AppDomain class). A specific calculation method will be described later. Similarly, the memory usage (instantaneous value) is also. It can be acquired by a function provided by the NET Framework (for example, the MonitoringSurvivedMemorySize property of the AppDomain class).
また、取得部55は、プラットフォーム及びアドインのアプリケーションドメインの動作する一のプロセスのリソース情報を取得する。プロセスのリソース情報は、.NET Frameworkの機能(例えば、ProcessクラスのTotalProcessorTimeプロパティや、AppDomainクラスのMonitoringSurvivedProcessMemorySizeプロパティ)により、取得することができる。 The acquisition unit 55 acquires resource information of one process in which the platform and the application domain of the add-in operate. The process resource information is: It can be acquired by the function of the NET Framework (for example, the TotalProcessorTime property of the Process class and the MonitoringSurvivedProcessMemorySize property of the AppDomain class).
以下では、上述した二種類のリソース情報(各アプリケーションドメインのリソース情報と、プロセスのリソース情報)とを区別して説明する。 Hereinafter, the above-described two types of resource information (resource information of each application domain and process resource information) will be described separately.
閾値格納部56は、HDD/SSD24によって実現され、アプリケーションドメインのリソース情報に対する閾値と、プロセスのリソース情報に対する閾値とを格納する。上述したように、リソース情報は、例えば、1秒あたりのCPU使用率又はメモリ使用量である。各閾値は、当該情報処理装置1の管理者により、予め設定される。閾値は、アプリケーションドメインの数(すなわち、アドインの数)に応じて設定される。 The threshold storage unit 56 is realized by the HDD / SSD 24 and stores a threshold for resource information of the application domain and a threshold for resource information of the process. As described above, the resource information is, for example, a CPU usage rate or a memory usage amount per second. Each threshold value is set in advance by the administrator of the information processing apparatus 1. The threshold is set according to the number of application domains (that is, the number of add-ins).
比較部57は、主にCPU21の処理によって実現され、取得部55の取得したリソース情報の示す値(CPU使用率又はメモリ使用量)を、閾値格納部56に格納された閾値と比較する。そして、リソース情報が閾値以上である場合に、その旨を出力制御部58に通知する。 The comparison unit 57 is realized mainly by the processing of the CPU 21, and compares the value (CPU usage rate or memory usage amount) indicated by the resource information acquired by the acquisition unit 55 with the threshold value stored in the threshold value storage unit 56. When the resource information is equal to or greater than the threshold value, the output control unit 58 is notified accordingly.
出力制御部58は、主にCPU21の処理によって実現され、取得部55が取得したアプリケーションドメインのリソース情報が、条件格納部54に格納された条件(2)(3)に従って出力されるよう、制御する。すなわち、出力制御部58は、取得部55が取得したリソース情報のうち、条件格納部54で、「リソース情報の出力対象」とされているアドインのリソース情報が、「リソース情報の出力周期」で出力されるよう、出力部59を制御する。 The output control unit 58 is realized mainly by the processing of the CPU 21, and controls so that the resource information of the application domain acquired by the acquisition unit 55 is output according to the conditions (2) and (3) stored in the condition storage unit 54. To do. That is, among the resource information acquired by the acquisition unit 55, the output control unit 58 indicates that the resource information of the add-in that is “target of resource information output” by the condition storage unit 54 is “resource information output cycle”. The output unit 59 is controlled so as to be output.
また、出力制御部58は、比較部57からの通知に応じて、取得されたアプリケーションドメインのリソース情報の示す値が、閾値以上である場合にのみ、当該アプリケーションドメインのリソース情報を出力させるよう、出力部59に指示してもよい。 Further, in response to the notification from the comparison unit 57, the output control unit 58 outputs the resource information of the application domain only when the value indicated by the acquired resource information of the application domain is greater than or equal to the threshold value. The output unit 59 may be instructed.
また、出力制御部58は、比較部57からの通知に応じて、取得されたプロセスのリソース情報の示す値が、閾値以上である場合にのみ、各アプリケーションドメインのリソース情報を出力させるよう、出力部59に指示してもよい。 Further, the output control unit 58 outputs the resource information of each application domain in response to the notification from the comparison unit 57 only when the value indicated by the acquired resource information of the process is greater than or equal to the threshold value. The unit 59 may be instructed.
また、出力制御部58は、ネットワークを介して監視装置2から受け取った情報を、出力部59に出力させる。 Further, the output control unit 58 causes the output unit 59 to output information received from the monitoring device 2 via the network.
出力部59は、主にCPU21の処理によって実現され、出力制御部58からの指示に基づいて、アプリケーションドメインのリソース情報を、対応するアドインのリソース情報として出力する。出力部59は、リソース情報を、当該情報処理装置1のディスプレイ26に表示させる。また、出力部59は、リソース情報を、通信部61を介して、他の情報処理装置に送信してもよい。 The output unit 59 is realized mainly by the processing of the CPU 21, and outputs the resource information of the application domain as the resource information of the corresponding add-in based on an instruction from the output control unit 58. The output unit 59 displays the resource information on the display 26 of the information processing apparatus 1. Further, the output unit 59 may transmit the resource information to another information processing apparatus via the communication unit 61.
また、出力部59は、ネットワークを介して監視装置2から受け取った情報を、表示部60に出力する。 The output unit 59 outputs information received from the monitoring device 2 via the network to the display unit 60.
表示部60は、主にディスプレイ26によって実現され、出力部59の出力した、アドインのリソース情報や、監視装置2から受け取った情報を、表示する。 The display unit 60 is realized mainly by the display 26 and displays add-in resource information output from the output unit 59 and information received from the monitoring device 2.
通信部61は、主にNIC25によって実現され、出力部59の出力した、アドインのリソース情報を、他の情報処理装置に送信する。 The communication unit 61 is realized mainly by the NIC 25, and transmits the add-in resource information output from the output unit 59 to another information processing apparatus.
以上の機能により、本発明の一実施形態における情報処理装置1は、DLL形式のアドインを個別のアプリケーションドメイン内で動作させることにより、各アドインの使用するリソース情報を取得することができる。また、使用中のリソースが、予め定められた量以上となった場合に、当該リソースの情報を表示させることで、管理者は、必要に応じて、何れのアドインがリソースを消費しているかを特定することができる。 With the above function, the information processing apparatus 1 according to an embodiment of the present invention can acquire resource information used by each add-in by operating a DLL-format add-in in an individual application domain. In addition, when the resource being used exceeds a predetermined amount, the information on the resource is displayed so that the administrator can determine which add-in is consuming the resource as necessary. Can be identified.
≪ 4. 動作例 ≫
次に、図7−図9を用いて、本発明の一実施形態における情報処理装置1の処理フローを説明する。また、当該処理を実現するためのソースコードの一部を、図10−図12に例示する。図7は、出力対象であるアドインのリソース情報を全て出力する処理を表し、図8は、取得対象であるアドインのリソース情報の閾値を用いる処理を表し、図9は、プロセスのリソース情報の閾値を用いる処理を表している。以下、順に説明する。なお、以下では、リソース情報が、1秒あたりのCPU使用率又はメモリ使用量である場合の例を用いて、説明する。
<< 4. Example of operation ≫
Next, a processing flow of the information processing apparatus 1 according to the embodiment of the present invention will be described with reference to FIGS. A part of the source code for realizing the processing is illustrated in FIGS. FIG. 7 illustrates a process of outputting all resource information of the add-in that is the output target, FIG. 8 illustrates a process that uses the threshold value of the resource information of the add-in that is the acquisition target, and FIG. 9 illustrates the threshold value of the resource information of the process Represents a process using. Hereinafter, it demonstrates in order. In the following description, the resource information is a CPU usage rate or a memory usage amount per second.
≪ リソース情報を全て出力する例≫
図7は、本発明の一実施形態における情報処理装置1が、出力対象であるアドインのリソース情報を、全て出力する処理を表している。当該処理は、一定間隔で繰り返し実行されてもよいし、何らかのイベントに従って不定期に実行されてもよい。
≪Example of outputting all resource information≫
FIG. 7 illustrates a process in which the information processing apparatus 1 according to the embodiment of the present invention outputs all resource information of an add-in that is an output target. The processing may be repeatedly executed at regular intervals, or may be executed irregularly according to some event.
ステップ100において、登録部52は、アドイン格納部51に予め格納されたDLL形式のアドインを読み込み、そのアドインごとに、アプリケーションドメインを作成する。図10は、登録部52が、アドインを読み込むためのソースコードであり、図11の主に6行目から13行目までは、登録部52が、アプリケーションドメインを作成するためのソースコードである。 In step 100, the registration unit 52 reads the DLL format add-in stored in advance in the add-in storage unit 51, and creates an application domain for each add-in. FIG. 10 shows source code for the registration unit 52 to read in the add-in. Mainly from the sixth line to the thirteenth line in FIG. 11, the registration unit 52 creates source code for creating an application domain. .
ステップ101において、登録部52は、ステップ100で作成した各アプリケーションドメインに、各アドインを登録する。図11の15行目は、登録部52が、アドインを、アプリケーションドメインに登録するためのソースコードである。 In step 101, the registration unit 52 registers each add-in in each application domain created in step 100. The 15th line in FIG. 11 is source code for the registration unit 52 to register the add-in in the application domain.
ステップ102において、取得部55及び出力制御部58は、それぞれ、条件格納部54に格納された条件を読み込む。条件は、アドイン毎に予め定義されており、取得部55によってリソース情報が取得されるか否か、出力制御部58によってリソース情報が出力されるか否か、あるいは、出力制御部58がリソース情報を出力する周期を定める。 In step 102, the acquisition unit 55 and the output control unit 58 read the conditions stored in the condition storage unit 54, respectively. The conditions are defined in advance for each add-in, whether the resource information is acquired by the acquisition unit 55, whether the resource information is output by the output control unit 58, or whether the resource information is output by the output control unit 58 The cycle for outputting is determined.
ステップ103において、取得部55は、ステップ102で読み込んだ条件に従って、取得対象となっているアドインのCPU使用率及びメモリ使用量を取得する。ここで、取得部55は、各アプリケーションドメインのCPU使用率を、制御部53より直接取得することができない。そこで、取得部55は、各アプリケーションドメインの使用したCPU時間の合計時間を、制御部53より取得する。図12の5行目は、アプリケーションドメインのメモリ使用量を取得するためのソースコードを表し、図12の9行目は、アプリケーションドメインが使用したCPU時間を取得するためのソースコードを表している。 In step 103, the acquisition unit 55 acquires the CPU usage rate and the memory usage amount of the add-in that is the acquisition target in accordance with the conditions read in step 102. Here, the acquisition unit 55 cannot directly acquire the CPU usage rate of each application domain from the control unit 53. Therefore, the acquisition unit 55 acquires the total CPU time used by each application domain from the control unit 53. The fifth line in FIG. 12 represents source code for obtaining the memory usage of the application domain, and the ninth line in FIG. 12 represents source code for obtaining the CPU time used by the application domain. .
ステップ104において、取得部55は、ステップ103で取得したCPU時間から、単位時間(1秒)あたりのCPU使用率を算出する。図12の10行目から18行目は、前回取得したCPU時間及びその時刻と、今回取得したCPU時間及び現在時刻の情報を用いて、1秒あたりのCPU使用率を算出するためのソースコードを表している。 In step 104, the acquisition unit 55 calculates the CPU usage rate per unit time (1 second) from the CPU time acquired in step 103. The 10th to 18th lines in FIG. 12 are source codes for calculating the CPU usage rate per second using the CPU time and the time acquired last time and the information of the CPU time and current time acquired this time. Represents.
ステップ105において、出力制御部58は、ステップ102で読み込んだ条件に従い、出力対象となっているアドインを対象として、ステップ103、104で取得したCPU使用率とメモリ使用量を、アドインのCPU使用率とメモリ使用量として出力させる。 In step 105, the output control unit 58 uses the CPU usage rate and memory usage acquired in steps 103 and 104 for the add-in to be output according to the conditions read in step 102, and the CPU usage rate of the add-in. And output as memory usage.
この後、表示部60は、出力部59の出力した、図3のような画面を表示する。画面には、アドインの一覧と、各アドインのCPU使用率及びメモリ使用量が含まれる。 Thereafter, the display unit 60 displays the screen as shown in FIG. The screen includes a list of add-ins, a CPU usage rate and a memory usage amount of each add-in.
以上により、DLL形式で提供されるアドインが使用するCPU使用率やメモリ使用量を容易に把握できるようになる。 As described above, the CPU usage rate and the memory usage amount used by the add-in provided in the DLL format can be easily grasped.
≪ 閾値を用いる例≫
図8は、本発明の一実施形態における情報処理装置1が、閾値を用いて、アドインのリソース情報を出力する処理を表している。当該処理は、一定間隔で繰り返し実行されてもよいし、何らかのイベントに従って不定期に実行されてもよい。
≪Example using threshold value≫
FIG. 8 illustrates a process in which the information processing apparatus 1 according to the embodiment of the present invention outputs add-in resource information using a threshold value. The processing may be repeatedly executed at regular intervals, or may be executed irregularly according to some event.
ステップ200−ステップ204は、図7のステップ100−104と同様である。 Steps 200 to 204 are the same as steps 100 to 104 in FIG.
ステップ205において、比較部57は、閾値格納部56に格納された、アプリケーションドメインのリソース情報に対する閾値を読み込む。ここでは、アプリケーションのCPU使用率の閾値及びメモリ使用量の閾値が読み込まれる。 In step 205, the comparison unit 57 reads the threshold value for the resource information of the application domain stored in the threshold value storage unit 56. Here, the CPU usage rate threshold and the memory usage threshold of the application are read.
ステップ206において、比較部57は、ステップ203、204で取得したCPU使用率及びメモリ使用量と、ステップ205で読み込んだ閾値とを、それぞれ比較する。 In step 206, the comparison unit 57 compares the CPU usage rate and memory usage acquired in steps 203 and 204 with the threshold value read in step 205, respectively.
ステップ207において、出力制御部58は、出力対象となっているアドインのうち、閾値以上のCPU使用率及びメモリ使用量を示すアプリケーションドメインと対応するアドインの情報を、出力部59に出力させる。 In step 207, the output control unit 58 causes the output unit 59 to output add-in information corresponding to the application domain indicating the CPU usage rate and the memory usage amount that are equal to or higher than the threshold among the add-ins to be output.
以上により、CPU使用率及び/又はメモリ使用量が、予め設定された閾値を超えるアドインを容易に特定することが可能となる。また、全てのアドインの情報を出力する場合に比べて、出力及び表示にかかる負荷が低減される。 As described above, it is possible to easily identify an add-in in which the CPU usage rate and / or the memory usage amount exceeds a preset threshold value. Further, the load on output and display is reduced as compared with the case of outputting all add-in information.
≪ プロセスの閾値を用いる例≫
図9は、本発明の一実施形態における情報処理装置1が、プロセスのリソース情報を用いて、アドインのリソース情報を出力する処理を表している。当該処理は、一定間隔で繰り返し実行されてもよいし、何らかのイベントに従って不定期に実行されてもよい。
≪ Example using process threshold ≫
FIG. 9 shows a process in which the information processing apparatus 1 according to the embodiment of the present invention outputs add-in resource information using the process resource information. The processing may be repeatedly executed at regular intervals, or may be executed irregularly according to some event.
ステップ300−ステップ304は、図7のステップ100−104又は図8のステップ200−204と同様である。 Steps 300 to 304 are the same as steps 100 to 104 in FIG. 7 or steps 200 to 204 in FIG.
ステップ305において、取得部55は、プラットフォーム及びアドインのアプリケーションドメイン全体が動作するプロセスのCPU使用率及びメモリ使用量を取得する。 In step 305, the acquisition unit 55 acquires the CPU usage rate and the memory usage amount of the process in which the entire application domain of the platform and the add-in operates.
ステップ306において、比較部57は、閾値格納部56に格納された、プロセスのリソース情報に対する閾値を読み込む。ここでは、プロセスのCPU使用率の閾値及びメモリ使用量の閾値が読み込まれる。 In step 306, the comparison unit 57 reads the threshold value for the resource information of the process stored in the threshold value storage unit 56. Here, the CPU usage rate threshold and the memory usage threshold of the process are read.
ステップ307において、比較部57は、ステップ305で取得したCPU使用率及びメモリ使用量と、ステップ306で読み込んだ閾値とを、それぞれ比較する。 In step 307, the comparison unit 57 compares the CPU usage rate and memory usage acquired in step 305 with the threshold value read in step 306.
ステップ308において、プロセスのCPU使用率とメモリ使用量の何れか、又は両方が、閾値以上であれば、ステップ309に進み、そうでない場合には、処理を終了する。 In step 308, if either or both of the CPU usage rate and the memory usage amount of the process are equal to or larger than the threshold value, the process proceeds to step 309. Otherwise, the process ends.
ステップ309において、出力制御部58は、出力対象となっているアドインの情報を、出力部59に出力させる。 In step 309, the output control unit 58 causes the output unit 59 to output information on the add-in that is the output target.
以上により、プラットフォームの動作するプロセス全体のCPU使用率及び/又はメモリ使用量が、予め設定された閾値を超える場合に、各アドインのCPU使用率とメモリ使用量を出力することができる。その結果、管理者は、プラットフォームが高い負荷を示している場合に、その負荷の原因となっているアドインを、容易に特定することができる。 As described above, the CPU usage rate and the memory usage amount of each add-in can be output when the CPU usage rate and / or the memory usage amount of the entire process in which the platform operates exceed a preset threshold. As a result, when the platform shows a high load, the administrator can easily identify the add-in that causes the load.
なお、図8を用いて説明した、アプリケーションドメインのリソース情報に対する閾値と、図9を用いて説明した、プロセスのリソース情報に対する閾値は、組み合わせて使用されてもよい。 Note that the threshold for the resource information of the application domain described using FIG. 8 and the threshold for the resource information of the process described using FIG. 9 may be used in combination.
1 情報処理装置
2、2a、2b 監視装置
21 CPU
22 ROM
23 RAM
24 HDD/SSD
25 NIC
26 ディスプレイ
27 キーボード
28 マウス
51 アドイン格納部
52 登録部
53 制御部
54 条件格納部
55 取得部
56 閾値格納部
57 比較部
58 出力制御部
59 出力部
60 表示部
61 通信部
1 Information processing device 2, 2a, 2b Monitoring device 21 CPU
22 ROM
23 RAM
24 HDD / SSD
25 NIC
26 Display 27 Keyboard 28 Mouse 51 Add-in storage unit 52 Registration unit 53 Control unit 54 Condition storage unit 55 Acquisition unit 56 Threshold storage unit 57 Comparison unit 58 Output control unit 59 Output unit 60 Display unit 61 Communication unit
Claims (5)
前記複数のプログラムは一のプロセスで動作し、
前記プログラムを、該プログラムごとに異なるアプリケーションドメインに登録する登録部と、
前記プロセスで使用されているリソースの情報と、前記アプリケーションドメインで使用されているリソースの情報を取得する取得部と、
前記取得部が取得した前記リソースの情報を、前記プログラムで使用されているリソースの情報として出力する出力部と、
を有し、
前記出力部は、前記プロセスで使用されているリソースの情報が第二の閾値以上であり、かつ、前記アプリケーションドメインで使用されているリソースの情報が第一の閾値以上である場合に、前記アプリケーションドメインで使用されているリソースの情報を出力する、情報処理装置。 . An information processing apparatus capable of executing a plurality of programs using a NET Framework application domain,
The plurality of programs operate in one process,
A registration unit for registering the program in a different application domain for each program;
An acquisition unit that acquires information on resources used in the process and information on resources used in the application domain;
An output unit that outputs the resource information acquired by the acquisition unit as information of a resource used in the program;
Have
The output unit, when the resource information used in the process is equal to or greater than a second threshold value and the resource information used in the application domain is equal to or greater than a first threshold value, An information processing device that outputs information about resources used in a domain.
請求項1に記載の情報処理装置。 Information of the resource, Ru der CPU utilization or the memory usage,
The information processing apparatus according to claim 1.
請求項1または2に記載の情報処理装置。 The plurality of programs include a program of one platform and a program of one or more add-ins, and the program of the platform displays information acquired from the program of the add-in.
The information processing apparatus according to claim 1 or 2 .
請求項3に記載の情報処理装置。 The platform program is an executable application, and the add-in program is a dynamic link library library.
The information processing apparatus according to claim 3 .
一のプロセスで動作する複数のプログラムを、該プログラムごとに異なる.NET Frameworkのアプリケーションドメインに登録する登録段階と、
前記プロセスで使用されているリソースの情報と、前記アプリケーションドメインで使用されているリソースの情報を取得する取得段階と、
前記取得段階により取得された前記リソースの情報を、前記プログラムで使用されているリソースの情報として出力する出力段階と、
を実行させ、
前記出力段階は、前記プロセスで使用されているリソースの情報が第二の閾値以上であり、かつ、前記アプリケーションドメインで使用されているリソースの情報が第一の閾値以上である場合に、前記アプリケーションドメインで使用されているリソースの情報を出力する、プログラム。 On the computer,
A plurality of programs operating in one process are different for each program. A registration stage for registering in the application domain of the NET Framework;
Obtaining information of resources used in the process and information of resources used in the application domain;
An output step of outputting the resource information acquired in the acquisition step as information of a resource used in the program;
And execute
In the output step, when the resource information used in the process is equal to or greater than a second threshold and the resource information used in the application domain is equal to or greater than the first threshold, the application A program that outputs information about resources used in a domain.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013082424A JP6221314B2 (en) | 2013-04-10 | 2013-04-10 | Information processing apparatus and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013082424A JP6221314B2 (en) | 2013-04-10 | 2013-04-10 | Information processing apparatus and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014206787A JP2014206787A (en) | 2014-10-30 |
| JP6221314B2 true JP6221314B2 (en) | 2017-11-01 |
Family
ID=52120313
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013082424A Active JP6221314B2 (en) | 2013-04-10 | 2013-04-10 | Information processing apparatus and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6221314B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2016224771A (en) * | 2015-06-01 | 2016-12-28 | 富士電機株式会社 | Information processing apparatus and information processing method |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5284406B2 (en) * | 2011-03-31 | 2013-09-11 | 株式会社東芝 | Resource utilization rate measuring apparatus and program |
-
2013
- 2013-04-10 JP JP2013082424A patent/JP6221314B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2014206787A (en) | 2014-10-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9600395B2 (en) | Software quality evaluating system and methods for determining an extent of software code changes | |
| US10102106B2 (en) | Promotion determination based on aggregated code coverage metrics | |
| US20170003989A1 (en) | Automatic discovery of a javascript api | |
| US10540150B2 (en) | Composable context menus | |
| JPWO2017169949A1 (en) | Log analysis apparatus, log analysis method, and program | |
| US8736613B2 (en) | Simplified graphical analysis of multiple data series | |
| JP6221314B2 (en) | Information processing apparatus and program | |
| JP5967091B2 (en) | System parameter setting support system, data processing method of system parameter setting support device, and program | |
| JP5136567B2 (en) | Program inspection support system, program inspection support method, and program inspection support program | |
| Kavyashree et al. | Site reliability engineering for IOS mobile application in small-medium scale industries | |
| JP5732992B2 (en) | Model diagram creation device, model diagram creation method, and model diagram creation program | |
| JP5545133B2 (en) | Static analysis processing system, method, and program | |
| JP5900002B2 (en) | Analysis device control system and program | |
| Vanderperre | Reliability analysis of a renewable multiple cold standby system | |
| JP2014081925A (en) | Cloud management device, cloud management system, cloud management method, and program | |
| CN112965815B (en) | Host deployment method and device, electronic equipment and computer storage medium | |
| JP6226895B2 (en) | Network evaluation system and network evaluation method | |
| JP6320269B2 (en) | Software test support apparatus and software test support program | |
| JP5443686B2 (en) | Information processing apparatus, information processing method, and program | |
| JP5867394B2 (en) | Display processing system, display processing method, and program | |
| JP5349876B2 (en) | Information processing apparatus, information processing method, and program | |
| CN111832735B (en) | Method and system for performing machine learning process based on template | |
| JP5638020B2 (en) | Test management device for distributed control system | |
| JP2007156822A (en) | Simulated application test apparatus for computer system | |
| JP2024147354A (en) | Test support device, test support method, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160315 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170113 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170131 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170321 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170530 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170706 |
|
| 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: 20170905 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170918 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6221314 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 |
|
| 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 |