wlm_create_class 子例程

用途

创建新的工作负载管理器 (WLM) 类。

工作负载管理器库 (libwlm.a)

语法

#include <sys/wlm.h>

int wlm_create_class ( wlmargs)

struct wlm_args *wlmargs;

描述

wlm_create_class 子例程使用 wlmargs。 所指向的类型为 结构 wlm_args 的数据结构中传递的值为给定的 WLM 配置创建一个新类

  • 如果在 康迪尔 字段中传递了配置的名称,那么该子例程将更新目标配置的 WLM 属性文件。 当创建超类的第一个子类时,子例程将使用超类的名称创建 /etc/wlm/<confdir> 的子目录,并在此新目录中创建 WLM 属性文件。 新创建的属性文件除了包含新子类的条目外,还包含自动创建的缺省子类和共享子类的条目。
  • 如果在 康迪尔 字段中传递了空字符串 ("\0") ,那么将仅在核心 WLM 数据中创建新的超类或子类。 未更新 WLM 属性文件。 在此情况下,如果 WLM 已停止并重新启动,或者系统重新引导,那么新的类定义将丢失。

类型为 struct class_definition的结构 (属于 结构 wlm_args的一部分) 通常已通过调用 wlm_init_class_definition进行初始化。 完成此操作后,请初始化此结构中没有缺省值 (例如,新类的名称) 或者期望值与缺省值不同的字段。 有关所有类属性的可能值及其默认值的说明,请参阅文件参考中的wlm.h说明。

调用者必须具有 root 用户权限才能创建超类,并且必须具有超类上的管理员权限才能创建超类的子类。

注: 请勿在 wlm_args 结构的 康迪尔 字段中指定一个集合。 wlm_create_class 子例程无法应用于一组基于时间的配置。

参数

描述
Wlmargs 指定 结构 wlm_args 数据结构的地址,该数据结构包含要创建的新类的 class_definition 结构。

需要提供 wlm_args 结构和嵌入式子结构的下列字段:

描述
弗尔斯标志 需要使用 WLM_VERSION。 进行初始化
康迪尔 指定要向其添加新类的 WLM 配置的名称。 它必须是 /etc/wlm 的有效子目录的名称或空字符串 (以 "\0" 开头)。

如果该名称是有效的子目录,那么会将新的类数据添加到给定 WLM 配置的类描述文件中。

如果名称为空字符串,那么不会更新任何描述文件。 将创建新类,并立即将数据传递到内核。

名称 指定要创建的超类的名称或子类的名称。 如果这是子类名称,那么其格式必须为 super_name.sub_name。 没有此字段的缺省值。

如果用户不希望使用特定值,那么所有其他字段都可以保留在其缺省值。

返回值

成功完成后, wlm_create_class 子例程将返回值 0。 如果 wlm_create_class 子例程不成功,那么将返回非零值。

错误代码

有关 WLM API 函数返回的可能错误代码的列表,请参阅 wlm.h 头文件的描述。