Interrupt Handling in Symbian and Linux Mobile Operating Systems

Interrupt Handling in Symbian and Linux Mobile Operating Systems

Ashraf M.A. Ahmad (Princess Sumaya University for Technology, Jordan) and Mariam M. Biltawi (Princess Sumaya University for Technology, Jordan)
DOI: 10.4018/978-1-61520-761-9.ch011
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Handling interrupts is at the heart of a real time operating systems, such operating systems are the Mobile OS. The most commonly used Mobile OS are the Symbian and RT-Linux operating systems. This paper will introduce the differences of interrupt handling in many different aspects to measure these differences effect on mobile applications performance and throughput. The major contributions to this chapter are first to introduce the interrupt handling mechanism in mobile system with through elaboration on the types of interrupt handling that a Mobile OS may use. Then a deep analysis for both interrupt handling mechanisms used by the Symbian and RT-Linux OS is presented. A comprehensive conclusion will be explained about the major differences in all aspects among both Symbian and RT Linux mobile OS.
Chapter Preview
Top

Introduction

The production and usage of handheld computers in the form of smart phones have been growing rapidly the last few years, at the same time as the market share of PDAs (Personal Digital Assistants) in their pure form have declined. Due to the development of mobile industry from the hardware perspective, the production and programming of softwares that control the interaction with the hardware must be taken into consideration; this software is called the “mobile operating system.” All the mobile operating systems are considered real time operating systems. A real time operating system is a system that requires the computing result to be correct and produced in a specified deadline period. It should also be single purposed having a small size with inexpensive mass-production and specified timing requirements.

Mobile operating system puts constraints on a suitable operating system similar to those of advanced PDAs. The operating system has to have a low memory footprint and a low dynamic memory usage, an efficient power management framework, and real-time support for communication and telephony protocols. Furthermore, users often have a more cavalier attitude to mobile phones than to PCs. For instance, when removing the battery while the phone is still switched on a user still expects device and data integrity. Thus the mobile operating system needs a completely new architecture and different features to provide adequate services for handheld devices which can be illustrated in six layers as in figure 1:

Figure 1.

Layered architecture of mobile OS

The dominant mobile CPU market in respect to cores and architectures is the one designed by Cambridge-based ARM Holdings Ltd. The features of the mobile processors must include: high performance, low power consumption, multimedia capability, and real-time capability.

The goal of this paper is to compare the interrupt handling for two mobile operating systems; the Symbian OS and the Linux OS, the palm OS would have been a part of the comparison if it did not switch to Linux. The Palm OS is a single threaded operating system unlike the Symbian OS and the Linux OS which are multi-threaded. Due to the fact that developers are leaning towards the production of bigger applications for the mobile operating systems, it will be a problem for the Palm OS to stay single threaded because bigger applications need multi-threading. With the Linux-based operating system, Palm hopes to enhance the everyday mobile user's experience with an OS, by making it more reliable and performing better than the previous generation of Palm OS.

Handling interrupts is at the heart of a real time operating system. Managing the interaction with external systems through effective use of interrupts can dramatically improve system efficiency and the use of processing resources. Numerous actions are occurring simultaneously at a single point and thus have to be handled efficiently and in a fast manner. Interrupts are a pinnacle point in the architecture of modern CPU’s, to illustrate this point further: The basic mechanism for interrupts is as follows: the CPU hardware has a wire called the interrupt-request line, this line is pulled after each instruction the CPU finishes. If any device has “pulled” the wire, the CPU performs a state save and jumps to the interrupt handler routine. The interrupt handler determines what raised the interrupt, performs what has to be done, does a state restore, and executes a return from interrupt instruction to return the CPU to the state prior to the interrupt.

Complete Chapter List

Search this Book:
Reset