Date: Fri, 25 Jan 2013 13:09:29 -0800 From: Stanislav Sedov <stas@FreeBSD.org> To: John Baldwin <jhb@freebsd.org> Cc: Mikolaj Golub <trociny@freebsd.org>, Stanislav Sedov <stas@freebsd.org>, "Robert N. M. Watson" <rwatson@freebsd.org>, freebsd-hackers@freebsd.org Subject: Re: libprocstat(3): retrieve process command line args and environment Message-ID: <20130125130929.3803f993e3df877f30653dbf@FreeBSD.org> In-Reply-To: <201301251531.43540.jhb@freebsd.org> References: <20130119151253.GB88025@gmail.com> <201301241120.52054.jhb@freebsd.org> <CA642C26-98E1-40CC-A415-8C53F47E2281@freebsd.org> <201301251531.43540.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 25 Jan 2013 15:31:43 -0500 John Baldwin <jhb@freebsd.org> mentioned: > On Friday, January 25, 2013 1:37:45 pm Robert N. M. Watson wrote: > > > > On 24 Jan 2013, at 16:20, John Baldwin wrote: > > > > >>> Hmm, are you going to rewrite ps(1) to use libprocstat? Or rather, is > that a > > >>> goal someday? That is one current consumer of kvm_getargv/envv. That > might > > >>> be fine if we want to make more tools use libprocstat instead of using > libkvm > > >>> directly. > > >> > > >> I didn't have any plans for ps(1) :-) That is why I wrote about "new > > >> code". But if you think it is good to do I might look at it one day... > > > > > > I'm mostly hoping Robert chimes in to see if that was his intention for > > > libprocstat. :) If we can ultimately replace all uses of kvm_get*v() with > > > calls to procstat_get*v*() then I'm fine with some code duplication in the > > > interim. > > > > > > Originally there was just proctstat(1), but it made sense to begin re- > encapsulating it in a libprocstat(3) because the code there is potentially > extremely reusable. This conflicts a bit with libkvm(3), which mysteriously > knows about sysctlbyname(3) despite a name suggesting otherwise. You can > imagine various approaches to fixing this, but indeed, making libprocstat(3) > the first-class citizen and preferring it for both kvm and sysctl methods > sounds like the way to go. I actually want to make libprocstat also support > snmp, but I've never actually found the time to investigate doing that. One of > my main unmet goals for procstat(1) was to introduce an extremely machine- > readable output format for it -- e.g., something XML-based or similar. I'd > still love to see that happen. > > BTW, one off-ball thought I have is that I would like to have a mode where > libprocstat operates on a core file (of a process, not a kernel crash dump), > so it could list the threads from a core dump, and possibly file descriptor > info (if PR kern/173723 is implemented). > That's actually a good idea. I was thinking about the same for some time. AFAIK Solaris' pfiles can do that, and maybe some other tools as well. I have not had time to look into yet, though. -- Stanislav Sedov ST4096-RIPE () ascii ribbon campaign - against html e-mail /\ www.asciiribbon.org - against proprietary attachments
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130125130929.3803f993e3df877f30653dbf>