
struct pcb_struct
{
  //general purpose registers
  unsigned int    eax;
  unsigned int    ebx;
  unsigned int    ecx;
  unsigned int    edx;
  unsigned int    esi;
  unsigned int    edi;
  unsigned int    ebp;
  unsigned int    esp;
  
  //Special Registers
  unsigned int    eip;
  unsigned int    eflags;
  //Segment registers.Presently not considered
  /*
  unsigned int cs; 
  unsigned int ds;
  unsigned int es;
  unsigned int ss;
  unsigned int fs;
  unsigned int gs;
  */
  char stack[STACKSIZE];

  status thread_state;
  timer_struct timer_info;
  queue *waiting_processes;
  unsigned int ret_val;
  
};
