Table of contents for Software defined radio : the software communications architecture / John Bard, Vincent J. Kovarik Jr.

Bibliographic record and links to related information available from the Library of Congress catalog.

Note: Contents data are machine generated based on pre-publication provided by the publisher. Contents may have variations from the printed book or be incomplete or contain other coding.


Counter
Contents
CONTENTS	I
TABLE OF FIGURES	XIII
TABLE OF TABLES	XVII
ACKNOWLEDGMENTS	3
PREFACE	4
AUDIENCE	4
SCOPE	5
CONVENTIONS USED IN THIS BOOK	5
Source Code	5
Terminology	6
Unified Modeline Language (UML)	6
ORGANIZATION	6
ADDITIONAL MATERIAL AND AUTHOR CONTACT	6
PART I THE OPERATING ENVIRONMENT (OE)	1
CHAPTER 1 INTRODUCTION	3
1.1 SOFTWARE RADIOS	3
1.1.1 Software Radio Aspects	4
1.2 THE SOFTWARE COMMUNICATIONS ARCHITECTURE	6
1.2.1 The Evolution of the SCA	7
1.2.2 What is the SCA?	9
1.2.3 Common SCA Perceptions	10
1.2.4 Why Use the SCA?	11
1.3 THE OPERATING ENVIRONMENT	13
1.3.1 Conceptual Organization	14
1.3.2 OE Interface Constraints	15
1.4 THE SCA SPECIFICATION STRUCTURE	16
1.5 SUMMARY	20
1.6 EXERCISES	20
CHAPTER 2 OPERATIONAL SCENARIOS	21
2.1 STARTUP	23
2.2 SHUTDOWN	27
2.3 APPLICATION (UN)INSTALLATION	29
2.4 INSTANTIATE APPLICATION	31
2.5 CONTROL APPLICATION	34
2.6 SYSTEM CONFIGURATION	36
2.7 EXERCISES	36
CHAPTER 3 GENERAL REQUIREMENTS AND SERVICES	37
3.1 NON-FUNCTIONAL REQUIREMENTS	37
3.1.1 General Requirements	38
3.1.2 General Software Rules	39
3.1.3 Hardware Architecture Requirements	39
3.1.4 Interface Organization	40
3.2 NAME SERVICE	43
3.3 EVENT SERVICE	44
3.3.1 Event Types	46
3.4 LOG SERVICE	47
3.4.1 Data Types	49
3.4.2 Exceptions	49
InvalidLogFullAction	50
InvalidParam	50
3.4.3 Types	51
OperationalStateType	51
AdministrativeStateType	51
AvailabilityStatusType	51
LogFullActionType	52
LogLevelType	52
LogTimeType	54
LogRecordType	54
3.4.4 LogStatus Operations	54
getMaxSize	55
getCurrentSize	55
getNumRecords	55
getLogFullAction	56
getAvailabilityStatus	56
getAdministrativeStatus	56
getOperationalState	56
3.4.5 LogAdministrator Operations	56
setMaxSize	57
setLogFullAction	58
setAdministrativeState	58
clearLog	58
destroy	58
3.4.6 LogProducer Operations	59
ProducerLogRecordType	59
writeRecords	61
3.4.7 LogConsumer Operations	61
getRecordIDFromTime	62
retrieveById	63
3.5 FILESYSTEM	63
3.5.1 Exceptions	64
UnknownFileSystemProperties	64
3.5.2 Types and Constants	65
SIZE	65
AVAILABLE_SPACE	65
CREATED_TIME	65
MODIFIED_TIME	65
LAST_ACCESS_TIME	65
3.5.3 Types	66
FileType	66
FileInformationType	66
FileInformationSequence	67
3.5.4 Operations	67
create	67
copy	68
open	69
query	70
remove	71
exists	72
list	72
mkdir	73
rmdir	74
3.6 FILE	75
3.6.1 Exceptions	76
IOException	76
InvalidFilePointer	76
3.6.2 Attributes	76
fileName	76
filePointer	76
3.6.3 Operations	77
read	77
write	78
close	78
setFilePointer	79
sizeOf	80
3.7 EXERCISES	80
CHAPTER 4 FOUNDATION INTERFACES AND DATA TYPES	81
4.1 TESTABLEOBJECT	82
4.1.1 Exceptions	82
UnknownTest	82
4.1.2 Operations	82
runTest	82
4.2 PORTSUPPLIER	84
4.2.1 Exceptions	84
UnknownPort	84
4.2.2 Operations	84
getPort	84
4.3 LIFECYCLE	85
4.3.1 Exceptions	85
InitializeError	85
ReleaseError	86
4.3.2 Operations	86
initialize	86
releaseObject	86
4.4 PROPERTYSET	87
4.4.1 Exceptions	87
InvalidConfiguration	87
PartialConfiguration	87
4.4.2 Operations	87
configure	87
query	88
4.5 RESOURCE	89
4.5.1 Exceptions	89
StartError	89
StopError	90
4.5.2 Attributes	90
identifier	90
4.5.3 Operations	90
start	90
stop	91
4.6 RESOURCEFACTORY	92
4.6.1 Exceptions	92
InvalidResource	92
ShutdownFailure	92
CreateResourceFailure	93
4.6.2 Attributes	93
identifier	93
4.6.3 Operations	93
createResource	93
releaseResource	94
shutdown	95
4.7 PORT	96
4.7.1 Exceptions	97
InvalidPort	97
OccupiedPort	98
4.7.2 Operations	98
connectPort	98
disconnectPort	99
4.8 EXERCISES	99
CHAPTER 5 DEVICES AND THE DEVICE MANAGER	101
5.1 INTRODUCTION	101
5.1.1 SCA Device Abstraction	102
5.2 DEVICE	105
5.2.1 Exceptions	105
InvalidState	106
InvalidCapacity	106
5.2.2 Types and Constants	106
AdminType	106
OperationalType	106
UsageType	107
5.2.3 Attributes	107
Label	107
softwareProfile	107
compositeDevice	108
adminState	109
usageState	111
operationalState	113
5.2.4 Operations	114
allocateCapacity	114
deallocateCapacity	115
releaseObject	116
5.3 LOADABLEDEVICE	117
5.3.1 Types	118
LoadType	118
5.3.2 Exceptions	119
InvalidLoadKind	119
LoadFail	119
5.3.3 Operations	119
load	119
unload	121
5.4 EXECUTABLEDEVICE	123
5.4.1 Types and Constants	123
ProcessID_Type	123
STACK_SIZE	123
PRIORITY_ID	123
5.4.2 Exceptions	124
ExecuteFail	124
InvalidProcess	124
InvalidFunction	125
InvalidParameters	125
InvalidOptions	125
5.4.3 Operations	125
execute	125
terminate	128
5.5 AGGREGATEDEVICE	129
5.5.1 Types and Attributes	129
devices	129
5.5.2 Operations	129
addDevice	129
removeDevice	130
5.6 DEVICEMANAGER	131
5.6.1 Types	132
ServiceType	132
ServiceSequence	133
5.6.2 Attributes	133
deviceConfigurationProfile	133
fileSys	133
identifier	133
label	134
registeredDevices	134
registeredServices	134
5.6.3 Operations	135
registerDevice	137
registerService	139
unregisterDevice	141
unregisterService	141
getComponentImplementationId	142
shutdown	143
5.7 EXERCISES	144
CHAPTER 6 DOMAIN MANAGEMENT	145
6.1 DOMAINMANAGER	145
6.1.1 Types	146
ApplicationSequence	146
ApplicationFactorySequence	146
DeviceManagerSequence	147
6.1.2 Exceptions	147
ApplicationInstallError	147
InvalidIdentifier	147
DeviceManagerNotRegistered	147
ApplicationUninstallationError	147
RegisterError	148
UnregisterError	148
AlreadyConnected	148
InvalidEventChannel	148
NotConnected	148
6.1.3 Attributes	149
domainManagerProfile	149
deviceManagers	149
applications	150
applicationFactories	150
fileMgr	150
identifier	150
6.1.4 DomainManager Instantiation	151
6.1.5 Operations	152
registerDeviceManager	152
registerDevice	154
installApplication	156
unregisterDeviceManager	158
unregisterDevice	160
uninstallApplication	161
registerService	163
unregisterService	165
registerWithEventChannel	167
unregisterWithEventChannel	168
6.2 FILEMANAGER	168
6.2.1 Types	170
MountType	170
MountSequence	171
6.2.2 Exceptions	171
NonExistentMount	171
InvalidFileSystem	171
MountPointAlreadyExists	171
6.2.3 Operations	172
mount	172
unmount	172
getMounts	173
6.3 THE APPLICATION FACTORY	173
6.3.1 Exceptions	174
CreateApplicationRequestError	174
CreateApplicationError	174
InvalidInitConfiguration	175
6.3.2 Attributes	175
name	175
identifier	175
softwareProfile	175
6.3.3 Operations	176
create	176
6.4 APPLICATION	184
6.4.1 Types	185
ComponentProcessIdType	185
ComponentProcessIdSequence	185
ComponentElementType	185
ComponentElementSequence	185
6.4.2 Attributes	185
ComponentElementSequence	186
componentProcessIds	186
componentDevices	186
componentImplementations	186
profile	187
name	187
6.4.3 Operations	187
runTest, start, stop, configure, and query	187
initialize	188
releaseObject	188
getPort	190
6.4.4 General Requirements	191
6.5 EXERCISES	191
CHAPTER 7 OPERATING ENVIRONMENT SECURITY	192
7.1 CORE FRAMEWORK SECURITY REQUIREMENTS	192
7.1.1 Application	192
7.1.2 Application Factory	193
7.1.3 Domain Manager	193
7.2 EXERCISES	194
CHAPTER 8 CERTIFICATION	195
8.1 CERTIFICATION PROCESS	195
8.2 OPERATING ENVIRONMENT CERTIFICATION	196
8.2.1 OE-1	196
8.2.2 OE-2	198
8.2.3 OE-3	199
8.3 WAVEFORM ASSESSMENT AND CERTIFICATION	200
8.4 EXERCISES	201
PART II THE DOMAIN PROFILE	203
CHAPTER 9 THE DOMAIN PROFILE	205
9.1 OVERVIEW	205
9.2 SCA DOMAIN PROFILE XML	205
9.3 DOMAIN PROFILE DATA TYPES	208
CHAPTER 10 BASE DESCRIPTOR FILES	209
10.1 PROPERTIES DESCRIPTOR	209
10.1.1 Simple	210
10.1.2 Simple Sequence	212
10.1.3 Struct	213
10.1.4 Struct Sequence	213
10.1.5 Test	214
10.2 SOFTPKG	214
10.2.1 title	215
10.2.2 author	215
10.2.3 description	216
10.2.4 propertyfile	216
10.2.5 descriptor	216
10.2.6 implementation	216
code	217
OSGroup	218
10.3 SOFTWARE COMPONENT DESCRIPTOR	220
10.4 DEVICE PACKAGE DESCRIPTOR	222
CHAPTER 11 DEVICE CONFIGURATION DESCRIPTOR	225
11.1 OVERVIEW	225
11.2 DEVICECONFIGURATION	225
11.2.1 description	226
11.2.2 devicemanagersoftpkg	226
11.2.3 componentfiles	226
componentfile	227
11.2.4 partitioning	227
componentplacement	227
11.2.5 connections	229
11.2.6 domainmanager	229
11.2.7 filesystemnames	230
CHAPTER 12 THE DOMAIN MANAGER DESCRIPTOR	231
12.1 OVERVIEW	231
CHAPTER 13 THE SOFTWARE ASSEMBLY DESCRIPTOR	233
13.1 OVERVIEW	233
PART III BUILDING AN SCA COMPLIANT SYSTEM	241
CHAPTER 14 THE POSIX OPERATING SYSTEM	243
14.1 AN OPERATING ENVIRONMENT	243
14.2 LINUX 2.6 KERNEL	246
14.2.1 Unavailable POSIX Calls	252
14.2.2 More Unavailable POSIX Calls	261
CHAPTER 15 POSIX THREADS	266
15.1 THE THREAD OBJECT	267
15.2 UN-NAMED SEMAPHORES	270
15.3 MUTEX VARIABLES	273
15.4 THREAD ATTRIBUTES	277
15.5 CONDITIONAL VARIABLES	282
15.6 LESS INTERESTING THREAD CALLS	285
CHAPTER 16 ALL ORBS ARE NOT CREATED EQUAL	287
16.1 CORBA BASICS	289
16.1.1 Starting the Servant Object	291
16.1.2 Accessing the Object Reference	292
16.2 THE OBJECT MANAGEMENT GROUP	292
16.3 ?C? ORB VERSUS C++ ORBS	293
16.4 INITIAL SERVICES	295
16.4.1 Starting a Client	295
16.5 THE INTERFACE REPOSITORY	295
16.5.1 Type Codes	296
16.6 MINIMUM CORBA	296
16.7 THE PORTABLE OBJECT ADAPTER (POA)	298
16.7.1 Policy	299
16.7.2 Run-time performance	300
16.7.3 ORB Concurrency Models	300
16.7.4 One-ways, Two-ways and Blocking	302
16.8 REAL-TIME CORBA	303
16.9 OVERVIEW OF AVAILABLE ORB?S	304
16.9.1 TAO ORB	304
16.9.2 ORBexpress	305
16.9.3 ORBit2	305
16.9.4 MICO	305
16.9.5 OMNI	305
CHAPTER 17 THE SERVICES	307
17.1 INTEROPERABLE NAMING SERVICE	307
17.1.1 Universal Unique Identifiers	315
17.1.2 Core Framework Usage Of the Naming Service	316
17.1.3 Application Usage Of the Naming Service	316
17.2 EVENT SERVICE	316
17.2.1 Core Framework Usage Of the Event Service	327
17.2.2 Resource Usage Of the Event Service	328
17.3 LOG SERVICE	328
17.3.1 Core Framework Usage Of the Log Service	332
17.3.2 Resource Usage Of the Log Service	334
CHAPTER 18 EXPLORING THE DOMAIN	335
18.1 APPLICATION FACTORY ATTRIBUTES	336
18.2 APPLICATION ATTRIBUTES	337
18.3 DEVICEMANAGER ATTRIBUTES	341
18.4 DEVICE ATTRIBUTES	342
18.5 AGGREGATEDEVICE ATTRIBUTES	344
18.6 DOMAINMANAGER ATTRIBUTES	345
18.7 PROPERTIES	347
18.8 MANIPULATING PORTS	351
18.9 SUMMARY	351
CHAPTER 19 AN SCA-COMPLIANT APPLICATION	356
19.1 HELLOWORLD LEGACY APPLICATION	356
19.2 LEGACY HELLOWORLD SPD	360
19.3 HMI APPLICATIONS	363
19.4 SHUTTING DOWN	367
19.5 AN SCA-COMPLIANT HELLO WORLD APPLICATION	368
19.5.1 An SCA-compliant Terminal Device	368
19.5.2 Domain Profile for Terminal Device	375
19.5.3 An SCA-compliant Talk Application	379
19.5.4 Multi-threaded Servant	383
19.5.5 Talk Application XML	385
19.5.6 Modifications for Minimum CORBA Compliance	390
19.5.7 Concluding Remarks	391
APPENDIX A - MANDATORY POSIX CALLS	393
APPENDIX B - REFERENCES	395

Library of Congress Subject Headings for this publication:

Software radio.