Struct cgroups::cpu::CpuController

source ·
pub struct CpuController { /* private fields */ }
Expand description

A controller that allows controlling the cpu subsystem of a Cgroup.

In essence, it allows gathering information about how much the tasks inside the control group are using the CPU and creating rules that limit their usage. Note that this crate does not yet support managing realtime tasks.

Implementations

Contructs a new CpuController with oroot serving as the root of the control group.

Returns CPU time statistics based on the processes in the control group.

Configures the CPU bandwidth (in relative relation to other control groups and this control group’s parent).

For example, setting control group A’s shares to 100, and control group B’s shares to 200 ensures that control group B receives twice as much as CPU bandwidth. (Assuming both A and B are of the same parent)

Retrieve the CPU bandwidth that this control group (relative to other control groups and this control group’s parent) can use.

Specify a period (when using the CFS scheduler) of time in microseconds for how often this control group’s access to the CPU should be reallocated.

Retrieve the period of time of how often this cgroup’s access to the CPU should be reallocated in microseconds.

Specify a quota (when using the CFS scheduler) of time in microseconds for which all tasks in this control group can run during one period (see: set_cfs_period()).

Retrieve the quota of time for which all tasks in this cgroup can run during one period, in microseconds.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Apply a set of resources to the Controller, invoking its internal functions to pass the kernel the information.

Create this controller

Does this controller already exist?

Delete the controller.

Attach a task to this controller.

Get the list of tasks that this controller has.

The file system path to the controller.

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.