Embedded Operating system SYMBIAN OS Amonoy, Florante Alonzo, Jan kasper Cadag, Paul John Nera, Carl Arwin See, Michael Angelo Prof. AntonetteDaligdig
History/Origin 1980s • In 1980, Psion was founded by David Potter. • Psion begins development of its “SIBO” (“Sixteen Bit Organizer”) family of devices and its own new multitasking operating system called EPOC to run its PDA(“personal digital assistant”) products. • EPOC16 was the operating system develop by Psion in the late 80s and 90s for Psion “SIBO” (“Sixteen Bit Organizer”).
1990s • Series 3c with additional infrared capability. • EPOC32 OS was developed in the mid 90s for the ARM family processor. • In June 1998, Psion software became Symbian a major joint between Psion and Phone manufacturers Ericsson, Motorola, and Nokia. • EPOC OS became Symbian OS.
2000 • First phone: The ericsson R380 using ER5u(Symbian OS v5.1) in November 2000. u in the name refers to the fact that it supported Unicode. 2001 • Symbian OS became version 6 and 6.1. • First “Open” Symbian OS phone, The Nokia 9210 communicator, Bluetooth support was added. • Nokia s60 UI reached a market, a keypad based UI a smartphones. One of them was Nokia 7650 smartphone Symbian OS 6.1) w/ first built in camera, w/ VGA (0.3 Mpx) resolution.
2003 • Shipment of Symbian OS 7.0 and 7.0s. • Important Symbian release which appeared of all contemporary UI including UIQ(sonyericsson P800, P900, P 910, Motorola A925, A1000) series 80 (Nokia 9300, 9500), Series 90 (Nokia 7710), Series 60 ( Nokia 3230, 6260, 6670, 7610. • It also added EDGE(Enchaced Data Rates for Global Evolution) support and IPv6 (Internet Protocol v.6) 2004 • Psion sold its stake in Symbian. Bluetooth spread itself to nearby phones. • Release of Symbian OS v8 with enhanced performanced of realtime functions.
2005 • Substantial changes were needed for Symbian OS v9.0 in terms of tools and security, but this should be a one-of event. • Early release of Symbian OS v9.1. It includes many new security related features. • Support for Bluetooth 2.0 2006 • Released of Symbian OS v9.2. More Nokia phones w/ Symbian OS. • Symbian OS v9.3. Improved memory management and native support of Wifi
2008 • Applications launched up to 75% faster. 2009 • Becoming a “open source”.
Processing Characteristics: • Threads • Threads: Form the central unit of multi-tasking • Process is simply seen by the operating system as a collection of threads with a process control block and some memory space. • Thread support in Symbian OS is based in Nanokernel and Nanothreads. • Nanothreads • Run in previledge mode and need a stack to store their runtime evironment data. • cannot run in user mode • Nanothreads can be the following: • Suspended • Fast sephamore wait • DFC wait • Sleep • Other
Processes • Concepts of process state and process scheduling have already been defined by Symbian OS threads and nanothreads • Scheduling a process, then, is really implemented by scheduling a thread and initializing the right process control block to use for its data needs • Processes • Symbian OS threads organized under a single process work together in several ways: • First, there is a single main thread that is marked as the starting point for the process • Second, threads share scheduling parameters. Changing parameters, that is, the method of scheduling, for the process changes the parameters for all threads • Processes • Symbian OS threads organized under a single process work together in several ways: • Third, threads share memory space objects, including device and other object descriptors • Finally, when a process is terminated, the kernel terminates all threads in the process
Memory Management characteristics: Systems with No Virtual Memory • Only storage available to the operating system on these platforms is memory; they do not come with a disk drive • Do not support a demand paged virtual memory • Memory space used in most small platform devices. Typically, have two types of storage: RAM and flash memory Systems with No Virtual Memory • RAM • Stores the operating system code (to be used when the system boots) • flash memory • used for both operating memory and permanent (file) storage • It is possible to add extra flash memory to a device (such as a SD [Secure Digital] card), and this memory is used exclusively for permanent storage.
Input and Output characteristics: Device Drivers • Device driver in Symbian OS is split into two levels: • A logical device driver (LDD) • Presents an interface to upper layers of software • A physical device driver (PDD) • Interacts directly with hardware Kernel Extensions • Kernel extensions are device drivers that are loaded by Symbian OS at boot time • Provided for two reasons: • First, it matches the object-oriented design abstractions we have come to see as characteristic of microkernel design • Second, it allows the separate platforms that Symbian OS runs on to run specialized device drivers that enable the hardware for each platform without recompiling the kernel
Input and Output characteristics: Direct Memory Access • Device drivers frequently make use of DMA and Symbian OS supports the use of DMA hardware • DMA hardware consists of a controller that controls a set of DMA channels Special Case: Storage Media • Media drivers are a special form of PDD in Symbian OS that are used exclusively by the file server to implement access to storage media devices • The file server in Symbian OS can support up to 26 different drives at the same time • Local drives are distinguished by their drive letter, as in Windows
Input and Output characteristics: Blocking I/O • Symbian OS deals with blocking I/O through active objects • The weight of all threads waiting on I/O event affects the other threads in the system • Active objects allow blocking I/O calls to be handled by the operating system rather than the process itself • Active objects are coordinated by a single scheduler and implemented in a single thread Removable Media • Removable media needs a controller, a driver, a bus structure, and will probably communicate to the CPU through DMA • Symbian OS provides software controllers that control each supported card • Symbian OS provides a series of events that occur when state changes happen
Features • Client- Server Architecture • In Symbian OS, clients are programs that have user interfaces, and servers are programs that can only be accessed via a well defined interface from other programs • Event Management • Event management has long been considered core strength of Symbian OS - reflecting the fact that Symbian OS was designed from the start to have event based time sharing in a single thread
Features Object Oriented Design Because Symbian OS has an object oriented design, it is easy to configure for different sorts of hardware, and being component based, it allows manufacturers to add or remove components This will provide a stable base as the telecommunications industry moves from 2G to 2.5G to 3G to 4G, with the further introduction of new technologies such as SyncML, BlueTooth, and Multimedia Messaging amongst many
Features • Power Management • Symbian OS users are used to the performance of mobile phones - and so demand similar performance in terms of weight and operating times when they adopt new devices • Power management is built into the kernel of Symbian OS and is designed to make efficient use of the processors and peripherals and so minimize power usage
Features • Robust and Dependable • Devices should not lose user data, crash or require rebooting • Symbian achieves this in two ways: • Each process runs in a protected address space, thus it is not possible for one application to overwrite another’s address space. The kernel also runs in a protected address space, so that a bug in one application cannot overwrite the kernel’s stack or heap.
Features • Memory Management • For stand alone portable devices, memory management is important • The need to minimize weight, device size and cost means the amount of memory available on a Symbian OS device is often quite limited • Symbian OS always assumes that the memory available is limited, and minimizes consumption at every turn • Consequently, less memory is actually required by the system also having less memory helps to keep down power consumption
Features • Full Multitasking • Symbian OS runs each application as a separate process, allowing multiple applications to run concurrently • An Open Operating System • Symbian OS is an open OS • Open to anyone to license • Open to anyone to develop application • Based on open standards • Owned by the industry
Strengths • Memory Management • The absence of demand-paged virtual memory does not mean the absence of memory management, smaller platforms are built on hardware that includes many of the management features of larger systems. • Execution in place • Platforms with no disk drives usually support execution in-place • Flash memory is mapped into the virtual address space and programs can be executed directly from flash memory, without copying them into RAM first.
Weaknesses • No Virtual Memory • The only storage available to the operating system on these platforms is memory; they do not come with a disk drive. • Smaller systems, from PDAs to smart phones to higher level handheld devices, do not support a demand paged virtual memory
Devices that used Symbian OS On 16 November 2006, the 100 millionth smartphone running the OS was shipped. • Ericsson R380 (2000) was the first commercially available phone based on Symbian OS. As with the modern "FOMA" phones, this device was closed, and the user could not install new C++ applications. Unlike those, however, the R380 could not even run Java applications, and for this reason, some have questioned whether it can properly be termed a 'smartphone'. • Nokia Series 80 interface: • Nokia 9210 Communicator smartphone (32-bit 66 MHz ARM9-based RISC CPU) (2001), 9300(2004), 9500 Communicator (2004) using the Nokia Series 80 interface • UIQ interface: • Used for PDAs such as Sony Ericsson P800 (2002), P900 (2003), P910 (2004), P990 (2005), W950 (2006), M600 (2006), P1 (2007), W960 (2007), G700 (2008), G900 (2008), G702 (2008), Motorola A920, A925, A1000, RIZR Z8, RIZR Z10, DoCoMo M1000, BenQ P30, P31 and Nokia 6708 using this interface.
Nokia S60 (2002) interface: • Nokia S60 is used in various phones, the first being the Nokia 7650, then the Nokia 3650, followed by the Nokia 3620/3660, Nokia 6600, Nokia 7610, Nokia 6670 and Nokia 3230. The Nokia N-Gage and Nokia N-Gage QD gaming/smartphone combos are also S60 platform devices. It was also used on other manufacturers' phones such as the Siemens SX1, Sendo X, Panasonic X700, Panasonic X800, Samsung SGH-D730, SGH-D720 and the Samsung SGH-Z600. Recent, more advanced devices using S60 include the Nokia 6620, Nokia 6630, the Nokia 6680, Nokia 6681 and Nokia 6682, Nokia 6120 classic, Nokia 6121 classic, Nokia 6220,a next generation Nseries, including the Nokia N70, Nokia N71, Nokia N72, Nokia N73, Nokia N75, Nokia N76, Nokia N77, Nokia N78, Nokia N79, Nokia N80, Nokia N81, Nokia N82, Nokia N85, Nokia N90, Nokia N91, Nokia N92, Nokia N93, Nokia N95, Nokia N96 and Nokia N97. The enterprise (i.e. business) model Eseries, including the Nokia E50, Nokia E51, Nokia E60, Nokia E61, Nokia E62, Nokia E63, Nokia E65, Nokia E66, Nokia E70, Nokia E71, Nokia E71x, Nokia E78, and Nokia E90 and some of the models of Nokia Xpress music mobiles like Nokia 5320, Nokia 5700, Nokia 5630, Nokia 5800 and Nokia 5530 XpressMusic.
Nokia Series 90 interface: • Nokia 7710 (2004) using the Nokia Series 90 interface. • MOAP(S) interface: • Fujitsu, Mitsubishi, Sony Ericsson and Sharp phones for NTT DoCoMo in Japan, using an interface developed specifically for DoCoMo's FOMA "Freedom of Mobile Access" network brand. This UI platform is called MOAP "Mobile Oriented Applications Platform" and is based on the UI from earlier Fujitsu FOMA models.