next up previous contents index
Next: Open Issues and Future Up: System Deployer Previous: Passive and Processing Resources   Contents   Index


Allocation Context

Figure 3.30: Alternative allocation for figure 3.27.
Image ResourceEnvironment2

After introducing different resource types and means to specify execution environments, which provide the infrastructure to an application, components have to be allocated on the available resource containers. For this purpose, the PCM uses the allocation context. In section 3.3.3, we described how a component is integrated in a system assembly using assembly contexts. The idea of allocation contexts is similar. Each component integrated in an assembly might be allocated on multiple resource environments. Thus, for each component in an assembly context, there can be multiple allocation contexts that place the component on different resource containers. For example, a possible alternative of the allocation in figure 3.27 is shown in figure 3.30.

Figure 3.31: Allocation of a component on multiple resource environments (simplified).
Image AllocationContext

Figure 3.31 shows a simplified instance of the PCM that realises the allocation shown in figure 3.30. The allocation context is an association class that links a component to a resource environment. The allocation context allows to specify the placement of the same component on multiple resource environments. In reality, a copy of the component is created for each machine. Furthermore, the allocation context stores QoS related information that depends on the resources used by a component. For example, if an internal action of a component uses 5000 cycles on a Processor resource, this can be transformed to an execution time of $ 1.\overline{6}\mu s$ for a processor with 3GHz ( $ 1 / (3 * 10^9 s^{-1}) * 5000 $ ). As the execution time of internal actions depends on the resources the component is allocated on, these information are handled by the allocation context.

In the PCM, resource environments are described using resource containers holding an arbitrary number of processing and passive resources. Linking resources connect resource containers with each other and provide a communication resource for sending data from one container to another. Resource types can be used to specify which kinds of passive, processing and communication resources exist. Components that are integrated into an assembly can be allocated on resource containers using allocation contexts. These allow us to allocate one component on multiple resource containers and store QoS relevant information, which depends on the container, independent of the component. So, the PCM provides a complete infrastructure to specify the environment of an application and its allocation. However, there are a lot of open issues that need to be addressed in the future. We will discuss some of them in the following.


next up previous contents index
Next: Open Issues and Future Up: System Deployer Previous: Passive and Processing Resources   Contents   Index
Snowball 2007-03-16