lkml.org 
[lkml]   [2008]   [Jul]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Subjectwhy doesn't /proc/self/maps mtime change when memory's allocated?
    Date
    From
    Here's a ruby script that when run on 2.6.25 demonstrates that although
    the contents of /proc/self/maps changes, its mtime doesn't.

    --- start ruby script ---
    #!/usr/bin/ruby -w

    mapfile = "/proc/self/maps"

    oldmtime = File.stat(mapfile).mtime
    oldmaps = File.read(mapfile)

    arr = Array.new()

    for k in 1...10*1024*1024
    arr.push(k)
    end

    newmaps = File.read(mapfile)
    newmtime = File.stat(mapfile).mtime

    if (oldmaps != newmaps)
    if (oldmtime == newmtime)
    puts("oldmaps mtime = #{oldmtime}")
    puts(oldmaps)
    puts("newmaps mtime = #{newmtime}")
    puts(newmaps)
    end
    end
    --- end ruby script ---

    When I run it, I get this output (the lines with the word [heap] against
    them are different (along with others)):

    # ./checkmaps.rb
    oldmaps mtime = Thu Jul 17 15:32:53 +0100 2008
    00400000-00401000 r-xp 00000000 08:01 832446
    /usr/bin/ruby1.8
    00600000-00601000 rw-p 00000000 08:01 832446
    /usr/bin/ruby1.8
    00694000-006f7000 rw-p 00694000 00:00 0
    [heap]
    7f7f64de9000-7f7f64f33000 r-xp 00000000 08:01 57195
    /lib/libc-2.7.so
    7f7f64f33000-7f7f65133000 ---p 0014a000 08:01 57195
    /lib/libc-2.7.so
    7f7f65133000-7f7f65136000 r--p 0014a000 08:01 57195
    /lib/libc-2.7.so
    7f7f65136000-7f7f65138000 rw-p 0014d000 08:01 57195
    /lib/libc-2.7.so
    7f7f65138000-7f7f6513d000 rw-p 7f7f65138000 00:00 0
    7f7f6513d000-7f7f651bf000 r-xp 00000000 08:01 57184
    /lib/libm-2.7.so
    7f7f651bf000-7f7f653be000 ---p 00082000 08:01 57184
    /lib/libm-2.7.so
    7f7f653be000-7f7f653c0000 rw-p 00081000 08:01 57184
    /lib/libm-2.7.so
    7f7f653c0000-7f7f653c8000 r-xp 00000000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f653c8000-7f7f655c8000 ---p 00008000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f655c8000-7f7f655ca000 rw-p 00008000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f655ca000-7f7f655f8000 rw-p 7f7f655ca000 00:00 0
    7f7f655f8000-7f7f655fa000 r-xp 00000000 08:01 57197
    /lib/libdl-2.7.so
    7f7f655fa000-7f7f657fa000 ---p 00002000 08:01 57197
    /lib/libdl-2.7.so
    7f7f657fa000-7f7f657fc000 rw-p 00002000 08:01 57197
    /lib/libdl-2.7.so
    7f7f657fc000-7f7f65812000 r-xp 00000000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65812000-7f7f65a12000 ---p 00016000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65a12000-7f7f65a14000 rw-p 00016000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65a14000-7f7f65a18000 rw-p 7f7f65a14000 00:00 0
    7f7f65a18000-7f7f65afa000 r-xp 00000000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65afa000-7f7f65cfa000 ---p 000e2000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65cfa000-7f7f65cfe000 rw-p 000e2000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65cfe000-7f7f65d1c000 rw-p 7f7f65cfe000 00:00 0
    7f7f65d1c000-7f7f65d38000 r-xp 00000000 08:01 57191
    /lib/ld-2.7.so
    7f7f65eb6000-7f7f65f1c000 rw-p 7f7f65eb6000 00:00 0
    7f7f65f33000-7f7f65f37000 rw-p 7f7f65f33000 00:00 0
    7f7f65f37000-7f7f65f39000 rw-p 0001b000 08:01 57191
    /lib/ld-2.7.so
    7fff6df23000-7fff6df39000 rw-p 7ffffffe9000 00:00 0
    [stack]
    7fff6dffe000-7fff6e000000 r-xp 7fff6dffe000 00:00 0
    [vdso]
    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0
    [vsyscall]
    newmaps mtime = Thu Jul 17 15:32:53 +0100 2008
    00400000-00401000 r-xp 00000000 08:01 832446
    /usr/bin/ruby1.8
    00600000-00601000 rw-p 00000000 08:01 832446
    /usr/bin/ruby1.8
    00694000-00714000 rw-p 00694000 00:00 0
    [heap]
    7f7f590e7000-7f7f5fa09000 rw-p 7f7f65e8d000 00:00 0
    7f7f64de9000-7f7f64f33000 r-xp 00000000 08:01 57195
    /lib/libc-2.7.so
    7f7f64f33000-7f7f65133000 ---p 0014a000 08:01 57195
    /lib/libc-2.7.so
    7f7f65133000-7f7f65136000 r--p 0014a000 08:01 57195
    /lib/libc-2.7.so
    7f7f65136000-7f7f65138000 rw-p 0014d000 08:01 57195
    /lib/libc-2.7.so
    7f7f65138000-7f7f6513d000 rw-p 7f7f65138000 00:00 0
    7f7f6513d000-7f7f651bf000 r-xp 00000000 08:01 57184
    /lib/libm-2.7.so
    7f7f651bf000-7f7f653be000 ---p 00082000 08:01 57184
    /lib/libm-2.7.so
    7f7f653be000-7f7f653c0000 rw-p 00081000 08:01 57184
    /lib/libm-2.7.so
    7f7f653c0000-7f7f653c8000 r-xp 00000000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f653c8000-7f7f655c8000 ---p 00008000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f655c8000-7f7f655ca000 rw-p 00008000 08:01 57196
    /lib/libcrypt-2.7.so
    7f7f655ca000-7f7f655f8000 rw-p 7f7f655ca000 00:00 0
    7f7f655f8000-7f7f655fa000 r-xp 00000000 08:01 57197
    /lib/libdl-2.7.so
    7f7f655fa000-7f7f657fa000 ---p 00002000 08:01 57197
    /lib/libdl-2.7.so
    7f7f657fa000-7f7f657fc000 rw-p 00002000 08:01 57197
    /lib/libdl-2.7.so
    7f7f657fc000-7f7f65812000 r-xp 00000000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65812000-7f7f65a12000 ---p 00016000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65a12000-7f7f65a14000 rw-p 00016000 08:01 57199
    /lib/libpthread-2.7.so
    7f7f65a14000-7f7f65a18000 rw-p 7f7f65a14000 00:00 0
    7f7f65a18000-7f7f65afa000 r-xp 00000000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65afa000-7f7f65cfa000 ---p 000e2000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65cfa000-7f7f65cfe000 rw-p 000e2000 08:01 831874
    /usr/lib/libruby1.8.so.1.8.7
    7f7f65cfe000-7f7f65d1c000 rw-p 7f7f65cfe000 00:00 0
    7f7f65d1c000-7f7f65d38000 r-xp 00000000 08:01 57191
    /lib/ld-2.7.so
    7f7f65eb6000-7f7f65f1c000 rw-p 7f7f65eb6000 00:00 0
    7f7f65f33000-7f7f65f37000 rw-p 7f7f65f33000 00:00 0
    7f7f65f37000-7f7f65f39000 rw-p 0001b000 08:01 57191
    /lib/ld-2.7.so
    7fff6df23000-7fff6df39000 rw-p 7ffffffe9000 00:00 0
    [stack]
    7fff6dffe000-7fff6e000000 r-xp 7fff6dffe000 00:00 0
    [vdso]
    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0
    [vsyscall]

    --
    Andy, BlueArc Engineering




    \
     
     \ /
      Last update: 2008-07-17 16:39    [W:0.029 / U:0.232 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site