Re: Generic battery interface

Vojtech Pavlik
2006-07-28T13:43:11Z

On Fri, Jul 28, 2006 at 02:25:08PM +0200, Pavel Machek wrote:
> Hi!
>
> > > >The applets that were doing it (yes, up to 100 times per second)
> > > >corrected their ways pretty quickly, because some machines became
> > > >unusable with the applet enabled.
> > >
> > > Exactly -- and they've been working merrily ever since.
> > > And if you don't want to trust applet developers, cache the latest
> > > reads and refresh them only if X jiffies have passed.
> >
> > The timer interrupt still has to happen every time their select() or
> > sleep() expires, with the system having to wake up, even when nothing
> > happened. Polling from userspace is bad.
>
> I do not understand this. Any polling (in kernel or in userspace) will
> wake the CPU, wasting power.

The kernel, however, has all the gory details at hand, and can decide
much better about the polling frequency, than the (hopefully) hardware
agnostic userspace.

Imagine your Zaurus: You don't need to poll very often when you are on
the flat part of the LiIon discharge curve, you probably want more
detailed info near the end.

> OTOH "high/low/very low" battery applet can reasonably query battery
> every 5 minutes, while detailed, graphical thingie displaying the
> current power consumption will probably poll every 10 seconds...

--
Vojtech Pavlik
Director SuSE Labs