Specifications
CHAPTER 4. DESIGN AND ARCHITECTURE 22
User Action Input Device
Hardware Event
Software Event
a)
b)
c)
Driver User Interface Application
User Action Input Device
Application
User Action Input Device
Driver User Interface Application
Figure 4.1: Common Event Data Flow
notified about input events, too. This case is shown in Figure 4.2 by means of an intercon-
nect process (“Process”) which reads from the Input Abstraction Layer’s output interface and
informs other applications about occurring input events.
Hardware Event
Software Event
User Action Input Device
Driver User Interface Application
IAL Process
Figure 4.2: Common Event Data Flow with Input Abstraction Layer
4.2 Daemon
The daemon which realizes the Input Abstraction Layer has to provide several features common
for system daemons:
– Configuration File Parser
– Command Line Interface (CLI)
– Debug Output
The design and architecture of the modular input interface and the abstract output interface
are also part of the daemon, but they are discussed in separate sections to emphasize their
importance.
As defined by the Filesystem Hierarchy Standard [Fsh04], host-specific system configura-
tion files should be stored in the directory /etc/. The format of configuration files is not
determined and hence can be chosen as desired. The configuration files are parsed at start-up
of an application—in this case by the Input Abstraction Layer daemon. Well known exam-
ples for thoughtful configuration file formats are the Apache HTTP Server and Samba. The
Apache HTTP Server configuration file contains so called directives. In the following exam-
ple, the directive is Directory with the argument "/usr/local/htdocs". The paled options