Data Gather Framework

From MAGEEC
Revision as of 15:43, 21 August 2013 by AWhetter (talk | contribs)
Jump to: navigation, search
Framework-diagram.png

The builder takes build flags, a compiler, and platform, builds the binary, passes it to the runner, and returns the energy results (with the binary's return code).

The runner takes a binary, compiler, and platform, runs the binary on the specified platform, and returns the energy results (with the binary's return code).

The GDB manager is responsible for running a binary on the required platform, and abstracts the interface with the GDB runners.

Each GDB runner is a GDB client, which connects to it's relevant GDB server. Currently it's talking to the GDB manager via RPC (using the Python library Pyro4). In the future this will be changed to GDB/MI. It's also written in Python, and in the future this will be changed to expect.

The logger just stores information about what's going on into a log file. It also acts as an interface to the database interface.

The DBi is just an interface between the database and the rest of the framework. It's designed to abstract the database server and the database's schema from the rest of the framework. This means that if the database schema changes, or what database server is being used, then this module can just be swapped out for another.