Your Smartphone's Memory - Keeping It Clean, Keeping It Smooth

Steve Litchfield explains the importance of free RAM memory to a smartphone's operation, and lists things to bear in mind when choosing and using a Nokia S60 smartphone.

Smartphone's memory architectureYou'll all remember the old quote from Bill Gates: "640K should be enough for anyone", when talking about RAM (Random Access Memory) on a PC. That estimate was quickly proved horribly inaccurate, of course, because of Windows' voracious appetite for memory, but the world of smartphones (and Symbian OS in particular) is quite different and typical RAM figures are still of the order of 10 to 20MB, while PCs routinely come with 1GB.

Note that I'm talking about RAM here, not what Nokia simplistically call 'memory'. If you're not sure what I'm talking about, spend a minute or so perusing the diagram on the right. Although you don't need to know the exact ins and outs of how your phone works, it certainly helps when trying to work out why something's not working. Kind of like a car. Your mum probably hasn't the faintest idea of what goes on under the bonnet of her car, which is why she calls you when anything goes wrong. And why she's probably giving it a much harder time in normal use than you would, simply because she's not sympathetic to how it works. It's more or less the same with smartphones!

When manufacturers talk about memory, they usually mean the flash storage chips on which you can store files and install applications. RAM, or 'dynamic memory', is the physical chip in which Operating System and all your programs actually run, do their business, and so on. And it's vital, absolutely vital, to be aware of your RAM and treat it carefully if you want to avoid running into problems later on. Over and over again, I see problems on AllAboutSymbian forums, to do with things falling over because of lack of 'memory', and in most cases the device is talking about RAM, not flash memory.

Now, in what follows I'm going to have to give a few examples and quote a few figures. For the sake of argument I'm going to use a standard Nokia 6630, a pretty average 'current generation' Symbian smartphone, but the arguments and principles involved are equally applicable to any Series 60, Series 80 (i.e. Communicator) or UIQ-based smartphone. Here's the 6630's RAM, showing a typical (though best-case) sensibly-used handset, with applications being started (but not exited) one by one. Remembering that this is how things appear when everything's going well, look how the available RAM still gets swallowed up:

Normal RAM use

Let's recap. At this point, on a perfectly normal S60 smartphone, we have Messaging, Contacts, Calendar, Camera, Gallery, Web and Log, all running happily at the same time, in the background - which is what we expect from a Symbian OS smartphone. Each can be switched to more or less instantaneously, with no startup delay. Now, each of these programs are Nokia or Symbian written, designed to use your precious RAM very efficiently. Web is by far the biggest culprit and you won't be surprised to hear me advise that starting Web (or Opera, or NetFront) on any smartphone is always going to hit your RAM hard.

But let's add a hungry third party program into the equation. Starting up my own Musician (itself a tiny Python script) involves running up the Python interpreter, and this needs up to 2MB of RAM to run properly. Or it could be your favourite J2ME (Java) game. Or your satellite navigation software. Or the Opera web browser. What happens here is that the third party application will at best pause, at worst close down with a suitable 'low on memory' message, while Symbian OS has a clean-up and closes down most of the other programs running in RAM. No data is lost, of course, and within a second or two your free RAM is back up to 8MB or so (you'll never get back to the original figure after the reboot because there are all sorts of OS memory needs to take into account). You then try your application or game again and it runs perfectly happily. Next time you need Contacts or Calendar or any of the other applications mentioned here, they'll be started up from scratch and kept in RAM until the next low memory situation. And, on the whole, things work acceptably, if not entirely smoothly.

However, there are several things which can go 'wrong'. Firstly, the starting figure for free RAM (in the example above, 9MB) has a huge effect on the point at which RAM starts to run out. Either because of operator-added 'features' (as in Orange-branded S60 devices), or because the OS itself needs a little more room (as in the RAM-challenged Nokia 6680), or because a user has added low level utilities and system files that are always 'in memory', it's not unheard of for smartphones to start with as little as 6MB free. Looking at the diagram above, starting with 3MB less RAM would mean that all applications would get closed when Web was started, leading to frequent delays and regular frustration.

Of course, things improve if the free RAM figure is higher. The newer Nokia N70 has a whopping 32MB of free RAM, so you should never, ever hit this kind of problem. The clamshell Nokia 9500 has over 24MB free, while the Sony Ericsson P910i has just over 20MB.

Now, there's probably not a lot you can do about the base memory configuration of your smartphone, it's as you bought it, complete with basic spec and operator branding (make a note to yourself to try and buy SIM-free next time, perhaps?) If you want to push your smartphone to the limit and are frustrated with low RAM, it might be time to upgrade to something with more RAM (e.g. hitting limits on a Nokia 6680 and going up to the N70). However, what you install and how you use the device also has a big effect. Here are the bullet points:

Finally, I was going to suggest that we all write letters to Nokia and Sony Ericsson, pleading for a more realistic amount of RAM in their smartphones - but I believe they've already learnt their lesson, with everything announced in the last year or so having a much higher amount of dynamic memory.

Which leaves you and I, the users with less-than-cutting-edge smartphones, having to scrimp and save on RAM in order to keep our devices working properly. Though I still believe the stability benefits and real time performance of Symbian OS and Series 60 are better than the competition and worth persevering with.

I do hope this article has been a help to you in your own daily smartphone use.

Steve Litchfield, February 2006

Published by Steve Litchfield at 14:17 UTC, February 24th

Section: Articles
Categories: How To
Platforms: Series 60, Series 80, UIQ, General, N-Gage