wlm_load 子例程
用途
将工作负载管理器 (WLM) 配置装入内核。
库
工作负载管理器库 (libwlm.a)
语法
描述
Wlm_load 子例程将在 Wlmargs 结构的 康迪尔 字段中传递的 WLM 配置的属性文件装入到内核中。 康迪尔 字段还可能引用一组基于时间的配置,在此情况下,将装入该集合的相应配置,并且 WLM 守护程序稍后将按时间切换至该集合的其他配置。
如果 WLM 正在运行并且 康迪尔 不是最新的,那么这将导致切换到指定的配置 (或配置集)。
如果 WLM 正在运行并且 康迪尔 是最新的,那么 Wlm_load 会将当前 WLM 配置刷新到内核中。 如果在 class_definition 子结构的 名称 字段中指定了超类名称,那么只会刷新给定超类的子类。 在这方面:
- Root 用户以及对超类的子类具有管理特权的用户都可以访问 Wlm_load 子例程。 在所有其他情况下, Wlm_load 子例程仅可供 root 用户访问。
- 不能使用 Wlm_load 子例程来更改 WLM 的操作方式 (例如,在主动方式与被动方式之间切换)。
- 如果 当前 是配置集,那么必须以 当前/配置 格式提供 康迪尔 ,其中 配置 是超类所属的集合的常规配置。 如果 配置 是集合的活动配置,那么这些更改将立即生效,否则这些更改将在 配置 下一次激活时生效。
如果 Wlm_load 的调用者具有 root 特权并且未指定超类,那么可以使用在 弗尔斯标志 中传递的标志以主动或被动方式启动 WLM ,在主动和被动方式之间切换,或者启用/禁用 rset 绑定或进程或类的总限制。 不能使用 Wlm_load 子例程来停止 WLM。 请改为使用 wlm_set 子例程。
参数
| 项 | 描述 |
|---|---|
| Wlmargs | 指定 结构 wlm_args 数据结构的地址,该数据结构包含关于要装入的配置 (或配置集或超类) 以及 WLM 的操作方式的信息。 |
可以提供 wlm_args 结构和嵌入式子结构的下列字段:
| 项 | 描述 |
|---|---|
| 弗尔斯标志 | 需要使用 WLM_VERSION 进行初始化。 可以使用 WLM_MUTE 进行 OR 运算,以使 Wlm_load 保持静默。 如果必须对 WLM 的操作方式进行任何更改,那么必须使用 WLM_TEST_ON 对其进行 OR 运算 (如果指定了超类,那么必需)。 否则,必须给定其中一个互斥标志 (WLM_ACTIVE , WLM_CPUONLY 或 WLM_PASSIVE)。 可以选择指定一个或多个 WLM_BIND_RSETS , WLM_PROCTOTAL 或 WLM_CLASSTOTAL 标志。 |
| 康迪尔 | 指定要装入到内核中的 WLM 配置的名称。 它必须是 /etc/wlm 子目录中有效配置或配置集的名称,要引用活动配置的 current 字符串,或者,如果指定了超类并且当前是配置集,那么它必须以以下格式指示超类所属的当前集的配置: current/config (这与仅指定 config 不同, (被视为配置切换请求)。 |
| 名称 | 指定一个 超类的名称。 此参数仅用于刷新给定超类的子类。 |
返回值
成功完成后, Wlm_load 子例程将返回值 0。 如果 Wlm_load 子例程不成功,那么将返回非零值。
错误代码
有关 WLM API 函数返回的可能错误代码的列表,请参阅 wlm.h 头文件的描述。