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

Linux内存管理神器:smem工具

今天给大家分享一款 Linux 系统里的内存管理神器:smem 。 smem 是Linux系统上的一款可以生成多种内存耗用报告的命令行工具。...与现有工具不一样的是 smem 可以报告 PSS【Proportional Set Size(按比例占用大小)】,这是一种更有意义的指标。可以衡量虚拟内存系统的库和应用程序所占用的内存数量。...由于大部分的物理内存通常在多个应用程序之间共享,名为驻留集大小(RSS)的这个标准的内存耗用衡量指标会大大高估内存耗用情况。...安装 smem 工具 如果你使用的是 Fedora 19 以上系统, smem 默认在存储库中,因此你可以使用 yum 来安装它: $ sudo yum install smem 对于 Ubuntu...sudo apt-get install smem 如果无法正常安装的话,可以下载它的源码直接安装,地址为:https://www.selenic.com/smem/download/ 2. smem 工具常见用法

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

Linux内存检测工具Valgrind

内存检测工具Valgrind Valgrind是运行在Linux上的一套基于仿真技术的程序调试和分析工具,作者是获得过Google-O’Reilly开源大奖的Julian Seward,它包含一个内核...——一个软件合成的CPU,和一系列的小工具,每个工具都可以完成一项任务——调试,分析,测试等。...内存检测,使用它的Memcheck工具。...等分配的动态内存范围 读/写不适当的栈中内存内存泄漏,指向一块内存的指针丢失 不正确的malloc/free或new/delete匹配 memcpy()相关函数中的dst和src指针重叠问题 ---...lost —— 确定的内存泄露,已经不能够访问这块内存 Indirectly lost —— 指向该内存的指针位于内存泄露处 Possibly lost —— 可能的内存泄露,仍然存在某个指针能够访问某块内存

2.8K10

DataGuard开启延时应用的测试

DataGuard开启延时应用的测试 实验环境:RHEL 6.5 + Oracle 11.2.0.4 GI、DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes)...1.体验DG延时应用的效果 2.总结:开启、关闭延时应用 3.测试表脚本 1.体验DG延时应用的效果 主库 log_archive_dest_N 参数当前设定值: log_archive_dest_2...15/thread_1_seq_287.563.952096745 Media Recovery Waiting for thread 2 sequence 235 注:我建立一个每秒都会插入一条数据的测试表...2.总结:开启、关闭延时应用 开启延时应用方法: 主库直接动态修改参数log_archive_dest_N,加入DELAY=(单位是分钟)的参数,然后备库确保不加USING CURRENT LOGFILE...3.测试表脚本 每隔1s插入一条数据的测试表 --业务用户jingyu下创建序列和测试表test conn jingyu/jingyu create sequence jingyu.s1; drop table

1.1K20

Linux内核内存检测工具KASAN

KASAN 是 Kernel Address Sanitizer 的缩写,它是一个动态检测内存错误的工具,主要功能是检查内存越界访问和使用已释放的内存等问题。...KASAN 集成在 Linux 内核中,随 Linux 内核代码一起发布,并由内核社区维护和发展。本文简要介绍 KASAN 的原理及使用方法。 一、KASAN的原理和使用方法 1....由于1/8的内存用于shadow memory,可用内存会减少1/8,例如8GB的内存,打开KASAN后,MemTotal约为6.72GB。...KASAN原理概述 KASAN利用额外的内存标记可用内存的状态,这部分额外的内存被称作shadow memory(影子区),KASAN将1/8的内存用作shadow memory。...二、总结 KASAN通过建立影子内存来管理内存访问的合法性,可以有效检测内存越界等问题,但无法发现因逻辑问题导致的合法内存的内容改写问题。

7.1K21

实际测试内存在顺序IO和随机IO时的访问延时差异

那么我们今天来用代码的方式来实践一下,看看在我们的项目工程中,内存访问的在不同的访问场景下延时究竟是个什么表现。...二是循环步长,步长越小,顺序性越好,同样也会增加缓存命中率,平均延时也低。我们在测试的过程中采取的办法是,固定其中一个变量,然后动态调节另外一个变量来查看效果。...另外说明一下,这个代码测试中考虑的几个额外的开销的处理情况。 1.加法开销:由于加法指令简单,一个CPU周期就可完成,CPU周期比内存周期要快,所以暂且忽略它。...内存IO发生较少,大部分都是高效的缓存IO,所以我这里看到的内存延时只有1ns左右,这其实只是虚拟地址转换+L1访问的延时。...但当增加到16M、64M以后,穿透到内存的IO情况会变多,穿透过去以后极大可能行地址也会变。在64M的数据集中,内存延时竟然下降到了38.4ns,和我们估算的也基本一致。

