位置: 编程技术 - 正文

Linux用户进程是如何释放内存的(linux 用户进程)

编辑:rootadmin

推荐整理分享Linux用户进程是如何释放内存的(linux 用户进程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux进程使用,linux中的进程是什么,linux用户进程数限制,linux中的进程是什么,linux用户进程可以分为哪三类,linux中的进程是什么,linux 用户进程,linux 用户进程,内容如对您有帮助,希望把文章链接给更多的朋友!

Linux用户进程是如何释放内存的 Linux进程使用内存的基本流程:

Linux用户进程是如何释放内存的(linux 用户进程)

从图中我们可以看出,进程的堆,并不是直接建立在Linux的内核的内存分配策略上的,而是建立在glibc的堆管理策略上的(也就是glibc的动态内存分配策略上),堆的管理是由glibc进行的。所以我们调用free对malloc得到的内存进行释放的时候,并不是直接释放给操作系统,而是还给了glibc的堆管理实体,而glibc会在把实际的物理内存归还给系统的策略上做一些优化,以便优化用户任务的动态内存分配过程。 那么glibc的堆管理器在什么时候才把物理内存归还给系统呢? 它会从堆的最大线性地址开始,从后向前计算用户任务当前有多少空闲的堆内存(直到碰到使用中的堆内存地址为止),比如在该图中:

它会认为有k的可释放内存,只有在该值大于某个特定的threshhold时(2.3.6上为k),它才会把这些内存归还给系统。而在中间的“未使用”内存是不会归还给系统的,所以系统也不可能再利用这块物理内存页(我们假设系统没有swap区和swap文件),也就是说系统的内存会为此减少,除非在它之前的堆内存都用free进行释放以后,glibc的堆管理器才有可能(只是有可能)把该段内存归还给系统。 由此,我们在使用malloc/free时应该小心,特别是在初始化时分配了好多内存,但是在这之后却再也不需要这么多的内存了,而这块内存又没有达到threshhold值或者在堆的最高线性地址处有某块内存没有释放,但是它前面的所有堆内存都释放了;这种情况下,用户任务将会浪费一些物理内存,这在资源比较紧张的嵌入式系统中是不可容忍的。

Linux命令free的输出含义 [root@Linux/tmp]#freetotalusedfreesharedbufferscachedMem:-/+buffers/cache:Swap:第1行total内存总数:used已经使用的内存

Apache 2.0. for Linux 下载 Apache2.0.

PHPMyAdmin 2.7.0-pl1下载 PHPMyAdmin2.7.0-pl1

标签: linux 用户进程

本文链接地址:https://www.jiuchutong.com/biancheng/366268.html 转载请保留说明!

上一篇:kill命令的使用(kill命令用法)

下一篇:Linux命令free的输出含义(-f linux命令)

  • 企业所得税工会经费调整
  • 个人在境外取得收入纳税办法
  • 个体工商户税务申报
  • 城建税计税方法
  • 借款合同印花税减免优惠政策2022
  • 自来水适用高税率吗
  • 消费税入哪个科目
  • 一般纳税人开普票和专票有什么区别
  • 开办费的帐务处理
  • 抄税报税清卡怎么操作流程
  • 营业执照办出后多久生效
  • 无形资产日常维护支出会计处理
  • 小企业周转材料报废残值回收应计入管理费用
  • 怎么处理未抵扣增值税形成的留抵税额?
  • 现金折扣是否可抵税
  • 由财政拨钱还银行借款怎么做分录?
  • 企业自查补税报告怎么写?
  • 哪些情况需要变更船籍港
  • 营改增后新纳入增值税征税范围的有
  • 管理费用研发费用科目设置
  • 法人往公户转账需要备注吗
  • 代理进口货物怎么做账
  • 差旅费未及时报销说明怎么写
  • 外帐如何暂估应付账款
  • 小规模建筑工程
  • 公司不盈利用交税吗
  • 房产税怎么做账
  • 农产品免税产品可以开增值税专用发票吗
  • win10 100g不够
  • 教你从脸上看出风水
  • 光驱弹不出来灯也不亮
  • 建筑业销项税和进项税计算
  • 营业外支出所得税前可以扣除吗
  • 先征后返的会计分录
  • 未分配利润冲减其他应付款分录
  • 新店开业费用预算表格
  • PHP:Memcached::decrementByKey()的用法_Memcached类
  • win10组策略编辑器打不开怎么办
  • 支付本月职工薪酬
  • php fopen()
  • 主播录屏软件哪个好
  • php框架symfony
  • 建筑会计和会计的区别
  • 上年第4季度企业所得税
  • 公司银行开户的一些资料是公司办公室保存还是财务保存
  • 怎样合理的运用网络
  • 建设项目财务费用包括
  • 非营利组织会计就是用于确认、计量
  • 带附件的目录
  • linux下安装mysql数据库5.6源码安装,修改登录用户密码
  • 股权转让个人转个人要交什么税
  • 汇兑损益可能被确认为
  • 小规模纳税人季度不超30万免增值税
  • 费用报销票跨月可以用吗
  • 长期股权投资成本法转权益法的处理
  • 固定资产后续支出
  • 小规模纳税人零售收入含税吗
  • 收到员工交来的宿舍费
  • 投资性房地产转为非投资性房地产
  • 票据行为的构成要件
  • 电子发票开票方怎么做账?
  • 个人出租租房收什么税
  • 老项目简易征收税率
  • mysql服务自动停止运行
  • freebsd服务器搭建
  • mac如何重装系统win10
  • 2016年最火的歌曲排行前100首
  • win7强制关机后内存不足
  • win7双显示器设置
  • Broadcast实现强制下线功能
  • android 游戏平台
  • perl数组元素个数
  • Bullet(Cocos2dx)之优化PhysicsDraw3D
  • 鼠标焦点离开触发查询
  • vue-cli使用
  • 命令行net
  • 如何分析源码
  • 专项附加扣除可以退多少钱
  • 山东省梁山县属于什么市?
  • 税务师如何执业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设