Computer networks (including the Internet) are inherently big endian.
Little endian CPUs, such as Intel/AMD X86 and X86-64, have to flip the bit
order when engaging in network communications. That bit flipping obviously
works (and is usually performed by the network driver), but it's not
totally free in terms of instructions.

ARM and Power CPUs are capable of running in either big endian or little
endian mode. When ARM CPUs are deployed primarily for networking-related
missions (such as embedded controllers for routers), especially in
power-sensitive roles, there's some appeal to running in big endian mode.
Hence, Linux (and some other operating systems) are available for ARM's big
endian mode. That's the "armeb" flavor of Linux, specifically. Linux for
Power always runs in big endian mode.

Itanium is also bi-endian and can run in either mode. VMS, for example,
runs on Itanium in little endian mode. I was merely pointing out that there
are lots of big endian CPUs that are selling very well and that are running
Linux in big endian mode, including System z, Power, and ARM. There's no
danger that Linux will somehow forget big endian bit order any more than
X86 CPUs will forget how to use the Internet.

To pick another example, Solaris is available in both little endian
(X86-64) and big endian (SPARC) flavors. Not surprisingly, Java is almost
entirely endian-agnostic, but to the extent bit order matters it's big
endian.

I've known HP in its sales pitches to make a lot of fuss about endianness
as reason why it would be oh-so-difficult for an HP-UX customer to move to
Linux on X86, or for a Linux X86 customer to move to (or add) Linux on
System z, depending on their sales situation. Then hundreds/thousands of HP
customers moved without endianness difficulty, and many more will follow.
The IT community figured out how to flip bit order a long time ago. Before
System/360, even. That's not to say endianness isn't a problem...for HP. If
they want to move HP-UX to a little endian CPU, they'll have a lot of
investment to do (as Sun did for Solaris X86). For non-OS
kernel/non-compiler programmers, which is the vast majority of us, it's not
a real-world problem. In fact, endianness is one of the least interesting
issues when porting from one CPU to another.

For my thoughts on the HP Itanium meltdown, see The Mainframe Blog:

http://mainframe.typepad.com/blog/2011/04/hp-itaniums-ignominious-demise.html

- - - - -
Timothy Sipples
Resident Enterprise Architect
Value Creation & Complex Deals Team
IBM Growth Markets (Based in Singapore)
E-Mail: timothy.sipp...@us.ibm.com
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to