1.1K10

Linux下检测内存泄露的工具 valgrind

Valgrind是运行在Linux上一套基于仿真技术的程序调试和分析工具,它包含一个内核,一个软件合成的CPU,和一系列的小工具。 每个工具都可以完成一项任务—调试分析或测试等。...Valgrind可以检测内存泄漏和内存违例。还可以分析cache的使用,灵活又强大,值得入手。 一、Valgrind概述 它主要有下列几个工具。...3)读/写超出malloc分配的内存块 4)读/写不适当的栈中的内存块 5)内存泄漏,指向一块内存的指针永远丢失 6)不正确的malloc/free或new/delete匹配 7)memcpy相关函数中的...Lackey是小型工具,很少用到;Nulgrind只是为开发者展示如何创建一个工具。 二、使用Valgrind 先安装,我的服务器上已经安装好了,不知道是不是所有的linux都自带这个东西。 ?...下面介绍一些其他用法(我也是照着参考学的,具体如何用到实际项目中还需要自己领悟): 测试下面时,main函数中的i我改为了没有赋值: 1.一旦出现错误,valgrind会自动启动调试器(一般是gdb):

5.8K100

Linux 性能基准测试工具测试方法

,给我们的经验教训,就是上线前,基准测试的重要性,这篇文章着重介绍一下「Linux 性能基准测试工具测试方法」 还是老规矩,先请性能领域的大师布伦丹·格雷格(Brendan Gregg)登场 linux_benchmarking_tools...整理测试指标如下图 测试环境说明:CentOS7, 4c8g CPU Super_Pi 是一种用于计算圆周率π的程序,通常用于测试计算机性能和稳定性。...=4 --events=10000 --time=0 run # 结果分析,看 total time 即可,时间越短,性能越好 内存 内存带宽(stream) Stream测试内存测试中业界公认的内存带宽性能测试基准工具.../stream_c.exe # 结果分析,看 Copy、Scale、Add、Triad,数值越大,性能越好 磁盘 IO ⚠️ 测试时请准备裸的数据盘,测试完成后请重新格式化磁盘 测试方法和结果分析和文件...ip> -l 100 -- -m 1500 -R 1 & # 监控数据 sar -n DEV 5 # 结果分析,看 rxkB/s,txkB/s 值即可,值越大,性能越好 Nginx # 安装 ab 工具

11310

linux 磁盘IO测试工具:fio (同时简要介绍dd工具测试)

FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证。磁盘IO是检查磁盘性能的重要指标,可以按照负载情况分成照顺序读写,随机读写两大类。...目前主流的第三方IO测试工具有fio、iometer 和 Orion,这三种工具各有千秋,在linux 下也可以使用dd 进行简单的磁盘(文件系统)测试(文末补充)。...fio在Linux系统下使用比较方便,iometer在window系统下使用比较方便,Orion是oracle的IO测试软件,可在没有安装oracle数据库的情况下模拟oracle数据库场景的读写。...此外 lockmem=1g 只使用1g内存进行测试。 zero_buffers 用0初始化系统buffer。 nrfiles=8 每个进程生成文件的数量。 磁盘读写常用测试点: 1....更多关于磁盘顺序io 部分,可以参考 dd 工具的使用;https://www.cnblogs.com/xuyaowen/p/dd.html FIO 图形界面工具:fio性能测试工具新添图形前端gfio

5K10

Linux下的TCP测试工具

如何在 Linux 上安装 tcpping 测量到远程主机的网络延迟的一种常用方法是使用ping应用程序。该ping工具依赖 ICMP ECHO 请求和回复数据包来测量远程主机的往返延迟。...在这种情况下,你将需要依赖使用 TCP/UDP 数据包的第 3 层测量工具,因为这些第 3 层数据包更有可能绕过常见的防火墙规则。 一种这样的第 3 层测量工具是tcpping....在 Linux 上安装tcpping tcpping作为 shell 脚本实现,该脚本响应外部工具来执行和报告 RTT 测量。因此,为了安装tcpping,你首先需要先安装这些先决条件。...安装这些必备工具后,最后继续tcpping从官方源下载。...0.5秒(1秒=1000毫秒),单位 秒 tcping -w 0.5 1.1.1.1 80 -d :在每行返回信息中加入时间信息 tcping -d 1.1.1.1 80 -s : 当 TCPing 测试成功后

5.2K20

linux 压力测试工具之ab

