Date: Fri, 23 Apr 1999 20:31:07 +0800 From: adrian@freebsd.org To: Zach Heilig <zach@uffdaonline.net> Cc: freebsd-current@freebsd.org Subject: Re: nice little kernel task for somebody Message-ID: <19990423123108.14692.qmail@ewok.creative.net.au> In-Reply-To: Your message of "Fri, 23 Apr 1999 07:05:49 EST." <19990423070549.A78489@k6n1.znh.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Zach Heilig writes:
>On Fri, Apr 23, 1999 at 05:16:33PM +0800, adrian@freebsd.org wrote:
>> I don't know about that one, but the first one sounds easish.
>> Since I've been messing around with procfs quite a bit lately,
>> I'll spend some time later today poking around and produce a patch
>> against -current .
>
>I don't know how to do this, but I did notice this much: (the binary does
>remain accessible even after it's removed, as long as it doesn't exit).
>
>#include <sys/types.h>
>#include <stdio.h>
>#include <stdlib.h>
>#include <unistd.h>
>
>int main(int argc, char **argv) {
> int id;
> char cmd[128];
> unlink(argv[0]);
> id = getpid();
> printf("pid == %d\n", id);
> sprintf(cmd, "ls -l /proc/%d", id);
> system(cmd);
> exit(0);
>}
>
>$ cc foo.c
>$ ./a.out
>pid == 78597
>total 4
>-r--r--r-- 1 zach wheel 0 Apr 23 07:00 cmdline
>--w------- 1 zach wheel 0 Apr 23 07:00 ctl
>-r--r--r-- 1 zach wheel 76 Apr 23 07:00 etype
>-rwxrwxr-x 0 zach wheel 3637 Apr 23 07:00 file
>-rw------- 1 zach wheel 176 Apr 23 07:00 fpregs
>-r--r--r-- 1 zach wheel 76 Apr 23 07:00 map
>-rw-r----- 1 zach kmem 0 Apr 23 07:00 mem
>--w------- 1 zach wheel 0 Apr 23 07:00 note
>--w------- 1 zach wheel 0 Apr 23 07:00 notepg
>-rw------- 1 zach wheel 76 Apr 23 07:00 regs
>-r--r--r-- 1 zach wheel 0 Apr 23 07:00 status
>$
>
>[note the '0' links for the binary]
>
Which is right though, isn't it?
I've finished the patch. I'll test it a little more when I get back
home tonight, and then send the URL to -current for people to poke
around with.
phk - I hope you didn't also want the process limits to be modifyable
the same way just yet :-) (but it'd be nice however... maybe later.)
Adrian
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990423123108.14692.qmail>
