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

青岛开发网站洛可可设计公司考察

青岛开发网站,洛可可设计公司考察,百度收录网站怎么更改关键词,制作网页游戏html1 原理说明 LMKD 借助 Linux 内核的 OOM#xff08;Out of Memory#xff09;机制来管理内存。当系统内存不足时#xff0c;OOM 触发器会发送信号给LMKD#xff0c;通知其进行内存管理。LMKD根据预先定义的策略和优先级#xff0c;选择性地终止一些进程#xff0c;以释放…1 原理说明 LMKD 借助 Linux 内核的 OOMOut of Memory机制来管理内存。当系统内存不足时OOM 触发器会发送信号给LMKD通知其进行内存管理。LMKD根据预先定义的策略和优先级选择性地终止一些进程以释放内存。 LMKD运行流程如下 监测内存使用LMKD 定期检查系统内存使用情况包括各个进程的内存占用和系统总体内存压力。内存压力评估根据内存使用情况LMKD 会计算出当前的内存压力指数以判断是否需要进行内存管理。内存压力事件处理当内存压力指数超过一定阈值时LMKD 触发内存压力事件并根据预先配置的策略进行相应的处理。进程终止LMKD 根据策略和优先级选择性地终止一些进程。通常LMKD 会优先终止那些占用内存较多、优先级较低或者处于后台运行的进程。释放内存通过终止进程释放的内存会被回收从而使系统内存得到释放缓解内存压力。日志记录和统计LMKD 记录终止的进程信息和释放的内存量并将其记录到系统日志中以供后续分析和优化。 这里选择运行到第4步时进行进程终止过滤即使用包名进行过滤。 2 修改方案Android R S 修改文件为AOSP/system/memory/lmkd/lmkd.cpp不同可能lmkd.cpp的位置不同本质上都是修改kill_one_process的实现过滤掉包名,具体代码修改如下 static int kill_one_process(struct proc* procp, int min_oom_score, struct kill_info *ki,union meminfo *mi, struct wakeup_info *wi, struct timespec *tm,struct psi_data *pd) {int pid procp-pid;int pidfd procp-pidfd;uid_t uid procp-uid;char *taskname;int r;int result -1;struct memory_stat *mem_st;struct kill_stat kill_st;int64_t tgid;int64_t rss_kb;int64_t swap_kb;static char buf[PAGE_SIZE];//AGS add startchar packageName[128] {};//AGS add endif (!read_proc_status(pid, buf, sizeof(buf))) {goto out;}if (!parse_status_tag(buf, PROC_STATUS_TGID_FIELD, tgid)) {ALOGE(Unable to parse tgid from /proc/%d/status, pid);goto out;}if (tgid ! pid) {ALOGE(Possible pid reuse detected (pid %d, tgid % PRId64 )!, pid, tgid);goto out;}// Zombie processes will not have RSS / Swap fields.if (!parse_status_tag(buf, PROC_STATUS_RSS_FIELD, rss_kb)) {goto out;}if (!parse_status_tag(buf, PROC_STATUS_SWAP_FIELD, swap_kb)) {goto out;}taskname proc_get_name(pid, buf, sizeof(buf));// taskname will point inside buf, do not reuse buf onwards.if (!taskname) {goto out;} // AGS add start添加包名过滤strncpy(packageName, taskname,128);//ALOGE(AGS-lmkd:packageName%s,taskname%s,strcmp%d,packageName,taskname,strcmp(packageName,com.xxx.xxx));if(!strncmp(packageName,com.xxx.xxx,strlen(com.xxx.xxx))){ALOGE(AGS add lmkd-whitelist:pkgname%s,packageName);return -1000;}//AGS add endmem_st stats_read_memory_stat(per_app_memcg, pid, uid, rss_kb * 1024, swap_kb * 1024);//... out:/** WARNING: After pid_remove() procp is freed and cant be used!* Therefore placed at the end of the function.*/pid_remove(pid);return result; } 思考与扩展这里实际上也可以根据自己的需要做成白名单和黑名单来解决该问题但是其本质都是包名的过滤。
http://www.hkea.cn/news/14519424/

相关文章:

  • 做网站服务器和域名wordpress怎么编辑页面
  • 网站制作论文5000字网站建设 APP
  • 网站怎么才可以不备案二维码网页制作软件
  • 站长之家网址查询广州番禺
  • 四川住房建设部官方网站网站注册查询官网
  • 专业网站建设的公司排名江西省南昌市建筑工程网
  • logo设计网站官网网站广告赚钱怎么做
  • 自己能自学网站建设吗成都住建局官网官网官方
  • 中国建设教育网站免费网站建站w
  • 网站建设哪家go好安徽省工程建设协会网站
  • 哈尔滨网站建设价格低wordpress修改默认头像
  • 创意广告视频网站做ps兼职的网站有哪些
  • 自动化设计网站建设百度推广seo是什么意思
  • 郑州住房和城乡建设局网站wordpress里的导航用什么
  • 百度推广话术seo 0xu
  • 商城网站建设视频教程销售找客户最好的app
  • 记账凭证做网站摘要怎么写最新软件开发国家标准
  • 企业建设网站怎么做账建网站深
  • 做网站ps的图片建设银行手机版官方网站
  • 做公司网站方案网页设计与网站建设项目教程
  • 怎么建设一个微信网站最好看免费观看高清大全知否知否
  • 网站域名重定向科技股龙头
  • 网站设计的公司如何选瀑布流响应式网站模板
  • 卓越高职院建设网站平湖公司网站建设
  • 潍坊小企业网站建设o2o与网站建设
  • 个人求职网站设计营销型网站策划 pdf
  • 工程公司会计分录外贸seo关键词
  • php中switch做网站公司网站建设价格表
  • 免费建站有哪些wordpress登录页面404
  • php网站整合dz论坛建设网站属于什么费用