the kernel patch in this directory implements RLIMIT_RT_CPU: the maximum amount of CPU time RT tasks may use, in percent. Defaults to 80%. the execrtlim utility in this directory can be used to test this new capability beyond the default setting, e.g.: ./execrtlim 10 10 /bin/bash will spawn a new shell with RLIMIT_RT_CPU curr/max set to 10%/10%. Properties of the RT-CPU rlimit: - if there's idle time in the system then RT tasks will be allowed to use more than the limit. - if an RT task goes above the limit all the time then there is no guarantee that exactly the limit will be allowed for it. (i.e. you should set the limit to somewhat above the real needs of the RT task in question.) - a zero RLIMIT_RT_CPU value means unlimited CPU time to that RT task. - a nonzero rt_cpu_limit value also has the effect of allowing the use of RT priorities to nonprivileged users. - on SMP the limit is measured and enforced per-CPU. - runtime overhead is minimal, especially if the limit is set to 0. - the CPU-use measurement code has a 'memory' of roughly 300 msecs. I.e. if an RT task runs 100 msecs nonstop then it will increase its CPU use by about 30%. This should be fast enough for users for the limit to be human-inperceptible, but slow enough to allow occasional longer timeslices to RT tasks. have fun, Ingo