Two Things Apple Got Absolutely Right In The iPhone 5s and iOS 7

Steve Williams

Site Founder, Site Owner, Administrator
Tim Worstall, Forbes

We’ve certainly had our fun around here with Apple's AAPL -0.74% recent product announcements, noting, for example that iOS7 seems to trigger motion sickness in that small portion of the population susceptible to it. Others have noticed that the iPhone 5c, the cheap one, isn’t actually all that cheap. But perhaps it’s worth having a look at two technical developments that Apple have got absolutely right with, respectively, the iPhone 5s and iOS 7.


The first is that they’ve successfully moved over to a 64 bit architecture on the A7 chip. 64 bit isn’t exactly new, it’s been around on the desktop (and in other architectures in the mid-sized computing world) for some time now but this is the first time that anyone has managed to get it all into a mobile architecture. That 64 bit would come to mobiles was obvious, as it is also obvious that somewhere down the line it will move to 128 bit and so on. These things just do happen in powers of 2 over time. The major difference now being that the processor can directly address more than 4 GB of RAM, something that as ever more computing power devolves down to those processors in our mobiles is going to be most useful.

But as John Naughton points out that’s not the real thing that is so remarkable here. Someone, somewhere, was going to make this move soon enough. What Apple should be congratulated upon is the manner by which they did it:

But for geeks, two things about iOS 7 stand out. One is the fact that Apple could completely rewrite a complex operating system for a 64-bit environment – and ship it in a relatively bug-free state, on time.

Given the nightmares that other companies have had even just trying to update an OS, let alone conduct an entire rewrite, yes, that is an impressive demonstration of Apple’s technical chops and of their project management ability.

The second thing is in iOS 7 and is best explained here.

At present, if your phone or tablet is connected to Wi-Fi and a cellular network at the same time, it can only use one or the other connection to transmit data. But what if your Wi-Fi connection or your 3G connection drops? Whatever data was being transmitted—data for an app, a webpage, an iMessage—will fail to arrive, and you have to try again, usually after getting a frustrating error message or a blank page. Just as importantly, if one of your connections to the internet slows down, or speeds up, your phone has no ability to use its other connections to its advantage, leading to a poorer and slower experience overall.

The solution to this is:

MultiPath TCP (MPTCP) is an effort towards enabling the simultaneous use of several IP-addresses/interfaces by a modification of TCP that presents a regular TCP interface to applications, while in fact spreading data across several subflows. Benefits of this include better resource utilization, better throughput and smoother reaction to failures.

In the sort of language that most of us will understand our phones have a number of ways of interacting with the internet. WiFi, 3G, 4G perhaps, and if we start our phone off in performing some task then it will use the one we tell it to. But, as often happens, if that 3 G signal starts to fail, of the WiFi router goes on the blink, it won’t then automatically switch to one of those other potential connections to finish the task. The decision on what connection to use is being taken by the meatspace object holding the phone in other words.

MPTCP is an attempt to get around this. It’s putting the choice of which connection to use where it probably should be, under the OS and nothing to do with any human being holding the phone. Check what’s the best way to connect at any moment and let the hardware/software do all of that work. Further, if a connection degrades at any point then automatically switch to the next best option. And finally, pick up the upload/download at the point it had reached rather than starting all over again.


This might seem trivial but it isn’t: for people have been head scratching over quite how to implement this for 5 years or so and Apple are indeed the first people to have brought it to fruition. It’s another testament to those technical chops.

So far, the only way that Apple’s devices appear to be using this protocol is to communicate with Siri

Well, yes, for the processing being done on that voice recognition is indeed being done in the cloud, on Apple’s servers, so better contact with said cloud is obviously going to improve Siri. But others will start to use it soon enough.

Another way of putting this is that sure, we’ve got that fingerprint thing, a better camera, a faster processor. But underneath the hood we’ve also had some very sophisticated engineering challenges met and solved. Maybe the iPhone 5s wasn’t, on the face of it, any great leap forward: but there’s no doubting Apple’s engineering and technical skills here.
 

amirm

Banned
Apr 2, 2010
15,813
38
0
Seattle, WA
Let's say we should not let non-technical writers write about such technical topics. The 64-bit features of A7 has probably taken 2 years to develop into an IC (parallel development to prior chips). That is plenty of time to get the software to work. And that work while not trivial, is not hard at all. You recompile the code and the compiler automatically does the work for you. Yes, there is software that has assumptions about 32-bit code and you find and fix them. But about 90% of the work for the apps is done automatically by the computer/compiler. The OS ("kernel") itself needs to be converted to 64-bit manually but that is pretty straightforward too and takes a couple of good OS people which Apple has plenty since they wrote the OS and have had 10+ years of experience in this front.

The 64-bit version of Windows was actually the work of a handful of people at Microsoft. Dave Cutler who led the development of Windows NT took a small team and did what I described above. Occasionally he would come to teams like I managed asking us to fix bugs that were brought out by the 64-bit mode.

On Multipath TCP, that is a proposed specification by IETF. As far as I recall, it is still at experimental stage. Other implementations already exist on Linux and Unix. Apple is simply the first commercial development of it. Currently Apple only uses it when it communicates to its own servers. Normal apps like the Safari browser don't use it. And at any rate, this not rocket science at all. Again, a single good networking expert can develop it especially given the open source implementations already available. Given its private use for their own service, it is even an easier thing to do.

The hardest part of this release is the 64-bit CPU. That took 1000 times more work than any of these bits. I will write a technical article later explaining what it really is.
 

About us

  • What’s Best Forum is THE forum for high end audio, product reviews, advice and sharing experiences on the best of everything else. This is THE place where audiophiles and audio companies discuss vintage, contemporary and new audio products, music servers, music streamers, computer audio, digital-to-analog converters, turntables, phono stages, cartridges, reel-to-reel tape machines, speakers, headphones and tube and solid-state amplification. Founded in 2010 What’s Best Forum invites intelligent and courteous people of all interests and backgrounds to describe and discuss the best of everything. From beginners to life-long hobbyists to industry professionals, we enjoy learning about new things and meeting new people, and participating in spirited debates.

Quick Navigation

User Menu

Steve Williams
Site Founder | Site Owner | Administrator
Ron Resnick
Site Co-Owner | Administrator
Julian (The Fixer)
Website Build | Marketing Managersing