Java로 Physical Memory 크기 알아내기
JAVA:
  1. package net.hanjava.util;
  2.  
  3. import java.lang.management.ManagementFactory;
  4.  
  5. import com.sun.management.OperatingSystemMXBean;
  6.  
  7. public class OSTest {
  8.     public static void main(String[] args) {
  9.         OperatingSystemMXBean osmb = (OperatingSystemMXBean) ManagementFactory
  10.                 .getOperatingSystemMXBean();
  11.         System.out.println(osmb.getTotalPhysicalMemorySize());
  12.     }
  13. }

순수 자바로 물리 메모리의 크기를 알아낼 수는 없다.
하지만 JMX에서 이미 Native코드를 이용해 작성해 두었고 이는 jre에 포함되어있다.
그런데 JMX가 자바 어떤부터 들어있었지? 암튼 Sun JVM 5에서는 잘 된다.
참고로 그 밖에 유용한 정보들도 있다.

JAVA:
  1. public interface OperatingSystemMXBean extends
  2.     java.lang.management.OperatingSystemMXBean {
  3.     public long getCommittedVirtualMemorySize();
  4.     public long getTotalSwapSpaceSize();
  5.     public long getFreeSwapSpaceSize();
  6.     public long getProcessCpuTime();
  7.     public long getFreePhysicalMemorySize();
  8.     public long getTotalPhysicalMemorySize();
  9. }

리플 하나 to “Java로 Physical Memory 크기 알아내기”

  1. 지민아빠 Says:

    1.5 부터 들어간 기능입니다.
    1.4.2 에선 들어갔지만 구현이 안되어 있다는 소문도 들었습니다. ㅎㅎ

댓글달기