• redhat 关于内存的一些总结


    一、如何查看内存,精确的查看内存

    可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
     (1)top
      top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
      可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
      $ top -u oracle
    内容解释:
      PID:进程的ID
      USER:进程所有者
      PR:进程的优先级别,越小越优先被执行
      NInice:值
      VIRT:进程占用的虚拟内存
      RES:进程占用的物理内存
      SHR:进程使用的共享内存
      S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
      %CPU:进程占用CPU的使用率
      %MEM:进程使用的物理内存和总内存的百分比
      TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
      COMMAND:进程启动命令名称
      常用的命令:
      P:按%CPU使用率排行
      T:按MITE+排行
      M:按%MEM排行
    (2)pmap
      可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:
      $ pmap -d 14596
     (3)ps
      如下例所示:
      $ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' 其中rsz是是实际内存
      $ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle | sort -nrk5
      其中rsz为实际内存,上例实现按内存排序,由大到小

    用ps -ef 发现该process的PID(假定为1234), 然后去查/proc/1234/status

    如果要详细了解系统整体内存的情况,需要了解/proc/meminfo

    $ cat /proc/meminfo 
    MemTotal:       15729052 kB
    MemFree:         1828388 kB
    MemAvailable:   12821372 kB
    Buffers:             712 kB
    Cached:         11627816 kB
    SwapCached:       118488 kB
    Active:          6834364 kB
    Inactive:        6244296 kB
    Active(anon):    1464156 kB
    Inactive(anon):   897084 kB
    Active(file):    5370208 kB
    Inactive(file):  5347212 kB
    Unevictable:       74620 kB
    Mlocked:           74620 kB
    SwapTotal:       2097148 kB
    SwapFree:        1538872 kB
    Dirty:              1500 kB
    Writeback:             0 kB
    AnonPages:       1428456 kB
    Mapped:           152644 kB
    Shmem:            908940 kB
    Slab:             580448 kB
    SReclaimable:     528968 kB
    SUnreclaim:        51480 kB
    KernelStack:       11776 kB
    PageTables:        15828 kB
    NFS_Unstable:          0 kB
    Bounce:                0 kB
    WritebackTmp:          0 kB
    CommitLimit:     9961672 kB
    Committed_AS:    7472196 kB
    VmallocTotal:   34359738367 kB
    VmallocUsed:       67692 kB
    VmallocChunk:   34359645184 kB
    HardwareCorrupted:     0 kB
    AnonHugePages:   1095680 kB
    HugePages_Total:       0
    HugePages_Free:        0
    HugePages_Rsvd:        0
    HugePages_Surp:        0
    Hugepagesize:       2048 kB
    DirectMap4k:      255996 kB
    DirectMap2M:    16513024 kB

    详解如下:

    MemTotal: 所有可用RAM大小(即物理内存减去一些预留位和内核的二进制代码大小)
     
    MemFree: LowFree与HighFree的总和,被系统留着未使用的内存
     
    Buffers: 用来给文件做缓冲大小
     
    Cached: 被高速缓冲存储器(cache memory)用的内存的大小(等于 diskcache minus SwapCache ).
     
    SwapCached:被高速缓冲存储器(cache memory)用的交换空间的大小,已经被交换出来的内存,但仍然被存放在swapfile                    中。用来在需要的时候很快的被替换而不需要再次打开I/O端口。
     
    Active: 在活跃使用中的缓冲或高速缓冲存储器页面文件的大小,除非非常必要否则不会被移作他用.
     
    Inactive: 在不经常使用中的缓冲或高速缓冲存储器页面文件的大小,可能被用于其他途径.
     
    HighTotal:
     
    HighFree: 该区域不是直接映射到内核空间。内核必须使用不同的手法使用该段内存。
     
    LowTotal:
     
    LowFree: 低位可以达到高位内存一样的作用,而且它还能够被内核用来记录一些自己的数据结构。Among many
     
         other things, it is where everything from the Slab is allocated. Bad things happen when you’re out      of lowmem.
     
    SwapTotal: 交换空间的总大小
     
    SwapFree: 未被使用交换空间的大小
     
    Dirty: 等待被写回到磁盘的内存大小。
     
    Writeback: 正在被写回到磁盘的内存大小。
     
    AnonPages:未映射页的内存大小
     
    Mapped: 设备和文件等映射的大小。
     
    Slab: 内核数据结构缓存的大小,可以减少申请和释放内存带来的消耗。
     
    SReclaimable:可收回Slab的大小
     
    SUnreclaim:不可收回Slab的大小(SUnreclaim+SReclaimable=Slab)
     
    PageTables:管理内存分页页面的索引表的大小。
     
    NFS_Unstable:不稳定页表的大小
     
    VmallocTotal: 可以vmalloc虚拟内存大小
     
    VmallocUsed: 已经被使用的虚拟内存大小。
     
    VmallocChunk: largest contigious block of vmalloc area which is free
  • 相关阅读:
    【转】嵌入式软件:C语言编码规范
    【转】如何建立编码规范?
    RAS使用拨号网络拨号的类
    UDP 通讯代码
    【转】heap与stack的区别
    关于textarea在safari chrome下可拖动大小的问题
    Java网络编程入门
    诺基亚发布了它的第一台android手机,x和x+机型
    Spring学习笔记之入门(二)
    Spring学习笔记之入门(一)
  • 原文地址:https://www.cnblogs.com/augusite/p/11797190.html
Copyright © 2020-2023  润新知