|
|
|
|
|
by mwcampbell
4258 days ago
|
|
> I think NT scales down better than Android on handsets. Any idea why? My only guess is because so much of Android is built on a garbage-collected, JIT-compiled environment (Dalvik), whereas much more of the Windows Phone stack relies on manual memory management and reference counting, and even .NET apps are AOT-compiled on Windows Phone. In that case, the new Android Runtime (ART) might address half the problem. |
|
1. NT is very small. A 66MHz / 24Mb system can still throw up a desktop.
2. The UI is entirely hardware accelerated WPF.
3. You're right about the AOT which is done off the device. It still does GC on the device for most apps which are CLR based but core WinRT stuff is manual management. NT doesn't do overcommit or mmap stuff either. Also the CLR GC runs concurrently.
4. The ecosystem isn't fragmented making centralised compilation and optimisation a reality. There are very few hardware combinations to support.
5. Better native type support in CLR. There are better unsigned and binary types in the CLR making micro-optimizations possible.
Comparing to android, Dalvik is damn slow. It seems to defer all GC until an inconvenient time and suck up lots of RAM in the process. If they get that ART compiler in there then it might be getting somewhere but I suspect from my experiments with my Moto G that the compiler has a different set of performance penalties.