`
yuanqixun
  • 浏览: 59847 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于Linux内存查看时free的解释

 
阅读更多
昨天把我们的Linux服务器搭建起来之后,发现free -m后,竟然free列数值好少哦:<br><img alt=""><br>
以上几列,说明我的机器有6g内存,我原本以为free是我们的可用内存,可我的服务器其实打开的应用不多啊,所以很费解,Google了下,找到了如下解释:<br>
第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别<br><ul>
<li>Mem行,从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用,所以他的可用内存是2975M,已用内存是2947M</li>
    <li>第三行,从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。</li>
</ul>
所以从应用的角度出发,其实可用内存是<br><strong><span style="color: red;">5238M≈2975M+179M+2083M(换成KB的话应该就是相等了)</span></strong><br>
所以我当前应用消耗的内存,应该是:<br><strong><span style="color: red;">684M=5922M-5238M(这下应该靠谱了</span></strong><img src="http://www.blogjava.net/CuteSoft_Client/CuteEditor/images/emwink.gif" alt="" align="absmiddle" border="0"><strong><span style="color: red;">)</span></strong>
分享到:
评论

相关推荐

    嵌入式Linux内存管理之free命令

    缓冲(buffers)和缓存(cached)是Linux内存管理中的两个重要概念,它们都用于提高文件系统的性能: - Buffers主要用作块设备的缓冲,用来存储文件系统的元数据和正在处理的页面信息。 - Cached用于文件内容的缓冲...

    Linux 内存泄露查找

    在进行Linux C语言编程时,内存管理一直是程序员关注的重点之一。特别是在动态内存分配场景下,如果不妥善处理,很容易出现内存泄露的问题。内存泄露不仅会消耗系统资源,还可能导致应用程序性能下降甚至崩溃。因此...

    linux内存管理实验报告

    Linux内存管理是操作系统的核心组成部分,它负责有效地分配和回收内存资源,确保系统高效稳定地运行。在本实验中,我们主要探讨了Linux虚拟内存管理的原理、动态内存操作函数的使用,以及如何检测主存使用情况。 ...

    嵌入式Linux内存与性能详解-史子旺

    《嵌入式Linux内存与性能详解》一书由史子旺撰写,专注于深入解析Linux内存管理机制以及如何在嵌入式环境中优化系统性能。Linux内存管理是操作系统的核心部分,理解和掌握这一领域对于开发者来说至关重要,尤其是在...

    Linux查看CPU和内存使用情况

    本文将详细介绍如何在Linux环境下使用`top`命令查看CPU使用率,以及如何利用`free`命令监控内存状态。 #### 使用`top`命令查看CPU使用情况 `top`命令是一个实时的系统监视工具,它能够提供关于系统任务执行情况的...

    嵌入式Linux内存与性能详解

    本资源《嵌入式Linux内存与性能详解》详细阐述了这些关键领域,为理解嵌入式系统的内在机制提供了深入见解。 1. **嵌入式系统概述**:嵌入式系统通常具有特定功能,它们在硬件限制下运行,如处理能力、内存大小和...

    【LINUX】关于动态内存分配的理解

    在Linux操作系统下,动态内存分配是软件开发中一项非常重要的技术,它允许程序在运行时分配内存空间,满足各种复杂场景下的存储需求。动态内存分配主要用来解决传统数组(静态数组)所存在的问题。传统数组的长度...

    linux下内存池实现

    同样,释放内存时也不再调用free,而是将内存块归还给内存池,供后续使用。这种做法避免了频繁的系统调用,降低了内存碎片,并且提高了内存分配和释放的效率。 在Linux环境下,内存池的实现通常涉及到以下几个关键...

    linux内存管理源代码导读

    Linux 内存管理源代码导读 Linux 内存管理是操作系统中最重要的组件之一,它负责管理计算机的内存资源,确保系统的正确运行。在 Linux 操作系统中,内存管理是通过页框管理、Slab 算法和动态存储器管理来实现的。 ...

    解析linux中的free

    - **标题含义**:“解析Linux中的free”这一标题主要指通过`free`命令来分析和理解Linux系统中内存的使用状态。 - **应用场景**:通常用于系统监控、故障排查或性能调优等场景中。 #### 描述解析:解释Linux中`free...

    查看linux系统内存使用情况.pdf

    ### 查看Linux系统内存使用情况 #### 一、Free 命令详解 在Linux操作系统中,`free` 命令是一个非常重要的工具,用于查看系统的内存使用情况。...希望本文能够帮助您更好地掌握Linux内存管理的相关知识。

    Linux内存管理--Linux物理内存三级架构.pdf

    Linux内存管理是操作系统管理计算机内存资源的重要组成部分,它涉及到内存的分配、回收以及效率优化等多方面的技术。Linux内存管理采用的是一种三级架构模型,包括内存节点(node)、内存区域(zone)和物理页框(page)。...

    用来查看linux内存使用情况的shell脚本.docx

    "Linux内存使用情况查看shell脚本" 在 Linux 系统中,对于内存使用情况的查看是一项重要的系统管理任务。通常,Linux 提供了多种查看内存使用情况的命令,例如 `free`、`top`、`htop` 等,但这些命令只能查看整体的...

    检测Linux内存使用情况的free命令的10个例子

     Linux “free”命令可以给出类Linux/Unix操作系统中物理内存和交换内存的总使用量、可用量及内核使用的缓冲区情况。  这篇文章提供一些各种参数选项的“free”命令,这些命令对于你更好地利用你的内存会有...

    嵌入式Linux内存使用与性能优化

    本文将深入探讨嵌入式Linux内存使用与性能优化的相关知识点,帮助开发者更好地理解和改进其程序性能。 首先,理解Linux内存模型是优化的基础。Linux内核采用虚拟内存管理,包括物理内存(RAM)和交换空间(Swap)。...

    易语言linux内存操作源码

    易语言Linux内存操作源码是针对Linux操作系统设计的编程代码,主要目的是为了在Linux环境下进行内存管理与操作。易语言是一种中国本土开发的、面向普通用户的编程语言,它以其简单的语法和直观的编程界面,降低了...

    linux源代码分析之内存管理

    该结构体包含了关于进程虚拟内存布局的关键信息,例如内存区域描述符、交换缓存等。 ##### 2.6 VM_AREA_STRUCT `vm_area_struct`是用于描述虚拟内存区域的数据结构。每个虚拟内存区域(如代码段、数据段等)都有...

    Linux内核内存管理

    Linux 采用了伙伴系统算法来管理内存,通过将内页按 2^0, 2^1, 2^2…2^10 大小进行分组,每次分配内存时,从相应大小的池中分配内存,然后再把余下的内存分配给它的下一级缓存池。 在 Linux 内核中,大内存分配的...

    一种Linux内存管理机制.pdf

    Linux内存管理机制包括多种层次和策略,旨在高效地分配和回收内存,避免内存耗尽和系统崩溃。本文将深入探讨Linux内存管理模型、伙伴系统、Slab分配流程以及内存回收策略。 首先,Linux内存管理模型将物理内存划分...

Global site tag (gtag.js) - Google Analytics