Windows RT and 8: the differences between ARM and x86 architectures
Table of contents:
- Differences at the hardware level
- Differences carried over to software: Windows 8 and Windows RT
- ARM restricts what we can do with the computer
- ARM, a mobile architecture for a mobile system
- Special Windows 8 In Depth
In the previous installment of the special Windows 8 we explained what were the characteristics and limitations of Windows RT. One of the biggest differences was that Windows RT was ready to work on ARM architectures. But, What is the ARM architecture really, and how is it different from the x86 architecture?
Differences at the hardware level
At the hardware level, the main difference between ARM and x86 is that they have different instruction sets.As it were, they speak a different language, which makes one system totally incompatible with the other. In other words, binaries cannot be shared between both systems.
If we move on to explore how processors behave, we'll see that ARM has a huge advantage over x86 in power consumption. By having a simpler structure and instructions, ARM consumes significantly less power than regular Intel processors. As you can imagine, this makes it the perfect candidate for mobile devices such as phones or tablets.
However, it is the x86 processors that stand out in performance, as you can see in benchmarks like this one. That more complex architecture allows for more optimizations to be done while the application is running, such as swapping instruction order to improve execution time.
Despite the fact that both ARM and Intel work to reduce those advantages of one over the other, the differences are still notable enough that each processor is used in a different type of computer: the Intel to the computers, and ARM to mobile phones and tablets.
Differences carried over to software: Windows 8 and Windows RT
Above I said that due to different instruction sets, binaries are not compatible between ARM and x86. So why can the same Metro apps run on Windows 8 and Windows RT?
The answer is that Metro apps are not exactly binary code. Normally, when you are on a computer (Windows, Mac or Linux) and you compile a program, a file is created that contains the instructions that will be executed directly on the processor.
"However, Metro applications (like any application built with .NET) are compiled to an intermediate language, MSIL (Microsoft Intermediate Language), which is then interpreted> "
Besides more commercial reasons, this is the main technical reason why Windows RT only supports Metro-style apps, a direct consequence of using ARM processors.There is, of course, the issue of performance: you can't put powerful software like Mathematica or Visual Studio on a system with an ARM processor and expect it to work the same as an Intel processor.
ARM restricts what we can do with the computer
"The idea of Windows RT is that it is a system for tablets. We have to completely forget that it&39;s like Windows>"
For example, installing Linux on an ARM tablet won't be as easy as installing it on an Intel computer. Not only because of driver issues (which are always there), but because we would need system-specific versions made for ARM processors.
We won't be able to control the boot of the system either. As ngm told you in the previous installment of the special, we completely forgot to remove Secure Boot or modify the BIOS (now UEFI) settings.
ARM, a mobile architecture for a mobile system
The conclusion is that ARM is a type of processor aimed especially at mobile phones and tablets, and Windows RT takes advantage of all the possibilities it offers. More autonomy and more than enough performance for a system in which, probably, the most intense activity we will carry out will be listening to music while editing a document.