2004-06-25 05:19:13

by Guillaume Thouvenin

[permalink] [raw]
Subject: [Patch] Enhanced Linux System Accounting for 2.6.7

Hello,

Here is a new patch for kernel 2.6.7. You can download it from
sourceforge at
http://prdownloads.sourceforge.net/elsa/patch-2.6.7-elsa?download

This patch provides structures and functions to do accounting
for a group of process. There is two parts.

On one hand there is two APIs that allow the creation and the
destruction of an item called a "bank" that will contain an
group of processes. There is also two other routines that can
add or remove processes in a bank.

On the other hand, you have the accounting mechanism that used bank
to perform BSD-like accounting for a group of process. We used ioctl()
interface to create/destroy a bank and also to add/remove a process in
a bank. Currently, device driver is dev/elsacct and the major number
is dynamically allocated, therefore you need to check the number in the
/proc/devices and create the corresponding device. A sample code is
given at:
http://cvs.sourceforge.net/viewcvs.py/elsa/tests/elsa_cmd.c?rev=1.7&view=markup

Currently we do BSD-like accounting. The next step is to identify what
kind of metrics can be interesting for accounting. We started to describe
that point on a withpaper that is available at:
http://sourceforge.net/docman/display_doc.php?docid=23446&group_id=105806
This paper describes differences between two accounting systems that are
ELSA and CSA.

Every comments are welcome,

The ELSA poject team (http://elsa.sourceforge.net)