Machine hardware name, processor type and hardware platform

hardware

The followings are the machine hardware names, processor types and hardware platforms returned by uname:

on a server (with some 64-bit Linux distribution)

-bash-4.1$ uname -m
x86_64
-bash-4.1$ uname -p
x86_64
-bash-4.1$ uname -i
x86_64

on my laptop (Thinkpad T400 with 32-bit Ubuntu 12.04)

$ uname -m
i686
$ uname -p
i686
$ uname -i
i386

I wonder if machine hardware name and processor type are always the same thing?

What is hardware platform? Why does it seem to indicate something about the OS?

Thanks!

Best Answer

Hardware platform (uname -i) tells you what architecture the software was compiled for, typically 32-bit or 64-bit.

The uname -m tells you the architecture about the system itself, think motherboard here.

The uname -p tells you the architecture of the CPU.

What's the difference between system and CPU

I believe these 2 switches, -m and -p are what confuse people the most. It's possible to have a system that has one type of architecture (say 32-bit) but to utilize a CPU that offers a different architecture (64-bit).

This isn't that common and so in practice you'll typically see -m and -p showing up as offering the same architectures.

References

Related Question