mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jorge David Ortiz Fuentes <jorge_ortiz@hp.com>
To: linux-kernel@vger.kernel.org
Subject: Process vs. Threads
Date: Tue, 6 Mar 2001 17:28:43 +0100	[thread overview]
Message-ID: <20010306172843.D1283@hpspss3g.spain.hp.com> (raw)

Hello everybody:

  I have been trying to differenciate threads and process in Linux. As
I am sure you already know, other OS, namely HPUX, implement threads
in a different way.  There is a thread id (TID) field in the structure
that is used by the scheduler and it is used to identify uniquely each
"task" that can be run.  Using this structure makes easier to identify
which threads belong to the same process and tools such as ps or top
show the TID as a field.

  I understand that changing this in the Linux kernel would mean that:
* some tools will have to be modified.
* the proc filesystem should create a directory using the TID instead
of the PID.
* some features as VM handling, signaling or exec()ing from a thread
would be more difficult to implement.
* compatibility will be broken.

  However, I miss some way to indicate that two processes are, in
fact, threads of the same process.  Maybe there is something I'm
missing.  Let me elaborate this.

  If you run 'top' (sorted by memory usage) and, lets say, you have 9
threads, you see the SIZE of these 4 threads 

 10:40am  up  1:23,  1 user,  load average: 0.26, 0.22, 0.10
52 processes: 51 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  0.0% user,  3.1% system,  0.0% nice, 96.8% idle
Mem:   322464K av,  306284K used,   16180K free,   16876K shrd,   32432K
buff
Swap:  530136K av,    8064K used,  522072K free                   13660K
cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT  LIB %CPU %MEM   TIME COMMAND
  745 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  840 root      15   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  841 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:13
traffic_mana
  846 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  848 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  850 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  855 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  856 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana
  857 root       0   0  224M 217M  1596 S       0  0.0 68.9   0:00
traffic_mana

  This information is missleading since there is no way to know that
these 9 threads are sharing memory. If you run 'ps axl' you can see
the hierarchy as if it was a multiprocess program, i.e. no difference
to show you that they are threads.  Not even reading
/proc/<pid>/status you get info about these being threads.

  Of course, I am talking about kernel 2.2.x, but AFAIK this has not
changed in the new kernels.

  Would it make sense to include this as an entry of the /proc/<pid>?

  Thanks for reading,

    Jorge


             reply	other threads:[~2001-03-06 16:29 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-03-06 16:28 Jorge David Ortiz Fuentes [this message]
2001-03-06 16:58 ` Gregory Maxwell
2001-03-07  9:01   ` Helge Hafting
2001-03-07 23:30     ` Albert D. Cahalan
2001-03-08  3:09     ` David Schwartz
2001-03-06 17:01 Dan Kegel
2001-03-06 17:32 ` Ulf Carlsson
2001-03-08  0:17 Hank Leininger
2001-03-09  9:48 ` Albert D. Cahalan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010306172843.D1283@hpspss3g.spain.hp.com \
    --to=jorge_ortiz@hp.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®