search for books and compare prices
Tables of Contents for C++ Network Programming
Chapter/Section Title
Page #
Page Count
List of Figures
ix
Foreword
xi
About This Book
xv
Design Challenges, Middleware Solutions, and ACE
1
20
Challenges of Networked Applications
1
4
Networked Application Design Dimensions
5
2
Object-Oriented Middleware Solutions
7
5
An Overview of the ACE Toolkit
12
5
Example: A Networked Logging Service
17
2
Summary
19
2
Part I Object-Oriented Network Programming
21
80
Communication Design Dimensions
23
10
Connectionless versus Connection-Oriented Protocols
23
3
Synchronous versus Asynchronous Message Exchange
26
2
Message Passing versus Shared Memory
28
3
Summary
31
2
An Overview of the Socket API
33
12
An Overview of Operating System IPC Mechanisms
33
1
The Socket API
34
3
Limitations of the Socket API
37
6
Summary
43
2
The ACE Socket Wrapper Facades
45
26
Overview
45
4
The ACE_Addr and ACE_INET_Addr Classes
49
3
The ACE_IPC_SAP Class
52
2
The ACE_SOCK Class
54
2
The ACE_SOCK_Connector Class
56
4
The ACE_SOCK_IO and ACE_SOCK_Stream Classes
60
4
The ACE_SOCK_Acceptor Class
64
4
Summary
68
3
Implementing the Networked Logging Service
71
30
Overview
71
1
The ACE_Message_Block Class
72
4
The ACE_InputCDR and ACE_OutputCDR Classes
76
4
The Initial Logging Server
80
15
The Client Application
95
4
Summary
99
2
Part II Concurrent Object-Oriented Network Programming
101
134
Concurrency Design Dimensions
103
22
Iterative, Concurrent, and Reactive Servers
103
6
Processes versus Threads
109
3
Process/Thread Spawning Strategies
112
2
User, Kernel, and Hybrid Threading Models
114
5
Time-Shared and Real-Time Scheduling Classes
119
2
Task- versus Message-Based Architectures
121
2
Summary
123
2
An Overview of Operating System Concurrency Mechanisms
125
14
Synchronous Event Demultiplexing
125
2
Multiprocessing Mechanisms
127
2
Multithreading Mechanisms
129
1
Synchronization Mechanisms
130
5
Limitations with OS Concurrency Mechanisms
135
2
Summary
137
2
The ACE Synchronous Event Demultiplexing Wrapper Facades
139
20
Overview
139
2
The ACE_Handle_Set Class
141
6
The ACE_Handle_Set_Iterator Class
147
4
The ACE::select() Methods
151
6
Summary
157
2
The ACE Process Wrapper Facades
159
26
Overview
159
2
The ACE_Process Class
161
4
The ACE_Process_Options Class
165
4
The ACE_Process_Manager Class
169
13
Summary
182
3
The ACE Threading Wrapper Facades
185
22
Overview
185
2
The ACE_Thread_Manager Class
187
11
The ACE_Sched_Params Class
198
3
The ACE_TSS Class
201
4
Summary
205
2
The ACE Synchronization Wrapper Facades
207
28
Overview
207
2
The ACE_Guard Classes
209
3
The ACE Mutex Classes
212
6
The ACE Readers/Writer Lock Classes
218
4
The ACE Semaphore Classes
222
7
The ACE Condition Variable Classes
229
4
Summary
233
2
Appendix A Design Principles for ACE C++ Wrapper Facades
235
24
A.1 Overview
235
1
A.2 Use Wrapper Facades to Enhance Type Safety
236
2
A.3 Simplify for the Common Case
238
8
A.4 Use Hierarchies to Enhance Design Clarity and Extensibility
246
2
A.5 Hide Platform Differences Whenever Possible
248
7
A.6 Optimize for Efficiency
255
2
A.7 Summary
257
2
Appendix B The Past, Present, and Future of ACE
259
10
B.1 The Evolution of ACE
259
8
B.2 The Road Ahead
267
1
B.3 Concluding Remarks
268
1
Glossary
269
16
Bibliography
285
10
Index
295
<