当前位置: 首页 > wzjs >正文

南昌网站设计制作手机app推广平台

南昌网站设计制作,手机app推广平台,狗和女人做的网站,武汉微网站建设上一篇介绍了:进程内存分布--之单线程代码来内存分布呈现memory-layout.cpp 这里我们使用smaps将更加形象的的体现内存分布,smaps文件是Linux的proc文件系统提供的一种可以查看内存资源使用情况的方法,Linux系统中运行的库、堆、栈等信息都可在smaps中查…

上一篇介绍了:进程内存分布--之单线程代码来内存分布呈现memory-layout.cpp

这里我们使用smaps将更加形象的的体现内存分布,smaps文件是Linux的proc文件系统提供的一种可以查看内存资源使用情况的方法,Linux系统中运行的库、堆、栈等信息都可在smaps中查看。 

/proc/PID/smaps显示整体如下:

cat /proc/PID/smaps这个显示的更详细一点:每一行依次对应的是:地址范围、权限、偏移量、设备、文件inode、映射对象

第1行 [可读可执行] 是程序的文本段 

第2行 [只读]………….不清楚 

第3行 [可读可写] 是程序的数据段(包括初始化数据段和未初始化数据段) 

第4行 ………………..堆空间 

第16行 ………………栈空间

vdso 和 vsyscall ……………系统的快速调用

