Quantcast
Channel: mozillaZine feedHouse
Viewing all articles
Browse latest Browse all 192

Asa Dotzler: Firefox on Windows Metro on ARM

$
0
0

Windows 8 Metro is a beautiful computing environment. Unfortunately, it's very limited when it comes to certain kinds of raw power that we're all used from the last couple of decades of Windows operating systems. Metro and the WinRT APIs that power it are great for games and simple apps, and they provide developers with the tools to make those apps stunningly beautiful, but they lack the kind of power needed to drive sophisticated programs like Web browsers and office productivity applications.

Now, we know that Microsoft is shipping a powerful browser on Metro. Metro would be dead in the water without a really capable Microsoft browser. So how does Internet Explorer 10 provide a beautiful and powerful experience in the Metro environment? It's easy. IE 10 cheats.

As you can see from the diagram here, Internet Explorer 10 on Metro has special access to some very powerful APIs from over in Win32 land. Those APIs allow for IE to have modern capabilities like a Just In Time compiler (JIT). JITs make JavaScript really fast and without them, modern Web sites like Facebook, Twitter, and Gmail would be painfully slow for users, *unusably* slow.

So, IE 10 on Metro gets its good looks from the WinRT APIs but it gets critical pieces of its power from the Win32 APIs. That seems kind of smart, right? Cheating works in this case, doesn't it? So what's the problem there?

There's no problem for Windows 8 on Intel chips, where Microsoft lets other browsers do the same thing IE is doing. The problem is with Windows for ARM processors. Browsers on Windows for ARM chips do not get to do what IE is doing. Microsoft is giving its own Internet Explorer special privileges that no other Metro app, including other Metro browsers, are allowed.

If we built Firefox for Windows ARM Metro, we would not have access to those powerful Win32 APIs and so we would be at an extreme disadvantage when compared to IE 10 for Metro. We could build a beautiful Firefox that looked really nice on Metro, but Firefox would be so crippled in terms of power and speed that it's probably not worth it to even bother. No sane user would want to surf today's web and use today's modern websites with that kind of crippled browser.

Microsoft can solve this problem for Windows on ARM the exact same way they solved it for Windows on Intel. They can give third party browsers the same access they give Internet Explorer. This access is described by Microsoft in the whitepaper "Developing a Metro style enabled Desktop Browser" and it should apply to all of Windows regardless of the processor that Windows is running on. Not doing so ensures there will be no serious browser choice and competition for lots of Windows users and that's inconsistent with Microsoft's public commitments and legal responsibilities.


Viewing all articles
Browse latest Browse all 192

Trending Articles