OSHI 详解

OSHI 详解

今天研究了一下OSHI 这个包,一开始参照了链接: 使用oshi获取服务器的参数信息.
但是发现上面就那么几个方法的解析,还有很多方法没有解析出来,所以这边把剩下的全部展示出来

 NetworkIF[] nets = hal.getNetworkIFs();
    System.out.println("网络开始===========");
    for (NetworkIF net : nets) {
      System.out.println("ipv4" + Arrays.toString(net.getIPv4addr()));
      System.out.println("网络接收" + net.getBytesRecv() + "字节");
      System.out.println("网络发送" + net.getBytesSent() + "字节");
      System.out.println("显示名称" + net.getDisplayName());
      System.out.println("mac地址" + net.getMacaddr());
      System.out.println("ipv6" + Arrays.toString(net.getIPv6addr()));
      System.out.println("名称" + net.getName());
      System.out.println("速度" + net.getSpeed() + "千兆/百兆");
      System.out.println("发包" + net.getPacketsSent());
      System.out.println("收包" + net.getPacketsRecv());
    }
    System.out.println("网络结束===========");
    HWDiskStore[] diskStores = hal.getDiskStores();
      System.out.println("硬盘信息开始===========");
    for (HWDiskStore diskStore : diskStores) {
      System.out.println("名称"+diskStore.getName());
        System.out.println("大小"+diskStore.getSize());
        //对应着设备看,我的是希捷的
      // ST:代表bai希捷
      // 3:代表du3.5吋硬盘zhi
      // 500:代表硬盘容量为500G
      // 4:指的是dao硬盘的缓存数zhuan是16M(2的4次方)
      // 1:代表1张盘片shu
      // 8:版本号,也可能对应产地等
      // AS:Serial ATA,即 SATA 硬盘接口。(A,代表ATA接口)
      System.out.println("硬盘详细信息" + diskStore.getModel());
        System.out.println("串行接口"+diskStore.getSerial());
        System.out.println("当前队列长度"+diskStore.getCurrentQueueLength());
    }
      System.out.println("硬盘信息结束===========");
      PowerSource[] powerSources = hal.getPowerSources();
    System.out.println("电源开始==========");
    for (PowerSource powerSource : powerSources) {
      System.out.println("电源名称"+powerSource.getName());
      System.out.println("剩余时间"+powerSource.getTimeRemaining());
      System.out.println("剩余容量"+powerSource.getRemainingCapacity());
    }
      System.out.println("电源结束==========");
      SoundCard[] soundCards = hal.getSoundCards();
      System.out.println("声卡开始==========");
    for (SoundCard soundCard : soundCards) {
      System.out.println("名称"+soundCard.getName());
      //编译码器。指的是数字通信中具有编码、译码功能的器件。
      System.out.println("多媒体数字信号编解码器"+soundCard.getCodec());
        System.out.println("运行版本"+soundCard.getDriverVersion());
    }
      System.out.println("声卡结束==========");
        //tree代表是否用嵌套结构进行展示
      UsbDevice[] usbDevices = hal.getUsbDevices(false);
    System.out.println("usb设备开始============");
    for (UsbDevice usbDevice : usbDevices) {
      System.out.println("名称"+usbDevice.getName());
        System.out.println("产品id"+usbDevice.getProductId());
        System.out.println("序列号"+usbDevice.getSerialNumber());
        System.out.println("设备厂商"+usbDevice.getVendor());
        System.out.println("设备厂商id"+usbDevice.getVendorId());
    }
      System.out.println("usb设备结束============");

      ComputerSystem computerSystem = hal.getComputerSystem();
    System.out.println("电脑系统开始=========");
    System.out.println("模型"+computerSystem.getModel());
      System.out.println("序列号"+computerSystem.getSerialNumber());
      System.out.println("制造商"+computerSystem.getManufacturer());
    System.out.println("底板开始========");
      Baseboard baseboard = computerSystem.getBaseboard();
    System.out.println("版本"+baseboard.getVersion());
      System.out.println("序列号"+baseboard.getSerialNumber());
    System.out.println("模型"+baseboard.getModel());
    System.out.println("厂商"+baseboard.getManufacturer());
      System.out.println("底板结束========");
      Firmware firmware = computerSystem.getFirmware();
    System.out.println("固件开始==========");
    System.out.println("固件名"+firmware.getName());
      System.out.println("厂商"+firmware.getManufacturer());
      System.out.println("固件描述"+firmware.getDescription());
      System.out.println("发布日期"+firmware.getReleaseDate());
      System.out.println("固件结束==========");
      System.out.println("电脑系统结束=========");
    System.out.println("传感器开始===============");
      Sensors sensors = hal.getSensors();
    System.out.println("风扇转速"+ Arrays.toString(sensors.getFanSpeeds()));
    System.out.println("cpu温度"+sensors.getCpuTemperature());
      System.out.println("cpu电压"+sensors.getCpuVoltage());
      System.out.println("传感器结束===============");

希望能给大家一些帮助

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值