内存--模拟内存打满

二龙2年前技术文章1672

1 tmpfs介绍

tmpfs是一种虚拟内存文件系统,正如这个定义它最大的特点就是它的存储空间在VM里面
    VM是由linux内核里面的vm子系统管理的东西,现在大多数操作系统都采用了虚拟内存管理机制
    VM介绍
    1.linux下面VM(virtual memory)的大小由RM(Real Memory)和swap组成
    2.RM的大小就是物理内存的大小,而Swap的大小是由你自己决定的。Swap是通过硬盘虚拟出来的内存空间,因此它的读写速度相对RM(Real Memory)要慢许多,我们为什么需要Swap呢?
    当一个进程申请一定数量的内存时,如内核的vm子系统发现没有足够的RM时,就会把RM里面的一些不常用的数据交换到Swap里面,如果需要重新使用这些数据再把它们从Swap交换到RM里面。
    如果你有足够大的物理内存,根本不需要划分Swap分区。

    通过上面的说明,你该知道tmpfs使用的存储空间VM是什么了吧? 前面说过VM由RM+Swap两部分组成,因此tmpfs最大的存储空间可达(The size of RM + The size ofSwap)。
    但是对于tmpfs本身而言,它并不知道自己使用的空间是RM还是Swap,这一切都是由内核的vm子系统管理的

2 tmpfs使用

mount -t tmpfs -o size=20m tmpfs /mnt/tmp

    上面这条命令分配了上限为20m的VM到/mnt/tmp目录下,用df命令查看一下,确实/mnt/tmp挂载点显示的大小是20m,但是tmpfs一个优点就是它的大小是随着实际存储的容量而变化的,
    换句话说,假如/mnt/tmp目录下什么也没有,tmpfs并不占用VM。上面的参数20m只是告诉内核这个挂载点最大可用的VM为20m,如果不加上这个参数,tmpfs默认的大小是RM的一半,
    假如你的物理内存是128M,那么tmpfs默认的大小就是64M

缺点:
由于它的数据是在VM里面,因此断电或者你卸载它之后,数据就会立即丢失
优点及用途
由于tmpfs使用的是VM,因此它比硬盘的速度肯定要快,因此我们可以利用这个优点使用它来提升机器的性能。

3 模拟内存占用

占用1GB内存1个小时. 注意需要可以mount的权限

#!/bin/bash
mkdir /tmp/memory
mount -t tmpfs -o size=1024M tmpfs /tmp/memory
dd if=/dev/zero of=/tmp/memory/block
sleep 3600
rm /tmp/memory/block
umount /tmp/memory
rmdir /tmp/memory

相关文章

Prometheus+Consul服务自动发现监控

Prometheus+Consul服务自动发现监控

为什么使用consulprometheus作为新一代的监控利器,有很多优点,部署起来也十分方便。部署prometheus后自然会需要使用prometheus去监控物理机或者虚拟机的资源,这里就需要使用...

Flume使用案例之Flume与Flume之间数据传递(单Flume多Channel、Sink)

目标:使用flume1监控文件变动,flume1将变动内容传递给flume-2,flume-2负责存储到HDFS。同时flume1将变动内容传递给flume-3,flume-3负责输出到local分步...

磁盘分盘脚本分享

磁盘分区脚本名称:mg_fdisk.sh#!/bin/bashif [ "$#" -ne 1 ]; then  echo "请传入磁盘参数"  exit 1fidisk=$1# 检查磁盘是否存在if...

Apache hive 对接达梦数据库

Apache hive 对接达梦数据库

1、背景由于国产化需求,客户需要使用dm数据库作为hive的元数据库。需要进行对应适配2、配置本次使用的环境hive 3.1.3 hadoop 3.2.4 ranger 2.3.0 Spark ...

解决grafana服务无法停止问题

解决grafana服务无法停止问题

背景:grafana服务无法停止,无论使用什么方式,哪怕使用kill -9 ,杀掉进程都会重新启动解决办法:1、将grafana加到系统服务里去systemctl enable grafana.ser...

MySQL排障实战(一)—— 连接异常中断

MySQL排障实战(一)—— 连接异常中断

问题背景数栈数据质量模块,接入客户的数据源后,一执行就报错。报错信息:{"logInfo": {{"jobid":"1a4ebbbd&quo...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。