LWN.net Logo

Linux and mobile telephony

Linux and mobile telephony

Posted Dec 5, 2002 10:07 UTC (Thu) by jonth (subscriber, #4008)
Parent article: Linux and mobile telephony

I've worked in the mobile comms industry for 8 years, and spent most of that time down in layer 1, but I've also implemented the GSM circuit switched data stack on the side. Linux has never been considered as a serious contender in any of the companies I've worked in, or sold to (and I've been to most of the tier 1s and a lot of tier 2 and 3s.)

Current vanilla mobile phones (GSM and GPRS with a not very sophisticated MMI) run in something like 1-2MB Flash and 256KB RAM on a processor with maybe 10 MIPs. Typically 20-30KB of the code footprint is the OS, and the rest is protocols and MMI. What we need in an OS is something small and light, not feature rich. Proper RTOSs like Nucleus or HIOS are used in these devices for this reason. We don't want sophisticated schedulers, we don't want fancy VM, we want minimal resource usage, guaranteed (fast) latencies, and completely deterministic behaviour. When I call a function to allocate memory, I want to know that it is guaranteed that the function will return with my memory in a specified number of microseconds. Linux, for all its strengths, is not suitable for this purpose. Neither, for that matter, is any Micro$oft OS I've come across. To give you an idea of the sort of timescales we deal with, the GSM/GPRS frame rate is 4.5 ms, and there are things than must be processed in the GPRS stack that have to happen in fractions of that. On a 10 MIP processor, this is not a trivial problem. (It was even worse in the old days. Back then we only had 1-2 MIPs and a similar sort of problem.)

IMO, as the PDA and mobile device markets converge, there will be a place for general purpose OSs like Linux or Pocket PC, but typically the architecture of these devices consists of several processors - usually one DSP for the signal processing, one microcontroller for the 'modem' functionality and then something a bit more sophisticated for the applications processor - this is the bit that has lots of RAM/ROM, runs at hundreds of MHz, and may run something like Symbian or Pocket PC - or Linux. The other bits either operate without an OS at all, or use an RTOS - eCos, uCOS, Nucleus, whatever.

Clearly, we will ultimately converge the modem and applications processors. As PDA type processors get more capable, the hard real-time constraints we have to deal with in the mobile world become much easier to acheive, and the general purpose OSs can start to compete. In a Linux based world, I'd use things like RTLinux or RTAI to provide the modem part, and then put the application part in Linux.



(Log in to post comments)

Linux and mobile telephony

Posted Dec 10, 2002 14:27 UTC (Tue) by eru (subscriber, #2753) [Link]

I'm sure nobody ever suggested running Linux on a DSP or a "plain old"
mobile phone, but "smartphones" using a separate processor to run the
fancy features already exist on the market (at least here in Europe)
from most manufacturers, and they do need a fairly sophisticated OS.
So the development you outlined in your 3. paragraph has already happened
a while back.

But between the Symbian vs. Windows battle I don't see much opportunity
for Linux in the phone market :-(. Even source availability is this time
not a unique selling point, since Symbian licenses the code in source
form (I think there is a kind of "gated community" arrangement).
Interestingly, the availability of source code was one factor in the
well-known "defection" of Sendo (a phone maker) from the Microsoft
camp to Symbian.

Linux and mobile telephony

Posted Dec 11, 2002 10:57 UTC (Wed) by jonth (subscriber, #4008) [Link]

It's true that developments using more sophisticated OSs have happened in multi-processor environments. It's just that I have yet to hear of anyone doing it with Linux as that OS.

And I tend to agree with you that Symbian and M$ have this one sewn up at the moment. Now, if someone did an Open Source implementation of the UMTS/GPRS stack, we'd be in business, but this is highly unlikely. It's way outside the scope of a 'bedroom' project, and it takes so much money to develop it needs a seriously rich company to be able to donate that level of development to the community.

Linux and mobile telephony

Posted Aug 1, 2003 2:46 UTC (Fri) by wumpus (guest, #13546) [Link]

Well... it could start with an open source implementation of the GSM stack, GPRS and friends can be added later on. It should be possible, before Linux noone ever thought a OS was within the scope of an OSD project, now it is, why wouldn't a GSM stack be?

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds