Re: kqueue EVFILT_PROC and child process pid
site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:cc:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:references:x-mailer; bh=WMUuaE3LQKdiBg1TR0BtrKY1YqQauefVN8EIHbzJZWU=; b=DmJvWP6NfPRKOZSfgjtsAidfs4cCjURJfRJ/KW6AeEbf7Yfv+Y24YPZFqCS3eW1UxF BmtxEza6lGmhMj0vIbGWk2fh4MC7sQqIJqoRPOgSOvOnqaJZKa+KOBrkPDQnMA+2CA/5 5OCqHMoVY8z5Hm91a3e9m5e/lcgViwLf0Q2L4= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=cc:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:references :x-mailer; b=ReiKSIpdlLrbNVM3och0GvBAijofL/ki1wiGFbC1DIO9XC3byfhmx9mAM12wa5LhTC mO3D89xPAEFE4Yh6SQfj9YVMnBhu97cAscVZ+/sK/HkXpvd5oqtvsCptb7Y71ENJdzhg FeiAdcK5B7uJ2n8AKUW5ANs4GlEbzh/rmalLU= Thank you for the hint, Terry. But isnt' it a polling-like behavior? On Oct 12, 2009, at 1:57 AM, Terry Lambert wrote: There's popen of ps, which is much preferred to sysctl. -- Terry On Oct 11, 2009, at 1:01 PM, Dave Keck <dave@docdave.com> wrote: kevents are perfectly capable of monitoring another, unrelated process. It's become quite a hobby of mine, actually. :) _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/rmuginov%40gmail.com -- Sincerely, Rustam Muginov _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... Other than that, we're not going to alert you on new process creation other than by return code if you are the creator, and at some point we might even take steps to make it hard for you to do so, like randomizing pids. You cannot watch for all processes, only processes you created. After you fork, you can add a kqueue to watch for the new process' death, in lieu of waitpid() or a SIGCHLD signal. You cannot however sit there, watching for any random process' death. Mac OS X has no such mechanism, AFAIK. As far as getting the the new child's PID, I don't think it's possible using the kevent APIs from userland. (sys/event.h mentions "lower bits contain the PID of the child", but I think this is kernel-only.) Of course you could always iterate over the process list checking each process' parent PID... there's probably a better way, though. This email sent to rmuginov@gmail.com This email sent to site_archiver@lists.apple.com
participants (1)
-
Rustam Muginov