![]() ![]() |
||||
|
||||
This section describes the four categories of execution
platform components: processor, device,
memory and bus.
Processors can execute threads. Processors can
contain memory subcomponents. Processors
and devices can access memories over buses.
Memories represent randomly addressable storage capable
of storing binary images in the form of
data and code. Memories can be accessed by executing threads.
Buses provide access between processors, devices, and
memories. A bus provides the resources
necessary to perform exchanges of control and data as specified by connections. A connection
may be bound to a sequence of buses and intermediate processors and devices in a manner that
is analogous to the binding of threads to processors.
Devices represent entities that interface with the external
environment of an application system and
may have complex behaviors. A device can interact with application software components through
their port and subprogram features. A device may achieve its functionality through device internal
software or may require device driver software to be executed by a processor. Binary images or
threads cannot be bound to devices.
Processors may contain software subcomponents, where
the associated source text and data in
the form of binary images will be bound to memories accessible from that processor. These
software components implement the capability of the processor to schedule and execute threads
bound to that processor.
Execution platform components can be assembled into execution
platform systems, i.e., into
systems of execution platform components to model complex physical computing hardware
components and software/hardware computing systems, through the use of system components
(see Section 7.1). The execution platform systems and their components may denote physical
computing hardware for example, memory to represent a hard disk or RAM. Execution platform
systems may also model abstracted storage, for example, a device or memory to represent a
database, depending on the purpose of the modeler.
The hardware represented by the execution platform components
may be modeled by a hardware
description or simulation language. Alternatively, they may be represented using configuration
data
for programmable logic devices. Or a simulation may be used to characterize the components.
Such descriptions are also viewed as associated source text.
Execution platform components can be used to model a
layered system architecture. Processors,
buses, memory, and devices may represent abstractions of a virtual machine layer. Those
abstractions can be modeled as systems in terms of software components and of execution
platform components of the next virtual machine layer; eventually a system architecture layer
representing physical hardware. The mapping between different layers of a multi-layer architecture
may be represented by an appropriate property for each of the execution platform categories. For
example, a Maps_To
property may be defined to specify the mapping of an execution platform
component classifier to a system classifier that represents the implementation of the abstraction in
the virtual machine layer. |
||||