Banner 3
Sunday, October 3, 2010

SYMBIAN DESIGN

Symbian features pre-emptive multitasking and memory protection, like other operating systems (especially those created for use on desktop computers). EPOC's approach to multitasking was inspired by VMS and is based on asynchronous server-based events.
Symbian OS was created with three systems design principles in mind:
  • the integrity and security of user data is paramount,
  • user time must not be wasted, and
  • all resources are scarce.

To best follow these principles, Symbian uses a microkernel, has a request-and-callback approach to services, and maintains separation between user interface and engine. The OS is optimised for low-power battery-based devices and for ROM-based systems (e.g. features like XIP and re-entrancy in shared libraries). Applications, and the OS itself, follow an object-oriented design: Model-view-controller (MVC).

Later OS iterations diluted this approach in response to market demands, notably with the introduction of a real-time kernel and a platform security model in versions 8 and 9.
There is a strong emphasis on conserving resources which is exemplified by Symbian-specific programming idioms like descriptors and a cleanup stack. There are similar techniques for conserving disk space (though the disks on Symbian devices are usually flash memory). Furthermore, all Symbian programming is event-based, and the CPU is switched into a low power mode when applications are not directly dealing with an event. This is achieved through a programming idiom called active objects. Similarly the Symbian approach to threads and processes is driven by reducing overheads.

The Symbian kernel (EKA2) supports sufficiently-fast real-time response to build a single-core phone around it — that is, a phone in which a single processor core executes both the user applications and the signalling stack.This has allowed Symbian EKA2 phones to become smaller, cheaper and more power efficient than their predecessors

0 comments:

Post a Comment