Symbian OS Internals: Real-time Kernel Programming (Paperback)
暫譯: Symbian OS 內部結構:即時核心程式設計 (平裝本)

Jane Sales

  • 出版商: Wiley
  • 出版日期: 2005-12-16
  • 定價: $2,800
  • 售價: 5.0$1,400
  • 語言: 英文
  • 頁數: 936
  • 裝訂: Paperback
  • ISBN: 0470025247
  • ISBN-13: 9780470025246
  • 相關分類: Operating-system
  • 立即出貨(限量)

買這商品的人也買了...

相關主題

商品描述

Description

Take a look inside Symbian OS with an under-the-hood view of Symbian's revolutionary new real-time smartphone kernel

  • Describes the functioning of the new real-time kernel, which will become ubiquitious on Symbian OS phones in the next 5-10 years
  • Will benefit the base-porting engineer by providing a more solid understanding of the OS being ported
  • Contains an in-depth explanation of how Symbian OS drivers work. Device drivers have changed considerably with the introduction of a single code - this book helps those converting them to the new kernel
  • The book has broad appeal and is relevant to all who work with Symbian OS at a low level, whatever Symbian OS they are targeting
  • Written by the engineers who actually designed and built the real-time kernel

 

Table of Contents

Chapter 1 Introducing EKA2.

1.1 The history of EKA2.

1.2 Basic OS concepts.

1.3 Symbian OS design.

1.4 Summary.

Chapter 2 Hardware for Symbian OS.

2.1 Inside a Symbian OS phone.

2.2 System on Chip (SoC).

2.3 Random Access Memory (RAM).

2.4 Flash memory.

2.5 Interrupts.

2.6 Timers.

2.7 Direct Memory Access (DMA).

2.8 Liquid Crystal Display (LCD).

2.9 Audio.

2.10 Power management.

2.11 Summary.

Chapter 3 Threads,Processes and Libraries.

3.1 What is a thread?

3.2 Nanokernel threads.

3.3 Symbian OS threads.

3.4 What is a process?

3.5 DProcess class.

3.6 Scheduling.

3.7 Dynamically loaded libraries.

3.8 Summary.

Chapter 4 Inter Thread Communication.

4.1 Client-server ITC.

4.2 Asynchronous message queues.

4.3 Kernel-side messages.

4.4 Publish and subscribe.

4.5 Shared Chunks & Shared I/O buffers.

4.6 Summary.

Chapter 5 Kernel Services.

5.1 Objects and handles.

5.2 Services provided to user threads.

5.3 Example user-accessible services.

5.4 Services provided by the kernel to the kernel.

5.5 Timers.

5.6 Summary.

Chapter 6 Interrupts and Exception.

6.1 Exception types.

6.2 Exceptions on real hardware.

6.3 Interrupts.

6.4 Aborts, traps and faults.

6.5 Summary.

Chapter 7 Memory Models.

7.1 The memory model.

7.2 MMUs and caches.

7.3 The memory model interface.

7.4 The memory models.

7.5 Programmer APIs.

7.6 Memory allocation.

7.7 User memory.

7.8 Low memory.

7.9 Summary.

Chapter 8 Platform Security.

8.1  Introduction.

8.2 Platform security architecture.

8.3 Unit of trust.

8.4 Capability Model.

8.5 Data caging.

8.6  Summary.

Chapter 9 The File Server.

9.1 Overview.

9.2 The file server client API.

9.3 The file server.

9.4 File systems.

9.5 Summary.

Chapter 10 The Loader.

10.1 E32 image file format.

10.2 ROM image file format.

10.3 The loader server.

10.4 Kernel-side code management.

10.5 Summary.

Chapter 11 The Window Server.

11.1 The kernel’s event handler.

11.2 Different types of events.

11.3 How WSERV processes events.

11.4 Processing key events.

11.5 Processing pointer events.

11.6 Client queues.

11.7 A simple handwriting animation DLL.

11.8 Window objects and classes.

11.9 Properties of windows.

11.10 Drawing to windows.

11.11 Direct screen access.

11.12 Platform Security in WSERV.

11.13 Summary.

Chapter 12 Device Drivers and Extensions.

12.1 Device drivers and extensions in Symbian OS.

12.2 Kernel extensions.

12.3 The hardware abstraction layer.

12.4 Device drivers.

12.5 Differences between EKA1 and EKA2.

12.6 Summary.

Chapter 13 Peripheral support.

13.1 DMA.

13.2 Shared chunks.

13.3 Media drivers and the local media sub-system.

13.4 Peripheral bus controllers.

13.5 MultiMediaCard support.

13.6 USB device support.

13.7 Summary.

Chapter 14 Kernel-side Debug.

14.1 Overview.

14.2 Architecture.

14.3 The kernel debug interface.

14.4 Target debugger agents.

14.5 Stop-mode debug API.

14.6 Kernel trace channel.

14.7 Summary.

Chapter 15 Power Management.

15.1 Power states.

15.2 Power framework.

15.3 Typical power management.

15.4 Managing idle time.

15.5 Advanced power management.

15.6 Summary.

Chapter 16 Boot Processes.

16.1 Operating system startup.

16.2 Alternative startup scenarios.

16.3 Operating system shutdown.

16.4 Operating system sleep and wake-up events.

16.5 Summary.

Chapter 17 Real Time.

17.1 What is real time?

17.2 Real time operating systems.

17.3 EKA2 and real time.

17.4 Real time application – GSM.

17.5 Personality layers.

