If you have paid attention to tech news over the past couple of days you have probably come upon the controversy surrounding Microsoft's upcoming ARM-based Windows RT operating system.
It all started with Aza Dotzler's post on his Mozilla web blog where he mentioned that Mozilla would not be able to bring Firefox to Windows RT. In it, Dotzler mentioned that other browsers were not able to compete with Microsoft's Internet Explorer on ARM devices running Windows RT due to API access restrictions.
According to the post, Microsoft is only allowing its own Internet Explorer browser to access these APIs, while other browsers are not allowed to do the same. At the same day, Dotzler posted a second article on his personal blog, shedding more light on the situation.
On x86 Windows 8 PCs, there are three kinds of software programs.
First, there are Classic programs that are basically the same as they are Windows 7. Because of the rich win32 API available in Classic, these kinds of programs can be really powerful (or not,) but they can only operate in the Classic environment and cannot use any of the cool new features available in Metro and they cannot be run in Metro. In this category you can think of programs like Adobe Photoshop or Microsoft Word.
Second, there are Metro apps that are touch-focused, simpler, but have rich interactions between themselves and Metro and other Metro apps. These apps have access to some cool new Metro features but they live in a Metro sandbox and cannot use any of the more powerful features available from the Classic win32 environment -- APIs necessary for building a modern browser. In this category you can find apps like Angry Birds, Microsoft Stocks, or Hulu.
Third, there are Metro style desktop enabled browsers. These are programs that straddle Classic and Metro. They have access to the underlying win32 API like Classic programs and they also have access to the cool new features of Metro. They can have a classic front end and a Metro front end but under the covers they're calling into both the Classic and Metro APIs. In this category you have Internet Explorer 10, Firefox, and likely other browsers including Chrome and Opera.
Microsoft has made it clear that the third category won't exist on Windows for ARM (unless you're Microsoft) and that neither will the first category (unless you're Microsoft.) That means that IE on ARM has access to win32 APIs -- even when it's running in Metro mode, but no other Metro browser has that same access. Without that access, no other browser has a prayer of being competitive with IE.
Third party developers who want to create software for Windows RT, can only create Metro apps for that purpose, and this is what is restricting the developers when it comes to creating the software.
Google the next day joined Mozilla's position on the matter. According to Cnet, the company released the following statement to the press.
We share the concerns Mozilla has raised regarding the Windows 8 environment restricting user choice and innovation. We've always welcomed innovation in the browser space across all platforms and strongly believe that having great competitors makes us all work harder. In the end, consumers and developers benefit the most from robust competition.
When we look at Windows RT, we see that Microsoft has designed the operating system in a way that x86 or x64 applications can't be ported or run on the operating system. The core reason given for this approach is a "commitment to longer battery life, predictable performance, and especially a reliable experience over time".
The conventions used by today’s Windows apps do not necessarily provide this, whether it is background processes, polling loops, timers, system hooks, startup programs, registry changes, kernel mode code, admin rights, unsigned drivers, add-ins, or a host of other common techniques. By avoiding these constructs, WOA can deliver on a new level of customer satisfaction: your WOA PC will continue to perform well over time as apps are isolated from the system and each other, and you will remain in control of what additional software is running on your behalf, all while letting the capabilities of diverse hardware shine through.
This highlights that it is not only about blocking web browsers, but all classic software from running on ARM. What Mozilla and Google criticize is that these restrictions do not apply to Internet Explorer. Other software companies might criticize that it is also not applying to Office, or other first party software that Microsoft integrates into Windows RT. The question here is if the new APIs are as restrictive as Mozilla and Google make them sound to be like.
As far as complaints go, it is not really clear why Mozilla, or Google for the matter, have not included Apple's iOS operating system in the complaint, as it is in some regards as, if not more, restrictive than Windows RT will be. While the Windows platform is still the dominating player when it comes to the desktop market, it is a tiny player in the mobile market, that is dominated by Apple and Google mostly. When it comes to browsers on these markets, it is Safari dominating the scene much like Internet Explorer is dominating the desktop browser market.
What's your take on all of this? Lets discuss in the comments.Advertisement
Ghacks is a technology news blog that was founded in 2005 by Martin Brinkmann. It has since then become one of the most popular tech news sites on the Internet with five authors and regular contributions from freelance writers.