90% of the CPUs in the world are not in desktops and notebooks. They are in embedded systems like cell phones, PDAs, digital cameras, camcorders, game machines, iPods, MP3 players, CD players, DVD recorders, wireless routers, TV sets, GPS receivers, laser printers, cars, and many more consumer products. Most of these use modern 32-bit and 64-bit chips, and nearly all of them run a fullblown operating system. But few people are even aware of the existence of these operating systems. In this chapter we will take a close look at one operating system popular in the embedded systems world: Symbian OS.
Symbian OS is an operating system that runs on mobile ‘‘smartphone’’ platforms from several different manufacturers. Smartphones are so named because they run fully-featured operating systems and utilize the features of desktop computers.
Symbian OS is designed so that it can be the basis of a wide variety of smartphones from several different manufacturers. It was carefully designed specifically to run on smartphone platforms: general-purpose computers with limited
CPU, memory and storage capacity, focused on communication.
Our discussion of Symbian OS will start with its history. We will then provide an overview of the system to give an idea of how it is designed and what uses the designers intended for it. Next we will examine the various aspects of Symbian
OS design as we have for Linux and for Windows: we will look at processes, memory management, I/O, the file system, and security. We will conclude with a look at how Symbian OS addresses communication in smartphones.
THE HISTORY OF SYMBIAN OS
UNIX has a long history, almost ancient in terms of computers. Windows has a moderately long history. Symbian OS, on the other hand, has a fairly short history.
It has roots in systems that were developed in the 1990’s and its debut was in
2001. This should not be surprising, since the smartphone platform upon which
Symbian OS runs has