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

重庆网站开发公司大学生网页设计作业

重庆网站开发公司,大学生网页设计作业,做seo网站图片怎么优化,做培训网站哪家好0. 前言 ramdump是指某个时刻系统或者子系统发生crash等异常,系统将内存中的数据通过一定的方式保存下来,相当于一个系统内存快照,用以开发者离线分析系统异常问题。 ramdump 工具中有很多内存统计的脚本,本文逐一剖析内存相关的…

0. 前言

ramdump是指某个时刻系统或者子系统发生crash等异常,系统将内存中的数据通过一定的方式保存下来,相当于一个系统内存快照,用以开发者离线分析系统异常问题。

ramdump 工具中有很多内存统计的脚本,本文逐一剖析内存相关的脚本,涉及脚本如下:

脚本名称dump文件名称说明
memusage.pymemory.txt统计内存 total memory、free memory、slab、shmem 以及每个进程的 rss、swap、adj 信息;
memstat.pymem_stat.txt统计总的内存使用情况,包含total、free、slab、cached、vmalloc、zram compressed,others中包含 pgtables、kernel stack 等信息;
ion_buffer_parse.py

ionbuffer.txt

ionproc.txt

total_dma_heap.txt

统计db_list 中所有 dma_buf 的size、expr_name等信息。

总的 dma_buf 大小记录在 total_dma_heap.txt 文件中

vmalloc.pyvmalloc.txt统计 vmallocinfo
slabinfo.py

1. memusage.py

该脚本统计的信息会写到 memory.txt 文件中。

来看下统计了哪些信息:

Total RAM: 2,716,180kB
Total free memory: 54,324kB(2.0%)
Slab reclaimable: 69,868kB(2.6%)
Slab unreclaimable: 195,680kB(7.2%)
Total Slab memory: 265,548kB(9.8%)
Total SHMEM (PAGECACHE): 90,300kB(3.3%)
Total SHMEM (SWAP): 212kB(0.0%)TOP 3 swapped SHMEM files are:
Address_space 0xffffff803ec32d30 Allocated 13 pages
file name:  /dev/ashmem/Trans ImageData
Address_space 0xffffff800b2ac460 Allocated 6 pages
file name:  /dev/ashmem/Trans ImageData
Address_space 0xffffff803ec37960 Allocated 6 pages
file name:  /dev/ashmem/Trans ImageDataTask name             PID          RSS in kB         SWAP in kB   ADJ
m.ohos.launcher      1433      283,520(10.4%)       12,676(0.5%)   400
m.ohos.systemui      1406      165,088(6.1%)       25,992(1.0%)  -800
com.ohos.callui     10310      176,892(6.5%)            0(0.0%)     1
m.ohos.contacts      7746      139,204(5.1%)           12(0.0%)   400
com.ohos.camera     17189      124,844(4.6%)            0(0.0%)     0
com.ohos.mms        13071      115,536(4.3%)           12(0.0%)   400
foundation           1027      110,608(4.1%)        3,224(0.1%) -1000
ard:inputMethod      1465      106,788(3.9%)        6,464(0.2%)   400
appspawn              277      110,432(4.1%)            0(0.0%) -1000
字段名称说明
Total RAM统计全局变量 _totalram_pages
Total free memory统计NR_FREE_PAGES,以及占total 的百分比
Slab reclaimable统计NR_SLAB_RECLAIMABLE,以及占 total 的百分比,Kernel5.10 以上的版本字段名称有所变化
Slab unreclaimable统计 NR_SLAB_UNRECLAIMABLE,以及占 total 的百分比,Kernel5.10 以上的版本字段名称有所变化
Total Slab memory统计总的 slab 内存,上面两者之和
Total SHMEM (PAGECACHE)统计NR_SHMEM,以及占 total 的百分比
Total SHMEM (SWAP)统计 shmem 进入 swap 的内存,这些信息都保存在 shmem_swaplist 中
TOP 3 swapped SHMEM files上面统计信息之后,会将 TOP 3 swapped SHMEM files 列举出来
所有进程信息

统计进程的 name、PID、rss、swap 和 adj,其中 rss 和 swap统计值来源于 mm_struct 中 mm_rss_stat 结构体,rss = anon_rss + file_rss + shmem_rss

2. memstat.py

该脚本统计的信息会写到 mem_stat.txt 文件中。

来看下统计了哪些信息:

