xref: /minix3/external/bsd/top/dist/machine/m_linuxthr.man (revision b89261ba018da33f0bd8cd05f5a1fe9e7a9c837b)
1.SH "LINUX NOTES"
2The Linux port was written by Richard Henderson <rth@tamu.edu>.
3The CPU% calculation was brazenly stolen from the Solaris 2
4port and should be attributed to one of the many names listed
5in its man page.
6
7The order support was stolen from the SunOS 5 port by
8Alexey Klimkin <kad@klon.tme.mcst.ru>
9
10Made to work under 2.4 by William LeFebvre.
11
12This version of the Linux port includes automatic thread "eliding".
13In Linux, a thread is treated as another process sharing the memory
14space (as well as file table and other resources).  Thus
15multiple threads appear as separate processes in most system
16utilities (see
17.IR clone (2)).
18This version of top detects child thread processes and does not
19display them separately.  Instead of displaying threads individually,
20an extra column "THR" shows the number of thread processes for a
21parent process.  The cpu time and percentages are added to the
22parent.  This gives a display much closer to other thread-capable Unix
23systems.  However, threads are still counted as separate processes in
24the process summary line.
25A process is considered a thread of its parent if the
26following values are identical to its parent: address space size,
27resident set size, code start and end program counters, and stack
28start.  This heuristic can mistake a recently forked child as a thread,
29until the child has either called exec or allocated space on its own.
30
31