#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <signal.h>
#include <string.h>
#include <sys/wait.h>
//--------------------------------------------------------------------------------------------
#include "Process_r.h"



//argv[0] - время
//args[1] - команда добивания
//argv[2] путь к драйверу dvm
//argv[3] f/c(компиляция) или run(запуск)
//argv[4] имя программы
//argv[5] .. argv [argc-1] либо флаги компиляции, либо измерения решетки по одному


int main(int argc, char ** argv){
	try {
	    int i;
	    char ** args = new char* [argc];
		for ( i=2; i<argc; ++i)
			args [i-2] = argv[i];
		args[argc-1] = NULL;
		setpgid(0,0);
		int pid = fork();
	    if (pid == 0)
		    execvp( argv[1],args);
		else {
			FILE * pid_file  = fopen("PID","w");
        	fprintf(pid_file,"%d", pid);
        	fclose(pid_file);
		}
		return 0;
	}
	catch (const char * exception){
		FILE * ExceptionLog = fopen ( "Exception.txt", "w" );		
		fprintf(ExceptionLog,exception);
		fclose(ExceptionLog);
	}
}



