Symbian OS and Nokia’s CPU choice sidenote
Not a long blog post but more of a notification for all the Symbian and N8 users out there.
Symbian as an OS does something that few if any mobile OS’s out there do. It allows the networking (cellular) stack and applications to run on the same CPU. Ever wondered why your phone lags HARD when downloading emails (if set to headers only) and opening applications? This is it.
Worse still is the fact that current Symbian^3 devices still use ARM11 processors, we have the issues of a rather short processor pipeline and an in-order, single issue execution method. Meaning that the CPU can only handle a very few number of inputs per unit time in addition to the fact that it MUST complete each instruction before moving on to any instruction behind it, does not allow other instructions leap-frog it in the execution pipeline regardless of how long the instruction takes AND is only able to process one set of instructions at a time.
In layman’s terms, your email has to finish downloading before it can render AND you can’t interact with the OS before this happens either. Although S^1 didn’t support ARMv7 architecture well (Cortex A8 etc), S^3 does. Makes you wonder if Nokia made the decision to stick the ARM11 in there and why if they did that, they didn’t go for a dual core approach using an applications core and a networking core a la OMAP or a simply better CPU with a dual issue pipeline like a Cortex A8.
Ah well, if you make your bed, you gotta sleep in it.
Sidenote: Anandtech has a pretty awesome crash course in CPU architecture to help us not so smart people understand the differences between ARM11 and Cortex A8 in addition to CPU architecture and design.