课题java使用siger 获取服务器硬件信息CPU 内存 网络 io等Word文件下载.docx
- 文档编号:4427858
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:19
- 大小:22.50KB
课题java使用siger 获取服务器硬件信息CPU 内存 网络 io等Word文件下载.docx
《课题java使用siger 获取服务器硬件信息CPU 内存 网络 io等Word文件下载.docx》由会员分享,可在线阅读,更多相关《课题java使用siger 获取服务器硬件信息CPU 内存 网络 io等Word文件下载.docx(19页珍藏版)》请在冰点文库上搜索。
WindowsAMD/Intel64-bit
libsigar-ppc-aix-5.so
AIXPowerPC32-bit
libsigar-ppc64-aix-5.so
AIXPowerPC64-bit
libsigar-pa-hpux-11.sl
HP-UXPA-RISC32-bit
libsigar-ia64-hpux-11.sl
HP-UXItanium64-bt
libsigar-sparc-solaris.so
SolarisSparc32-bit
libsigar-sparc64-solaris.so
SolarisSparc64-bit
libsigar-x86-solaris.so
SolarisAMD/Intel32-bit
libsigar-amd64-solaris.so
SolarisAMD/Intel64-bit
libsigar-universal-macosx.dylib
MacOSXPowerPC/Intel32-bit
libsigar-universal64-macosx.dylib
MacOSXPowerPC/Intel64-bit
libsigar-x86-freebsd-5.so
FreeBSD5.xAMD/Intel32-bit
libsigar-x86-freebsd-6.so
FreeBSD6.xAMD/Intel64-bit
libsigar-amd64-freebsd-6.so
3.代码实现
示例java项目
import
.InetAddress;
.UnknownHostException;
java.util.Map;
java.util.Properties;
org.hyperic.sigar.CpuInfo;
org.hyperic.sigar.CpuPerc;
org.hyperic.sigar.FileSystem;
org.hyperic.sigar.FileSystemUsage;
org.hyperic.sigar.Mem;
org.hyperic.sigar.NetFlags;
org.hyperic.sigar.NetInterfaceConfig;
org.hyperic.sigar.NetInterfaceStat;
org.hyperic.sigar.OperatingSystem;
org.hyperic.sigar.Sigar;
org.hyperic.sigar.SigarException;
org.hyperic.sigar.Swap;
org.hyperic.sigar.Who;
public
class
RuntimeTest
{
static
void
main(String[]
args)
try
//
System信息,从jvm获取
property();
System.out.println("
----------------------------------"
);
cpu信息
cpu();
内存信息
memory();
操作系统信息
os();
用户信息
who();
文件系统信息
file();
网络信息
net();
以太网信息
ethernet();
}
catch
(Exception
e1)
e1.printStackTrace();
}
private
property()
throws
UnknownHostException
Runtime
r
=
Runtime.getRuntime();
Properties
props
System.getProperties();
InetAddress
addr;
addr
InetAddress.getLocalHost();
String
ip
addr.getHostAddress();
Map<
String,
String>
map
System.getenv();
userName
map.get("
USERNAME"
获取用户名
computerName
COMPUTERNAME"
获取计算机名
userDomain
USERDOMAIN"
获取计算机域名
用户名:
"
+
userName);
计算机名:
computerName);
计算机域名:
userDomain);
本地ip地址:
ip);
本地主机名:
addr.getHostName());
JVM可以使用的总内存:
r.totalMemory());
JVM可以使用的剩余内存:
r.freeMemory());
JVM可以使用的处理器个数:
r.availableProcessors());
Java的运行环境版本:
props.getProperty("
java.version"
));
Java的运行环境供应商:
java.vendor"
Java供应商的URL:
java.vendor.url"
Java的安装路径:
java.home"
Java的虚拟机规范版本:
java.vm.specification.version"
Java的虚拟机规范供应商:
java.vm.specification.vendor"
Java的虚拟机规范名称:
java.vm.specification.name"
Java的虚拟机实现版本:
java.vm.version"
Java的虚拟机实现供应商:
java.vm.vendor"
Java的虚拟机实现名称:
java.vm.name"
Java运行时环境规范版本:
java.specification.version"
Java运行时环境规范供应商:
java.specification.vender"
Java运行时环境规范名称:
java.specification.name"
Java的类格式版本号:
java.class.version"
Java的类路径:
java.class.path"
加载库时搜索的路径列表:
java.library.path"
默认的临时文件路径:
java.io.tmpdir"
一个或多个扩展目录的路径:
java.ext.dirs"
操作系统的名称:
os.name"
操作系统的构架:
os.arch"
操作系统的版本:
os.version"
文件分隔符:
file.separator"
路径分隔符:
path.separator"
行分隔符:
line.separator"
用户的账户名称:
user.name"
用户的主目录:
user.home"
用户的当前工作目录:
user.dir"
memory()
SigarException
Sigar
sigar
new
Sigar();
Mem
mem
sigar.getMem();
内存总量
内存总量:
mem.getTotal()
/
1024L
K
av"
当前内存使用量
当前内存使用量:
mem.getUsed()
used"
当前内存剩余量
当前内存剩余量:
mem.getFree()
free"
Swap
swap
sigar.getSwap();
交换区总量
交换区总量:
swap.getTotal()
当前交换区使用量
当前交换区使用量:
swap.getUsed()
当前交换区剩余量
当前交换区剩余量:
swap.getFree()
cpu()
CpuInfo
infos[]
sigar.getCpuInfoList();
CpuPerc
cpuList[]
null;
cpuList
sigar.getCpuPercList();
for
(int
i
0;
<
infos.length;
i++)
{//
不管是单块CPU还是多CPU都适用
info
infos[i];
第"
(i
1)
块CPU信息"
CPU的总量MHz:
info.getMhz());
CPU的总量MHz
CPU生产商:
info.getVendor());
获得CPU的卖主,如:
Intel
CPU类别:
info.getModel());
获得CPU的类别,如:
Celeron
CPU缓存数量:
info.getCacheSize());
缓冲存储器数量
printCpuPerc(cpuList[i]);
printCpuPerc(CpuPerc
cpu)
CPU用户使用率:
CpuPerc.format(cpu.getUser()));
用户使用率
CPU系统使用率:
CpuPerc.format(cpu.getSys()));
系统使用率
CPU当前等待率:
CpuPerc.format(cpu.getWait()));
当前等待率
CPU当前错误率:
CpuPerc.format(cpu.getNice()));
//
CPU当前空闲率:
CpuPerc.format(cpu.getIdle()));
当前空闲率
CPU总的使用率:
CpuPerc.format(cpu.getCombined()));
总的使用率
os()
OperatingSystem
OS
OperatingSystem.getInstance();
操作系统内核类型如:
386、486、586等x86
操作系统:
OS.getArch());
操作系统CpuEndian():
OS.getCpuEndian());
操作系统DataModel():
OS.getDataModel());
系统描述
操作系统的描述:
OS.getDescription());
操作系统类型
OS.getName():
OS.getName());
OS.getPatchLevel():
OS.getPatchLevel());
操作系统的卖主
操作系统的卖主:
OS.getVendor());
卖主名称
操作系统的卖主名:
OS.getVendorCodeName());
操作系统名称
操作系统名称:
OS.getVendorName());
操作系统卖主类型
操作系统卖主类型:
OS.getVendorVersion());
操作系统的版本号
操作系统的版本号:
OS.getVersion());
who()
Who
who[]
sigar.getWhoList();
if
(who
!
null
&
who.length
>
0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课题java使用siger 获取服务器硬件信息CPU 内存 网络 io等 课题 java 使用 siger 获取 服务器 硬件 信息 CPU io
![提示](https://static.bingdoc.com/images/bang_tan.gif)