首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux Used内存到底哪里去了?

即使是这样我们还是要继续追查下used的空间(7637M)到底用到哪里去了? 这里首先我们来介绍下nmon这个工具,它对内存的使用显示比较直观。...这个数字从哪里出来的呢?通过strace对top和nmon的追踪和结合源码,我们确定这个值是从/proc/PID/statm的第二个字段读取出来的. 那这个字段什么意思呢?...2.6) data data + stack dt dirty pages (unused in Linux 2.6) resident set size 也就是每个进程用了具体的多少页的内存。...由于linux系统采用的是虚拟内存,进程的代码,库,堆和栈使用的内存都会消耗内存,但是申请出来的内存,只要没真正touch过,是不算的,因为没有真正为之分配物理页面。.../RSS.sh 7024692KB 从数字来看,我们的进程使用了大概7024M内存,距离7637M还有几百M内存哪里去了?哪里去了?猫吃掉了? 我们再回头来仔细看下nmon的内存统计表。

3.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux内存被吃掉了,它去哪里了?

    而当我们使用free命令查看Linux系统内存使用情况时,会发现内存使用一直处于较高的水平,即使此时系统并没有运行多少软件。...这正是Windows和Linux在内存管理上的区别,乍一看,Linux系统吃掉我们的内存(Linux ate my ram),但其实这也正是其内存管理的特点。 ?...即buffer用于存放要输出到磁盘的数据,而cache是从磁盘读出存放到内存中待今后使用的数据。它们的引入均是为了提供IO的性能。...因此,可以看出,buffers/cached真是百益而无一害,真正的坏处可能让用户产生一种错觉——Linux耗内存!...其实不然,Linux并没有吃掉你的内存,只要还未使用到交换分区,你的内存所剩无几时,你应该感到庆幸,因为Linux缓存了大量的数据,也许下一次你就从中受益。

    1.5K30

    精致全景图 | linux内核输出的日志去哪里

    熟悉linux内核,或者看过linux内核源码的同学就会知道,在内核中,有一个类似于c语言的输出函数,叫做printk,使用它,我们可以打印各种我们想要的信息,比如内核当前的运行状态,又或者是我们自己的调试日志等...那当我们调用printk函数后,这些输出的信息到哪里去了呢?我们又如何在linux下的用户态,查看这些信息呢?...printk函数会将每次输出的日志,放到内核为其专门分配的名为ring buffer的一个槽位里。...printk在将日志放到ring buffer后,会再调用系统console的相关方法,将还未输出到系统控制台的消息,继续输出到控制台,这个后面会详细说,这里就暂不赘述。...但这种方式和前面讲的三种方式都不一样,它是完全被动的,是内核在调用printk函数,将日志信息放到ring buffer后,再去通知系统控制台,告知其可以输出这些日志。

    2.9K30

    【在Linux世界中追寻伟大的One Piece】Linux是从哪里来的?又是怎么发展的?基本指令你知道哪些?

    1 -> Linux背景 1.1 -> Linux发展史 要说Linux的发展史,还得从UNIX说起。...严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。...国内如中标麒麟Linux、红旗 Linux、深度Linux等系统软件厂商都推出的Linux桌面操作系统,目前已经在政府、企业、OEM等领域得到了广泛应用。...Linux在移动嵌入式领域的发展 Linux的低成本、强大的定制功能以及良好的移植性能,使得Linux在嵌入式系统方面也得到广泛应用,目前Linux以广泛应用于手机、平板电脑、路由器、电视和电子游戏机等领域...Linux来实现,而这一切均归功与Linux与开源的力量。

    8810

    以最简单方式学习Linux

    我们需要一个起点, 这个起点就叫根目录,用“/”来表示,然后我们需要启动Linux,那么我们就会把所有核心的启动文件(包括Linux核心本身)都放到一个“/boot"目录下。...要点: 1、/usr上面一般都是只读文件,数据文件和配置文件不放在上面(放到哪里,后面会讲) 2,没有“/usr",linux系统也能正常运行 2、/usr可以被多台电脑共享(这里体现Linux系统的网络性...) 由于/usr只放只读文件,那么配置文件和数据文件放哪里呢?...例如 /var/mysql就是用来存放mysql的log 问题6:用户自己产生的数据放到哪里? 当我们运行程序后,会产生很多自己的成果,这些成果放哪里呢?...这里就出现了一个“/home"目录,不过你不能直接放到“/home"目录下, 因为Linux是个多用户操作系统, 所以系统会有一个以用户的名字命名的目录。

    1K50

    以最简单方式学习Linux

    我们需要一个起点, 这个起点就叫根目录,用“/”来表示,然后我们需要启动Linux,那么我们就会把所有核心的启动文件(包括Linux核心本身)都放到一个“/boot"目录下。...要点: 1、/usr上面一般都是只读文件,数据文件和配置文件不放在上面(放到哪里,后面会讲) 2,没有“/usr",linux系统也能正常运行 2、/usr可以被多台电脑共享(这里体现Linux系统的网络性...) 由于/usr只放只读文件,那么配置文件和数据文件放哪里呢?...例如 /var/mysql就是用来存放mysql的log 问题6:用户自己产生的数据放到哪里? 当我们运行程序后,会产生很多自己的成果,这些成果放哪里呢?...这里就出现了一个“/home"目录,不过你不能直接放到“/home"目录下, 因为Linux是个多用户操作系统, 所以系统会有一个以用户的名字命名的目录。

    98930
    领券