Re: [RFC][PATCH] /proc/<pid>/pmaps - memory maps in granularity of pages

From: Denys Vlasenko
Date: Wed Sep 05 2007 - 08:26:08 EST


On Tuesday 14 August 2007 17:26, Matt Mackall wrote:
> On Tue, Aug 14, 2007 at 04:52:04PM +0800, Fengguang Wu wrote:
> > Here is a sample output:
> >
> > # cat /proc/$$/pmaps
> > 080c9000-080f6000 rwxp 080c9000 00:00 0 [heap]
> > 32969 45 Y_A_P__ 1
...
> > f7de1000-f7de3000 rwxp 00011000 03:00 176630 /lib/libnsl-2.3.6.so
> > 17 2 Y_A_P__ 1
> > [...]
>
> That's a _lot_ of data to generate and parse. I doubt we can watch a
> larger app in realtime with this interface. And it doesn't give us
> physical page numbers either.


> > 080c9000-080f6000 rwxp 080c9000 00:00 0 [heap]
> > 32969 45 Y_A_P__ 1
^^^^^ ^^
> > f7dba000-f7dc3000 r-xp 00000000 03:00 176633 /lib/libnss_files-2.3.6.so
^^ ^^ ^^^^^^

Since it's a new /proc file, we are not bound by compatibility.

Export *all* numbers in hex, and ensure that they are always even-chars wide
("fff" bad, "0fff" good). This way you can do binary<->string conversions
(both in kernel and in userspace) 8 bits per CPU cycle, or even faster.
--
vda
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/