
memory
文章平均质量分 61
亚瑟-小郎
那些闪亮的人,不是因为盛气凌人争来的,请你足够相信,他付出比你多得多!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
memory泄露分析方法(Binder,Window,View篇)
找大量重复的view,点击查看text文案如果相同则找产品他们确认是否合理。代码或dumpsys window来监测是否有大量同名window。原创 2024-12-27 22:55:37 · 458 阅读 · 0 评论 -
epoll笔记
select/poll:(轮询驱动)服务端主动遍历监听的所有客户端,查看每个客户端的fd是否有变化的消息(通过pipe管道通讯方式)弊端:每次遍历全部fd消耗更多cpu,fdset 每次都需全部copy到内核态。looper() UI线程走到nativePollOnce -〉epoll_wait(mWakeEventFd)挂起,epoll:(事件驱动)服务端通过管道通讯方式将有变化事件的客户端保存到1个队列。epoll是1个服务端监听n个客户端socket请求的多路复用技术。原创 2024-12-26 23:43:27 · 311 阅读 · 0 评论 -
memory泄露分析方法(FD(File Descriptor)篇)
进程打开File,Socket,Pipe后生成一个File Descriptor,它是打开这个系统资源的标识符。File Descriptor是Linux下概念,fd 是 int类型非负数!fd标识符和泄漏文件类型关系。原创 2024-12-26 23:16:15 · 528 阅读 · 0 评论 -
系统卡顿,还是App卡
所有App都卡,大概率是系统稳定性问题导致,出现1个app 特有卡顿,从app侧找原因。打开相册播放视频,如果视频卡,大概率是系统资源不足(cpu,memory,gpu)打开2个不同app列表滑动都卡顿,大概率是系统cpu不足导致卡顿。没现场,只有log就看cpu,memory,gpu有无异常占用。原创 2024-12-26 14:35:49 · 246 阅读 · 0 评论 -
memory泄露分析方法(dma篇)
分析方法:dma_buf/bufinfodma_buf/dmaprocha。原创 2024-12-26 00:43:50 · 454 阅读 · 0 评论 -
memory泄露分析方法(显存篇)
2,gpu显存不够关键log:E Fence : waitForever: waiting for GPU completion 15134: fence 73 didn't signal in 3000 ms。用户进程需要操作显存,必须用mmap将内核空间映射到用户进程来可操作。start要求空间起始地址,一般为NULL,表示自动分配.Offset表示返回地址在映射空间的偏移量,一般是0。Prot是映射区域的属性,一般设为可读可写。fd是open("/dev/fb0")Length,映射区域的长度,原创 2024-12-26 00:26:41 · 350 阅读 · 0 评论 -
Java内存综述
scudo 在32G车机上最大分配8G内存就分配不出来内存。原创 2024-12-12 15:40:07 · 233 阅读 · 0 评论 -
内存泄露综述
am_meminfo:Cached,Free,Zram,Kernel,Native (不太准)【Cached+Free】=可用内存。am_low_memory:x ( x表示Lru进程长度)原创 2024-12-12 11:31:56 · 391 阅读 · 0 评论 -
memory泄露分析方法(java篇)
memory泄露主要分为java和native 2种,本文主要介绍java#测试每天从monkey中筛选出内存超标的app,提单流转到我这里,原创 2024-01-14 23:03:52 · 696 阅读 · 0 评论 -
memory监控方法
监控android系统各个内存占用(java,native,gpu显存....)原创 2024-01-07 16:07:24 · 580 阅读 · 0 评论 -
memory泄露分析方法(native篇)
memory泄露主要分为java和native 2种,本文主要介绍native泄露分析方法#捕捉泄露:测试每天从monkey中筛选出内存超标的app,从dumpsys_meminfo_pid看。原创 2024-01-15 09:00:00 · 704 阅读 · 0 评论 -
memory内存分类
(adb shell dumpsys meminfo x)堆内存用于存储对象实例和静态变量原创 2024-12-12 11:05:30 · 404 阅读 · 0 评论 -
scudo基础学习
Scudo初始化之后会预先分配33个内存区域( SizeClass:一个region )的虚拟内存,0号region 用于存放内存管理元数据,每个 SizeClass 提供大小X的内存分配,每个 SizeClass mmap 256M的虚拟内存,分成大小相同的。Secondary Allocator内部有的Cache最多缓存 32 个不超过 2M 的 VMA(32*2M),但分配的总量是无限制的,只有系统内存不足时才会分配失败。为了解决多线程下内存的分配加锁导致的性能问题,为每个线程分配一块专有的内存(原创 2024-12-11 23:35:04 · 1162 阅读 · 0 评论