• /proc/{pid}/maps


    /proc/{pid}/maps 是进程运行时的虚拟内存映射文件,每个进程在 /proc/ 目录下都有一个名为 pid (进程号)的文件目录,进程自身也可以通过查看 /proc/self/maps 来收集内存映射的相关信息,/proc/self/maps 文件比较特殊,每个进程看到的内容都是自身的内存映射,maps文件内容一共6列,含义如下:

    76093000-76096000 r-xp 00000000 b3:19 941 /system/lib/libmemalloc.so

    1. 所处虚拟内存地址(VMA, Virtual Memory Area)的范围:76093000-76096000

      • 在 linux 中将进程虚拟空间中的一个段叫做虚拟内存区域VMA。

      • VMA 对应 ELF 文件中的 segment。

      • ELF 文件有 section 和 segment 的概念:从链接的角度来看,elf 按照 section 存储的; 从装载的角度来看,elf 文件又是按照 segment 进行划分,这是为了防止按照 section 装载时造成的内部碎片。segment 相当于是将多个属性(读写执行)相同的 section 合并在一起。program headers存放 segment 的信息,section table 存放 section 的信息。

    2. VMA权限:r-xp

      r=read,w=write,x=executed,s=shared,p=private

    3. 偏移量:00000000

      表示VMA对应的 segment 在映像文件中的偏移。

    4. 主设备号与次设备号:b3:19

    5. 映像文件的节点号:941

    6. 映像文件的路径:/system/lib/libmemalloc.so

  • 相关阅读:
    最优雅的Java字符串拼接是哪种方式?
    面渣逆袭(MyBatis八股文面试题)必看👍
    面渣逆袭(Java 虚拟机篇八股文面试题)
    重排(reflow)和重绘(repaint)
    element Tree树形控件获取未全选父节点id和子节点id
    2 consul安装 Sky
    ZooKeeper初步 sakura
    3 consul api Sky
    7 hdfs3.0 常用命令 Sky
    2 zookeeper安装 Sky
  • 原文地址:https://www.cnblogs.com/tongyishu/p/13410430.html
Copyright © 2020-2023  润新知