#include#include"iostream
h"#include"stdlib
h"#include"string
h"structPCB{intid;charname[10];intsize;structPCB*next;};structPCB*running;structPCB*ready;structPCB*blocked;structPCB*q;structPCB*p;intid=1;intsize;charname[10];//////////////////////////////////////////////////////////////////////////////////////structDCT{//设备charname[10];intbusy;PCB*occupied;PCB*waiting;structDCT*next;structCOCT*coct;//上级控制器};structCOCT{//控制器charname[10];intbusy;PCB*occupied;PCB*waiting;structCOCT*next;structCHCT*chct;//控制器的上级通道};structCHCT{//通道charname[10];intbusy;PCB*occupied;PCB*waiting;structCHCT*next;};//////////////////////////////////////////////////////////////////////////////////////structDCT*dcts;structCOCT*cocts;structCHCT*chcts;voidenqueue(intid,char*name,intsize,structPCB*head){structPCB*node=(str