Skip to content
Snippets Groups Projects
Commit c5c8cb5f authored by Elizabeth Baker's avatar Elizabeth Baker
Browse files

Log Process finishes within delta time

parent 86ca6e1b
No related branches found
No related tags found
No related merge requests found
...@@ -22,6 +22,7 @@ typedef struct { ...@@ -22,6 +22,7 @@ typedef struct {
int justStarted; int justStarted;
int startTime; int startTime;
int timeRemAtStartTime; int timeRemAtStartTime;
int finished;
} process; } process;
typedef struct { typedef struct {
...@@ -182,9 +183,10 @@ int main(int argc, char *argv[]) { ...@@ -182,9 +183,10 @@ int main(int argc, char *argv[]) {
headData(completedProcesses); headData(completedProcesses);
process * currProc = currNode->data; process * currProc = currNode->data;
while ( currNode ){ while ( currNode ){
if ( currProc!= NULL && currProc->timeCompleted >= currentTime ) { if ( currProc!= NULL && currProc->timeCompleted <= currentTime && !currProc->finished) {
printf("%d,FINISHED,pid=%s,proc_remaining=%d\n", printf("%d,FINISHED,pid=%s,proc_remaining=%d\n",
currProc->timeCompleted, currProc->processID, numProcessesLeft); currProc->timeCompleted, currProc->processID, numProcessesLeft);
currProc->finished = -1;
} }
currNode = currNode->next; currNode = currNode->next;
if (currNode) currProc = currNode->data; if (currNode) currProc = currNode->data;
...@@ -240,9 +242,10 @@ int main(int argc, char *argv[]) { ...@@ -240,9 +242,10 @@ int main(int argc, char *argv[]) {
headData(completedProcesses); headData(completedProcesses);
process * currProc = currNode->data; process * currProc = currNode->data;
while ( currNode ){ while ( currNode ){
if ( currProc!= NULL && currProc->timeCompleted >= currentTime ) { if ( currProc!= NULL && currProc->timeCompleted >= currentTime && currProc->finished ) {
printf("%d,FINISHED,pid=%s,proc_remaining=%d\n", printf("%d,FINISHED,pid=%s,proc_remaining=%d\n",
currProc->timeCompleted, currProc->processID, numProcessesLeft); currProc->timeCompleted, currProc->processID, numProcessesLeft);
currProc->finished = -1;
} }
currNode = currNode->next; currNode = currNode->next;
if (currNode) currProc = currNode->data; if (currNode) currProc = currNode->data;
...@@ -360,6 +363,7 @@ void initializeProcess(char data[], process *newProcess) { ...@@ -360,6 +363,7 @@ void initializeProcess(char data[], process *newProcess) {
newProcess->timeRemaining = newProcess->executionTime; newProcess->timeRemaining = newProcess->executionTime;
newProcess->timeRemAtStartTime = newProcess->timeRemaining; newProcess->timeRemAtStartTime = newProcess->timeRemaining;
newProcess->justStarted = 0; newProcess->justStarted = 0;
newProcess->finished = 0;
} }
process *headData(llist *q) { process *headData(llist *q) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment