09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Architecture</strong> <strong>Modeling</strong><br />

resumeEvent is a flow of kind event. The direction is always out. The referenced flow shall<br />

be triggered by some Scheduler or forwarded by some SchedulerSlot, when access<br />

to the processing capacities of a scheduled resource has been granted and suspended<br />

before and now access to the ProcessingResource is granted again. This reference<br />

to a flow is only needed, if preemption can occur.<br />

Port<br />

+ isConjugated: Boolean<br />

SchedulerPort<br />

1<br />

{redefines<br />

type} +type<br />

SchedulerPortSpec<br />

«isOfT ype»<br />

SchedulerPPort SchedulerRPort<br />

+activateEvent 1<br />

«isOfT ype»<br />

+ direction: FlowDirection<br />

+ kind: FlowKind<br />

PortSpecification<br />

+finEvent 1 +startEvent 1 +resumeEvent 0..1 +suspendEvent 0..1<br />

Figure 3.12: Meta-model integration of the concept SchedulerPort<br />

+type<br />

1<br />

Flow<br />

+comSpec<br />

+schedulerEvent 3..5<br />

In a model the scheduling of a ProcessingResource will look like depicted in Figure<br />

3.13. The ports marked in red color are SchedulerPorts. The figure also shows how to<br />

make use of the Scheduler and SchedulerSlot concepts when modeling the hierarchical<br />

scheduling of a ProcessingResource. A SchedulerSlot can also serve a second<br />

Scheduler, which then only distributes the capacity of the ProcessingResource to its<br />

clients that it receives through its underlying slot by the main scheduler.<br />

ProcessingResource<br />

:Concurrency<br />

Resource<br />

:Concurrency<br />

Resource<br />

:SchedulerSlot :SchedulerSlot<br />

:Scheduler<br />

:SchedulerSlot<br />

:Scheduler<br />

:Concurrency<br />

Resource<br />

:SchedulerSlot<br />

Figure 3.13: Example of using the Scheduler concept<br />

ComputingResources: The concept ComputingResource shown in Figure 3.14<br />

models a processing device capable of storing and executing Tasks. This concept is an abstraction<br />

of elements of an execution platform hosting multiple tasks, which require computing capacity<br />

in order to carry out their computations. Being derived from ProcessingResource<br />

a ComputingResource may be subject to scheduling of its computing capacity.<br />

The Task concept models a computation task. As it is derived from<br />

ConcurrencyResource, it can be connected to a SchedulerSlot, thus using the<br />

24/ 156

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!