The data producer consists of a shell, a task scheduler, a condition
checker and a data
management system. (See Fig. 3.1.) The shell interprets
user input
in a C-like language
that allows scheduling and canceling tests to perform on
modules; issuing slow-control commands; and responding to error (or
any, really)
conditions. Scheduled tasks get run at their intended time by the scheduler. The error checker periodically checks for error
conditions; and a queue takes care that
concurrent interactions with the hardware don't result in resource
contention. The data management system writes to files
the data that is generated by testing and monitoring the modules.
Sec. explains each producer component in detail.