2011-04-04 12 views
7

¿Cómo podemos obtener el nombre del procesador y la información registrada de la PC? ¿Cómo es posible a través de Java? Estoy usando Windows OS.¿Cómo obtener el nombre del procesador y registrar información usando Java?

Consulte esta imagen.

enter image description here

+2

¿Qué quiere decir con "registrado en la información de la PC"? ¿Te refieres a la información de registro de la instalación del sistema operativo? Por favor elabore y especifique qué OS (s) tiene en mente. – sleske

+0

¿Para qué lo necesitas? –

+0

@Sleske: Ver [aquí] (http://blog.joeware.net/wp-content/uploads/2006/12/WindowsLiveWriter/IaddedmyworklaptoptomyhomedomainandnowI_96FD/SystemProperties_thumb.gif). Estoy preguntando por la PC de Windows. – bharath

Respuesta

6

hay una biblioteca llamada Sigar por ahí que puede hacer todas esas cosas de lujo.

El tarro sigar puede ser llamado 'independiente' para explorar el sistema:

$ java -jar sigar.jar 
sigar> free 
      total  used  free 
Mem:  8388608 7940428  448180 
-/+ buffers/cache: 5872060 2516548 
Swap:  262144  95296  166848 
RAM:  8192MB 

Para que esto funcione, también necesita la respectiva .dll o .so en la ruta de clase

En RHQ-project nos use Sigar para muchas de esas estadísticas; puede navegar por el código here.

+1

¿Cómo podemos obtener el tamaño de RAM exacto con Siger? – bharath

6

Cómo su posible a través de Java?

En general, esto no es posible que hacer en Java. Tendría que pasar por un programa externo (consulte ProcessBuilder) oa través de una biblioteca nativa (escrito en, por ejemplo, C++).

Usted podría hacer

System.getProperty("os.arch"); 

para obtener la arquitectura del sistema operativo sin embargo. Esto da "amd64" en mi máquina.

The page here listas algunas otras propiedades del sistema también, pero estos parecen ser específicos VM sin embargo:

sun.cpu.endian=little 
sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86 
Cuestiones relacionadas