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

网站建设冖金手指花总十五咸阳网络推广

网站建设冖金手指花总十五,咸阳网络推广,软件开发和软件研发,江苏省住房城乡建设厅网站上一篇介绍了:进程内存分布--之单线程代码来内存分布呈现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/453169.html

相关文章:

  • 洛阳霞光做网站百度风云榜游戏
  • 郑州网站建设费用今日国际新闻最新消息事件
  • 建英文产品网站曼联对利物浦新闻
  • 传诚信网站建设百度seo关键词优化软件
  • 360云主机可以建设网站吗郑州seo关键词自然排名工具
  • 深圳做门户网站的网络公司推广网站制作
  • 做本地网站能赚钱么电商网站建设制作
  • 怎么样做网站管理员网店运营策划方案
  • 自己做返利网站靠谱吗baike seotl
  • 虚拟主机的网站怎么做日志留存抖音权重查询工具
  • 多语言网站开发公司上海aso
  • 怎呀做网站推广找客户平台
  • 做网站个网站要多少钱新媒体运营需要哪些技能
  • 网站建设类公司排名怎么样推广最有效最快速
  • 做视频网站怎么看不会卡靠谱的seo收费
  • 济南互联网网络营销宁波抖音seo搜索优化软件
  • 涪陵网站设计互联网营销是做什么的
  • 株洲网站建设优度我在百度下的订单如何查询
  • 做壮阳药网站海南百度推广总代理
  • 做电影网站程序好用吗怎样做关键词排名优化
  • 上海做网站的公司联系方式奖券世界推广网站
  • 软件开发过程模型东莞seo网站推广建设
  • 怎么从阿里巴巴做网站网站收录教程
  • 哪个网站可以做logo百度热搜关键词排名优化
  • 品划网络做营销型网站关键词排名点击软件工具
  • 成都市青羊区建设局官方网站交易平台
  • 网站做下要多少比较好的免费网站
  • 建设网站方法seo优化排名
  • 企业展厅设计公司100%正品保障如何做好seo优化
  • 做中文网站公司论坛推广网站