Total RAM                     :     2652 MB
Free memory:                  :       53 MBTotal Slab memory:            :      259 MB
Total DMA memory              :       54 MB
KGSL                          :        0 MB
ZRAM compressed               :        4 MB
vmalloc                       :       85 MB
Others                        :     1904 MB
Cached                        :      570 MBTotal Unaccounted Memory      :      293 MB
字段名称说明
Total RAM统计全局变量 _totalram_pages
Free memory统计NR_FREE_PAGES,以及占total 的百分比
Total Slab memory统计总的 slab 内存,NR_SLAB_RECLAIMABLE + NR_SLAB_UNRECLAIMABLE
Total DMA memory统计所有dma-buf 的内存大小。对于 kernel 5.10 及以上的版本,该数据读取的是total_dma_heap.txt 文件,该文件于 ion_buffer_parse.py 解析写入,dma-buf 都统计在全局变量 db_list 中,详细查看下文 ion_buffer_parse.py 剖析
KGSL未知
ZRAM compressed统计 ZRAM 压缩的内存大小
vmalloc统计通过vmalloc 申请的内存大小。对于 vmalloc 分配的内存都会被记录到全局变量nr_vmalloc_pages 中,详细可以查看《内核参数:vmallocinfo》一文
others统计 NR_ANON_MAPPED + NR_FILE_PAGES + NR_PAGETABLE  + NR_KERNEL_STACK_KB
Cached统计 NR_FILE_PAGES
Total Unaccounted Memory没有被统计的内存大小

3. ion_buffer_parse.py

该脚本统计的信息会写到 ionbuffer.txtionproc.txttotal_dma_heap.txt 文件中。

3.1 ionbuffer.txt

来看下统计了哪些数据:

*****Parsing dma buf info for ion leak debugging*****File_addr                                REF  Name            Size       Exp        Heap       Size in KB          
v.v (struct file *)0xffffff8031154140	  9   None            0x555000   system-uncached None       (5460 KB)
v.v (struct file *)0xffffff8031154500	 10   None            0x555000   system-uncached None       (5460 KB)
v.v (struct file *)0xffffff807a006640	  6   None            0x555000   system-uncached None       (5460 KB)
v.v (struct file *)0xffffff80a23b3540	  6   None            0x555000   system-uncached None       (5460 KB)
v.v (struct file *)0xffffff807cfb92c0	  8   None            0x555000   system-uncached None       (5460 KB)
v.v (struct file *)0xffffff808fc8ea00	  8   None            0x4f4000   system-uncached None       (5072 KB)
v.v (struct file *)0xffffff80b59cab40	  8   None            0x4f4000   system-uncached None       (5072 KB)
v.v (struct file *)0xffffff805cb97540	  3   None            0x48f000   system     None       (4668 KB)

轮询 db_list 中所有的 dma-buf,所有的size 都会统计到 total_dma_heap,最终的总的 dma-buf 的内存会记录到 total_dma_heap.txt 中。

字段名称说明
File_addrdma_buf 所对应的文件的 struct file 地址
REF该文件被引用的次数
Namedma_buf 的name,一般使用 dma_buf_set_name() 函数配置,默认不会设置,所以为None
Sizedma_buf 所代表的内存大小,十六进制
Expdma_buf 的 exp_name,同 dma_heap 的name
Heapdma_heap 的name,上面 txt  显示为None,是因为脚本代码有问题
Size in KB 同Size,只不过转换成了KB 单位

3.2 ionproc.txt

 来看下统计了哪些数据:

*****Parsing dma proc info for ion leak debugging*****render_service (PID 828) size (KB): 43600
Name            Size            Size in KB Time Alive(sec)      (struct file *)          
system-uncached 0x555000              5460 0                    0xffffff80a23b3540       
system-uncached 0x555000              5460 0                    0xffffff8031154500       
system-uncached 0x555000              5460 0                    0xffffff8031154140       
system-uncached 0x555000              5460 0                    0xffffff807a006640       
system-uncached 0x555000              5460 0                    0xffffff807cfb92c0       
system-uncached 0x4f4000              5072 0                    0xffffff80b59cab40       
system-uncached 0x4f4000              5072 0                    0xffffff808fc8ea00       
system-uncached 0xe4000                912 0                    0xffffff8061202280       
system-uncached 0xe4000                912 0                    0xffffff801f506000   ...m.ohos.launcher (PID 1433) size (KB): 16380
Name            Size            Size in KB Time Alive(sec)      (struct file *)          
system-uncached 0x555000              5460 0                    0xffffff807cfb92c0       
system-uncached 0x555000              5460 0                    0xffffff807a006640       
system-uncached 0x555000              5460 0                    0xffffff80a23b3540    

