If a platform contains multiple cores, then when the first DTSL client connects,
the DTSL configuration creates devices for all of the cores. The client uses the devices
for the cores it wants to control. When a second client connects to the same platform,
it must present an identical set of connection parameters. The DTSL connection manager
therefore returns the same DTSL configuration instance that was created by the first
client connection. The second client can use the devices for the cores it wants to
control. In this way, two clients can use the same DTSL configuration instance,
including any DTSL options.
If execution synchronization is not required, a simple DTSL configuration is
enough, with core execution state being independent. However, if synchronized execution
state is required, then the created object model must provide this. The execution
synchronization can be implemented with features in the hardware, or by creating a
software object model hierarchy which arranges for a shared execution state.