How many CPU architectures (platforms) can Java run?

Java is famous for its cross-platform feature, and declared as Write once, run anywhere (WORE).

Well the question is, how many platforms Java can run?

Code always contains the best answer, let's investigate the code of Java Virtual Machine (JVM) for this.

The Architecture (source code) class in the jdk.internal.vm.ci.jmod module indicates the CPU architectures Java Virtual Machine can run on:

UML Hierarchy Diagram for Java class Architecture

We can found Java can execute on the following three (3) CPU architectures / platforms:
  • AArch64 (source code): ARM CPU, 64 bit, which is mostly used in Mobile devices, like Android phone, Android PAD, Apple iPhone, etc
  • AMD64 (source code): x86 CPU, 64 bit, which is used by most laptop and desktop computers, including Acer, Apple, Asus, Dell, Hewlett-Packard (HP), IBM, Lenovo, Samsung, Toshiba, etc
  • SPARC (source code): SPARC CPU, originally designed by Sun Microsystems, which is used by powerful servers servicing numerous client requests
So Java can be executed from mobile device to laptop, from home/office used desktop to servers sittings in data centers.

Comments

Popular posts from this blog

What is Java Synthetic Class (ACC_SYNTHETIC)? with the example of BoundMethodHandle$1.class in Java package java.lang.invoke

What is Java Bridge Method (ACC_BRIDGE)?

Java Native Methods Essentials, from Binary code point of view, with example of java.lang.Runtime