Изучение архитектуры системы с использованием Java

#java #architecture #64-bit

#java #архитектура #64-разрядная

Вопрос:

Я пытаюсь выяснить системную архитектуру с использованием Java, и я опробовал:

 operatingSystemMXBean.getArch()
  

и

 String sys1=System.getProperty("sun.arch.data.model")
  

но я получаю amd64 , когда я использую 64-разрядный процессор Intel.

Я прочитал эту статью в Wiki, чтобы прояснить свои концепции. Я что-то упускаю? Кроме того, как я могу получить фактическую системную архитектуру с использованием Java, чтобы получить вывод с надписью Intel 64? Спасибо!

Ответ №1:

64-разрядные процессоры Intel используют архитектуру amd. Вот почему многие системы отмечают, что альтернативным синонимом amd64 является x64 или x86-64 для обоих.

Комментарии:

1. Да. Intel пыталась получить 64-разрядное название благодаря своей архитектуре Itanium (IA-64), но оно так и не прижилось, главным образом потому, что 64-разрядные предложения AMD были намного дешевле того, что Intel могла предоставить в то время.

Ответ №2:

бит AMD64 был запатентован AMD, а Intel лицензирует свою архитектуру AMD64. Таким образом, вы получаете AMD64 в качестве архитектуры на процессоре Intel.

Все еще,

 System.out.println(System.getenv("PROCESSOR_IDENTIFIER"));
  

даст вам больше информации о процессоре, в том числе о том, является ли это процессором Intel или AMD!

Комментарии:

1. В какой операционной системе обычно устанавливается PROCESSOR_IDENTIFIER?

2. Это, по крайней мере, в Windows, но я должен признать, что я не знаю о других операционных системах.

3. Это не стандартно для Mac OS X и Linux.

Ответ №3:

Возможно, вы захотите рассмотреть этот пакет:
Sigar ( org.hyperic.sigar.CpuInfo ), вы можете найти javadoc здесь

Не уверен, это может быть излишеством, но предполагается, что это даст вам всю необходимую информацию о вашей системе (включая информацию о процессоре в классе выше)

Этот пакет является бесплатным под лицензией Apache 2.0.

Комментарии:

1. @OfirFarchy- Спасибо, но только за одну команду, я действительно не хочу использовать Sigar.