/proc/342796$ cat smaps
00400000-00401000 r-xp 00000000 fc:50 102760452                          /work/oppo_W9050814/memory/memory-analyze/a.out:第1行 [可读可执行] 是程序的文本段
Size:                  4 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         4 kB
Private_Dirty:         0 kB
Referenced:            4 kB
Anonymous:             0 kB
LazyFree:              0 kB
AnonHugePages:         0 kB
ShmemPmdMapped:        0 kB
Shared_Hugetlb:        0 kB
Private_Hugetlb:       0 kB
Swap:                  0 kB
SwapPss:               0 kB
Locked:                0 kB
ProtectionKey:         0
VmFlags: rd ex mr mw me dw sd 
00600000-00601000 r--p 00000000 fc:50 102760452                          /work/oppo_W9050814/memory/memory-analyze/a.out
……………………………………
00601000-00602000 rw-p 00001000 fc:50 102760452                          /work/oppo_W9050814/memory/memory-analyze/a.out:第3行 [可读可写] 是程序的数据段(包括初始化数据段和未初始化数据段) 
……………………………………
0171f000-01740000 rw-p 00000000 00:00 0                                  [heap]堆空间
Size:                132 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Anonymous:             4 kB
LazyFree:              0 kB
AnonHugePages:         0 kB
ShmemPmdMapped:        0 kB
Shared_Hugetlb:        0 kB
Private_Hugetlb:       0 kB
Swap:                  0 kB
SwapPss:               0 kB
Locked:                0 kB
ProtectionKey:         0
VmFlags: rd wr mr mw me ac sd
7fecd686f000-7fecd6974000 rw-p 00000000 00:00 0 
Size:               1044 kB		//malloc(1024*1024)分配的1024K在这个堆上,p1的地址=0x7fecd686f010
KernelPageSize:        4 kB
MMUPageSize:           4 kB
Rss:                  20 kB
Pss:                  20 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        20 kB
Referenced:           20 kB
Anonymous:            20 kB
LazyFree:              0 kB
AnonHugePages:         0 kB
ShmemPmdMapped:        0 kB
Shared_Hugetlb:        0 kB
Private_Hugetlb:       0 kB
Swap:                  0 kB
SwapPss:               0 kB
Locked:                0 kB
ProtectionKey:         0
VmFlags: rd wr mr mw me ac sd 
7fb51c000000-7fb51c221000 rw-p 00000000 00:00 0 
Size:               2180 kB		//malloc(2*1024*1024)分配的2028K在这个堆上,p1的地址=0x7fb51c0008c0
KernelPageSize:        4 kB
MMUPageSize:           4 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            8 kB
Anonymous:             8 kB
LazyFree:              0 kB
AnonHugePages:         0 kB
ShmemPmdMapped:        0 kB
Shared_Hugetlb:        0 kB
Private_Hugetlb:       0 kB
Swap:                  0 kB
SwapPss:               0 kB
Locked:                0 kB
ProtectionKey:         0
VmFlags: rd wr mr mw me nr sd 7ff5a030f000-7ff5a0310000 ---p 00000000 00:00 0 
……………………………………
7ff5a0310000-7ff5a0b10000 rw-p 00000000 00:00 0 
……………………………………
7ff5a0b10000-7ff5a0b11000 ---p 00000000 00:00 0 
……………………………………
7ff5a0b11000-7ff5a1311000 rw-p 00000000 00:00 0 
…………………………………… 
7ff5a1311000-7ff5a14d1000 r-xp 00000000 fc:01 2241518                    /lib/x86_64-linux-gnu/libc-2.23.so
…………………………………… 
7ff5a14d1000-7ff5a16d1000 ---p 001c0000 fc:01 2241518                    /lib/x86_64-linux-gnu/libc-2.23.so
…………………………………… 
7ff5a16d1000-7ff5a16d5000 r--p 001c0000 fc:01 2241518                    /lib/x86_64-linux-gnu/libc-2.23.so
…………………………………… 
7ff5a16d5000-7ff5a16d7000 rw-p 001c4000 fc:01 2241518                    /lib/x86_64-linux-gnu/libc-2.23.so
…………………………………… 
7ff5a16d7000-7ff5a16db000 rw-p 00000000 00:00 0 
…………………………………… 
7ff5a16db000-7ff5a16f3000 r-xp 00000000 fc:01 2241500                    /lib/x86_64-linux-gnu/libpthread-2.23.so
…………………………………… 
7ff5a16f3000-7ff5a18f2000 ---p 00018000 fc:01 2241500                    /lib/x86_64-linux-gnu/libpthread-2.23.so
…………………………………… 
7ff5a18f2000-7ff5a18f3000 r--p 00017000 fc:01 2241500                    /lib/x86_64-linux-gnu/libpthread-2.23.so
…………………………………… 
7ff5a18f3000-7ff5a18f4000 rw-p 00018000 fc:01 2241500                    /lib/x86_64-linux-gnu/libpthread-2.23.so
…………………………………… 
7ff5a18f4000-7ff5a18f8000 rw-p 00000000 00:00 0 
…………………………………… 
7ff5a18f8000-7ff5a191e000 r-xp 00000000 fc:01 2241510                    /lib/x86_64-linux-gnu/ld-2.23.so
…………………………………… 
7ff5a1afe000-7ff5a1b02000 rw-p 00000000 00:00 0 
…………………………………… 
7ff5a1b1d000-7ff5a1b1e000 r--p 00025000 fc:01 2241510                    /lib/x86_64-linux-gnu/ld-2.23.so
…………………………………… 
7ff5a1b1e000-7ff5a1b1f000 rw-p 00026000 fc:01 2241510                    /lib/x86_64-linux-gnu/ld-2.23.so
…………………………………… 
7ff5a1b1f000-7ff5a1b20000 rw-p 00000000 00:00 0 
…………………………………… 
7fffaa6a7000-7fffaa6c8000 rw-p 00000000 00:00 0                          [stack]栈空间
Size:                132 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
Rss:                  12 kB
Pss:                  12 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        12 kB
Referenced:           12 kB
Anonymous:            12 kB
LazyFree:              0 kB
AnonHugePages:         0 kB
ShmemPmdMapped:        0 kB
Shared_Hugetlb:        0 kB
Private_Hugetlb:       0 kB
Swap:                  0 kB
SwapPss:               0 kB
Locked:                0 kB
ProtectionKey:         0
VmFlags: rd wr mr mw me gd ac 
7fffaa7bd000-7fffaa7c0000 r--p 00000000 00:00 0                          [vvar]
…………………………………… 
7fffaa7c0000-7fffaa7c2000 r-xp 00000000 00:00 0                          [vdso]
…………………………………… 
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
…………………………………… 

关注memory-layout.cpp中红色部分:malloc分配的1M和2M内存空间清晰的分布如下: 

$ cat /proc/1101/smaps

00400000-00401000 r-xp 00000000 fc:50 102760452 memory-analyze/a.out:第1行 [可读可执行] 是程序的文本段,下面是不同内存字段大小,后面单独介绍。

Size: 4 kB

KernelPageSize: 4 kB

MMUPageSize: 4 kB

Rss: 4 kB

Pss: 4 kB

Shared_Clean: 0 kB

Shared_Dirty: 0 kB

Private_Clean: 4 kB

Private_Dirty: 0 kB

Referenced: 4 kB

Anonymous: 0 kB

LazyFree: 0 kB

AnonHugePages: 0 kB

ShmemPmdMapped: 0 kB

Shared_Hugetlb: 0 kB

Private_Hugetlb: 0 kB

Swap: 0 kB

