`
smile029309
  • 浏览: 2677 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

linux --free

阅读更多

free 命令查看

             total       used       free     shared    buffers     cached

Mem:       8163928    4958632    3205296          0     406392    1943600

-/+ buffers/cache:    2608640    5555288

Swap:      2104504      28428    2076076

Shared:多个进程共享的内存总额。
Buffers/cached:磁盘缓存的大小。

第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别:

第二行的used和free是从OS角度来看,因为从对于OS来说,buffers&cached都属于被使用的

第三行的used和free是从应用程序角度来看,对应用程序来说,buffer和cached是用来提高文件读取性能的,当应用程序需要使用时,buffer和cache是可以被快速回收使用的

 

Linux还提供了一些工具帮助我们查看系统信息

/proc/meminfo 机器的内存使用信息
/proc/pid/maps pid为进程号,显示当前进程所占用的虚拟地址。
/proc/pid/statm 进程所占用的内存

 

查看/proc/kcore文件的大小(内存镜像):
[root@scs-2 tmp]# ll -h /proc/kcore 
-r-------- 1 root root 4.1G Jun 12 12:04 /proc/kcore

 

添加内容:

通过free我们看到cache占用特别多,我们知道系统会自己进行释放,但是能不能手工释放呢?

/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段,我们也可以通过修改/proc文件来是内核做出调整,我们通过通过调整/proc/sys/vm/drop_caches来释放内存

/proc/sys/vm/drop_caches的默认值是0,

1、手动执行sync命令(sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件)

2、echo 3 > /proc/sys/vm/drop_caches 设置为3

3、使用free查看内存使用情况

分享到:
评论

相关推荐

    aarch64-linux-android-4.9(windows-64位)

    标题 "aarch64-linux-android-4.9(windows-64位)" 指的是一个特定版本的Android NDK工具链,适用于64位Windows操作系统,用于编译针对AArch64架构(也称为ARM64)的Linux Android应用程序。NDK(Native ...

    linux-firmware

    《Linux固件:深入解析linux-firmware-20210208》 Linux操作系统以其开源、自由、稳定的特点,赢得了全球众多开发者和用户的喜爱。在Linux系统中,固件(firmware)扮演着至关重要的角色,它连接了硬件设备与操作...

    Linux VNC-Server-6.2.0-Linux-x64.rpm

    Linux VNC-Server-6.2.0-Linux-x64.rpm下载,64位版本

    jdk-8u241-linux-x64.rpm

    jdk-8u241-linux-x64.rpm安装包

    arm-mumu-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

    It includes the GNU Compiler (GCC) and is available free of charge directly from Arm for embedded software development on Windows, Linux and Mac OS X operating systems. Follow the links on this page ...

    arm-linux-gcc的安装方法

    ### ARM-Linux-GCC的安装方法 #### 一、引言 在嵌入式系统开发过程中,ARM架构因其低功耗、高性能等特性被广泛应用。为了能够在主机(通常是x86架构的PC)上编译出针对ARM架构目标平台可执行的程序,就需要构建一个...

    LINUX--a free unix-386 kernel.pdf

    ### Linux——一个免费的 Unix-386 内核 #### 概述 Linux 是一个开源的操作系统内核,由 Linus Torvalds 在 1991 年发起,并迅速吸引了全球程序员的关注与贡献。它最初是为 Intel x86 架构设计的,但很快就扩展到...

    util-linux-2.24.tar.gz

    - **其他工具**:`swapon`和`free`管理内存交换,`findmnt`显示挂载信息,`nsenter`允许进入另一个进程的命名空间。 3. **util-linux-2.24版本** - 在util-linux 2.24版本中,可能会包括一些新的特性、改进和错误...

    官网qt-x11-free-3.3.8b.tar.gz下载

    QT-x11-free-3.3.8b.tar.gz 是一个历史版本的Qt库,用于在Linux X11环境下开发图形用户界面应用。Qt是一个跨平台的C++应用程序开发框架,由Qt公司(原名Trolltech)开发,广泛应用于桌面、移动和嵌入式系统。这个...

    embedded-linux-slides.pdf

    文档的作者Bootlin是一家专注于嵌入式Linux和Linux内核的工程公司,公司成立于2004年,原名Free Electrons,直到2018年2月才更名。Bootlin在全球有三个地点:位于法国的Orange、Toulouse和Lyon。公司拥有12名员工,...

    virtuoso-opensource.x86_64-generic_glibc25-linux-gnu.tar.gz

    标题中的“virtuoso-opensource.x86_64-generic_glibc25-linux-gnu.tar.gz”表明这是一个针对x86_64架构,基于GLIBC 2.5的Linux系统的版本。这个压缩包包含了Virtuoso OpenSource的二进制文件和其他必要的组件。 在...

    jdk-6u45-linux-i586

    Downloading these releases requires an oracle.com account. If you don't have an oracle.com account you can use the links on the top of this page to learn more about it and register for one for free. ...

    linux-api-2.6.22.rar_linux-api-2.6.22_linux-api-2.6.22.chm

    2. **内存管理**:malloc()、free()、brk()等,用于动态分配和释放内存,以及调整数据段大小。 3. **文件操作**:open()、read()、write()、close()等,用于读写文件和管理文件描述符。 4. **信号处理**:signal()、...

    qca7000-linux-mainline.zip

    SPI protocol driver for Qualcomm Atheros QCA7000 serial-to-... This driver has been merged in the mainline kernel since Linux 3.18 ( http://lxr.free-electrons.com/source/drivers/net/ethernet/qualcomm ).

    Linux命令搜索工具linux-command.zip

    adduser、chfn、chsh、date、exit、finger、free、fwhois、gitps、groupdel、groupmod、halt、id、kill、last、lastb、login、logname、logout、logrotate、newgrp、nice、procinfo、ps、pstree、reboot、renice、...

    Control-FREEC官方中文手册

    此外,用户还需要熟悉Linux操作系统的使用和命令行操作,因为Control-FREEC在安装和运行时需要使用到Linux命令。对于没有生物学背景的用户来说,Control-FREEC的使用手册以及HOWTOs可以提供详细的指导,帮助用户从零...

    linux-c-api-ref.zip_linux api_linux-c-api-ref

    5. **内存管理**:`malloc()`和`free()`负责动态内存分配和释放,`calloc()`分配并初始化内存,`realloc()`调整已分配内存的大小。`mmap()`和`munmap()`提供基于映射的内存管理,常用于大块内存的分配。 6. **线程...

    linux-1.0.0源码

    它支持动态内存分配,如malloc和free函数,以及内存分段和分页机制,防止了内存碎片。 4. **设备驱动**:源码中包含了对当时常见硬件设备的驱动程序,如IDE硬盘、串口、并口、键盘、鼠标等。驱动程序通过中断处理...

    qtopia-free-src-2.2.0.tar.gz

    总之,"qtopia-free-src-2.2.0.tar.gz"是嵌入式Linux开发者的宝贵资料,通过研究这个源码包,开发者可以提升自己的技能,更好地理解和利用Qt库,为各种嵌入式设备开发出高效、用户友好的应用程序。

    编译原生态qtopia-free-src-2.2.0.tar.gz的错误总结

    ### 编译原生态qtopia-free-2.2.0.tar.gz的错误总结 本文档旨在记录在移植原生态的Qtopia 2.2.0过程中遇到的各种编译错误及其解决方案。这对于那些希望在自己的项目中使用Qtopia 2.2.0的开发者来说是一份宝贵的参考...

Global site tag (gtag.js) - Google Analytics