From: "Dmitry V. Levin" <ldv@altlinux.org>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] system(3) blocks alarm(2) under strace(1)
Date: Wed, 23 Jun 2004 17:29:34 +0400
Message-ID: <20040623132934.GA22054@basalt.office.altlinux.org> (raw)
In-Reply-To: <20040623083937.GP1926@solemn.turbinal.org>
[-- Attachment #1: Type: text/plain, Size: 1047 bytes --]
On Wed, Jun 23, 2004 at 12:39:37PM +0400, Alexey Tourbin wrote:
> Столкнулся в перле, но воспроизводится без всякого перла.
>
> $ gcc alarm.c
> $ ./a.out
> diff=3 seconds
> $ strace -o /dev/null ./a.out
> diff=3 seconds
> $ strace -f -o /dev/null ./a.out
> diff=6 seconds
> $
>
> В чем здесь секрет?
В strace(1) про -f написано:
Trace child processes as they are created by currently traced processes
as a result of the fork(2) system call. The new process is attached
to as soon as its pid is known (through the return value of fork(2) in
the parent process). This means that such children may run uncontrolled
for a while (especially in the case of a vfork(2)), until the parent is
scheduled again to complete its (v)fork(2) call.
If the parent process decides to wait(2) for a child that is currently
being traced, it is suspended until an appropriate child process either
terminates or incurs a signal that would cause it to terminate (as
determined from the child's current signal disposition).
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
prev parent reply other threads:[~2004-06-23 13:29 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-23 8:39 Alexey Tourbin
2004-06-23 13:29 ` Dmitry V. Levin [this message]
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=20040623132934.GA22054@basalt.office.altlinux.org \
--to=ldv@altlinux.org \
--cc=devel@altlinux.ru \
/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
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git