Learning

Symbian OS Internals

Real-time kernel programming

By Jane Sales

Table of contents

1 Introducing EKA2

The history of EKA2
Basic OS concepts
Symbian OS design

2 Hardware for Symbian OS

Inside a Symbian OS phone
System-on-Chip (SoC)
Random Access Memory (RAM)
Flash memory
Interrupts
Timers
Direct Memory Access (DMA)
Liquid Crystal Display (LCD)
Audio
Power management

3 Threads, Processes and Libraries

What is a thread?
Nanokernel threads
Symbian OS threads
What is a process?
DProcess class
Scheduling
Dynamically loaded libraries

4 Inter-thread Communication

Client-server ITC
Asynchronous message queues
Kernel-side messages
Publish and subscribe
Shared chunks and shared I/O buffers

5 Kernel Services

Objects and handles
Services provided to user threads
Example user-accessible services
Services provided by the kernel to the kernel
Timers

6 Interrupts and Exceptions

Exception types
Exceptions on real hardware
Interrupts
Aborts, traps and faults

7 Memory Models

The memory model
MMUs and caches
The memory model interface
The memory models
Programmer APIs
Memory allocation
Low memory

8 Platform Security

Introduction
Unit of trust
Capability model
Data caging

9 The File Server

Overview
The file server client API
The file server
File systems

10 The Loader

E32 image file format
ROM image file format
The loader server
Kernel-side code management

11 The Window Server

The kernel’s event handler
Different types of events
How WSERV processes events
Processing key events
Processing pointer events
Client queues
A simple handwriting animation DLL
Window objects and classes
Properties of windows
Drawing to windows
Direct screen access
Platform security in WSERV

12 Device Drivers and Extensions

Device drivers and extensions in Symbian OS
Kernel extensions
The hardware abstraction layer
Device drivers
Differences between EKA1 and EKA2

13 Peripheral Support

DMA
Shared chunks
Media drivers and the local media sub-system
Peripheral bus controllers
MultiMediaCard support
USB device support

14 Kernel-Side Debug

Overview
Architecture
The kernel debug interface
Target debugger agents
Stop-mode debug API
Kernel trace channel

15 Power Management

Power states
Power framework
Typical power management
Managing idle time
Advanced power management

16 Boot Processes

Operating system startup
Alternative startup scenarios
Operating system shutdown
Operating system sleep and wakeup events

17 Real Time

What is real time?
Real time operating systems
EKA2 and real time
Real time application – GSM
Personality layers

18 Ensuring Performance

Writing efficient code
Maintaining real-time performance

Appendices

Glossary
The E32ImageHeader
The TRomImageHeader
Bibliography

 
book

Book facts

  • Author: Jane Sales
  • Published by Symbian
  • Publication date:October 2005
  • 918 pages
  • ISBN 0-470-02524-7

Buy from Amazon.com Buy from John Wiley & Sons

Available Translations

Japanese

Bulk orders

To make a bulk order of this Symbian Press title:

Email Symbian Press sales

Terms of use | Privacy policy | Media Center | Contact us | © 2008 Symbian