#include typedef struct { int id,p,et,re,ad,ta; } Task; Task tasks[]={{1,5,2,0,0,0},{2,8,3,0,0,0}}; int nt=sizeof(tasks)/sizeof(Task); int st=40; void simulate_rm(){ printf("--- RM ---\n"); for(int i=0;i0)printf("!T%d:Task%d missed!\n",t,tasks[i].id); tasks[i].re=tasks[i].et; tasks[i].ad=t+tasks[i].p; tasks[i].ta=tasks[i].p; } tasks[i].ta--; } int r=-1,hp=10000; for(int i=0;i0&&tasks[i].p=0){printf("T%d:Task%d run\n",t,tasks[r].id);tasks[r].re--;} else printf("T%d:Idle\n",t); } } void simulate_edf(){ printf("\n--- EDF ---\n"); for(int i=0;i0)printf("!T%d:Task%d missed!\n",t,tasks[i].id); tasks[i].re=tasks[i].et; tasks[i].ad=t+tasks[i].p; tasks[i].ta=tasks[i].p; } tasks[i].ta--; } int r=-1,ed=10000; for(int i=0;i0&&tasks[i].ad=0){printf("T%d:Task%d run\n",t,tasks[r].id);tasks[r].re--;} else printf("T%d:Idle\n",t); } } int main(){simulate_rm();simulate_edf();return 0;}