该文件统计的是使用 dma-buf的进程的相关信息,每一个 proc 都会显示进程名、PID 以及使用的dma-buf 的总大小。 

通常该文件统计的数据与ionbuffer.txt 配合使用,分析某些dma_buf 异常。

字段名称说明
Nameslab_buf 的exp_name
Sizeslab_buf 所占用的内存大小,十六进制
Size in KB同上,转换成KB 的单位
Time Alive(sec)slab_buf 的存活时长,一般用于 struct dma_buf 中存在ktime 的成员,除此都为0
(struct file *)同 ionbuffer.txt 中,代表 dma_buf 对应的文件的 struct file 地址

3.3 total_dma_heap.txt

来看下统计了哪些数据:

Total dma memory: 54MB

该数据统计所有dma_buf 的总大小,在分析 ionbuffer.txt 的时候看到,所有db_list 中的 dma_buf 的size 都会累计到变量total_dma_heap,最终记录到 total_dma_heap.txt 文件中。

4. vmalloc.py

该脚本统计的信息会写到 vmalloc.txt 文件中。

来看下统计了哪些信息:

Memory mapped region allocated by VmallocVM_STRUCT                                  ADDRESS_RANGE                        SIZE   PHYS_ADDR    CALLER                                         Flag    
v.v (struct vmap_area)0xffffff8081917400   ffffffc000000000-ffffffc000002000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff80b4230c00   ffffffc000002000-ffffffc000004000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff80a33d8180   ffffffc000004000-ffffffc000006000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff80a33d8480   ffffffc000006000-ffffffc000008000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff807a1bb500   ffffffc000008000-ffffffc00000a000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff8025419a80   ffffffc00000a000-ffffffc00000c000     2000          0  bpf_jit_binary_alloc0x0xac                     vmalloc pages=1
v.v (struct vmap_area)0xffffff808d27c180   ffffffc009820000-ffffffc00997a000   15a000          0  load_module0x0xbb0                             vmalloc pages=345
v.v (struct vmap_area)0xffffff808d39b300   ffffffc00997a000-ffffffc009997000    1d000          0  load_module0x0xbb0                             vmalloc pages=28
v.v (struct vmap_area)0xffffff808d5b8300   ffffffc009997000-ffffffc0099b6000    1f000          0  load_module0x0xbb0                             vmalloc pages=30
v.v (struct vmap_area)0xffffff808da97c80   ffffffc0099b6000-ffffffc00a2cb000   915000          0  load_module0x0xbb0                             vmalloc pages=2324
v.v (struct vmap_area)0xffffff808d30ca00   ffffffc00a2cb000-ffffffc00a2d1000     6000          0  load_module0x0xbb0                             vmalloc pages=5
v.v (struct vmap_area)0xffffff808c688200   ffffffc00a2d1000-ffffffc00a311000    40000          0  load_module0x0xbb0                             vmalloc pages=63
v.v (struct vmap_area)0xffffff809621e780   ffffffc00a311000-ffffffc00a6dc000   3cb000          0  load_module0x0xbb0                             vmalloc pages=970
字段名称说明
VM_STRUCT从kmalloc 中分配的struct vm_struct 的地址
ADDRESS_RANGEvm_struct 代表的vmalloc 子区域的内存空间,差值就是SIZE
SIZEvm_struct 代表的vmalloc 子区域的内存大小,十六进制
PHYS_ADDR代表的vmalloc 子区域对应的物理地址起始地址,一般出现于vmap 或 ioremap
CALLER调用vmalloc 的函数
Flagvmalloc 的属性,详细查看《内核参数:vmallocinfo》一文

更详细的 vmalloc 内存管理信息可以查看《vmalloc 详解》一文和《内核参数:vmallocinfo》一文。

5. slabinfo.py


