Вы находитесь на странице: 1из 3

p->cpuBurst=n.

cpuBurst;
p->ioBurst=n.ioBurst;
p->next = a->next;
a->next = p;
}

void del (node *before_del)


{
node* temp;
temp = before_del->next;
before_del->next = temp->next;
delete temp;
}

int search_Process(int arr_time)


{
int index;
struct node *curNode;

index = 0;
curNode = head;

// Iterate till last element until key is not found


while (curNode != NULL && curNode->arrivalTime != arr_time)
{
index++;
curNode = curNode->next;
}

return (curNode != NULL) ? index : -1;

node NthNode(int index)


{
// int GetNth(Node* head, int index)
//{
//node head=gethead();
node* current = head;
node* tmp = new node;

// the index of the


// node we're currently
// looking at
int count = 1;
while (current != NULL)
{
if (count == index)
{
tmp->pid=current->pid;
tmp->parameterTheta=current->parameterTheta;
tmp->noOfBursts=current->noOfBursts;
tmp->arrivalTime=current->arrivalTime;
tmp->remainingTime=current->remainingTime;
tmp->priority=current->priority;
tmp->cpuBurst=current->cpuBurst;
tmp->ioBurst=current->ioBurst;
tmp->next = current->next;

}
return *tmp;
count++;
current = current->next;
}

/* if we get to this line,


the caller was asking
for a non-existent element
so we assert fail */
//assert(0);
//}

/*
void display()
{
node *tmp;
tmp = head;
while (tmp != NULL)
{
cout << tmp->data << endl;
tmp = tmp->next;
}
}

*/

static void TransitNodeOnArrivalTime(node *R_head,node *B_head,int data)


{
cout<<"In TransitNodeOnArrivalTime method"<<endl;
if(R_head==NULL)
{
cout<<"The Queue is empty"<<endl;
}

node *traverser=R_head;
node *previous=NULL;
node *temp=NULL;

while( traverser-> arrivalTime != data && traverser != NULL)


{

previous=traverser;
traverser=traverser->next;

}
if(traverser->arrivalTime==data)
{

if(traverser->arrivalTime == R_head->arrivalTime)
{
temp=R_head;
R_head=R_head->next;
temp->next=NULL;

}
}
else
{
temp=traverser;
previous->next=traverser->next;
temp->next=NULL;
}

traverser=B_head;

if(traverser==NULL)
{
B_head=temp;

else{
while(traverser->next!=NULL)
{

traverser=traverser->next;

}
traverser->next=temp;
}

//display(R_head);
// display(B_head);
display_queue(R_head);
cout<<"-------------------------------------------------------------------------"<<endl;
cout<<"-----------------------------------------------------------------------"<<endl; //dsplay
only th PID
display_queue(B_head);

cout<<"-------------------------------------------------------------------------"<<endl;
cout<<"-----------------------------------------------------------------------"<<endl;
cout<<"In end of the TransitNodeOnArrivalTime method"<<endl;
}

Вам также может понравиться