简介 Apache Benchmark(简称ab) 是Apache安装包中自带的压力测试工具 ,简单易用 在此提供 ab 在 centOS7 下的安装和使用方法 注:个人发现,之前安装的centos6.5...(供测试的URL路径) Document Length: 3721 bytes (供测试的URL返回的文档大小) Concurrency Level: 1000 (并发数) Time...://192.168.1.106/index1.html 简单解释:并发访问量过大 服务器拒绝访问,理论上通过系统配置,可以有更好的承受能力 ⑤.注意事项 测试机与被测试机要分开 不要对线上的服务器做压力测试...观察测试工具ab所在机器,以及被测试的前端机的CPU、内存、网络等都不超过最高限度的75% ab请加-k参考启用http1.1的keepalive功能 核心原理 ab是如何分配并发和请求数的呢?...在test函数中,先给连接数和请求数分配内存,组http报文头、组http请求报文默认使用GET方法(最大2048个字节) 进入for循环 for (i = 0; i < concurrency; i+

5.6K20

Linux内存检测工具asan使用介绍

,采用该选项支持内存出错之后程序继续运行,需要叠加设置ASAN_OPTIONS=halt_on_error=0才会生效;若未设置此选项,则内存出错即报错退出, ASAN_CFLAGS += -fsanitize...halt_on_error=0:检测内存错误后继续运行 detect_leaks=1:使能内存泄露检测 malloc_context_size=15:内存错误发生时,显示的调用栈层数为15 log_path...=/home/xos/asan.log:内存检查问题日志存放文件路径 suppressions=$SUPP_FILE:屏蔽打印某些内存错误 export ASAN_OPTIONS=halt_on_error...,常用运行选项有: exitcode=0:设置内存泄露退出码为0,默认情况内存泄露退出码0x16 use_unaligned=4:4字节对齐 export LSAN_OPTIONS=exitcode=0...其次,平台软件通常都会内部实现一套内存操作接口,为使用asan工具,需要替换成glibc提供的接口。此时,可以通过LD_PRELOAD环境变量解决这类问题。

6.7K20

Linux - Linux内存管理

移除交换空间 ---- 概念 内存管理是Linux系统重要的组成部分。...为了解决内存紧缺的问题,Linux引入了虚拟内存的概念。为了解决快速存取,引入了缓存机制、交换机制等。...当需要用到原始内容时,这些信息会被重新从交换空间读入物理内存Linux内存管理采取的是分页存取机制。...要深入了解Linux内存运行机制,需要知道下面提到的几个方面。 首先,Linux系统会不时地进行页面交换操作,以保持尽可能多的空闲物理内存。...其次,Linux进行页面交换是有条件的,不是所有页面在不用时都交换到虚拟内存中,Linux内核根据“最近最经常使用”算法,仅仅将一些不经常使用的页面文件交换到虚拟内存中。

52.1K41

Linux系统内存监控、性能诊断工具vmstat命令详解

vmstat 命令是最常见的 Linux/Unix 监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的 CPU 使用率,内存使用,虚拟内存交换情况,IO 读写情况。...这个命令是我查看 Linux/Unix 最喜爱的命令,一个是 Linux/Unix 都支持,二是相比 top,我可以看到整个机器的 CPU,内存,IO 的使用情况,而不是单单看到各个进程的 CPU 使用率和内存使用率...一般 vmstat 工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如: root@ubuntu:~# vmstat 2 1 procs -----...(2)Linux 内存监控内存memoy:     swpd:现时可用的交换内存(单位KB)。     free:空闲的内存(单位KB)。     ...例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在 apache 和 nginx 这种 web 服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试

2.6K50

小白博客 CryKeX:Linux内存加密密钥提取工具

Unix-理论上说,该工具可在任何基于Unix的操作系统平台上正常工作。 2. BASH-支持所有脚本的运行。 3....需要适当的用户权限以及内存授权 工作机制 基本上说,该工具会寻找某些类似密钥的数据,并通过分析其内存架构(C数据类型)来判断目标数据(密钥)的有效性。...【参考文献一】【 参考文献二】 CryKeX可以导出目标进程的实时内存数据,然后从中寻找出可能存在的密钥信息,整个过程中内存映射并不会发生改变。...工具脚本不仅能够向正在运行的进程中注入命令,而且还可以封装新的进程(通过单独启动进程后再进行注入来实现)。这样一来,该工具几乎就可以从目标系统中的任意进程/代码中提取密钥了。...Linux磁盘加密(LUKS)使用了反取证技术来缓解这类安全问题,但是我们仍然有可能从一段完整的内存中提取出密钥。

1.7K80
领券