7

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!

1 Answer 1

10

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

1
  • 2
    In "Hardware platform (uname -i) tells you what architecture the software was compiled for, typically 32-bit or 64-bit.", by software do you mean the OS or the uname utility or something else? Commented Jun 11, 2015 at 14:22

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.