17.6 Summary.

Chapter 18 Ensuring Performance.

18.1 Writing efficient code.

18.2 Maintaining real-time performance.

18.3 Summary.

Appendix 1.

Appendix 2.

Appendix 3.

商品描述(中文翻譯)

**描述**
深入了解 Symbian OS,探索 Symbian 革命性的新即時智慧型手機核心的內部運作。

- 描述新即時核心的運作,該核心將在未來 5-10 年內普遍應用於 Symbian OS 手機。
- 對於基礎移植工程師來說,提供對被移植操作系統更深入的理解。
- 包含 Symbian OS 驅動程式運作的深入解釋。隨著單一代碼的引入,設備驅動程式發生了顯著變化,本書幫助那些將其轉換為新核心的人。
- 本書具有廣泛的吸引力,與所有在低層次上使用 Symbian OS 的人相關,無論他們針對的是哪個 Symbian OS。
- 由實際設計和構建即時核心的工程師撰寫。

**目錄**
第 1 章 介紹 EKA2。
1.1 EKA2 的歷史。
1.2 基本操作系統概念。
1.3 Symbian OS 設計。
1.4 總結。

第 2 章 Symbian OS 的硬體。
2.1 Symbian OS 手機內部。
2.2 系統單晶片 (SoC)。
2.3 隨機存取記憶體 (RAM)。
2.4 快閃記憶體。
2.5 中斷。
2.6 計時器。
2.7 直接記憶體存取 (DMA)。
2.8 液晶顯示器 (LCD)。
2.9 音頻。
2.10 電源管理。
2.11 總結。

第 3 章 執行緒、進程和庫。
3.1 什麼是執行緒?
3.2 Nanokernel 執行緒。
3.3 Symbian OS 執行緒。
3.4 什麼是進程?
3.5 DProcess 類。
3.6 調度。
3.7 動態加載的庫。
3.8 總結。

第 4 章 執行緒間通信。
4.1 客戶端-伺服器 ITC。
4.2 非同步消息隊列。
4.3 核心側消息。
4.4 發佈與訂閱。
4.5 共享區塊與共享 I/O 緩衝區。
4.6 總結。

第 5 章 核心服務。
5.1 對象和句柄。
5.2 提供給用戶執行緒的服務。
5.3 示例用戶可訪問的服務。
5.4 核心提供給核心的服務。
5.5 計時器。
5.6 總結。

第 6 章 中斷和異常。
6.1 異常類型。
6.2 實際硬體上的異常。
6.3 中斷。
6.4 中止、陷阱和故障。
6.5 總結。

第 7 章 記憶體模型。
7.1 記憶體模型。
7.2 MMU 和快取。
7.3 記憶體模型介面。
7.4 記憶體模型。
7.5 程式設計師 API。
7.6 記憶體分配。
7.7 用戶記憶體。
7.8 低記憶體。
7.9 總結。

第 8 章 平台安全性。
8.1 介紹。
8.2 平台安全架構。
8.3 信任單元。
8.4 能力模型。
8.5 數據隔離。
8.6 總結。

第 9 章 檔案伺服器。
9.1 概述。
9.2 檔案伺服器客戶端 API。
9.3 檔案伺服器。
9.4 檔案系統。
9.5 總結。

第 10 章 載入器。
10.1 E32 映像檔格式。
10.2 ROM 映像檔格式。
10.3 載入器伺服器。
10.4 核心側代碼管理。
10.5 總結。

第 11 章 視窗伺服器。
11.1 核心的事件處理器。
11.2 不同類型的事件。
11.3 WSERV 如何處理事件。
11.4 處理鍵盤事件。
11.5 處理指針事件。
11.6 客戶端隊列。
11.7 一個簡單的手寫動畫 DLL。
11.8 視窗對象和類。
11.9 視窗的屬性。
11.10 繪製到視窗。
11.11 直接螢幕訪問。
11.12 WSERV 中的平臺安全性。
11.13 總結。

第 12 章 設備驅動程式和擴展。
12.1 Symbian OS 中的設備驅動程式和擴展。
12.2 核心擴展。
12.3 硬體抽象層。
12.4 設備驅動程式。
12.5 EKA1 和 EKA2 之間的差異。
12.6 總結。

第 13 章 外圍設備支持。
13.1 DMA。
13.2 共享區塊。
13.3 媒體驅動程式和本地媒體子系統。
13.4 外圍總線控制器。
13.5 多媒體卡支持。
13.6 USB 設備支持。
13.7 總結。

第 14 章 核心側調試。
14.1 概述。
14.2 架構。
14.3 核心調試介面。
14.4 目標調試代理。
14.5 停止模式調試 API。
14.6 核心追蹤通道。
14.7 總結。

第 15 章 電源管理。
15.1 電源狀態。
15.2 電源框架。
15.3 典型的電源管理。
15.4 管理閒置時間。
15.5 進階電源管理。
15.6 總結。

第 16 章 啟動過程。
16.1 操作系統啟動。
16.2 替代啟動場景。
16.3 操作系統關閉。
16.4 操作系統睡眠和喚醒事件。
16.5 總結。

第 17 章 即時性。
17.1 什麼是即時性?
17.2 即時操作系統。
17.3 EKA2 和即時性。
17.4 即時應用 – GSM。
17.5 個性層。
17.6 總結。

第 18 章 確保性能。
18.1 編寫高效代碼。
18.2 維持即時性能。
18.3 總結。

附錄 1。
附錄 2。
附錄 3。