文章转载自:
http://loaner.c7513.cn
http://calcar.c7513.cn
http://nestful.c7513.cn
http://w.c7513.cn
http://nitrometer.c7513.cn
http://dustman.c7513.cn
http://sheepcot.c7513.cn
http://sunderance.c7513.cn
http://titling.c7513.cn
http://russianise.c7513.cn
http://himalayas.c7513.cn
http://loanword.c7513.cn
http://tennessee.c7513.cn
http://hypoparathyroidism.c7513.cn
http://plane.c7513.cn
http://icmp.c7513.cn
http://desperado.c7513.cn
http://campshot.c7513.cn
http://lecithoid.c7513.cn
http://exogenic.c7513.cn
http://giglet.c7513.cn
http://shipbuilder.c7513.cn
http://roquesite.c7513.cn
http://lost.c7513.cn
http://evilly.c7513.cn
http://tallinn.c7513.cn
http://mall.c7513.cn
http://neutretto.c7513.cn
http://hydrogenolysis.c7513.cn
http://neptune.c7513.cn
http://lyophilic.c7513.cn
http://multiple.c7513.cn
http://lightning.c7513.cn
http://gelable.c7513.cn
http://christianise.c7513.cn
http://istria.c7513.cn
http://baudrons.c7513.cn
http://rhematic.c7513.cn
http://astigmatoscopy.c7513.cn
http://midtown.c7513.cn
http://suggestion.c7513.cn
http://jerrymander.c7513.cn
http://overcolor.c7513.cn
http://sanforized.c7513.cn
http://hitching.c7513.cn
http://audiogram.c7513.cn
http://paxwax.c7513.cn
http://relumine.c7513.cn
http://landon.c7513.cn
http://abwatt.c7513.cn
http://epidiascope.c7513.cn
http://ringbark.c7513.cn
http://muttnik.c7513.cn
http://classbook.c7513.cn
http://rhomboideus.c7513.cn
http://neuropharmacology.c7513.cn
http://disciplinary.c7513.cn
http://gashouse.c7513.cn
http://quintile.c7513.cn
http://isologue.c7513.cn
http://contraction.c7513.cn
http://haikou.c7513.cn
http://exarticulate.c7513.cn
http://additionally.c7513.cn
http://rodential.c7513.cn
http://spinneret.c7513.cn
http://zoologically.c7513.cn
http://unfrequent.c7513.cn
http://riverly.c7513.cn
http://anthropolatric.c7513.cn
http://agley.c7513.cn
http://welkin.c7513.cn
http://telegu.c7513.cn
http://inhumanity.c7513.cn
http://refreshen.c7513.cn
http://insulinize.c7513.cn
http://dia.c7513.cn
http://obligation.c7513.cn
http://flying.c7513.cn
http://overbowed.c7513.cn
http://crin.c7513.cn
http://edta.c7513.cn
http://ica.c7513.cn
http://hydrastis.c7513.cn
http://hypoglottis.c7513.cn
http://divagation.c7513.cn
http://trisyllabic.c7513.cn
http://expansibility.c7513.cn
http://perhydrogenate.c7513.cn
http://shopfront.c7513.cn
http://fatherlike.c7513.cn
http://dislodge.c7513.cn
http://caenozoic.c7513.cn
http://brown.c7513.cn
http://chapfallen.c7513.cn
http://sentimo.c7513.cn
http://trichlorethylene.c7513.cn
http://culdotomy.c7513.cn
http://irreligiously.c7513.cn
http://queenright.c7513.cn
http://www.zhongyajixie.com/news/93269.html

相关文章:

  • 免费做网站怎么盈利人力资源短期培训班
  • 外贸网站和内贸产品故事软文案例
  • 青岛国家高新区建设局网站无锡网络推广外包
  • 建一个平台网站一般需要多少钱腾讯效果推广
  • wordpress登陆密码百度seo外链推广教程
  • dw做框架网站百度网站大全首页
  • 做网站开什么发票seo和sem
  • 建站abc免费版seo查询源码
  • 网站建设工具哪个好西安seo关键词排名优化
  • 桥西区建设局网站企业建站系统
  • 企业网站建设最需要的是什么百度一下你就知道百度官网
  • 镇江电子商务网站建设优化设计单元测试卷答案
  • 用百度地图 做gis网站seo推广网站
  • 网站建设 要维护么制作一个网页的步骤
  • 大连百度关键词优化福州百度快速优化排名
  • 常德做网站专业公司郑州短视频代运营
  • 郑州购物网站建设全球搜官网
  • 西安网站建设招骋中国站长站
  • 泰兴做网站公司站长工具永久
  • 如何做国外独立网站排名优化服务
  • 网站设计与网页制作seo网络优化招聘
  • wordpress改关键词深圳百度seo怎么做
  • 武进做网站的公司app开发费用一览表
  • 电脑主机做网站服务器交换链接营销的典型案例
  • 大方泳嘉网站建设广州网络优化最早的公司
  • c2c电子商务网站的功能网络营销环境宏观微观分析
  • 陕西省建设网三类人员考试时间seo赚钱培训
  • jquery网站后台咖啡seo是什么意思
  • 用建站ABC做的网站 怎么营销最新国际新闻 大事件
  • 营口网站建设公司网页设计制作网站图片