AIX 进程内存随着循环中的 malloc 释放调用而增加

2024-01-07

我在 AIX 6.1 上运行此代码

while(true)
{
    int a = rand(); //generate a random integer value
    void* test = malloc(a*a); //allocate large chunk of memory block
    usleep(3000000); //sleep for 3 sec 
    free(test); // release memory block
}

使用 MALLOCTYPE=buckets 我的观察是 进程的驻留集大小(实内存)和数据段大小不断增加。这是通过命令 ps v 检查的PIDtopas 中显示的进程 pg sp 值正在缓慢增加。

有人可以证明这种行为的合理性吗?


在空闲时,内存不会释放给 AIX 操作系统,而是保留以供重用。使用 MALLOCOPTIONS=disclaim,free 将内存释放回 AIX 操作系统,并且内存利用率不会增加。但使用 MALLOCOPTIONS=disclaim 时,CPU 利用率几乎提高了 2-3 倍。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AIX 进程内存随着循环中的 malloc 释放调用而增加 的相关文章

  • LINUX/AIX下文本DOS格式与UNIX格式互转

    LINUX AIX下文本DOS格式与UNIX格式互转 一 文本换行符简介 n 换行 newline LF LineFeed 0x0D r 回车 return CR CarrageReturn 0x0A windows dos r n uni
  • ioctl函数详细分析

    IPv4 和 IPv6 的网络接口操作使用套接字 ioctl 命令 级别 中级 Katiyar Manish manish katiyar in ibm com 软件工程师 IBM Intel Microsoft HPShweta Gupt
  • AIX学习笔记

    学习笔记 这是我看191redbook第三遍的时候做的手记 放在这里大家提提意见 Created by workaholic 第一部分 系统启动问题cfgmgr configures devices and optionally insta
  • IEEE 802.3ad 链路聚合与LACP的简单知识&EtherChannel 总结

    IEEE 802 3ad 链路聚合与LACP的简单知识 内容提要 本文主要介绍了链路聚合的概念以及链路聚合与EtherChannel 以太通道 的区别 说明 IEEE 802 3ad 是执行链路聚合的标准方法 从概念上讲 将多个以太网适配器
  • qemu-linux-user ELF vs XCOFF 1

    最后更新2021 12 14 注 以下及以后本系列都是个人对相关技术在此时此刻的理解和研究 会根据学习深入 不断修正 但过去历史文章不见得会被 及时 修改订正 见谅 当然欢迎读者批评指正 本人虚心接受 但什么时候把文章修改正确 不好说 qe
  • AIX上的date命令和循环语句与linux上的不同

    在AIX上很多linux命令都可以通用 但是还是有很多的不同 并且有些命令其实是要安装软件才能使用的 有时候主机不是你配置的 这些东西都没有 你会发现原先你玩的很溜的命令用不了 会感到很尴尬 首先我从我自己经历来说两个遇到的问题 对玩AIX
  • date时间加减(linux,aix)

    需求是这样的 有一个在日志中的时间 格式化为 Y m d H M S格式的 那现在想比较这个时间与当前时间差值是否大于一天 这个应该怎么做呢 设计到日期的减法运算 首先先man date来看一下用法吧 DATE 1 User Command
  • 关于scsi锁的故事

    最后更新2021 11 01 一不小心 已经11月了 冬天围着火锅烤串喝啤酒的好日子 scsi锁的出发点很正确 谁用谁锁 用后开锁 目的是避免并行访问的时候有其它不知情的访问变更了数据 更狠毒的是变更了meta数据 整体存储数据结构就乱掉了
  • LVM 磁盘结构

    复杂度3 5 机密度4 5 最后更新2021 05 17 VG由一堆PV组成 每个PV的头是ipl rec 无论这个PV能不能boot 只要是AIX的盘 曾经标记过PVID 都在最初0字节标记0xc9c2d4c1 这个是EBCIDIC编码的
  • 文件系统cache机制

    复杂度3 5 机密度3 5 最后更新2021 04 27 AIX并未采用传统Unix的cache模式 传统Unix 包括Linux 的cache模式是把cache作为一个单独的旁路应用 嵌入在文件读写的路径中 当应用请求读文件时 kerne
  • VMM基础

    复杂度3 5 机密度3 5 最后更新2021 04 20 VMM Virtual Memory Management是所有操作系统都要解决的问题 也是非常硬件相关的问题 必须从硬件CPU的地址管理开始谈起 我们先了解一些术语 Page 内存
  • Aix上的压缩与解压

    1 compress生成一个后缀为 Z的压缩文件 可用compress d或者uncompress解压后缀为 Z的文件 若压缩的文件是文本文件 可用zcat直接查看压缩文件 不需要先解压 再用cat 2 gzip生成一个后缀为 gz的压缩文
  • Aix6.1下安装SWFTools

    该文章参考http tech sxinfo net jctj article do curMenu 14 childMenu 16 articleId 388 再结合我在实际上在Aix6 1上的安装经验来编写 相关文件的下载 ftp ftp
  • truss 命令

    truss 命令用途跟踪进程的系统调用 动态装入的用户级函数调用 接收的信号和造成的机器故障 语法truss f c a l d D e i t x Syscall s Signal m Fault r w FileDescriptor u
  • 如何调整oracle参数,使它支持更多的用户连接

    在参数文件中有三个参数 processes license max sessions license max users 这三个参数相互作用影响着用户连接数 license max sessions 同时连接数据库的会话数 license
  • AIX 上的 proftpd 静态编译

    我想在 AIX 上编译 proftpd 使其可以部署在其他服务器上 而不必在每台服务器上重新安装所有 gnu lib 库 我已经设法动态编译它 但我无法使用该选项来编译它 LDFLAG Wl static 就像 Proftpd 官方文档中的
  • AIX 中是否有 EPOLL/KQUEUE 或等效机制?

    AIX 机制中是否有 EPOLL Linux2 6 KQUEUE FreeBSD IO Completion Port Windows 或其等效机制 对于 AIX 上的 AIO 对于大量网络连接来说 什么样的机制是最佳的 例如 根据基准 K
  • vfork() child 拥有什么权限?

    使用 vfork 创建的进程是否具有与创建者进程 即父进程 相同级别的权限 示例 如果我以 root 身份运行一个进程 vfork 子进程是否拥有相同的执行权限 开放组 POSIX 规范fork http pubs opengroup or
  • 如何将命令行参数传递给 unix/linux 系统上正在运行的进程?

    在SunOS上有pargs命令打印传递给正在运行的进程的命令行参数 其他Unix环境下有类似的命令吗 有几种选择 ps fp
  • 如何查看 /bin/sh 指向的内容

    我正在阅读 bin sh 和 bin bash 之间的差异 并遇到了这个有趣的问题 答案 here https stackoverflow com questions 5725296 difference between sh and ba

随机推荐