Eclipse.org - Device Kit
The
Device Kit environment consists of the following components: an
application, a runtime, and a hardware device.
The runtime is divided
into the adapter/profile layer,
device layer,
transport layer and connection layer.
- Adapter and Profile Layer
-
The adapter and profile layer provides the application with common interface to a set of commmon hardware devices.
For example, the adapter and profile layer for RFID readers will provide a common interface for the application
to a set of common functions provided by all RFID readers.
This layer uses a publish/subscribe Service Oriented Architecture (SOA) interface.
The adapter and profile should shield the application
from the knowing which of the common hardware device is being used.
- Device Layer
-
The device layer provides the application with an interface to
the hardware device. The device layer should shield the application
from the low level details of the hardware device.
The device layer understands the meaning of the
messages and any parameters within
a
message.
When application executes a command, the command requests that the transport
send the command
message.
Any signals listeners are notified if any received
messages from the transport
match the signal
messages.
- Transport Layer
-
The transport layer supports the sending and receiving of
messages.
While the transport layer understands the format of a
message, it does not
understand the meaning of the
message.
When a device requests that a
message to sent, the transport formats the
message into a correct bytes to be written to the connection.
The transport reads input bytes from the connection and parses the bytes
into received
messages. The interested devices are notified of the received
messages.
- Connection Layer
-
The connection layer supports the reading and writing of byte streams to the
hardware device.
The connection does not understand the meaning of the bytes but supports the
delievery of the output bytes and receiving of the input bytes.
Because runtime is divided
into multiple layers, several different types of devices can share the same
transport. For example, radio and CD player devices can share the same
transport to interface to the car bus.
Refer to the following diagram for a depiction of the interaction these
components have with one another. You can use the numbered list to
review the information in the diagram.
- The application gets a command and signal from the
device and registers interest in the signal.
- The
application tells the command to
execute.
- The command writes a
message to the
transport.
- The transport translates the
message into a
format that the
hardware device can understand
and writes the translated
message to the
connection.
- The connection writes bytes to the class library and OS layer.
- The class library and OS layer writes bytes to the hardware.
- The class library and OS layer reads bytes to the hardware.
- The connection reads bytes from the class library and OS layer.
- The transport monitors the byte stream being sent by the connection and
parses the bytes back into
messages that the transport understands.
- The transport notifies the devices that are listening of the
messages
received.
- When a
signal matches the
messages received
from the transport, the measurement is notified that the signal was
received.
- When a
signal matches the
messages received
from the transport, the application is notified that the signal was
received.
After you have reviewed the diagram, refer to the other sections in
Concepts for descriptions of each component.
Figure 1. Device Kit environment
© Copyright 2001, 2007 IBM Corporation and others.