排序
Linux内存碎片整理
我们知道物理内存是以页为单位进行管理的,每个内存页大小默认是4K(大页除外)。 申请物理内存时,一般都是按顺序分配的,但释放内存的行为是随机的。 随着系统运行时间变长后,将会出现以下情...
如何判断操作系统有没有在内存替换?
我们可以使用sar -B 1命令来观察: 图中红色框住的就是后台内存回收和直接内存回收的指标,它们分别表示: pgscank/s : kswapd(后台回收线程) 每秒扫描的 page 个数。 pgscand/s: 应用程序在内...
怎么判断服务器内存是否够用?
使用 free 命令查看内存使用情况 使用 free -m 命令可以查看内存的总体使用情况,输出结果会大致如下: total used free shared buff/cache available Mem: 7982 1746 2523 155 3703 5818 Swap:...
操作系统内存不足的时候会发生什么?
应用程序通过 malloc 函数申请内存的时候,实际上申请的是虚拟内存,此时并不会分配物理内存。 当应用程序读写了这块虚拟内存,CPU就会去访问这个虚拟内存, 这时会发现这个虚拟内存没有映射到...
JVM内存模型
根据 JVM8 规范,JVM 运行时内存共分为虚拟机栈、堆、元空间、程序计数器、本地方法栈五个部分。 还有一部分内存叫直接内存,属于操作系统的本地内存,也是可以直接操作的。 JVM的内存结构主要...
为什么数组查询的复杂度为O(1)?
数组必须要内存中一块连续的空间,并且数组中必须存放相同的数据类型。 比如我们创建一个长度为10,数据类型为整型的数组,在内存中的地址是从1000开始,那么它在内存中的存储格式如下。 由于每...
JVM的内存区域和作用
根据 JVM8 规范,JVM 运行时内存共分为虚拟机栈、堆、元空间、程序计数器、本地方法栈五个部分。 还有一部分内存叫直接内存,属于操作系统的本地内存,也是可以直接操作的。 JVM的内存结构主要...