Subject: aiodone and other kernel threads documentation
To: None <tech-misc@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-misc
Date: 01/06/2004 21:18:12
Is anyone working on documentation explaining aiodone and other kernel
threads?

It seems like there should be manpage(s) for the kernel threads seen when
viewing with ps(1) or top.

aiodoned - aiodone daemon kernel thread
 async i/o ??

nfsio
 options(4) mentions "deprecated nfsiod program"

ioflush
- defined in errno(2): pid 4,  replaces the old update program that
 periodically flushes the disk buffer cache.
- defined in sync(2): As
     information in the cache is lost after a system crash, kernel thread
     ioflush ensures that dirty buffers are synced to disk eventually. By
    default, a dirty buffer is synced after 30 seconds, but some
    filesystems exploit ioflush features to sync directory data and
    metadata faster (after 15 and 10 seconds, respectively).

reaper
 defined in errno(2): pid 3, handles deallocating resources for exiting
 processes

pagedaemon -- defined in uvm(9):
  UVM ... kernel-level process ... The pagedaemon process sleeps until
  physical memory becomes scarce.  When that happens, pagedaemon is
  awoken.  It scans physical memory, paging out and freeing memory that
  has not been recently used.
- and defined in errno(2): paging daemon, process ID 2

pms0

usbtask

usb0

atapibus0

swapper -- defined in uvm(9):
  UVM ... kernel-level process ... The swapper process swaps in runnable
  processes that are currently swapped out, if there is room.

(I mentioned this a couple years ago too.)

   Jeremy C. Reed
   http://www.reedmedia.net/