The pmm application. More...
#include <stdio.h>#include <stdlib.h>#include <signal.h>#include <sys/signal.h>#include <pthread.h>#include <unistd.h>#include <sys/time.h>#include <time.h>#include <paths.h>#include <sys/types.h>#include <sys/stat.h>#include "pmm_model.h"#include "pmm_load.h"#include "pmm_loadmonitor.h"#include "pmm_argparser.h"#include "pmm_cfgparser.h"#include "pmm_scheduler.h"#include "pmm_executor.h"#include "pmm_log.h"Go to the source code of this file.
Functions | |
| void | run_as_daemon () |
| void | sig_cleanup (int sig) |
| void | sig_do_nothing () |
| void * | signal_handler (void *arg) |
| void | redirect_output (char *logfile) |
| int | main (int argc, char **argv) |
Variables | |
| int | executing_benchmark |
| daemon executing variable or not | |
| pthread_mutex_t | executing_benchmark_mutex |
| mutex for accessing executing_benchmark variable | |
| int | signal_quit = 0 |
| signal to indicate benchmark should be terminated | |
| pthread_mutex_t | signal_quit_mutex = PTHREAD_MUTEX_INITIALIZER |
| mutex for accessing singal_quit | |
| volatile sig_atomic_t | sig_cleanup_received = 0 |
| volatile sig_atomic_t | sig_pause_received = 0 |
| volatile sig_atomic_t | sig_unpause_received = 0 |
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
the main function
Structure of the main function is as follows:
All the while checking for termination signals, handling shutdown and so on.
Definition at line 228 of file pmm_main.c.
| void redirect_output | ( | char * | logfile | ) |
Definition at line 202 of file pmm_main.c.
| void run_as_daemon | ( | ) |
Definition at line 73 of file pmm_main.c.
| void sig_cleanup | ( | int | sig | ) |
Definition at line 188 of file pmm_main.c.
| void sig_do_nothing | ( | ) |
Definition at line 198 of file pmm_main.c.
| void* signal_handler | ( | void * | arg | ) |
single handler thread that should catch signals and set appropriate gobal variables
Definition at line 113 of file pmm_main.c.
| int executing_benchmark |
daemon executing variable or not
Definition at line 54 of file pmm_main.c.
| pthread_mutex_t executing_benchmark_mutex |
mutex for accessing executing_benchmark variable
Definition at line 55 of file pmm_main.c.
| volatile sig_atomic_t sig_cleanup_received = 0 |
Definition at line 60 of file pmm_main.c.
| volatile sig_atomic_t sig_pause_received = 0 |
Definition at line 61 of file pmm_main.c.
| volatile sig_atomic_t sig_unpause_received = 0 |
Definition at line 62 of file pmm_main.c.
| int signal_quit = 0 |
signal to indicate benchmark should be terminated
Definition at line 57 of file pmm_main.c.
| pthread_mutex_t signal_quit_mutex = PTHREAD_MUTEX_INITIALIZER |
mutex for accessing singal_quit
Definition at line 58 of file pmm_main.c.
1.8.1.2