SwapPss: 0 kB

Locked: 0 kB

ProtectionKey: 0

VmFlags: rd ex mr mw me dw sd 

00600000-00601000 r--p 00000000 fc:50 102760452 /work/oppo_W9050814/memory/memory-analyze/a.out

……………………………………

00601000-00602000 rw-p 00001000 fc:50 102760452

memory-analyze/a.out:第3行 [可读可写] 是程序的数据段(包括初始化数据段和未初始化数据段) 

……………………………………

0171f000-01740000 rw-p 00000000 00:00 0 [heap]堆空间

Size: 132 kB

KernelPageSize: 4 kB

MMUPageSize: 4 kB

Rss: 4 kB

Pss: 4 kB

Shared_Clean: 0 kB

Shared_Dirty: 0 kB

Private_Clean: 0 kB

Private_Dirty: 4 kB

Referenced: 4 kB

Anonymous: 4 kB

LazyFree: 0 kB

AnonHugePages: 0 kB

ShmemPmdMapped: 0 kB

Shared_Hugetlb: 0 kB

Private_Hugetlb: 0 kB

Swap: 0 kB

SwapPss: 0 kB

Locked: 0 kB

ProtectionKey: 0

VmFlags: rd wr mr mw me ac sd

7fecd686f000-7fecd6974000 rw-p 00000000 00:00 0 

Size: 1044 kB         //malloc(1024*1024)分配的1024K在这个堆上,p1的地址=0x7fecd686f010。0x7fecd6974000-0x7fecd686f000=0x105000=1069056=1069056/1024=1044 kB

KernelPageSize: 4 kB

MMUPageSize: 4 kB

Rss: 20 kB

Pss: 20 kB

Shared_Clean: 0 kB

Shared_Dirty: 0 kB

Private_Clean: 0 kB

Private_Dirty: 20 kB

Referenced: 20 kB

Anonymous: 20 kB

LazyFree: 0 kB

AnonHugePages: 0 kB

ShmemPmdMapped: 0 kB

Shared_Hugetlb: 0 kB

Private_Hugetlb: 0 kB

Swap: 0 kB

SwapPss: 0 kB

Locked: 0 kB

ProtectionKey: 0

VmFlags: rd wr mr mw me ac sd 

7fb51c000000-7fb51c221000 rw-p 00000000 00:00 0 

Size: 2180 kB         //malloc(2*1024*1024)分配的2028K在这个堆上,p1的地址=0x7fb51c0008c0

KernelPageSize: 4 kB

MMUPageSize: 4 kB

Rss: 8 kB

Pss: 8 kB

Shared_Clean: 0 kB

Shared_Dirty: 0 kB

Private_Clean: 0 kB

Private_Dirty: 8 kB

Referenced: 8 kB

Anonymous: 8 kB

LazyFree: 0 kB

AnonHugePages: 0 kB

ShmemPmdMapped: 0 kB

Shared_Hugetlb: 0 kB

Private_Hugetlb: 0 kB

Swap: 0 kB

SwapPss: 0 kB

Locked: 0 kB

ProtectionKey: 0

VmFlags: rd wr mr mw me nr sd 

7ff5a030f000-7ff5a0310000 ---p 00000000 00:00 0 

……………………………………

7ff5a0310000-7ff5a0b10000 rw-p 00000000 00:00 0 

……………………………………

7ff5a0b10000-7ff5a0b11000 ---p 00000000 00:00 0 

……………………………………

7ff5a0b11000-7ff5a1311000 rw-p 00000000 00:00 0 

…………………………………… 

7ff5a1311000-7ff5a14d1000 r-xp 00000000 fc:01 2241518 /lib/x86_64-linux-gnu/libc-2.23.so

…………………………………… 

7ff5a14d1000-7ff5a16d1000 ---p 001c0000 fc:01 2241518 /lib/x86_64-linux-gnu/libc-2.23.so

…………………………………… 

7ff5a16d1000-7ff5a16d5000 r--p 001c0000 fc:01 2241518 /lib/x86_64-linux-gnu/libc-2.23.so

…………………………………… 

7ff5a16d5000-7ff5a16d7000 rw-p 001c4000 fc:01 2241518 /lib/x86_64-linux-gnu/libc-2.23.so

…………………………………… 

7ff5a16d7000-7ff5a16db000 rw-p 00000000 00:00 0 

…………………………………… 

7ff5a16db000-7ff5a16f3000 r-xp 00000000 fc:01 2241500 /lib/x86_64-linux-gnu/libpthread-2.23.so

