Hi, On 3/30/07, Randall R Schulz <rschulz@sonic.net> wrote:
Beagle uses inotify for this -- in fact, inotify was basically written *for* Beagle with its use cases in mind. inotify is a kernel service, so you actually don't need a separate daemon to use it.
OK. The whole point was whether or not it had to perform user-level polling, which the old FAM (File Alteration Monitory -- note: I had the name wrong) used to do.
Right. Beagle doesn't do any polling for file changes if you have a system with inotify. I believe these days FAM also uses inotify.
I think this is a problem worth addressing: Surely there's some way to minimize the cost upon start-up? It's probably why some people (those whose computers don't run 24/7) experience Beagle as so intrusive.
Actually this *is* something that we try to do gracefully. We monitor the load on the system to calculate a delay of when next to crawl a small set of directories, and in more recent versions Beagle has a very "nice" CPU priority and instructs the kernel not to automatically give it a higher one. What we don't do is immediately crawl through all the directories adding watches because that was a pretty serious thrashing problem. (It's basically the same thing as doing "find -type d ~". Painful.) We did that in very, very early versions of Beagle and it was unusable even for us developers of it. I really suspect that for a lot of people it's the cron job that gives them such a negative impression, because that is designed to be a once off, middle-of-the-night process and it doesn't do any sort of throttling based on system load. Thanks, Joe -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org