Open1

misc cgroup

TenForwardTenForward

Miscellaneous cgroupは、他のcgroupリソースのように抽象化することができないスカラリソースのリソース制限とトラッキングメカニズムを提供します。コントローラは、CONFIG_CGROUP_MISC設定オプションで有効になります。

コントローラにリソースを追加するには、include/linux/misc_cgroup.h ファイルの enum misc_res_type{}kernel/cgroup/misc.c ファイルの misc_res_name[] で対応する名前を指定します。リソースの提供者は、リソースを使用する前に、misc_cg_set_capacity() を呼び出して、リソースの容量を設定する必要があります。

容量が設定されると、charge および uncharge API を使用してリソースの使用状況を更新することができます。misc コントローラと対話するためのすべての API は include/linux/misc_cgroup.h にあります。

miscコントローラは3つのインターフェースファイルを提供します。2 つの misc リソース (res_ares_b) が登録されている場合は

misc.capacity

ルート cgroup にのみ表示される読み取り専用のフラットキーファイルです。 このファイルには、プラットフォーム上で利用可能な雑多なスカラリソースとその量が表示されています。

    $ cat misc.capacity
    RES_A 50
    res_b 10

misc.current

非 root cgroups で表示される読み取り専用のフラットキーファイルです。 cgroup とその子のリソースの現在の使用状況が表示されています。

    $ cat misc.current
    res_a 3
    res_b 0

misc.max

非 root の cgroup に表示される、読み書き可能なフラットキーのファイル。cgroup とその子のリソースの最大使用量を許可しています。::

    $ cat misc.max
    res_a 最大
    res_b 4

制限は次のようにして設定できます。

    # echo res_a 1 > misc.max

次の方法で最大値に設定できます。

    # echo res_a max > misc.max

リミットは、misc.capacityファイルの容量値以上に設定することができます。