CONTENTS
Preface = 1
About This Book = 2
The Audience of This Book = 3
No Need to Read the Whole Book = 3
About the Authors = 8
Acknowledgements = 10
1 What Pervasive Computing Is All About = 11
1.1 Times Are Changing = 11
1.2 Decentralization Continues = 13
1.3 Applied Pervasive Computing = 15
1.4 Pervasive Computing Principles = 17
1.4.1 Decentralization = 18
1.4.2 Diversification = 18
1.4.3 Connectivity = 20
1.4.4 Simplicity = 21
1.5 Pervasive Information Technology = 22
Part Ⅰ Devices = 25
2 Information Access Devices = 29
2.1 Handheld Computers = 29
2.2 Palm OS-Based Devices = 29
2.3 Windows CE-Based Handheld Computers = 34
2.4 EPOC Based-Handheld Computers = 37
2.5 Sub-Notebooks = 39
2.6 Phones = 40
2.7 Cellular Phones = 40
2.8 Data Transmission Capabilities = 41
2.9 Smart Phones = 43
2.10 Screenphones = 44
2.11 Further Readings = 45
3 Smart Identification = 49
3.1 Smart Cards = 49
3.1.1 What Is a Smart Card? = 49
3.1.2 Smart Card Hardware = 51
3.1.3 Smart Card Software = 53
3.1.4 Communication Between the On-Card and Off-Card Parts = 55
3.2 Smart Labels = 57
3.2.1 Example Applications = 60
3.3 Smart Tokens = 61
3.3.1 Smart Token Examples = 62
3.4 Further Readings = 64
4 Embedded Controls = 67
4.1 Smart Sensors and Actuators = 67
4.2 Smart Appliances = 72
4.2.1 The Smart Clock = 72
4.2.2 Heating, Ventilation, and Air Conditioning = 73
4.2.3 White Goods Appliances = 74
4.3 Appliances and Home Networking = 78
4.3.1 Residential Gateway = 79
4.3.2 Cellular Communication = 80
4.3.3 Service Provider and Residential Gateway = 81
4.4 Automotive Computing = 82
4.4.1 Intelligent Controls, Sensors, and Actuators = 82
4.4.2 On-Board Computing Systems = 83
4.4.3 In-Vehicle networks = 89
4.5 Further Readings = 96
5 Entertainment Systems = 99
5.1 Television Systems = 99
5.1.1 New Applications = 99
5.1.2 Analog and Digital Broadcasting = 101
5.1.3 Set-Top Boxes = 102
5.1.4 New Players in the Entertainment Business = 103
5.2 Game consoles = 104
5.2.1 Sega Dreamcast = 105
5.2.2 Sony Playstation 2 = 107
5.2.3 Nintendo GameCube = 109
5.2.4 Microsoft Xbox = 110
5.3 Further Readings = 112
Part Ⅱ Software = 115
6 Java = 117
6.1 Language Characteristics = 118
6.2 Java Class Libraries = 119
6.3 Java Editions = 121
6.4 Micro Edition = 123
6.5 PersonalJava and EmbeddedJava = 124
6.6 Development Tools for Java = 126
6.7 Further Readings = 127
7 Operating Systems = 129
7.1 Windows CE = 129
7.1.1 Operating System Configurations = 130
7.1.2 Memory Management = 131
7.1.3 Processes, Threads, and Interrupts = 133
7.1.4 User Interface = 134
7.1.5 Communication and Networking = 136
7.1.6 Peripherals and Device Drivers = 137
7.1.7 Platform-Builder - Creating a Custom OS = 138
7.1.8 Developing Applications = 140
7.2 Palm OS = 141
7.2.1 Memory Management = 142
7.2.2 Events = 144
7.2.3 User Interface = 145
7.2.4 Communication and Networking = 145
7.2.5 Conduits = 148
7.2.6 Developing Applications = 149
7.3 Symbian OS = 151
7.3.1 Operating System Architecture = 152
7.3.2 Application Architecture = 153
7.3.3 Developing Applications = 154
7.3.4 A Sample Application = 155
7.4 Java Card = 157
7.4.1 Java Card Framework = 158
7.4.2 Lifetime of On-Card Applets and Objects = 158
7.4.3 Developing a Card Applet = 159
7.4.4 A Sample Applet = 160
7.5 Further Readings = 163
8 Client Middleware = 167
8.1 Overview = 167
8.2 Programming APIs = 170
8.2.1 JavaPhone API = 170
8.2.2 JavaTV API = 172
8.2.3 WebTV = 174
8.3 Smart Card Programming = 176
8.3.1 OpenCard Framework = 176
8.3.2 PC/SC = 179
8.4 Messaging Components = 182
8.4.1 WebSphere MQ Everyplace = 182
8.5 Database Components = 185
8.5.1 DB2 Everyplace = 186
8.6 Further Readings = 187
9 Security = 189
9.1 The Importance of Security = 189
9.2 Cryptographic Patterns and Methods = 190
9.2.1 Symmetric Cryptographic Algorithms = 190
9.2.2 Asymmetric Cryptographic Algorithms = 194
9.2.3 How Secure Is an Algorithm? = 196
9.3 Cryptographic Tools = 197
9.3.1 Hash = 197
9.3.2 Message Authentication Code(MAC) = 197
9.3.3 Digital Signature = 198
9.3.4 Certificate = 199
9.4 Secure Socket Layer(SSL) = 199
9.5 Further Readings = 200
Part Ⅲ Connecting the World = 203
10 Internet Protocols and Formats = 205
10.1 Hypertext Transfer Protocol(HTTP) = 205
10.2 Hypertext Markup Language(HTML) = 206
10.3 Extensible Markup Language(XML) = 208
10.4 XForms = 211
10.5 Further Readings = 212
11 Mobile Internet = 215
11.1 The WAP 1.1 Architecture = 216
11.2 Wireless Application Environment 1.1 = 218
11.2.1 Wireless Markup Language = 221
11.2.2 WAP Binary XML Content Format 1.1 = 225
11.2.3 WMLScript 1.1 = 225
11.3 WAP 2.0 Architecture = 228
11.3.1 XHTML Mobile Profile(XHTMLMP) = 229
11.4 i-mode = 230
11.5 Further Readings = 232
12 Voice = 235
12.1 Voice Technology Trends = 235
12.2 Voice on the Web = 236
12.2.1 Voice Infrastructure = 237
12.2.2 VoiceXML = 239
12.2.3 Voice Portals = 240
12.3 Standardization = 241
12.4 Further Readings = 242
13 Web Services = 245
13.1 What are Web Services? = 245
13.2 Why should one use Web Services? = 246
13.3 Web Services Architecture = 247
13.4 WSDL = 248
13.5 UDDI = 249
13.5.1 UDDI API = 250
13.6 SOAP = 251
13.7 Web Services Security = 251
13.8 Web Services for Remote Portals(WSRP) = 252
13.9 Further Readings = 254
14 Connectivity = 257
14.1 Wireless Wide Area Networks = 257
14.1.1 Cellular Basics = 257
14.1.2 Major Digital Cellular Systems = 270
14.1.3 Advanced Cellular Radio Standards = 277
14.2 Short Range Wireless Communication = 289
14.2.1 DECT = 289
14.2.2 Bluetooth = 292
14.2.3 IrDA = 300
14.3 Home Networks = 303
14.4 Further Readings = 312
15 Service Discovery = 315
15.1 Universal Plug and Play = 316
15.2 Jini = 318
15.3 Salutation = 319
15.4 Further Readings = 320
Part Ⅳ Back-End Server Infrastructure = 323
16 Gateways = 327
16.1 Connectivity Gateway = 327
16.2 Palm Webclipping Proxy Server = 328
16.3 WAP Gateway = 329
16.4 Wireless Gateway = 330
16.5 Transcoding = 331
16.6 InfoPyramid Framework = 333
16.7 ProxiNet Transcoding Gateway = 334
16.8 Residential Gateway = 335
16.9 Further Readings = 336
17 Application Servers = 339
17.1 Architecture and Components = 339
17.1.1 Java Servlets = 340
17.1.2 Enterprise Java Beans = 344
17.2 IBM WebSphere Application Server = 347
17.3 Oracle9i Application Server = 349
17.4 BEA WebLogic Platform = 350
17.5 Sun ONE Web Server = 351
17.6 Further Readings = 352
18 Internet Portals = 355
18.1 Portal Functional Overview = 356
18.2 Types of Portals = 358
18.2.1 B2E Portals = 360
18.2.2 B2B Portals = 361
18.2.3 B2C Portals = 363
18.3 Portal Infrastructure = 363
18.3.1 J2EE = 364
18.3.2 Portal Structure = 365
18.3.3 Portlets = 367
18.4 Extensions for Mobile devices = 370
18.5 Extensions for Voice Access = 372
18.6 Further Readings = 374
19 Device Management = 377
19.1 Tasks of Device Management Systems = 377
19.2 Tivoli Device Support Infrastructure = 378
19.3 User Profiles and Directory Services = 380
19.4 SyncML Device Management = 382
19.4.1 SyncML Device Management Architecture = 382
19.5 Further Readings = 384
20 Synchronization = 387
20.1 What Synchronization Is All About = 387
20.2 Usage Models of Synchronization = 387
20.3 The Challenges of Synchronizing Data = 389
20.4 Industry Data Synchronization Standards = 392
20.4.1 Infrared Mobile Communications(IrMC) = 392
20.4.2 Wireless Application Protocol(WAP) = 393
20.4.3 Third Generation Partnership Program(3GPP) = 393
20.4.4 SyncML = 393
20.5 Synchronization Solutions = 396
20.5.1 PIM Synchronization = 396
20.5.2 Synchronizing Non-PIM Databases = 399
20.6 Further Readings = 401
Part Ⅴ New Services = 403
21 Home Services = 405
21.1 The System View = 405
21.2 Communiation Services = 406
21.3 Home Automation = 407
21.4 Energy Services = 408
21.5 Security Services = 408
21.6 Remote Home Healthcare Services = 409
21.7 Further Readings = 410
22 Travel and Business Services = 413
22.1 Travel Services = 413
22.2 On the Ground... = 415
22.3 ...And in the Air = 416
22.4 Business Services = 416
22.5 Field Support = 417
22.6 Further Readings = 418
23 Consumer Services = 421
23.1 Interactive Advertisement = 421
23.2 Loyalty = 422
23.3 Shopping = 422
23.4 Payment Services = 423
23.5 Further Readings = 424
Part Ⅵ Appendices = 425
A Bibliography = 427
B Glossary = 431
C Index = 437