2014-04-08 6 views
3
내가 ("아이비 브릿지"와 같은) 자바 프로그램에서 procesor의 tipe를 검색 할

나는 같은 일부 시스템이 재부 COMAND을 찾습니다자바에서 CPU 유형을 얻는 방법은 무엇입니까? .

System.out.println(System.getenv("PROCESSOR_IDENTIFIER")); 
System.out.println(System.getenv("PROCESSOR_ARCHITECTURE")); 
System.out.println(System.getenv("PROCESSOR_ARCHITEW6432")); 
System.out.println(System.getenv("NUMBER_OF_PROCESSORS")); 

하지만 난 내가 원하는 것을 찾을 수 없습니다.

+0

확인이 링크 http://stackoverflow.com/questions/25552/using-java-to-get-os-level-system-information – Shriram

+0

그러나 당신이 나에게 전달 된 링크, 내가 메모리 크기를 가지고, cpu 유형이 아닙니다. – Sceik

+0

어떤 OS를 실행합니까? – Henrik

답변

0

windows를 사용하는 경우 jawin을 사용하여 win32 api에 액세스하고 Linux 배포판의 경우/proc/cpuinfo를 읽고 구문 분석하십시오.

1

레지스트리를 쿼리 할 수 ​​있습니다. 이것은 JNA로 쉽게 할 수 있습니다. Windows에서만 작동합니다.

import com.sun.jna.platform.win32.Advapi32Util; 
import static com.sun.jna.platform.win32.WinReg.HKEY_LOCAL_MACHINE; 

    public class GetCPUInfosUsingJNA { 

     // https://github.com/twall/jna#readme 
     // you need 2 jars : jna-3.5.1.jar and platform-3.5.1.jar 

     public static void main(String ... args) { 
      System.out.println(Advapi32Util.registryGetStringValue 
      (HKEY_LOCAL_MACHINE, 
       "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0\\", 
       "ProcessorNameString")); 
      System.out.println(Advapi32Util.registryGetStringValue 
        (HKEY_LOCAL_MACHINE, 
        "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0\\", 
        "Identifier"));   
     } 
    }