
1.1 The Origins of Mobile Phones
1.2 From 2G to 3G
1.3 Mobile Phone Evolution
1.4 Technology and Soft Effects
1.5 Disruption and Complexity
1.6 The Thing About Mobile Phones
2.1 The State of the Art
2.2 In the Beginning
2.3 The Prehistory of Psion
2.4 The Beginnings of Symbian OS
2.5 The Mobile Opportunity
2.6 Background to the First Licensee Projects
2.7 Device Families
2.8 Operating System Influences
3.1 Design Goals and Architecture
3.2 Basic Design Patterns of Symbian OS
3.3 Why Architecture Matters
3.4 Symbian OS Layer by Layer
3.5 The Key Design Patterns
3.6 The Application Perspective
3.7 Symbian OS Idioms
3.8 Platform Security from Symbian OS v9
4.1 Background
4.2 The Big Attraction
4.3 The Origins of Object Orientation
4.4 The Key Ideas of Object Orientation
4.5 The Languages of Object Orientation
5.1 Introduction
5.2 Basic Concepts
5.3 Layer-by-Layer Summary of the Symbian OS v9.3
Model
5.4 What the Model Does Not Show
5.5 History
6.1 Introduction
6.2 Purpose
6.3 Design Goals
6.4 Overview
6.5 Architecture
6.6 A Short History
6.7 Component Collections
7.1 Introduction
7.2 Purpose
7.3 Design Goals
7.4 Overview
7.5 Legacy Application Engines
7.6 Architecture
7.7 Component Collections
8.1 Introduction
8.2 Purpose
8.3 Design Goals
8.4 Overview
8.5 Architecture
8.6 Generic OS Services Block
8.7 Multimedia and Graphics Services Block
8.8 Connectivity Services Block
9.1 Introduction
9.2 Purpose
9.3 Design Goals
9.4 Overview
9.5 Architecture
9.6 Comms Framework
9.7 Telephony Services
9.8 Networking Services
9.9 Short-link Services
10.1 Introduction
10.2 Purpose
10.3 Design Goals
10.4 Overview
10.5 Architecture
10.6 Component Collections
11.1 Introduction
11.2 Purpose
11.3 Design Goals
11.4 Overview
11.5 EKA1 and EKA2
11.6 Singleton Component Collections
11.7 Kernel Architecture Block
11.8 Kernel Architecture Component Collections
12.1 Introduction
12.2 Requirements of the Java ME Subsystem
12.3 Design Goals for the Java ME Subsystem
12.5 Architecture
12.6 Component Collections
13 Notes on the Evolution of Symbian OS
13.1 The State of the Art
13.2 Summary of Symbian OS v6 Releases
13.3 Summary of Symbian OS v7 Releases
13.4 Summary of Symbian OS v8 Releases
13.5 Summary of Symbian OS v9 Releases
14.1 Introduction
14.2 Pioneering the Object Approach in Psion
14.3 A Thoroughly Object-oriented Operating System
15 Just Add Phone
15.1 Introduction
15.2 Anatomy of a Phone
15.3 The Phone Operating System
15.4 Telephony
15.5 Messaging: It’s Different on a Phone
16.1 Introduction
16.2 Background to the Eikon GUI
16.3 Eikon Design Point
16.4 The Device Family Strategy
16.5 Quartz
16.6 Pearl
16.7 Nightingale
16.8 How to Develop a World-class GUI
16.9 Symbian OS User Interface Architecture
16.10 Future Directions
17.1 Introduction
17.2 Design Lifetime
17.3 Renewal in Symbian OS
17.4 Evolution in the Kernel
17.5 Telephony Evolution
17.6 Sound and Vision Evolution
17.7 Defining the Skin
17.8 Moving Towards Standard C++
18 Creative Zoo or Software Factory?
18.1 Introduction
18.2 The Software Problem
18.3 Too Many Dragons
18.4 Software Development Approaches
18.5 What Making Software Is Really About
Appendix A: Symbian OS Component Reference
Appendix B: Biographies of Interviewees
