Las estructuras que creamos y las estructuras que modificamos.
struct thread { /* Owned by thread.c. */tid_t tid; /* Thread identifier. */enum thread_status status; /* Thread state. */char name[16]; /* Name (for debugging purposes). */uint8_t*stack; /* Saved stack pointer. */int priority; /* Priority. */int nice;struct list_elem allelem; /* List element for all threads list. */ /* Shared between thread.c and synch.c. */struct list_elem elem; /* List element. */int64_t time_sleeping; /* Tiempo que duerme un thread*/ /* Synchonization variables */struct lock *waiting; struct thread *lock_holder;struct list locks; struct list donations; int original_priority;}
Se agrego time_sleeping que es el tiempo que un thread va a dormir. Donations es una lista con las donaciones que un thread recibe, waiting es el lock que un thread esta esperando, lock_holder es el thread que tiene el lock que el thread está esperando y original_priority es la prioridad original que tiene el thread.