…………………………………… 

7ff5a16f3000-7ff5a18f2000 ---p 00018000 fc:01 2241500 /lib/x86_64-linux-gnu/libpthread-2.23.so

…………………………………… 

7ff5a18f2000-7ff5a18f3000 r--p 00017000 fc:01 2241500 /lib/x86_64-linux-gnu/libpthread-2.23.so

…………………………………… 

7ff5a18f3000-7ff5a18f4000 rw-p 00018000 fc:01 2241500 /lib/x86_64-linux-gnu/libpthread-2.23.so

…………………………………… 

7ff5a18f4000-7ff5a18f8000 rw-p 00000000 00:00 0 

…………………………………… 

7ff5a18f8000-7ff5a191e000 r-xp 00000000 fc:01 2241510 /lib/x86_64-linux-gnu/ld-2.23.so

…………………………………… 

7ff5a1afe000-7ff5a1b02000 rw-p 00000000 00:00 0 

…………………………………… 

7ff5a1b1d000-7ff5a1b1e000 r--p 00025000 fc:01 2241510 /lib/x86_64-linux-gnu/ld-2.23.so

…………………………………… 

7ff5a1b1e000-7ff5a1b1f000 rw-p 00026000 fc:01 2241510 /lib/x86_64-linux-gnu/ld-2.23.so

…………………………………… 

7ff5a1b1f000-7ff5a1b20000 rw-p 00000000 00:00 0 

…………………………………… 

7fffaa6a7000-7fffaa6c8000 rw-p 00000000 00:00 0 [stack]栈空间

Size: 132 kB

KernelPageSize: 4 kB

MMUPageSize: 4 kB

Rss: 12 kB

Pss: 12 kB

Shared_Clean: 0 kB

Shared_Dirty: 0 kB

Private_Clean: 0 kB

Private_Dirty: 12 kB

Referenced: 12 kB

Anonymous: 12 kB

LazyFree: 0 kB

AnonHugePages: 0 kB

ShmemPmdMapped: 0 kB

Shared_Hugetlb: 0 kB

Private_Hugetlb: 0 kB

Swap: 0 kB

SwapPss: 0 kB

Locked: 0 kB

ProtectionKey: 0

VmFlags: rd wr mr mw me gd ac 

7fffaa7bd000-7fffaa7c0000 r--p 00000000 00:00 0 [vvar]

…………………………………… 

7fffaa7c0000-7fffaa7c2000 r-xp 00000000 00:00 0 [vdso]

…………………………………… 

ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

…………………………………… 

能不能更直观点呢:参考:

PS: 下一篇我们介绍:​​​​​​​进程内存分布--之pmap呈现memory-layout.cpp内存分布

关注我,后续还有更多专题博文分享,谢谢!!!  

http://www.dtcms.com/wzjs/275616.html

相关文章:

  • 宝鸡做宝鸡做网站网站cpm广告联盟平台
  • 成都微信网站制作龙岗百度快速排名
  • 电子网站风格设计seo站内优化教程
  • 课程资源网站开发正规淘宝代运营去哪里找
  • 搭建本地网站做色流如何自己做网站
  • 如何做企业网站及费用问题网站优化团队
  • 网站开发感想微信推广软件
  • 阿里云模板建站好不好147seo工具
  • 企业网站设计意义网络营销
  • wordpress移动端页面模板下载地址seo关键词排名优化如何
  • 专门做外贸网站有哪些免费创建网站
  • 领导不愿意做招聘网站怎么办优化大师怎么强力卸载
  • 3g医院网站模板百度刷搜索词
  • 产品做网站天津seo博客
  • 做网站首页微信crm
  • wordpress dedecms成都seo整站
  • 网站怎么做排名呢无屏蔽搜索引擎
  • 福田做网站价格怎样做好销售和客户交流
  • 北京网站建设icp有限公司推广普通话黑板报
  • 青岛公司网站建设公司2022世界足球排行榜
  • bc网站如何建设品牌营销策略有哪些
  • 网站建设方案对比分析百度指数教程
  • python做网站项目北京seoqq群
  • dz网站首页html代码在哪东莞网络推广营销
  • 没有网站如何做cpa推广河南网站推广公司
  • 东莞找网站设计高端网站建设公司排名
  • 东莞网站建设公司企业win7优化大师好不好
  • 新房装修设计南昌seo推广公司
  • wordpress文章数据下载不错宁波seo公司
  • 网站设计文档模板平板电视seo优化关键词