regarding the (mistaken) claim that ARM has already won: observe that pretty much all wifi routers are MIPS, not to mention a lot of NAS and other embedded networking. those are a lot less salient as the ARM in your phone, but at least as significant in ecosystem.
As a member of the MIPS engineering team, I can tell you that I am working on some of the most exciting and challenging work of my career. These are not minor updates to old products, but completely new architectures built upon MIPS’ deep expertise in processor architecture. Some of the engineers I work with daily are from the original Silicon Graphics MIPS team, and others are from well-known processor companies. The work here is intense, exciting and continually intellectually challenging. Sitting next to me is a compiler team working on sophisticated projects, down the hall is a CAD team working on advanced nodes and on the other side of me are engineers working on OoOE pipelines. Our software team is doing amazing work, having recently completed the work necessary to get our NDK into the official Android source tree. In this highly competitive market, we have agility, expertise, and a fast and exciting work environment.
Are you sure that no Android app uses compiled code? You should talk to Ingenic and its customers or to Philips China. I bet that if you try any of these 7" tablets in US or in Europe, you are going to see something broken. In the ideal world, there is no compiled code, in the real world, optimization will inevitably lead to the necessity of compiled codes.
We can also see the fact ARM vs. MIPS from the silicon process point of view. ARM is now moving forward to the 22nm process. MIPS is far behind ARM in terms of the silicon process but MIPS still has some advantage for cost and energy consumption if they start using a 32nm process.
I was thinking of Android, not iPhone. Android apps are not compiled code--you can even run them on an Android simulator running on your PC (and the simulator isn't simulating Arm assembly code).
In fact, Motorola is coming out with an Android phone that uses an Intel Atom processor later this year.
Certainly Android itself has to be compiled to run on the processor. But from a customer point of view, any processor will run the apps, so they will tend to prefer the phone that runs the fastest with the longest battery life.
"you don't run compiled code" - sorry?
And if the main objective is high performance with low power consumption you are not going to optimise that whilst having multiple layers of interpreter and virtualization, because you will be running more code than necessary.
ARM is stable and things work. Porting to a different processor has huge risk. Anyone that tells me that switching processors is a breeze I do not believe.
Anyway, I'm sure the moral there is completely in the toilet. What are the MIPS employees doing? Brushing up the resume to go to ARM, Intel, Freescale, Cavium, Broadcom, etc... If they are smart.
A Book For All Reasons Bernard Cole1 Comment Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...