proc文件系统简介 /proc文件系统是一个伪文件系统.它是唯一的,其中存储器,如果不采取外部存储空间. 它是文件系统提供了与内核进程进行通信的接口的方法.用程序能够通过/proc得到系统的信息.并能够改变内核的某些參数. 因为系统的信息.如进程.是动态改变的,所以用户或应用程序读取/proc文件夹中的文件时.proc文件系统是动态从系统内核读出所需信息并提交的. /proc文件夹中有一些以数字命名的文件夹.它们是进程文件夹.系统中当前执行的每个进程在/proc下都相应一个以进程号为文件夹名的…
windows下编程获取磁盘(分区)使用情况 windows下编程获取磁盘(分区)使用情况 GetLogicalDriveStrings函数 使用示例 获取需要的缓冲区长度示例 获取所有驱动器号示例 GetDriveType函数 使用示例 GetDiskFreeSpaceEx 函数 使用示例 linux下可以使用命令df -h来获取各个(已加载)分区的使用情况.Windows下也有很多好的工具来获取,但是我没有发现windows下的df命令. 在linux下使用df -h命令的输出如下 o@Ne…
用C++和shell获取本机CPU.网卡.内存.磁盘等的基本信息: 由于对C++相关的函数没多少了解,但是觉得用shell反而相对简单一些: 一.shell脚本,用来辅助C++获取主机的资源使用信息 (1) cpurate.sh 获取cpu的使用率 #!/bin/sh ##echo user nice system idle iowait irq softirq CPULOG_1=$(cat /proc/stat | grep 'cpu ' | awk '{print $2" "$3&…
在以前,我们想获取CPU,内存等信息就不得不借助win32 API来实现.但现在,.NET FrameWork已经把这些API封装到.NET类库中了,所以我们可以借助.NET类库很轻松的获取这些信息.首先,介绍几个要用到的类: PerformanceCounter:表示windows NT性能计数器组件 ComputerInfo:提供用于获取与计算机内存,已加载程序集,名称和操作系统有关信息的属性 DriveInfo:该类位于System.IO命名空间下,提供对有关驱动器信息的访问 介绍完几个必…
CPU使用率: InputStream is = null; InputStreamReader isr = null; BufferedReader brStat = null; StringTokenizer tokenStat = null; // 用来分隔String的应用类 try { System.out.println("Get usage rate of CUP : "); Process process = Runtime.getRuntime().exec(&quo…
一.psutil模块 1. psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控,分析和限制系统资源及进程的管理.它实现了同等命令行工具提供的功能,如ps.top.lsof.netstat.ifconfig.who.df.kill.free.nice.ionice.iostat.iotop.uptime.pidof.tty.taskset.pmap等.…
更多linux知识,请关注公众号:一口Linux 一.脚本 今天主要分享一个shell脚本,用来获取linux系统CPU.内存.磁盘IO等信息. #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk '{print $2}'` echo "IP地址:"$IP # 获取cpu总核数 cpu_num=`grep -c "model name" /…
JAVA 中的内存泄漏 JAVA 编程中的内存泄漏,从泄漏的内存位置角度可以分为两种:JVM 中 Java Heap 的内存泄漏:JVM 内存中 native memory 的内存泄漏. Java Heap 的内存泄漏 Java 对象存储在 JVM 进程空间中的 Java Heap 中,Java Heap 可以在 JVM 运行过程中动态变化.如果 Java 对象越来越多,占据 Java Heap 的空间也越来越大,JVM 会在运行时扩充 Java Heap 的容量.如果 Java Heap 容量…
getifaddrs()和struct ifaddrs的使用,获取本机IP 博客分类: Linux C编程   ifaddrs结构体定义如下: struct ifaddrs { struct ifaddrs  *ifa_next;    /* Next item in list */ char            *ifa_name;    /* Name of interface */ unsigned int     ifa_flags;   /* Flags from SIOCGIFFL…
linux 进程间通信(IPC)包括3种机制:消息队列.信号量.共享内存.消息队列和信号量均是内核空间的系统对象,经由它们 的数据需要在内核和用户空间进行额外的数据拷贝:而共享内存和访问它的所有应用程序均同处于用户空间,应用进程可以通过地址 映射的方式直接读写内存,从而获得非常高的通信效率.在GNU/Linux中所有的进程都有唯一的虚拟地址空间,而共享内存应用编程 接口API允许一个进程使用公共内存区段. 如果使用消息队列进行通信,那么一个进程要向队列中写入消息,这要引起从用户地址空 间向内核地…