Release Digest: General, May 21, 2002
May 22, 2002, 05:00 (0 Talkback[s])
No-Size-Fits-All! An Application-Down Approach for Your Cloud Transformation REGISTER >
I would like to publicly announce "schedutils" - a suite of
scheduler-related tools for Linux. They are simple GNU-style utilities
in similar fashion as the other Linux utility packages - except they
manipulate the scheduler.
They are released under the GNU GPL v2.
Version 0.0.5 can be had at:
source tarball: http://tech9.net/rml/schedutils-0.0.5.tar.gz
i386 RPM: http://tech9.net/rml/schedutils-0.0.5-1.i386.rpm
source RPM: http://tech9.net/rml/schedutils-0.0.5-1.src.rpm
Currently there is no standard utilities for manipulating scheduler
parameters. Thus this has two goals: first, to provide utilities for
such manipulation. Second, and most importantly, to provide a
_standard_ suite of utilities for such manipulation. Something that can
be depended on to exist in distributions, etc. etc.
Right now the package consists of four utilities and their associated
rt(1) - get or set the real-time scheduling class and priority of an
existing pid, or launch a new task with a given class and priority.
taskset(1) - get or set the CPU affinity of a given pid, or launch a new
task with a given CPU affinity. This requires the 2.5 kernel or a
patched 2.4 kernel (see my website for patches).
irqset(1) - get or set the CPU affinity of a given interrupt. This is
implemented as a bash script which parses the `/proc' output.
lsrt(1) - list real-time processes on the system, their priorities, and
their scheduling class. Right now RT information is not exported out of
`/proc' so ps(1) does not display this information. A better solution
may be to export this information from `/proc' but for now this exists
(and is most likely much faster).
There is some basic information and complete man pages in the package.
The RPM was built on RedHat 7.3 but should work on any 7.x release and
perhaps even any glibc 2.2.x RPM-based distribution.
Source users can do:
I am open to any suggestions, bugs, patches, complaints, etc. The idea
here is to provide standard utilities for scheduler-related stuff.