[TriLUG] kscand?

crimsun at fungus.sh.nu crimsun at fungus.sh.nu
Sun Jun 8 06:12:44 EDT 2003


On Sat, Jun 07, 2003 at 03:17:15PM -0400, Jeff Bollinger wrote:
> Hello all, quick question about a RedHat 7.2 system (2.4.20-13.7 Kernel).
> I tried searching Redhat.com, Google, the TriLUG archives, as well as the
> man pages and `apropos`, but could not find any information about a
> process that I have running called "kscand".  Can anyone explain what this
> is/does?

Red Hat has been using Rik van Riel's vm overhaul (around the time he
was still working for Conectiva) known as "rmap." There's more informa-
tion here: http://lwn.net/2002/0124/kernel.php3 (and generally, if
you're interested in kernel hacking, check out the #kernelnewbies
channel on OFTC). As a side note, vanilla 2.4 (as well as SuSE's kernel)
doesn't have this daemon because rmap isn't integrated. 2.5 does have
it, though I don't remember if the name has stuck around.

In a nutshell, the "kscand" you see is reported by `ps' as another
process despite it being a kernel thread spawned by the `init' process.
(This has to do with the ways both Linux creates/treats threads and how
they're reported to userspace applications.) It's quite important to the
function of your system, so don't be alarmed. Essentially it runs in the
background as a low-priority thread and tracks what pages in virtual
memory have been most to least active, so it basically keeps a running
tally of their "ages." This is tightly-integrated into the vm system
because it helps determine what applications can continue to use
physical RAM (versus being paged out, ala to swap).

> While I'm asking, what do processes contained in square brackets mean
> also?  Some processes appear in these brackets when I run `ps`.

They're kernel threads spawned by the `init' process and invoked in
arch/$ARCH/kernel/process.c::kernel_thread() .

-- 
Dan Chen                crimsun at fungus.sh.nu
GPG key: www.unc.edu/~crimsun/pubkey.gpg.asc



More information about the TriLUG mailing list