By forever i mean a long, long, long time...
I´m asking this because how is it possible to change a cpu architecture worlwide?
$$$. JIT compilers aren't new, even for x86, and modern ones should be able to get 70%+ performance, compared to native, so long as they either do a first static pass, or cache results.
Such technology has already been used for old big server systems, and is quite reliable (IIRC, IBM and Unisys both do it--not for x86, but I'm pretty sure Unisys does it with x86 as the target).
How much time would it take to software developers to change programs and how to live with two major architectures at the same time?
We already live with many:
IA32
IA32 w/ extensions
x86-64
x86-64 w/ extensions
ARMv6 family
ARMv7 family
Power family (mostly of the PPC variety)
MIPS family
Existing binaries need x86 and Win32, along with Windows quirks. Period. That's not going away. There's no uarch shift, or anything. If x86 starts dying, software will come about to run those programs, and/or run an entire virtualized Windows OS. That's just a lot of work, compared to buying newer x86 hardware.
But, that lock-in largely already has gone away, for any businesses not drinking the Kool-aid (IE, Wintel will stay on life-support for gov and big biz for many years, but is pretty much dead to consumers, startups, and nimble companies, already). It mostly affects the continued evolution of existing software running in Windows environments, if you make an exception for games (which have a pretty short life span, anyway, except for us enthusiast types).
So far ARM is making a compelling argument. x86 won't actually die off for decades, if at all. But the market is clearly moving to an architecture that is open for all to use if they want to.
The market is clearly moving away from mostly dealing with Windows, and Intel CPUs haven't been the greatest at running in low power envelopes.
The customers and vendors don't care if it's ARM or not. They care that it offers the features and performance they want for the money. Since Intel had not previously done much in terms of low-power computing, they were at a disadvantage. It's not philosophical issue. If better ARM CPUs keep coming out, ARMs it will be. Better x86, and Intel it will be. For companies needing or wanting control, ARM holds the best prospects for them, thus its popularity.
If IA64 didnt stand a chance to compete with x86 then how can ARM?
ARM is a pretty sensible RISC ISA, lacking the historical baggage of MIPS, and the weird corporate and engineering baggage of Power, and has proven itself over time. Its worst failing is that it's currently a jumble of ISAs, but ARM themselves appear to be at least
trying to a little cat-herding, as far as that goes.
The thing with IA64 is that it only succeeded as well as it did because Intel withheld RAS features from x86, and HP decided that their customers
were moving to Itanium. Itaniums have featured end-to-end error-checking, FI,
in hardware; hardware partitioning; hot-plugging of almost everything; and much more esoteric features. In addition, the OSes that ran on it, except for Windows, had plans for future development, that they stuck to, so as a customer, you'd know what you were getting into. It never had a chance for consumers' PCs, but it did make sense for Big Iron(tm) type servers.
They've been giving the Xeon E7s more and more, lately, but several years ago, if you were in the market for Itanium, no x86 CPU was going to cut it, and it had nothing to do with CPU performance. Likewise, if you were going to do most your data protection work in software, and weren't working on older code that needed migrating. IA64 probably wouldn't have made sense, because you could do it all with COTS Xeon hardware about as well (IE, Google, Yahoo!, Skype, etc.). Of course, some businesses got stuck in the middle, since while COTS CPUs were faster, they couldn't always handle the kind of data bandwidth that Itanium or Power could (at least not without spending enough on storage and networking that you could have probably bought IA64 based servers, instead). With current Core-based Xeons, that's pretty much gone.
Anyway...ARM-derived designs are where they are today because they met vendor and user needs, not because of top-down strong-arming.