JP6123320B2 - LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM - Google Patents
LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM Download PDFInfo
- Publication number
- JP6123320B2 JP6123320B2 JP2013020593A JP2013020593A JP6123320B2 JP 6123320 B2 JP6123320 B2 JP 6123320B2 JP 2013020593 A JP2013020593 A JP 2013020593A JP 2013020593 A JP2013020593 A JP 2013020593A JP 6123320 B2 JP6123320 B2 JP 6123320B2
- Authority
- JP
- Japan
- Prior art keywords
- license
- information
- computer
- software
- server
- 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
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、アプリケーションソフトにおけるライセンスを管理する情報処理の技術分野に関する。 The present invention relates to a technical field of information processing for managing licenses in application software.
一般的にライセンスサーバは、アプリケーションソフト(以下、「ソフトウェア」、単に「ソフト」とも記す)の使用権(ライセンス)や使用許諾等を管理する機能を有することが知られている。 In general, it is known that a license server has a function of managing use rights (licenses), licenses, and the like of application software (hereinafter referred to as “software” or simply “software”).
また、ライセンスサーバは、通信ネットワークを介してライセンス管理されたソフトウェアの利用状況を把握(監視)することができる。 In addition, the license server can grasp (monitor) the usage status of the license-managed software via the communication network.
例えば、通信ネットワークを介して接続されたパーソナルコンピュータや携帯端末等の電子機器においてライセンス管理されたソフトウェアを利用する場合に、電子機器は、ライセンスサーバに使用許可を問い合わせる。 For example, when using license-managed software in an electronic device such as a personal computer or a portable terminal connected via a communication network, the electronic device inquires of the license server about use permission.
さらに、電子機器は、ライセンスサーバから係るソフトウェアにおける使用許可を得ることによって、ソフトウェアを実行することができる。 Furthermore, the electronic device can execute the software by obtaining a use permission for the software from the license server.
ここで、本願出願に先立って存在する関連技術として、特許文献1は、ライセンス管理装置、ライセンス管理システム、ライセンス管理方法、ライセンス管理プログラムおよび記憶媒体に関する技術を開示する。
Here, as a related technique existing prior to the application of the present application,
特許文献1における端末装置は、ライセンス管理されたソフトウェアを実行する際に、ライセンス管理装置にライセンスの使用が可能か否かを問い合わせる。
When executing the license-managed software, the terminal device in
即ち、端末装置は、ライセンス管理装置に貸与要求情報を含む貸与要求を行う。ここで、貸与要求情報とは、ソフトウェアを使用する期間情報を含む。 That is, the terminal device makes a loan request including the loan request information to the license management device. Here, the loan request information includes period information for using the software.
ライセンス管理装置は、係る貸与要求に応答して、ライセンスの使用が可能か否かを判定する。さらに、ライセンス管理装置は、判定した結果と貸与要求情報とに基づいて、ライセンスを貸与する。 In response to the lending request, the license management apparatus determines whether or not the license can be used. Further, the license management apparatus lends a license based on the determined result and the lending request information.
また、ライセンス管理装置は、ライセンスの貸与要求を行なった端末装置にライセンスの使用許可期間を通知する。 Further, the license management device notifies the terminal device that has issued the license lending request of the license usage permission period.
これにより、ライセンスの貸与要求を行なった端末装置は、取得したライセンスの使用許可期間に基づいて、ソフトウェアを使用することができる。 Accordingly, the terminal device that has issued the license lending request can use the software on the basis of the license usage permission period.
特許文献2は、ライセンス管理システムに関する技術を開示する。
より具体的に、特許文献2に開示されたライセンス管理システムは、ライセンス管理されたソフトウェアを利用するジョブが事前に判明している場合に、そのジョブの実行が重複しないようにスケジューリングする。
More specifically, the license management system disclosed in
これにより、ライセンス管理システムでは、ライセンスを効率的に利用することができる。 Thus, the license management system can efficiently use the license.
特許文献3は、処理制御システム、サーバ及び処理制御プログラムに関する技術を開示する。
特許文献3に開示された処理制御システムは、複数台のクライアント及び複数台のサーバにおいてライセンスを管理する。
The processing control system disclosed in
より具体的に、処理制御システムにおけるサーバは、クライアントからユーザの識別情報(ユーザID、identifier:以降、「ID」と称する)を含むアクセス要求を受信した際に、その識別情報に基づいてアプリケーション利用情報を参照する。 More specifically, when the server in the processing control system receives an access request including user identification information (user ID, identifier: hereinafter referred to as “ID”) from the client, the server uses the application based on the identification information. Browse information.
ここで、アプリケーション利用情報とは、ユーザIDとそのユーザに設定されたアプリケーションの使用可否に関する情報とをユーザ毎に関連付けた情報を含む。 Here, the application usage information includes information in which a user ID and information on availability of an application set for the user are associated with each user.
さらに、係るサーバは、アプリケーション利用情報を参照した結果、アプリケーションの使用可否を判定すると共に、判定した結果をクライアントに返信する。 Further, as a result of referring to the application usage information, the server determines whether or not the application can be used, and returns the determined result to the client.
使用可能を示す判定結果を取得した場合に、クライアントは、係るアプリケーションを利用する。さらに、クライアントは、そのアプリケーションを利用してサーバに接続すると共に、サーバに格納されたファイルにアクセスすることができる。 When the determination result indicating that the client can be used is acquired, the client uses the application. Further, the client can use the application to connect to the server and access a file stored in the server.
特許文献4は、ソフトウェアライセンス管理方法、ソフトウェアライセンス管理システム、及びコンピュータ・プログラムに関する技術を開示する。 Patent Document 4 discloses a technology relating to a software license management method, a software license management system, and a computer program.
特許文献4に開示された管理方法は、ユーザが使用する端末(以下、「使用端末」と称する)からソフトウェアを使用する際に、ソフトウェアが予め具備している第1のライセンス情報と、携帯端末機から供給される第2のライセンス情報とに基づいて、ソフトウェアの使用を許可する。 In the management method disclosed in Patent Literature 4, when software is used from a terminal used by a user (hereinafter referred to as “use terminal”), the first license information provided in advance in the software, and the mobile terminal The use of the software is permitted based on the second license information supplied from the machine.
また、係る携帯端末機は、使用端末からソフトウェアにおける使用終了の通知を受信するまでの間、第2のライセンス情報の供給を停止する。 In addition, the portable terminal stops supplying the second license information until a notification of the end of use in the software is received from the use terminal.
そのため、係る管理方法では、1ユーザ1ライセンスの原則に則ったソフトウェアを供給する場合に、特定の1台の使用端末に限定することなくソフトウェアの使用を許可することができる。 For this reason, in the management method, when software that conforms to the principle of one user and one license is supplied, the use of the software can be permitted without being limited to a specific one terminal.
特許文献5は、ソフトウェアライセンス管理装置に関する技術を開示する。より具体的に、係る管理装置は、ライセンス管理されたプログラム(以下、「ライセンスプログラム」と称する)を使用する際の優先度をユーザ毎に保持する。
例えば、優先度の高いユーザからライセンスプログラムの実行要求が発生し、且つライセンスプログラムを使用する(つまり、使用中の)ユーザ数がライセンスの上限に達している場合に、係る管理装置は、優先度の低いユーザの使用権を解除する。 For example, when a license program execution request is generated from a user with high priority and the number of users using the license program (that is, in use) has reached the upper limit of the license, the management apparatus Cancel the usage rights of users with low levels.
さらに、管理装置は、優先度の高いユーザに使用権を付与する(割り当てる)。このため、ライセンスプログラムを使用するユーザ数がライセンスの上限数に達している場合であっても、優先度の高いユーザは、ライセンスプログラムを実行することができる。 Furthermore, the management device grants (assigns) a usage right to a user with a high priority. For this reason, even if the number of users using the license program has reached the upper limit number of licenses, a user with a high priority can execute the license program.
しかしながら、特許文献1及び特許文献2では、ライセンス管理されたソフトウェアの使用時間を予め設定する必要がある。
However, in
例えば、ソフトウェアの使用時間は、ジョブやそのソフトウェアの実行環境等によって異なる。そのため、ユーザは、事前にソフトウェアの使用時間を把握できない場合がある。 For example, the software usage time varies depending on the job, the execution environment of the software, and the like. Therefore, the user may not be able to grasp the usage time of software in advance.
より具体的に、一般的に知られたコンパイラを例に考えた場合に、コンパイラにおける処理時間は、処理対象となるプログラムのサイズや複雑さ、ファイル数等によって大きく変化する。 More specifically, when a generally known compiler is considered as an example, the processing time in the compiler varies greatly depending on the size and complexity of the program to be processed, the number of files, and the like.
さらに、コンパイラにおける処理は、例えば、ユーザによって中断することが可能である。また、係る処理には、コンパイルの処理に伴うファイルの入出力処理も含まれる。そのため、ユーザは、係る処理時間を想定することが困難である。 Furthermore, the processing in the compiler can be interrupted by the user, for example. In addition, such processing includes file input / output processing accompanying compilation processing. Therefore, it is difficult for the user to assume such processing time.
即ち、特許文献1及び2に開示された技術では、効率的にライセンスを管理することができない。
In other words, the techniques disclosed in
また、特許文献3には、複数台のクライアントと複数台のサーバにおいてライセンスを管理することが記載されているに留まり、割り当て可能なライセンス数が無い場合に、ライセンスの割り当てを効率的に実施することについては、何ら述べられていない。
Further,
特許文献4には、1人のユーザに対して割り当てられた1つのライセンスを複数台の使用端末において使用することが記載されているに留まり、複数のユーザにおいてライセンスを使用することについては、考慮されておらず何ら述べられていない。 Patent Document 4 only describes that one license assigned to one user is used in a plurality of terminals, and consideration is given to using licenses in a plurality of users. It has not been described at all.
特許文献5には、ユーザ毎に設定された優先度に基づいて、優先度の低いユーザからライセンスを解除することが記載されている。
そのため、例えば、優先度の低いユーザからライセンスプログラムの実行要求が発生する際に、管理装置は、優先度の高いユーザがライセンスプログラムの実行を終了するまで優先度の低いユーザに使用権を割り当てない。 Therefore, for example, when a license program execution request is generated from a low-priority user, the management apparatus does not assign a usage right to the low-priority user until the high-priority user finishes executing the license program. .
つまり、特許文献5に開示された技術では、全てのユーザに対して公平にライセンスを提供できないことが問題である。
In other words, the technique disclosed in
また、ライセンス管理されたソフトウェアを実行する際に、特許文献1乃至特許文献5に開示された技術では、実行開始から終了するまでライセンスを保持することが想定されている。
Further, when executing license-managed software, the techniques disclosed in
このため、特許文献1乃至特許文献5では、ソフトウェアの処理時間が長くなる場合や実行途中にユーザが何らかの理由で処理を中断する場合に、係る処理が終了するまでライセンスが割り当てられた状態を維持することになる。
For this reason, in
例えば、利用可能なライセンスが無く、且つ長時間ライセンスを保持するユーザがいる場合に、特許文献1乃至特許文献5では、ライセンスの空き待ちが発生する。
For example, when there is no license that can be used and there is a user who holds the license for a long time, in
即ち、複数のユーザにおいてライセンスを利用する場合に、特許文献1乃至特許文献5では、ライセンスの割り当てを効率的に実施することができない。
That is, when a license is used by a plurality of users, in
より具体的に、一例として、不特定多数のユーザの利用が想定されるクラウド環境には、ライセンス管理されたソフトウェアをサービスとして提供する場合がある。 More specifically, as an example, there is a case where license-managed software is provided as a service in a cloud environment in which an unspecified number of users are assumed to be used.
不特定多数のユーザにソフトウェアを提供する場合に、特許文献1乃至特許文献5に開示された技術では、例えば、ユーザは、ライセンスが割り当てられるまで待ち状態が発生する。
When providing software to an unspecified number of users, for example, with the techniques disclosed in
即ち、クラウド環境において提供されるサービスとしては、全てのユーザに対して公平に提供できていない虞がある。 That is, as a service provided in the cloud environment, there is a possibility that it cannot be provided to all users in a fair manner.
本発明の主たる目的は、割り当て可能なライセンス数に限りがある場合であっても、そのライセンスの割り当てを効率的に実施することが可能なライセンス管理装置等を提供することにある。 A main object of the present invention is to provide a license management apparatus or the like that can efficiently assign licenses even when the number of assignable licenses is limited.
上記の課題を達成すべく、本発明に係るライセンス管理装置は、以下の構成を備えることを特徴とする。 In order to achieve the above object, a license management apparatus according to the present invention has the following configuration.
即ち、本発明に係るライセンス管理装置は、
1つ以上の第1のプロセスから、該第1のプロセスが実行するソフトウェアのライセンスの割り当て要求を受付けるのに応じて、ライセンスサーバに前記ライセンスの割り当てを要求し、前記ライセンスを利用する前記第1のプロセスとは異なる第2のプロセスの有無を判定し、前記第2のプロセスが無い場合に、前記ライセンスの使用を許可する情報を含む第1のライセンス情報を受信したか否かを判定し、前記第1のライセンス情報を受信したと判定した場合に、前記ソフトウェアに対応する前記ライセンスの排他処理を利用可能な状態にするライセンス管理部と、
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定する実行制御部と、
を備えることを特徴とすることを特徴とする。
That is, the license management apparatus according to the present invention is:
In response to receiving a license allocation request for software executed by the first process from one or more first processes, the license server is requested to allocate the license and the first license is used. Determining whether there is a second process different from the first process, and if there is no second process, determining whether or not the first license information including information permitting use of the license is received; A license management unit that, when it is determined that the first license information has been received, makes the exclusive processing of the license corresponding to the software available;
An execution control unit that sets information for instructing execution of the exclusion process in the attribute information of the first process;
It is characterized by providing.
或いは、上記に示すライセンス管理装置を含むライセンス管理システムによっても、同目的を達成される。 Alternatively, the same object can be achieved by a license management system including the license management apparatus described above.
また、同目的を達成すべく、本発明に係るライセンス管理方法は、以下の構成を備えることを特徴とする。 In order to achieve the above object, a license management method according to the present invention is characterized by having the following configuration.
即ち、本発明に係るライセンス管理方法は、
1つ以上の第1のプロセスから、該第1のプロセスが実行するソフトウェアのライセンスの割り当て要求を受付けるのに応じて、ライセンスサーバに前記ライセンスの割り当てを要求し、前記ライセンスを利用する前記第1のプロセスとは異なる第2のプロセスの有無を判定し、前記第2のプロセスが無い場合に、前記ライセンスの使用を許可する情報を含む第1のライセンス情報を受信したか否かを判定し、前記第1のライセンス情報を受信したと判定した場合に、前記ソフトウェアに対応する前記ライセンスの排他処理を利用可能な状態にし、
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定することを特徴とする。
That is, the license management method according to the present invention includes:
In response to receiving a license allocation request for software executed by the first process from one or more first processes, the license server is requested to allocate the license and the first license is used. Determining whether there is a second process different from the first process, and if there is no second process, determining whether or not the first license information including information permitting use of the license is received; If it is determined that the first license information has been received, the exclusive processing of the license corresponding to the software is made available,
Information for instructing to execute the exclusion process is set in the attribute information of the first process.
尚、同目的は、上記の各構成を有するライセンス管理装置及びライセンス管理方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。 This object is also achieved by a computer program for realizing the license management apparatus and the license management method having the above-described configurations by a computer, and a computer-readable storage medium storing the computer program. The
本発明によれば、割り当て可能なライセンス数に限りがある場合であっても、そのライセンスの割り当てを効率的に実施することが可能なライセンス管理装置等を提供することができる。 According to the present invention, it is possible to provide a license management device or the like that can efficiently allocate licenses even when the number of assignable licenses is limited.
以下、本発明の実施形態について図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<第1の実施形態>
図1は、本発明の第1の実施形態におけるライセンス管理装置1の構成を示すブロック図である。図1において、ライセンス管理装置1は、ライセンス管理部2と実行制御部3とを有する。
<First Embodiment>
FIG. 1 is a block diagram showing the configuration of the
以下の説明において、説明の便宜上、ライセンス管理されたソフトウェアを第1のソフトウェアと称する(以下、各実施形態においても同様)。 In the following description, for the convenience of explanation, the license-managed software is referred to as first software (hereinafter, the same applies to each embodiment).
ライセンス管理部2は、第1のソフトウェアに関するライセンスを管理する。即ち、ライセンス管理部2は、第1のソフトウェアに対応するライセンスを管理する。
The
尚、ライセンス管理部2における詳細な動作については、本実施形態において後述する。
The detailed operation in the
より具体的に、ライセンス管理部2は、不図示の通信部を介して第1のソフトウェアのライセンスの割り当てを要求する。また、ライセンス管理部2は、第1のライセンス情報101を受信する。
More specifically, the
ここで、第1のライセンス情報101とは、ライセンス管理された第1のソフトウェアの使用権(ライセンス)の使用を許可する情報を含む。
Here, the
また、ライセンス管理部2は、第1のライセンス情報101を受信する。
Further, the
さらに、ライセンス管理部2は、第1のソフトウェアに対応する(関する)ライセンスの排他処理を利用可能な状態にする。
Furthermore, the
本実施形態において、係る第1のソフトウェアは、1つ以上存在することを想定している。また、ライセンス管理部2は、当該各(個々の)第1のソフトウェアに関するライセンスの排他処理について利用の要否を管理する。
In the present embodiment, it is assumed that there is one or more first software. In addition, the
ここで、排他処理とは、第1のソフトウェアのライセンスを1つ以上のプロセス間で利用することを制御する処理を表す(排他処理については、本実施形態において後述する)。 Here, the exclusion process represents a process for controlling the use of the license of the first software between one or more processes (exclusion process will be described later in this embodiment).
通信部(不図示)は、通信ネットワーク(例えば、図5に示す通信ネットワーク110)を介して、例えば、自装置と異なる電子機器やライセンスサーバ等と通信可能に接続する(以下、本願では「通信可能に接続」を単に「接続」と略称する)。
A communication unit (not shown) is communicatively connected to, for example, an electronic device or a license server different from its own device via a communication network (for example, the
次に、実行制御部3は、第1のソフトウェアのライセンスが割り当てられることを要求するプロセス(以下、説明の便宜上、「第1のプロセス」と称する)に関して属性情報(メタデータ)を設定する。
Next, the
さらに、実行制御部3は、第1のプロセスを実行可能な状態に制御することができる。
Furthermore, the
より具体的に、実行制御部3が第1のプロセスに関して設定する属性情報とは、第1のプロセスが第1のソフトウェアを実行する際に、上述した排他処理を実行するように指示する情報である。
More specifically, the attribute information set by the
ここで、以下の説明において、説明の便宜上、一例として、第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けた際のライセンス管理装置1の動作ついて説明する。
Here, in the following description, for convenience of explanation, an operation of the
図2は、本発明の第1の実施形態におけるライセンス管理装置1が行う第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けた際の動作を示すフローチャートである。
FIG. 2 is a flowchart showing an operation when a license allocation request for the first software is received from the first process performed by the
例えば、ライセンス管理装置1は、第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けた際に、不図示のライセンスサーバにライセンスの割り当て要求を通知することとする。
For example, when the
さらに、ライセンス管理装置1は、ライセンスサーバからライセンスの割り当て要求に対するリプライとして、第1のライセンス情報101を受信することとする。
Further, the
尚、説明の便宜上、上述した構成を例に説明するが、本実施形態を例に説明する本発明は、この構成には限定されない(以下の実施形態においても同様)。 For convenience of explanation, the above-described configuration will be described as an example. However, the present invention described using this embodiment as an example is not limited to this configuration (the same applies to the following embodiments).
ステップS1:
ライセンス管理部2は、第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けるのに応じて、不図示の通信部を介してライセンスサーバに、係るライセンスの割り当て要求を通知する。
Step S1:
In response to receiving the first software license allocation request from the first process, the
ステップS2:
ライセンス管理部2は、第1のソフトウェアのライセンスを利用する第1のプロセスと異なるプロセス(以下、説明の便宜上、「第2のプロセス」と称する)の有無を判定する。
Step S2:
The
ステップS3において「YES」:
ライセンス管理部2は、係るライセンスを利用する第2のプロセスの有無を判定した結果、第2のプロセスが有ると判定した場合に、処理をステップS7に進める。
“YES” in step S3:
If the
ステップS3において「NO」:
ライセンス管理部2は、係るライセンスを利用する第2のプロセスの有無を判定した結果、第2のプロセスが無いと判定した場合に、処理をステップS4に進める。
“NO” in step S3:
If the
ステップS4:
ライセンス管理部2は、第1のライセンス情報101を受信したか否かを判定する。
Step S4:
The
ステップS5において「NO」:
ライセンス管理部2は、第1のライセンス情報101を受信したか否かを判定した結果、第1のライセンス情報101を受信していないと判定した場合に、処理をステップS4に進める。
“NO” in step S5:
If the
つまり、ライセンス管理装置1は、ライセンスサーバ(不図示)から第1のソフトウェアのライセンスを割り当てられていないことを意味する。
That is, it means that the
ステップS5において「YES」:
ライセンス管理部2は、第1のライセンス情報101を受信したか否かを判定した結果、第1のライセンス情報101を受信していると判定した場合に、処理をステップS6に進める。
"YES" in step S5:
If it is determined that the
つまり、ライセンス管理装置1は、ライセンスサーバ(不図示)から第1のソフトウェアのライセンスを割り当てられたことを意味する。
That is, the
ステップS6:
ライセンス管理部2は、第1のライセンス情報101を受信するのに応じて、第1のソフトウェアに対応するライセンスの排他処理を利用可能な状態にする。
Step S6:
In response to receiving the
ここでは、第1のソフトウェアに関するライセンスの排他処理には、一例として、セマフォを利用することとする。 Here, a semaphore is used as an example for the exclusive processing of the license relating to the first software.
尚、セマフォとは、1つ以上のプロセス間において排他処理が必要な資源毎にその資源を管理するカウンタ(カウンタ機能)である。また、セマフォは、係るカウンタに資源の数(資源数)を設定する。 A semaphore is a counter (counter function) that manages resources for each resource that requires exclusive processing between one or more processes. The semaphore sets the number of resources (number of resources) in the counter.
ここで、係る排他処理が必要な資源は、第1のソフトウェアのライセンスとする。また、係る資源数は、第1のソフトウェアのライセンス数とする。 Here, it is assumed that the resource that needs such exclusive processing is a license of the first software. The number of resources is the number of licenses of the first software.
資源を使用する場合に、プロセスは、セマフォの資源数を「1」減算する。一方で、資源を解放(解除、返却)する場合に、プロセスは、セマフォの資源数を「1」加算する。また、セマフォの資源数が「0」の場合に、プロセスは、待ち状態に移行する。 When using a resource, the process subtracts “1” from the resource number of the semaphore. On the other hand, when releasing (releasing or returning) a resource, the process adds “1” to the number of semaphore resources. When the number of semaphore resources is “0”, the process shifts to a wait state.
尚、セマフォは、例えば、計算機において動作する全てのプロセスから参照できることとする。 Note that the semaphore can be referred to from all processes operating in the computer, for example.
より具体的に、ライセンス管理部2は、第1のライセンス情報101を受信するのに応じて、第1のソフトウェアに対応するセマフォを利用可能な状態にする。
More specifically, in response to receiving the
次に、ライセンス管理部2が第1のソフトウェアに対応するセマフォを利用可能な状態にする動作を説明する。
Next, an operation in which the
ライセンス管理部2は、第1のライセンス情報101に基づいて、係るセマフォの資源数をセットする。
Based on the
即ち、ライセンス管理部2は、第1のライセンス情報101に基づいて、第1のソフトウェアのライセンス数の資源数として「1」をセットする。尚、初めて資源数をセットする際には、ライセンス管理部2は、資源数を初期化(リセット)すると共に、係る資源数をセットする。
That is, the
また、ライセンス管理部2は、例えば、2つの第1のライセンス情報101を受信する場合に、セマフォの資源数として「2」をセットする。
For example, when the
また、ライセンス管理部2は、新たに(つまり、追加で)第1のライセンス情報101を受信する場合に、新たに取得した第1のソフトウェアのライセンス数を、既にセットした資源数に加算する。
Further, when the
その場合に、例えば、ライセンス管理部2は、係る資源数に新たに取得した第1のソフトウェアのライセンス数を加算する操作と上述した排他処理とを、不可分な操作として実行することとする。
In this case, for example, the
一方で、ライセンス管理部2は、ライセンスサーバ(不図示)に第1のソフトウェアのライセンスを解放(解除)する場合に、既にセットした資源数から、解放したライセンス数を減算する。
On the other hand, when the
尚、上述した実施形態では、説明の便宜上、一例として、第1のソフトウェアのライセンスの排他処理には、セマフォを利用する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。排他処理には、例えば、ミューテックス等の一般的に知られた制御方法を採用してもよい。但し、本実施形態を例に説明する本発明は、これらに限定されない(以下、各実施形態においても同様)。 In the above-described embodiment, for the sake of convenience of explanation, as an example, a configuration using a semaphore for the exclusive processing of the license of the first software has been described. However, the embodiment according to the present invention is not limited to such a configuration. For the exclusion process, for example, a generally known control method such as a mutex may be adopted. However, the present invention described using this embodiment as an example is not limited thereto (hereinafter, the same applies to each embodiment).
ステップS7:
実行制御部3は、第1のソフトウェアのライセンスが割り当てられることを要求する第1のプロセスの属性情報を設定すると共に、第1のプロセスを実行可能な状態に制御する。
Step S7:
The
尚、実行制御部3が第1のプロセスの属性情報を設定する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する(以下、各実施形態においても同様)。
Since the technology itself for setting the attribute information of the first process by the
これにより、実行可能状態となった第1のプロセスは、一般的に知られた標準スケジューラ(ジョブスケジューラ、単に「スケジューラ」とも記す)におけるスケジューリングによってプロセッサ(例えば、図9に示すCPU301)を割り当てられた際に、第1のソフトウェアを実行することができる。
As a result, the first process in the executable state is assigned a processor (for example, the
ここで、より具体的に、一例として、第1のプロセスが第1のソフトウェアのライセンスの割り当て要求する際の動作について説明する。 Here, more specifically, as an example, the operation when the first process requests the allocation of the license of the first software will be described.
第1のプロセスにおいて、第1のプロセスの属性情報には、第1のソフトウェアのライセンスに関する排他処理をセマフォによって実行するように設定されている。 In the first process, the attribute information of the first process is set so that the exclusive process related to the license of the first software is executed by the semaphore.
そのため、第1のプロセスは、第1のソフトウェアを実行する際に、第1のソフトウェアのライセンスを、1つ以上のプロセス間でセマフォを利用して排他処理を実行する。 For this reason, when the first process executes the first software, the first process uses the semaphore between the one or more processes and executes an exclusive process with the license of the first software.
ここで、既に設定された資源数が「1」以上の場合に、第1のプロセスは、セマフォの資源数を「1」減算すると共に、ライセンス管理部2から第1のソフトウェアのライセンスを取得する。
Here, when the number of resources already set is “1” or more, the first process subtracts “1” from the number of resources of the semaphore and obtains the license of the first software from the
即ち、第1のプロセスには、ライセンス管理部2によって第1のソフトウェアのライセンスが割り当てられる。
That is, the license of the first software is assigned to the first process by the
また、既に設定された資源数が「0」の場合、第1のプロセスは、資源数の取得に失敗する。そのため、第1のプロセスは、待ち状態に移行する。即ち、第1のプロセスは、係るライセンスを取得することができない。 If the number of resources already set is “0”, the first process fails to acquire the number of resources. Therefore, the first process shifts to a waiting state. That is, the first process cannot acquire such a license.
この場合に、例えば、第1のプロセスと異なる第2のプロセスから第1のソフトウェアのライセンスが解放されると共に、セマフォの資源数が「1」以上になった場合に、待ち状態の第1のプロセスは、セマフォの資源数を「1」減算すると共に、ライセンス管理部2から係るライセンスを取得することができる。
In this case, for example, when the license of the first software is released from a second process different from the first process and the number of semaphore resources becomes “1” or more, the first waiting state The process can subtract “1” from the number of semaphore resources and obtain the license from the
次に、以下の説明において、説明の便宜上、一例として、第1のプロセスが第1のソフトウェアのライセンスを解放する際のライセンス管理装置1の動作について説明する。
Next, in the following description, for convenience of description, an operation of the
図3は、本発明の第1の実施形態におけるライセンス管理装置1が行う第1のプロセスが第1のソフトウェアのライセンスを解放する際の動作を示すフローチャートである。
FIG. 3 is a flowchart showing an operation when the first process performed by the
図3に示すフローチャートに沿ってライセンス管理装置1の動作手順を説明する。
The operation procedure of the
ステップS11:
ライセンス管理部2は、第1のプロセスが第1のソフトウェアのライセンスを解放するのに応じて、第1のソフトウェアのライセンスの割り当てを要求したプロセス数と、ライセンス管理部2が管理している(つまり、取得した)ライセンス数とを比較する。
Step S11:
The
ステップS12において「YES」:
ライセンス管理部2は、プロセス数とライセンス数とを比較した結果、プロセス数がライセンス数以下の場合に、処理をステップS13に進める。
“YES” in step S12:
If the number of processes is equal to or smaller than the number of licenses as a result of comparing the number of processes with the number of licenses, the
ステップS12において「NO」:
ライセンス管理部2は、プロセス数とライセンス数とを比較した結果、プロセス数がライセンス数より大きい場合に、処理をステップS14に進める。
“NO” in step S12:
If the number of processes is greater than the number of licenses as a result of comparing the number of processes and the number of licenses, the
即ち、プロセス数がライセンス数より大きいとは、第1のソフトウェアのライセンスの割り当て待ち(待ち状態)のプロセスが存在することを意味する。つまり、複数のプロセスは、係るライセンスを共有していることを意味する。 That is, the number of processes being larger than the number of licenses means that there is a process waiting for the first software license assignment (waiting state). That is, it means that a plurality of processes share such a license.
ステップS13:
ライセンス管理部2は、ライセンスサーバ(不図示)に第1のソフトウェアのライセンスを解放したことと、第1のプロセスにおいて係るライセンスの利用が終了したこととを通知する。
Step S13:
The
さらに、ライセンス管理部2は、セマフォの資源数を「0」に設定する。
Furthermore, the
ステップS14:
ライセンス管理部2は、ライセンスサーバ(不図示)に第1のプロセスにおいて第1のソフトウェアのライセンスの利用が終了したことを通知する。
Step S14:
The
ここで、上述したように、セマフォの資源数は、プロセスから第1のソフトウェアのライセンスが解放されるため、「1」になる。そのため、例えば、待ち状態の第1のプロセスは、セマフォにおける資源数を「1」減算すると共に、ライセンス管理部2から係るライセンスを取得することができる。
Here, as described above, the number of semaphore resources is “1” because the license of the first software is released from the process. Therefore, for example, the waiting first process can subtract “1” from the number of resources in the semaphore and obtain the license from the
即ち、待ち状態の第1のプロセスは、ライセンスサーバから、係るライセンスの割り当てを待つことなく第1のソフトウェアを実行することができる。 That is, the first process in the waiting state can execute the first software without waiting for the assignment of the license from the license server.
つまり、ライセンス管理装置1は、ライセンスの割り当てを効率的に実施することができる。
That is, the
また、ライセンスサーバは、第1のプロセスにおいてライセンスの利用が終了したことを受信することによって、ライセンスの割り当て要求した第1のプロセスにおける処理が終了したことを認識することができる。 Further, the license server can recognize that the processing in the first process that requested the allocation of the license has ended by receiving the end of the use of the license in the first process.
このように本実施の形態に係るライセンス管理装置1によれば、割り当て可能なライセンス数に限りがある場合であっても、そのライセンスの割り当てを効率的に実施することができる。その理由は、以下に述べる通りである。
As described above, according to the
その理由は、ライセンス管理装置1は、ライセンス管理されたソフトウェア毎に割り当てられたライセンスを排他制御する。これにより、ライセンスの割り当て要求するプロセスは、ライセンスサーバからライセンスを割り当てられるのを待つことなく利用することができるからである。
The reason is that the
また、ライセンス管理装置1は、複数のプロセスにおいてライセンスを利用する場合であっても、セマフォによってライセンスの排他制御を行っているために、ライセンスの実行条件(利用条件)を満たすと共に、上述した処理を実行することができる。
Further, even when the
さらに、ライセンス管理装置1によれば、ライセンスの利用効率を向上することができる。
Furthermore, according to the
その理由は、ライセンス管理装置1は、セマフォによってライセンスを管理するからである。より具体的に、ソフトウェアの処理時間が長くなる場合や実行途中にユーザが何らかの理由で処理を中断する場合であっても、係る処理を実行していたプロセスは、その処理において利用していたライセンスを解放する。さらに、他のプロセスは、解放されたライセンスを利用することができるからである。
The reason is that the
即ち、ライセンス管理装置1は、ライセンスの割り当て要求した全てのプロセスに対してライセンスを公平に提供することができる。
That is, the
<第2の実施形態>
次に、上述した本発明の第1の実施形態に係るライセンス管理装置1を基本とする第2の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
<Second Embodiment>
Next, a second embodiment based on the
本発明の第2の実施形態におけるライセンス管理装置10について、図4を参照して説明する。
A
図4は、本発明の第2の実施形態におけるライセンス管理装置10の構成を示すブロック図である。
FIG. 4 is a block diagram showing the configuration of the
図4において、ライセンス管理装置10は、ライセンス管理部11を有する点が第1の実施形態におけるライセンス管理装置1と異なる。
In FIG. 4, the
ライセンス管理部11は、第1の実施形態において説明したライセンス管理部2に対して、さらに解放要求情報102を受信するのに応じて、第1のソフトウェアのライセンスを解放(解除)する。
The
ここで、解放要求情報102とは、ライセンス管理部11に第1のソフトウェアのライセンスの解放処理を依頼する情報と、その解放を依頼するライセンス数とを含む。
Here, the
より具体的に、ライセンス管理部11は、解放要求情報102に基づいて、第1のソフトウェアに対応するセマフォに設定された資源数から、解放するライセンス数を適切なタイミングで減算する。
More specifically, the
ここで、適切なタイミングとは、プロセスが実行を中断すると共に、ライセンスの解放後とする。 Here, the appropriate timing is after the process is suspended and the license is released.
さらに、ライセンス管理部11は、例えば、ライセンスサーバ(不図示)に第1のソフトウェアのライセンスを解放したこと通知する。
Further, for example, the
これにより、例えば、ライセンスサーバは、第1のソフトウェアのライセンスの割り当て要求を受け付けた際に割り当て可能なライセンスが無い場合であっても、解放要求情報102に基づいて、ライセンス管理部11からライセンスが解放されるため、速やかにライセンスの割り当て要求元に対して、係るライセンスを割り当てることが可能となる。
As a result, for example, the license server receives a license from the
このように本実施の形態に係るライセンス管理装置10によれば、上述した第1の実施形態において説明した効果を享受できると共に、さらに、ライセンス管理装置10は、長時間ライセンスを占有するプロセスがあった場合であっても、解放要求情報102に基づいてライセンスを効率的に解放(解除)することができる。
As described above, according to the
その理由は、ライセンス管理部11は、解放要求情報102を受信するのに応じて、ライセンスを解放することができるからである。
The reason is that the
<第3の実施形態>
次に、上述した本発明の第2の実施形態に係るライセンス管理装置10を基本とする第3の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
<Third Embodiment>
Next, a third embodiment based on the above-described
本発明の第3の実施形態におけるライセンス管理システム50について、図2、図3、図5及び図6を参照して説明する。
A
図5は、本発明の第3の実施形態におけるライセンス管理装置10を含むライセンス管理システム50の構成を示すブロック図である。
図5において、ライセンス管理システム50は、大別して、ライセンスサーバ51とライセンス管理装置10を含む計算機52とを有する。
FIG. 5 is a block diagram showing the configuration of the
In FIG. 5, the
ライセンスサーバ51は、ライセンス制御部53とライセンス管理情報部54とを有する。
The
ライセンス制御部53は、計算機52から第1のソフトウェアのライセンスの割り当て要求を受け付けるのに応じて、ライセンス管理情報部54に格納された情報に基づいて、係るライセンスの割り当て可否を判定する。
In response to receiving the first software license allocation request from the
ライセンス制御部53は、係るライセンスの割り当て可否を判定した結果、そのライセンスを割り当て可能と判定した場合に、計算機52に第1のライセンス情報101を通知する。
As a result of determining whether or not the license can be assigned, the
一方で、ライセンス制御部53は、係るライセンスの割り当て可否を判定した結果、そのライセンスを割り当てできないと判定した場合に、ライセンス管理情報部54に格納された情報に基づいて、第1のソフトウェアのライセンスの解放を依頼する計算機を特定する。
On the other hand, if the
さらに、ライセンス制御部53は、特定した計算機に対して第1のソフトウェアのライセンスの解放要求(解放要求情報102)を通知する(ライセンス制御部53、ライセンス管理情報部54については、本実施形態において後述する)。
Further, the
また、図5に示すライセンスサーバ51と計算機52とは、通信ネットワーク110を介して、通信可能である。
Further, the
通信ネットワーク110は、例えば、携帯電話事業者が所有する各種通信回線、インターネットサービスプロバイダ等が提供するインターネット等の一般的な通信回線である。但し、本実施形態に係る実施例を例に説明する本発明は、これらに限定されない(以下の実施形態においても同様)。
The
尚、以下の説明において、説明の便宜上、計算機52は、1台の計算機52が通信ネットワーク110に接続する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、計算機52は、1台以上の計算機52が通信ネットワーク110に接続する構成を採用してもよい。
In the following description, for the sake of convenience of explanation, the
また、ライセンスサーバ51が計算機52から第1のソフトウェアのライセンスの割り当て要求を受信するのに応じて、第1のライセンス情報101を計算機52に通知する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する(以下、各実施形態においても同様)。
In addition, the technology itself for notifying the
次に、以下の説明において、説明の便宜上、一例として、本実施形態におけるライセンス管理装置10をライセンス管理システム50に適用した際の動作について説明する。
Next, in the following description, for convenience of explanation, an operation when the
ここでは、説明の便宜上、計算機52のライセンス管理装置10は、第1のソフトウェアのライセンスの割り当てを要求することとする。
Here, for convenience of explanation, it is assumed that the
ライセンス管理部11は、第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けるのに応じて、ライセンスサーバ51にライセンスの割り当て要求を通知する(図2に示すステップS1)。
In response to receiving the first software license allocation request from the first process, the
次に、ライセンス管理部11は、係るライセンスを利用する第1のプロセスと異なるプロセス(第2のプロセス)の有無を判定する(図2に示すステップS2)。
Next, the
ライセンス管理部11は、ライセンスを利用する第2のプロセスの有無を判定した結果、ライセンスを利用する第2のプロセスが無いと判定する(図2に示すステップS3において「NO」)。
As a result of determining the presence or absence of the second process using the license, the
ライセンス管理部11は、ライセンスサーバ51から通信部(不図示)を介して第1のライセンス情報101を受信したか否かを判定する(図2に示すステップS4)。
The
ここでは、ライセンス管理部11は、ライセンスサーバ51から第1のライセンス情報101を受信することとする。尚、説明の便宜上、ライセンスサーバ51から第1のライセンス情報101を通知する動作については、本実施例において後述する。
Here, the
ライセンス管理部11は、判定した結果、第1のライセンス情報101を受信していると判定する(図2に示すステップS5において「YES」)。
As a result of the determination, the
さらに、ライセンス管理部11は、第1のソフトウェアに対応するセマフォを利用可能な状態にする(図2に示すステップS6)。
Further, the
尚、ライセンス管理部11が第1のソフトウェアに対応するセマフォを利用可能な状態にする動作は、第1の実施形態において説明した動作と同様である。そのため、重複する説明は省略する。
The operation of the
実行制御部3は、第1のソフトウェアのライセンスが割り当てられることを要求する第1のプロセスの属性情報を設定すると共に、第1のプロセスを実行可能な状態に制御する(図2に示すステップS7)。
The
これにより、実行可能状態となった第1のプロセスは、標準スケジューラにおけるスケジューリングによってプロセッサを割り当てられた際に、第1のソフトウェアを実行する。 As a result, the first process in the executable state executes the first software when the processor is assigned by scheduling in the standard scheduler.
次に、図6に示すフローチャートに沿って計算機52から第1のソフトウェアのライセンスの割り当て要求を受け付けた際のライセンスサーバ51の動作手順を説明する。
Next, an operation procedure of the
図6は、本発明の第3の実施形態におけるライセンスサーバ51が行う計算機52から第1のソフトウェアのライセンスの割り当て要求を受け付けた際の動作を示すフローチャートである。
FIG. 6 is a flowchart showing an operation when a license allocation request for the first software is received from the
ここで、以下の説明において、説明の便宜上、一例として、ライセンスサーバ51は、計算機52から係るライセンスの割り当て要求に対して割り当て可能なライセンスが無いこととする。
Here, in the following description, for convenience of explanation, it is assumed as an example that the
尚、説明の便宜上、上述した構成を例に説明するが、本実施形態を例に説明する本発明は、この構成には限定されない(以下の実施形態においても同様)。 For convenience of explanation, the above-described configuration will be described as an example. However, the present invention described using this embodiment as an example is not limited to this configuration (the same applies to the following embodiments).
ステップS21:
ライセンスサーバ51のライセンス制御部53は、計算機52から第1のソフトウェアのライセンスの割り当て要求を受け付けるのに応じて、ライセンスサーバ51に格納された契約情報(不図示)に基づいて、計算機52が第1のソフトウェアの利用条件を満たすか否かを判定する。
Step S21:
In response to receiving a license allocation request for the first software from the
ここで、契約情報とは、一般的に知られたライセンス管理されたソフトウェアにおける利用可能なライセンス数や計算機毎に設定された係るソフトウェアの利用可否等の情報を含む。但し、本実施形態を例に説明する本発明は、これらに限定されない(以下、各実施形態においても同様)。 Here, the contract information includes information such as the number of available licenses in generally known license-managed software and the availability of the software set for each computer. However, the present invention described using this embodiment as an example is not limited thereto (hereinafter, the same applies to each embodiment).
ステップS22において「YES」:
ライセンス制御部53は、契約情報に基づいて、計算機52が第1のソフトウェアの利用条件を満たすか否かを判定した結果、計算機52が第1のソフトウェアの利用条件を満たすと判定した場合に、処理をステップS23に進める。
“YES” in step S22:
Based on the contract information, the
ステップS22において「NO」:
ライセンス制御部53は、契約情報に基づいて、計算機52が第1のソフトウェアの利用条件を満たすか否かを判定した結果、計算機52が第1のソフトウェアの利用条件を満たさないと判定した場合に、処理を終了する。
“NO” in step S22:
The
ステップS23:
ライセンス制御部53は、ライセンス管理情報部54に格納されたライセンス管理情報に基づいて、第1のソフトウェアのライセンスを割り当て可能か否か判定する。
Step S23:
Based on the license management information stored in the license
ここでは、説明の便宜上、一例として、ライセンス制御部53は、係るライセンスを割り当てできないこととする。
Here, for convenience of explanation, as an example, it is assumed that the
ステップS24において「YES」:
ライセンス制御部53は、計算機52からのライセンスの割り当て要求に対してライセンスを割り当て可能か否か判定した結果、ライセンスを割り当て可能と判定した場合に、処理をステップS25に進める。
"YES" in step S24:
When the
ステップS24において「NO」:
ライセンス制御部53は、計算機52からのライセンスの割り当て要求に対してライセンスを割り当て可能か否か判定した結果、ライセンスを割り当てできないと判定した場合に、処理をステップS27に進める。
“NO” in step S24:
When the
ステップS25:
ライセンス制御部53は、計算機52に第1のソフトウェアのライセンスを割り当てる。即ち、ライセンス制御部53は、計算機52に第1のライセンス情報101を通知する。
Step S25:
The
ステップS26:
ライセンス制御部53は、ライセンス管理情報部54にライセンスにおける管理情報(ライセンス管理情報)を格納する。
Step S26:
The
ここで、ライセンス管理情報とは、ライセンス情報と、計算機52から第1のソフトウェアのライセンスの割り当て要求を受け付けた時刻(受付時刻)と、計算機52を識別可能な識別情報と、ライセンス管理部11にライセンスの割り当て要求した第1のプロセスを識別可能なプロセスIDと、ライセンスを割り当てた時刻(割当時刻)と、ライセンスを解放した時刻(解放時刻)とが関連付けられた情報を含む。
Here, the license management information includes the license information, the time when the license allocation request for the first software is received from the computer 52 (acceptance time), the identification information that can identify the
尚、解放時刻とは、計算機52のライセンス管理部11から第1のプロセスにおいてライセンスの利用が終了したことを示す通知(図3に示すステップS13及びS14)を受信した際の時刻とする。
The release time is the time when a notification (Steps S13 and S14 shown in FIG. 3) indicating that the use of the license has been completed in the first process is received from the
ステップS27:
ライセンス制御部53は、ライセンス管理情報部54を参照すると共に、ライセンス管理情報部54のライセンス管理情報に基づいて、ライセンスの解放を依頼する計算機を特定する。
Step S27:
The
尚、ライセンス制御部53がライセンス管理情報部54に格納された情報に基づいて、ライセンスの解放を依頼する計算機を特定する処理は、例えば、割り当て可能なライセンスが無く、且つ計算機からライセンスの割り当て要求を受け付けた際に行うようにしてもよい。
Note that the
また、係る処理は、所定の間隔において定期的に利用開始時刻から長時間使用している計算機を特定するようにしてもよい。 Further, in this process, a computer that has been used for a long time from the use start time may be specified periodically at a predetermined interval.
さらに、係る処理は、所定の期間における割り当て時間から閾値を算出すると共に、その閾値を超える時間使用している計算機を特定するようにしてもよい。 Further, in this process, a threshold value may be calculated from the allocated time in a predetermined period, and a computer that is used for a time exceeding the threshold value may be specified.
その場合に、所定の期間における割り当て時間は、複数の計算機においてライセンスを利用する場合を考慮することとする。但し、本実施形態を例に説明する本発明は、これらに限定されない(以下、各実施形態においても同様)。 In that case, the allocation time in the predetermined period is taken into consideration when a license is used in a plurality of computers. However, the present invention described using this embodiment as an example is not limited thereto (hereinafter, the same applies to each embodiment).
ステップS28:
ライセンス制御部53は、第1のソフトウェアのライセンスの割り当て要求した計算機52と特定した計算機とを比較する。
Step S28:
The
より具体的に、一例として、ライセンス制御部53は、計算機52の識別情報と特定した計算機の識別情報とを比較する。
More specifically, as an example, the
これにより、ライセンス制御部53は、係るライセンスの割り当て要求した計算機52にライセンスの解放を依頼することを防ぐことができる。
As a result, the
ここでは、説明の便宜上、一例として、特定した計算機と計算機52とが異なることとする。
Here, for convenience of explanation, as an example, the specified computer and the
ステップS29において「YES」:
ライセンス制御部53は、第1のソフトウェアのライセンスの割り当て要求した計算機52と特定した計算機とを比較した結果、特定した計算機と計算機52とが同じ計算機の場合に、処理をステップS30に進める。
“YES” in step S29:
As a result of comparing the
ステップS29において「NO」:
ライセンス制御部53は、第1のソフトウェアのライセンスの割り当て要求した計算機52と特定した計算機とを比較した結果、特定した計算機と計算機52とが異なる計算機の場合に、処理をステップS31に進める。
“NO” in step S29:
As a result of comparing the
ステップS30:
ライセンス制御部53は、管理情報をライセンス管理情報部54に格納する。
Step S30:
The
より具体的に、ライセンス制御部53は、受付時刻と、計算機52を識別可能な識別情報と、プロセスIDとをライセンス管理情報部54に格納する。
More specifically, the
ステップS31:
ライセンス制御部53は、特定した計算機に第1のソフトウェアのライセンスの解放要求(解放要求情報102)を通知すると共に、処理をステップS23に進める。
Step S31:
The
ここで、ライセンス制御部53によって特定された計算機は、解放要求情報102を受信すると共に、係るライセンスを解放することとする。
Here, it is assumed that the computer specified by the
そのため、ライセンス制御部53は、計算機52に第1のライセンス情報101を通知することができる。
Therefore, the
尚、特定された計算機が解放要求情報102を受信するのに応じて、ライセンスを返却する動作は、第2の実施形態において説明した動作と同様である。そのため、重複する説明は省略する。
Note that the operation for returning the license in response to the specified computer receiving the
また、上述した実施形態では、説明の便宜上、一例として、ライセンスサーバ51は、ライセンス制御部53がライセンス管理情報部54に格納された情報に基づいて、各種処理を実行する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。
In the embodiment described above, for the sake of convenience of explanation, the
ライセンスサーバ51は、一般的に知られたフローティングライセンスによってライセンスを管理するライセンスサーバを採用してもよい。この場合であっても、第1の実施形態において説明した効果を享受できる。
The
このように本実施の形態に係るライセンス管理装置10によれば、上述した第1及び第2の実施形態において説明した効果を享受できると共に、また、ライセンス管理装置10は、例えば、一般的に知られたパーソナルコンピュータや携帯端末等においてライセンス管理されたソフトウェアを実行することが可能な計算機に適用して好適である。
さらに、ライセンス管理システム50は、長時間ライセンスを占有する計算機があった場合であっても、ライセンスの割り当てを効率的に実施することができる。
Thus, according to the
Furthermore, the
その理由は、ライセンスサーバ51のライセンス制御部53は、ライセンス管理情報部54に格納された情報に基づいて、長時間ライセンスを使用している計算機を特定することができる。また、ライセンス制御部53は、特定した計算機がライセンスを解放するように解放要求情報102を通知することができるからである。
The reason is that the
また、ライセンス管理部11は、受信した解放要求情報102に基づいて、ライセンスを解放することができるからである。
In addition, the
<第4の実施形態>
次に、上述した本発明の第3の実施形態に係るライセンス管理装置10を基本とする第4の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
<Fourth Embodiment>
Next, a fourth embodiment based on the
本発明の第4の実施形態におけるライセンス管理装置20について、図2、図7及び図8を参照して説明する。
A
図7は、本発明の第4の実施形態におけるライセンス管理装置20の構成を示すブロック図である。
FIG. 7 is a block diagram showing the configuration of the
図7において、ライセンス管理装置20は、ライセンス管理部21と実行制御部22とを有する。
In FIG. 7, the
図8は、本発明の第4の実施形態におけるライセンス管理装置20が行う第1のプロセスから第1のソフトウェアのライセンスの割り当て要求を受け付けた際の動作を示すフローチャートである。
FIG. 8 is a flowchart showing an operation when a license allocation request for the first software is received from the first process performed by the
図8に示すフローチャートに沿ってライセンス管理装置20の動作手順を説明する。
The operation procedure of the
尚、図8に示すステップS1乃至ステップS7における動作は、第1の実施形態において説明した図2に示すステップS1乃至ステップS7における動作と同様である。そのため、重複する説明は省略する。 The operations in steps S1 to S7 shown in FIG. 8 are the same as the operations in steps S1 to S7 shown in FIG. 2 described in the first embodiment. Therefore, the overlapping description is omitted.
ここで、ライセンス管理装置20は、不図示のライセンスサーバ(例えば、図5に示すライセンスサーバ51)から第2のライセンス情報103を受信することとする。
Here, the
また、第2のライセンス情報103は、第1の実施形態において説明した第1のライセンス情報101に、さらに、第1のソフトウェアのライセンスの利用形態を示す利用種別情報を含む。
Further, the
利用種別情報とは、第1のソフトウェアのライセンスをプロセスが占有して利用するか否かを示す。 The usage type information indicates whether or not the process occupies and uses the license of the first software.
ステップS41:
ライセンス管理部21は、第2のライセンス情報103を受信したか否かを判定する。
Step S41:
The
ステップS42において「NO」:
ライセンス管理部21は、第2のライセンス情報103を受信したか否かを判定した結果、第2のライセンス情報103を受信していないと判定した場合に、処理をステップS41に進める。
“NO” in step S42:
As a result of determining whether or not the
ステップS42において「YES」:
ライセンス管理部21は、第2のライセンス情報103を受信したか否かを判定した結果、第2のライセンス情報103を受信していると判定した場合に、処理をステップS43に進める。
"YES" in step S42:
If the
ステップS43:
ライセンス管理部21は、第2のライセンス情報103に含まれる利用種別情報に基づいて、第1のソフトウェアのライセンスの排他処理を行うか否かを判定する。
Step S43:
Based on the usage type information included in the
ステップS44において「YES」:
ライセンス管理部21は、係るライセンスの排他処理を行うか否かを判定した結果、ライセンスの排他処理を行うと判定した場合に、処理をステップS6に進める。
"YES" in step S44:
If the
ステップS44において「NO」:
ライセンス管理部21は、係るライセンスの排他処理を行うか否かを判定した結果、ライセンスの排他処理を行なわない判定した場合に、処理をステップS45に進める。即ち、この場合、ライセンス管理部21は、割り当たられたライセンスをセマフォによって管理しないことを意味する。
“NO” in step S44:
If the
ステップS45:
実行制御部22は、第1のソフトウェアのライセンスの割り当てを要求する第1のプロセスを実行可能状態にする。
Step S45:
The
これにより、ライセンスを割り当てられたプロセスは、ライセンスを占有して利用することができる。 Thereby, the process to which the license is assigned can occupy and use the license.
尚、ライセンスサーバのライセンス制御部53(不図示)は、ライセンス管理部21からライセンスの割り当て要求を受け付けるのに応じて、例えば、プロセスIDに基づいて、ライセンス種別情報を参照する。
Note that the license control unit 53 (not shown) of the license server refers to the license type information based on the process ID, for example, in response to receiving a license allocation request from the
次に、ライセンス制御部53は、ライセンス種別情報からライセンスIDと関連付けられたライセンスの利用種別情報を取得する。
Next, the
さらに、ライセンス制御部53は、取得した利用種別情報を第2のライセンス情報103に付加すると共に、第2のライセンス情報103をライセンス管理部21に通知する構成を採用してもよい。
Further, the
ここで、ライセンス種別情報とは、プロセスIDと、ライセンスの利用種別情報とが関連付けられた情報を含む。 Here, the license type information includes information in which the process ID and the license usage type information are associated with each other.
尚、上述した実施形態では、説明の便宜上、一例として、ライセンス種別情報には、プロセスID毎に占有してライセンスを利用するか否かを示す情報(利用種別情報)を含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。 In the above-described embodiment, for the sake of convenience of explanation, as an example, the license type information will be described with an example of a configuration that includes information (use type information) indicating whether to use a license exclusively for each process ID. did. However, the embodiment according to the present invention is not limited to such a configuration.
ライセンス種別情報には、例えば、利用者と、その利用者毎に設定された優先度と、ライセンスを占有するか否かを示す情報とを含む構成を採用してもよい。 For example, the license type information may include a user, a priority set for each user, and information indicating whether or not the license is occupied.
これにより、例えば、優先度の低い利用者がライセンスを利用しており、その利用者の利用種別がライセンスを占有して利用しないことを示す場合に、優先度が高く、利用種別がライセンスを占有して利用することを示す利用者からライセンスの割り当て要求を受け付けたライセンス制御部53は、優先度の低い利用者に解放要求情報102を通知する。
Thus, for example, when a low-priority user uses a license, and the user's usage type indicates that the license is occupied and not used, the priority is high and the usage type occupies the license. The
次に、優先度の低い利用者からライセンスの解放を受け付けたライセンス制御部53は、優先度が高く、利用種別がライセンスを占有して利用することを示す利用者にライセンスを割り当てることができる。
Next, the
このように本実施の形態に係るライセンス管理装置20によれば、上述した各実施形態において説明した効果を享受できると共に、さらに、ライセンス管理装置20は、プロセスにおけるライセンスの利用形態に応じて、ライセンスの割り当てを効率的に実施することができる。
As described above, according to the
その理由は、ライセンス管理装置20のライセンス管理部21は、第2のライセンス情報103に含まれる利用種別情報に基づいて、ライセンスの排他処理を行うか否かを判定する。さらに、ライセンス管理部21は、ライセンスの排他処理を行う場合のみセマフォを利用可能な状態にする。一方で、ライセンス管理部21は、ライセンスの排他処理を行わない場合には、セマフォを利用可能な状態にしない。これにより、ライセンスを占有して利用するプロセスがある場合に、ライセンス管理部21は、プロセスのライセンスの利用形態に合わせてライセンスの割り当てを行うことができるからである。
The reason is that the
また、本実施の形態に係るライセンス管理装置20によれば、利用形態に合わせたライセンスの利用料(価格)を設定することができる。その理由は、ライセンス管理されたソフトウェアを利用する環境に応じて、様々なライセンス形態を提供することができるからである。
Further, according to the
(ハードウェア構成例)
上述した実施形態において図1、図4、図5、図7に示した各部は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図9を参照して説明する。
(Hardware configuration example)
In the above-described embodiment, each unit illustrated in FIGS. 1, 4, 5, and 7 can be regarded as a function (processing) unit (software module) of a software program. However, the division of each part shown in these drawings is a configuration for convenience of explanation, and various configurations can be assumed for mounting. An example of the hardware environment in this case will be described with reference to FIG.
図9は、本発明の模範的な実施形態に係るライセンス管理装置を実行可能な情報処理装置300(コンピュータ)の構成を例示的に説明する図である。即ち、図9は、図1に示したライセンス管理装置1、或いは、図4に示したライセンス管理装置10、図5に示したライセンス管理システム50、図7に示したライセンス管理装置20の全体または一部のライセンス管理装置を実現可能なサーバ等のコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
FIG. 9 is a diagram illustrating an exemplary configuration of an information processing apparatus 300 (computer) that can execute a license management apparatus according to an exemplary embodiment of the present invention. That is, FIG. 9 shows the
図9に示した情報処理装置300は、CPU(Central_Processing_Unit)301、ROM(Read_Only_Memory)302、RAM(Random_Access_Memory)303、ハードディスク304(記憶装置)、並びに外部装置との通信インタフェース(Interface:以降、「I/F」と称する)305、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体307に格納されたデータを読み書き可能なリーダライタ308を備え、これらの構成がバス306(通信線)を介して接続された一般的なコンピュータである。
The
そして、上述した実施形態を例に説明した本発明は、図9に示した情報処理装置300に対して、その実施形態の説明において参照したブロック構成図(図1、図4、図5、図7)或いはフローチャート(図2、図3、図6、図8)の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのCPU301に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータ・プログラムは、読み書き可能な揮発性の記憶メモリ(RAM303)またはハードディスク304等の不揮発性の記憶デバイスに格納すれば良い。
The present invention described by taking the above-described embodiment as an example is a block diagram (FIGS. 1, 4, 5, and 5) referred to in the description of the embodiment for the
また、前記の場合において、当該ハードウェア内へのコンピュータ・プログラムの供給方法は、CD−ROM等の各種記憶媒体307を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが格納された記憶媒体307によって構成されると捉えることができる。 In the above case, the computer program can be supplied to the hardware by a method of installing the computer program via various storage media 307 such as a CD-ROM or a communication line such as the Internet. Currently, a general procedure can be adopted, such as a method of downloading from the outside. In such a case, the present invention can be understood to be configured by a code constituting the computer program or a storage medium 307 in which the code is stored.
尚、上述した各実施形態の一部又は全部は、以下の付記のようにも記載されうる。しかしながら、上述した実施形態及びその実施例により例示的に説明した本発明は、以下には限らない。即ち、
(付記1)
1つ以上の第1のプロセスから、該第1のプロセスが実行するソフトウェアのライセンスの割り当て要求を受付けるのに応じて、ライセンスサーバに前記ライセンスの割り当てを要求し、前記ライセンスを利用する前記第1のプロセスとは異なる第2のプロセスの有無を判定し、前記第2のプロセスが無い場合に、前記ライセンスの使用を許可する情報を含む第1のライセンス情報を受信したか否かを判定し、前記第1のライセンス情報を受信したと判定した場合に、前記ソフトウェアに対応する前記ライセンスの排他処理を利用可能な状態にするライセンス管理部と、
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定する実行制御部と、
を備えることを特徴とするライセンス管理装置。
(付記2)
前記ライセンス管理部は、
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知することを特徴とする付記1に記載のライセンス管理装置。
(付記3)
前記ライセンス管理部は、
前記ライセンスサーバから前記ライセンスの解除を要求する情報を含む解放要求情報を受信するのに応じて、該ライセンスを前記ライセンスサーバに解除することを特徴とする付記1または付記2に記載のライセンス管理装置。
(付記4)
前記排他処理は、セマフォであることを特徴とする付記1に記載のライセンス管理装置。
(付記5)
前記ライセンス管理部は、
前記ライセンスサーバから前記ライセンスの使用を許可する情報と前記ライセンスの利用形態を示す利用種別情報とを含む第2のライセンス情報を受信するのに応じて、前記利用種別情報に基づいて、前記排他処理を行うか否かを判定することを特徴とする付記1乃至付記5の何れかに記載のライセンス管理装置。
(付記6)
受信した前記ライセンスの割り当て要求に応じて、前記第1のライセンス情報を通知するライセンスサーバと、
付記1乃至付記5の何れかに記載されたライセンス管理装置を含む計算機と、
を備えることを特徴とするライセンス管理システム。
(付記7)
前記ライセンスサーバは、
前記計算機からの前記ライセンスの割り当て要求に応じて、ライセンス情報を含むライセンス管理情報に基づいて、前記ライセンスを割り当て可能か否かを判定し、
前記ライセンスを割り当て可能と判定した場合に、前記第1のライセンス情報を前記計算機に通知し、
ライセンスを割り当てできないと判定した場合に、前記ライセンス管理情報に基づいて、前記解放要求情報を通知する計算機を特定し、前記特定した計算機と前記割り当て要求した計算機とを比較した結果に応じて、前記解放要求情報を前記特定した計算機に通知するライセンス制御部を備えることを特徴とする付記6に記載のライセンス管理システム。
(付記8)
前記ライセンス管理情報は、
前記ライセンス情報と、前記計算機からライセンスの割り当て要求を受付けた受付時刻と、前記計算機を識別可能な識別情報と、前記第1のプロセスを識別可能なプロセスIDと、前記計算機に前記ライセンスを割り当てた割当時刻と、前記計算機から前記ライセンスの解除を受け付けた解放時刻とが関連付けられた情報を含むことを特徴とする付記7に記載のライセンス管理システム。
(付記9)
1つ以上の第1のプロセスから、該第1のプロセスが実行するソフトウェアのライセンスの割り当て要求を受付けるのに応じて、ライセンスサーバに前記ライセンスの割り当てを要求し、前記ライセンスを利用する前記第1のプロセスとは異なる第2のプロセスの有無を判定し、前記第2のプロセスが無い場合に、前記ライセンスの使用を許可する情報を含む第1のライセンス情報を受信したか否かを判定し、前記第1のライセンス情報を受信したと判定した場合に、前記ソフトウェアに対応する前記ライセンスの排他処理を利用可能な状態にし、
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定することを特徴とするライセンス管理方法。
(付記10)
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知することを特徴とする付記9に記載のライセンス管理方法。
(付記11)
前記ライセンスサーバから前記ライセンスの解除を要求する情報を含む解放要求情報を受信するのに応じて、該ライセンスを前記ライセンスサーバに解除することを特徴とする付記9または付記10に記載のライセンス管理方法。
(付記12)
1つ以上の第1のプロセスから、該第1のプロセスが実行するソフトウェアのライセンスの割り当て要求を受付けるのに応じて、ライセンスサーバに前記ライセンスの割り当てを要求し、前記ライセンスを利用する前記第1のプロセスとは異なる第2のプロセスの有無を判定し、前記第2のプロセスが無い場合に、前記ライセンスの使用を許可する情報を含む第1のライセンス情報を受信したか否かを判定し、前記第1のライセンス情報を受信したと判定した場合に、前記ソフトウェアに対応する前記ライセンスの排他処理を利用可能な状態にする機能と、
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定する機能と、
をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
(付記13)
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知する機能
をコンピュータに実現させることを特徴とする付記12に記載のコンピュータ・プログラム。
In addition, a part or all of each embodiment mentioned above can be described also as the following additional remarks. However, the present invention described by way of example using the above-described embodiment and its examples is not limited to the following. That is,
(Appendix 1)
In response to receiving a license allocation request for software executed by the first process from one or more first processes, the license server is requested to allocate the license and the first license is used. Determining whether there is a second process different from the first process, and if there is no second process, determining whether or not the first license information including information permitting use of the license is received; A license management unit that, when it is determined that the first license information has been received, makes the exclusive processing of the license corresponding to the software available;
An execution control unit that sets information for instructing execution of the exclusion process in the attribute information of the first process;
A license management apparatus comprising:
(Appendix 2)
The license management unit
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
The license management apparatus according to
(Appendix 3)
The license management unit
3. The license management apparatus according to
(Appendix 4)
The license management apparatus according to
(Appendix 5)
The license management unit
In response to receiving second license information including information permitting use of the license and usage type information indicating a usage mode of the license from the license server, the exclusive processing is performed based on the usage type information. 6. The license management apparatus according to any one of
(Appendix 6)
A license server for notifying the first license information in response to the received license allocation request;
A computer including the license management apparatus according to any one of
A license management system comprising:
(Appendix 7)
The license server
In response to the license allocation request from the computer, it is determined whether or not the license can be allocated based on license management information including license information;
If it is determined that the license can be assigned, the first license information is notified to the computer;
When it is determined that a license cannot be allocated, the computer that notifies the release request information is identified based on the license management information, and the computer that has requested the allocation is compared with the identified computer, The license management system according to appendix 6, further comprising a license control unit for notifying the specified computer of release request information.
(Appendix 8)
The license management information is
The license information, the reception time at which a license allocation request is received from the computer, identification information that can identify the computer, a process ID that can identify the first process, and the license that has been allocated to the computer The license management system according to appendix 7, characterized in that it includes information in which an allocation time is associated with a release time at which the release of the license is received from the computer.
(Appendix 9)
In response to receiving a license allocation request for software executed by the first process from one or more first processes, the license server is requested to allocate the license and the first license is used. Determining whether there is a second process different from the first process, and if there is no second process, determining whether or not the first license information including information permitting use of the license is received; If it is determined that the first license information has been received, the exclusive processing of the license corresponding to the software is made available,
A license management method characterized in that information for instructing execution of the exclusion process is set in the attribute information of the first process.
(Appendix 10)
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
The license management method according to appendix 9, wherein when the number of processes is larger than the number of licenses, the license server is notified that the first process has finished using the license.
(Appendix 11)
11. The license management method according to appendix 9 or
(Appendix 12)
In response to receiving a license allocation request for software executed by the first process from one or more first processes, the license server is requested to allocate the license and the first license is used. Determining whether there is a second process different from the first process, and if there is no second process, determining whether or not the first license information including information permitting use of the license is received; A function of making the exclusive processing of the license corresponding to the software available when it is determined that the first license information has been received;
A function of setting information instructing execution of the exclusion process in the attribute information of the first process;
A computer program characterized in that a computer is realized.
(Appendix 13)
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
13. The computer according to
本発明は、上述した各実施形態には限定されない。本発明は、例えば、パーソナルコンピュータ、POS(Point_Of_Sale)システム、サーバ、携帯端末、複写機、複合機等のライセンス管理されたソフトウェアを搭載する各種の電子機器に適用可能である。 The present invention is not limited to the embodiments described above. The present invention is applicable to, for example, various electronic devices equipped with license-managed software such as a personal computer, a POS (Point_Of_Sale) system, a server, a portable terminal, a copier, and a multifunction peripheral.
1 ライセンス管理装置
2 ライセンス管理部
3 実行制御部
10 ライセンス管理装置
11 ライセンス管理部
20 ライセンス管理装置
21 ライセンス管理部
22 実行制御部
50 ライセンス管理システム
51 ライセンスサーバ
52 計算機
53 ライセンス制御部
54 ライセンス管理情報部
101 第1のライセンス情報
102 解放要求情報
103 第2のライセンス情報
110 通信ネットワーク
300 情報処理装置
301 CPU
302 ROM
303 RAM
304 ハードディスク
305 通信インタフェース
306 バス
307 記憶媒体
308 リーダライタ
DESCRIPTION OF
302 ROM
303 RAM
304
Claims (8)
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定する実行制御部と、を備え、
前記ライセンス管理部は、
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知する
ことを特徴とするライセンス管理装置。 From the first process, in response to receiving the software license allocation request to the first process executes, requests the allocation of the license to the license server, Unlike the first process, and the determining whether the second process that utilizes the license, if the second process is not, determines whether it has received the first license information that includes information for permitting use of the license, the A license management unit that, when it is determined that the first license information is received, makes the exclusive processing of the license corresponding to the software available;
An execution control unit that sets information for instructing execution of the exclusion process in the attribute information of the first process,
The license management unit
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
The license management apparatus , wherein when the number of processes is larger than the number of licenses, the license server is notified that the first process has finished using the license.
前記ライセンスサーバから前記ライセンスの解除を要求する情報を含む解放要求情報を受信するのに応じて、該ライセンスを前記ライセンスサーバに解除することを特徴とする請求項1に記載のライセンス管理装置。 The license management unit
The license management apparatus according to claim 1 , wherein the license is released to the license server in response to receiving release request information including information requesting release of the license from the license server.
前記ライセンスサーバから前記ライセンスの使用を許可する情報と前記ライセンスの利用形態を示す利用種別情報とを含む第2のライセンス情報を受信するのに応じて、前記利用種別情報に基づいて、前記排他処理を行うか否かを判定することを特徴とする請求項1乃至請求項3の何れかに記載のライセンス管理装置。 The license management unit
In response to receiving second license information including information permitting use of the license and usage type information indicating a usage mode of the license from the license server, the exclusive processing is performed based on the usage type information. license management apparatus according to any one of claims 1 to 3, wherein the determining whether to perform.
請求項1乃至請求項4の何れかに記載されたライセンス管理装置を含む計算機と、
を備えることを特徴とするライセンス管理システム。 A license server for notifying the first license information in response to the received license allocation request;
A computer including the license management apparatus according to any one of claims 1 to 4 ;
A license management system comprising:
前記計算機からの前記ライセンスの割り当て要求に応じて、ライセンス情報を含むライセンス管理情報に基づいて、前記ライセンスを割り当て可能か否かを判定し、
前記ライセンスを割り当て可能と判定した場合に、前記第1のライセンス情報を前記計算機に通知し、
ライセンスを割り当てできないと判定した場合に、前記ライセンス管理情報に基づいて、前記解放要求情報を通知する計算機を特定し、前記特定した計算機と前記割り当て要求した計算機とを比較した結果、前記特定した計算機と前記割り当て要求した計算機とが異なる計算機の場合に、前記解放要求情報を前記特定した計算機に通知するライセンス制御部を備えることを特徴とする請求項5に記載のライセンス管理システム。 The license server
In response to the license allocation request from the computer, it is determined whether or not the license can be allocated based on license management information including license information;
If it is determined that the license can be assigned, the first license information is notified to the computer;
When it is determined that not allocate a license on the basis of the license management information to identify the computer to notify the release request information, the result of comparing the a specified computer the allocation requested computer, the identified computer 6. The license management system according to claim 5 , further comprising: a license control unit for notifying the specified computer of the release request information when the allocation requesting computer is different from the allocation requested computer .
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定し、
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知する
ことを特徴とするライセンス管理方法。 What is the first process for requesting the license server to allocate the license in response to receiving a license allocation request for software executed by the first process from the first process and using the license? It is determined whether or not there is a different second process, and if there is no second process, it is determined whether or not the first license information including information permitting use of the license is received, and the first process If it is determined that the license information has been received, the exclusive processing of the license corresponding to the software is made available,
Set information instructing to execute the exclusion process in the attribute information of the first process,
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
The license management method , wherein when the number of processes is greater than the number of licenses, the license server is notified that the first process has finished using the license.
前記第1のプロセスの属性情報に前記排他処理を実行するよう指示する情報を設定する機能と、
前記第1のプロセスが前記ライセンスを解除する際に、前記ライセンスの割り当てを要求したプロセス数と前記ライセンスサーバから割り当てられたライセンス数とを比較し、該プロセス数が該ライセンス数以下の場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスを解除し、そのライセンスの利用を終了したことを通知し、
該プロセス数が該ライセンス数より多い場合に、前記ライセンスサーバに前記第1のプロセスが前記ライセンスの利用を終了したことを通知する機能と、
をコンピュータに実現させることを特徴とするコンピュータ・プログラム。 What is the first process for requesting the license server to allocate the license in response to receiving a license allocation request for software executed by the first process from the first process and using the license? It is determined whether or not there is a different second process, and if there is no second process, it is determined whether or not the first license information including information permitting use of the license is received, and the first process A function to make the exclusive processing of the license corresponding to the software available when it is determined that the license information has been received;
A function of setting information instructing execution of the exclusion process in the attribute information of the first process;
When the first process releases the license, the number of processes that requested allocation of the license is compared with the number of licenses allocated from the license server, and when the number of processes is equal to or less than the number of licenses, Notifying the license server that the first process has released the license and has finished using the license;
A function of notifying the license server that the first process has finished using the license when the number of processes is greater than the number of licenses;
A computer program characterized in that a computer is realized.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013020593A JP6123320B2 (en) | 2013-02-05 | 2013-02-05 | LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013020593A JP6123320B2 (en) | 2013-02-05 | 2013-02-05 | LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014153761A JP2014153761A (en) | 2014-08-25 |
JP6123320B2 true JP6123320B2 (en) | 2017-05-10 |
Family
ID=51575619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013020593A Active JP6123320B2 (en) | 2013-02-05 | 2013-02-05 | LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6123320B2 (en) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6454540A (en) * | 1987-08-25 | 1989-03-02 | Nec Corp | Process control system for operating system |
JP4101899B2 (en) * | 1997-02-10 | 2008-06-18 | 大日本印刷株式会社 | License management system |
JP2001344031A (en) * | 2000-05-31 | 2001-12-14 | Matsushita Electric Ind Co Ltd | Method for managing license |
JP2002258962A (en) * | 2001-02-27 | 2002-09-13 | Toyota Motor Corp | Software license management system |
JP2003091613A (en) * | 2001-07-10 | 2003-03-28 | Systemneeds Inc | Licensing method and licensing system |
JP4356068B2 (en) * | 2004-03-02 | 2009-11-04 | 日本電気株式会社 | License management method and apparatus |
JP4343916B2 (en) * | 2006-03-30 | 2009-10-14 | キヤノン株式会社 | Information processing apparatus, information processing system, and information processing method |
JP2008234556A (en) * | 2007-03-23 | 2008-10-02 | Hitachi Ltd | License management system, license management method and license management program |
US10452820B2 (en) * | 2007-06-26 | 2019-10-22 | International Business Machines Corporation | Thread-based software license management |
-
2013
- 2013-02-05 JP JP2013020593A patent/JP6123320B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014153761A (en) | 2014-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6954267B2 (en) | Network Functions Virtualization Management Orchestration Equipment, Methods and Programs | |
CN110647394B (en) | Resource allocation method, device and equipment | |
US11252220B2 (en) | Distributed code execution involving a serverless computing infrastructure | |
US11102287B2 (en) | Minimizing service restart by optimally resizing service pools | |
AU2011306014B2 (en) | Methods and systems for dynamically managing requests for computing capacity | |
CA3000422C (en) | Workflow service using state transfer | |
JP6542810B2 (en) | System and method for providing a work manager in a multi-tenant application server environment | |
CN112513813A (en) | Performing auxiliary functions in an on-demand network code execution system | |
US10311216B2 (en) | Borrowing software licenses in a license management system for time based usage | |
US8468530B2 (en) | Determining and describing available resources and capabilities to match jobs to endpoints | |
WO2016039963A2 (en) | Resource sharing between two resource allocation systems | |
KR20170051360A (en) | Information processing apparatus and method of controlling the same, and program | |
WO2016061935A1 (en) | Resource scheduling method, device and computer storage medium | |
WO2007052443A1 (en) | Information processing method and information processing apparatus | |
JP2017068480A (en) | Job management method, job management device, and program | |
JP5867238B2 (en) | Auto scaling method, auto scaling program and computer node | |
EP2843548B1 (en) | Method, system, and program for scheduling jobs in a computing system | |
US10956228B2 (en) | Task management using a virtual node | |
JP2017027367A (en) | Image forming apparatus, resource management device, resource management method, image forming apparatus, and program | |
CN112860421A (en) | Method, apparatus and computer program product for job processing | |
JP6123320B2 (en) | LICENSE MANAGEMENT DEVICE AND ITS MANAGEMENT METHOD, LICENSE MANAGEMENT SYSTEM, AND COMPUTER PROGRAM | |
JP2008077281A (en) | Superscheduler, job request method and superscheduler program | |
US9628401B2 (en) | Software product instance placement | |
JP6885441B2 (en) | License management device, license management method, and license management program | |
JP6337532B2 (en) | Information processing system and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160120 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161213 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170210 |
|
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: 20170307 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170320 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6123320 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |