MAZE: Introduction
v2 cover MAZE: Introduction
Hi all,
MAZE provides a mechanism for detecting excessive CPU cycle usage of selected processes and sending signals to them.
The definition of excessive CPU cycle usage is staying in TASK_RUNNINT state for a long time.
Normally, a working process doesn't stay long time in TASK_RUNNING state because of occasional IO waits or calling sleeps.
MAZE detects excessive CPU cycle usage from process's information and sends signal when time of staying in TASK_RUNNING exceeds user defined limits.
The aim is to implement a CGL (Carrier Grade Linux) requirement (AVL.14.0).
Quote from CGL specification: (http://developer.osdl.org/dev/cgl/cgl40/cgl40-availability.pdf)
OSDL CGL specifies that carrier grade Linux shall provide a mechanism that detects excessive CPU cycle usage by any process or thread. To enable detection, the following capabilities shall be provided:
- Communication between the monitoring process and the kernel.
- Registering a list of processes or threads and their allowed CPU cycle thresholds.
- Ability to define policy based on process events including process/thread creation and exit.
- Ability to take action whenever an event occurs.
- Ability to set the CPU cycle threshold to a resolution of one millisecond.
Please review and tell me what you think.
Thanks.
Hirofumi Nakagawa