我正在从服务器运行 Calibre(v 2013.4_37.29)。但是我看到,当我启动运行时,有多个以我的名字签出的许可证,很少有人排队。深入研究后,我发现有多个 mgls_async 进程正在运行,它们可能正在检查许可证。当我杀死他们时,我可以释放许可证。
知道发生了什么吗?任何帮助是极大的赞赏。提前致谢!
“Calibre”是一个商业名称。在 Calibre 中,您有许多功能或阶段。商业名称与完成每个阶段所需的资源之间可能没有联系。
“Calibre”使用您自己的计算机或网络上特定计算机的许可服务。许可服务使用 Mentor 提供的特定文件。许可证文件的结构和内容与商业名称无关,在这种情况下是您的。对于 Calibre 工作的每个阶段,您都会使用(可能不知道)一些特定的“功能”。
在一个阶段,一些资源是相关联的。在您看不到的许可证文件中,资源可能是:“INCREMENT”、“FEATURE”或“PACKAGE”。例如,如果一个资源被定义为一个“PACKAGE”,当你使用它时,你会从组成“PACKAGE”的“INCREMENT”资源中获得一个或多个令牌:同时使用一个(或多个)令牌来自许多“增量”。因此,在每个阶段,您都会向许可证服务器发出许多请求,并且可以启动许多进程来完成您使用“Calibre”的阶段。
软件的编辑器决定如何将每个功能或阶段拆分为“INCREMENT”、“FEATURE”或“PACKAGE”。
许可证服务由两个守护进程组成:“lmgrd”和所谓的“守护进程供应商”。当软件(为您的“Calibre”)必须使用资源时,它会向“lmgrd”发送请求。“lmgrd”进行一些控制并将请求传递给“守护程序供应商”。此时,我无法查看,但我知道 Mentor 的“守护程序供应商”的名称类似于“mgls...”。
这是对 Flexera 公司类型为“Flexnet”(旧名称为“Flexlm”)的许可证服务器的软件使用的粗略描述。
为了完成一个阶段,在软件实施的功能中,可以启动一个或多个进程,在您的情况下,您需要登录为所有者。如您所见,当您终止进程时,与每个进程关联的令牌被释放。
但在正常情况下,当阶段完成时,进程消失,令牌被释放,无需任何干预。