mm_struct

# mcrash

## mm_struct

### 書式

usage: `mm_struct` [-v] address

### 説明

プロセスごとのユーザメモリ空間を管理している `mm_struct`構造体を表示します。 mm_structはtask_structからポイントされてます。

引数として必ずmm_structのアドレスが必要です。 mm_structはtask_structコマンドで取得できます。 -vオプションを付けると、 mm_structにマップされている vm_area_struct のリストを表示します。 これは`/proc/`pid`/maps`をcatしたイメージに近いものです。

-vオプションで表示されるADDRエントリは、 vm_area_struct コマンドで表示できます。

### 実行例

    > mm_struct c8f0ef00
    addr:       c8f0ef00
    mmap:       c4e99f00
    mmap_cache: c4e994e0
    pgd:        c1bb0000
    mm_users:   1
    map_count:  12
    mmlist:     c8f0eb70 c8f0ec10

    > mm_struct -v c8f0ef00
    addr:       c8f0ef00
    mmap:       c4e99f00
    mmap_cache: c4e994e0
    pgd:        c1bb0000
    mm_users:   1
    map_count:  12
    mmlist:     c8f0eb70 c8f0ec10
        ADDR    START      END     FILE  FLAGS
    c4e99f00  8048000  805f000 c4cb7360  R X mayR mayW mayX denywrite executable
    c4e99420  805f000  8060000 c4cb7360  R W mayR mayW mayX denywrite executable
    c4e99660  8060000  80a1000        0  R W X mayR mayW mayX
    c4e99120 40000000 40013000 c42fc6c0  R X mayR mayW mayX denywrite
    c4e99240 40013000 40014000 c42fc6c0  R W mayR mayW mayX denywrite
    c4e99300 40014000 40015000        0  R W mayR mayW mayX
    c4e99540 40015000 4001b000 c46e69a0  R mayR mayX mayS
    c4e992a0 40024000 40045000 c4cb70e0  R X mayR mayW mayX
    c4e99ba0 40045000 40049000 c4cb70e0  R W mayR mayW mayX
    c4e991e0 40049000 4004b000        0  R W mayR mayW mayX
    c4e994e0 4004b000 40080000 c3b4e0a0  R X mayR mayW mayX
    c4e99360 40080000 40089000 c3b4e0a0  R W mayR mayW mayX
    c4e993c0 40089000 400c7000        0  R W mayR mayW mayX
    c4e990c0 400c7000 4013b000 c36c98e0  R mayR mayW mayX
    c4e99a20 42000000 4212c000 c4cb74e0  R X mayR mayW mayX
    c4e995a0 4212c000 42131000 c4cb74e0  R W mayR mayW mayX
    c4e99d20 42131000 42135000        0  R W mayR mayW mayX
    c4e99cc0 bfffb000 c0000000        0  R W X mayR mayW mayX growsdown

mcrash, Copyright (C) 2002 ASANO Masahiro