X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fthreads%2Fthread.h;h=5cfbadfbfb303bc2fbb69ecf6a72e85732803dbc;hb=6bae0ee083ed3ef0a1df7e892c6509e47a0ad2dc;hp=a5308aac3682802064f4910c945b2551cddece7a;hpb=41cc2728b06b5e1eeb4cf5a4979692640049e047;p=pintos-anon diff --git a/src/threads/thread.h b/src/threads/thread.h index a5308aa..5cfbadf 100644 --- a/src/threads/thread.h +++ b/src/threads/thread.h @@ -11,7 +11,6 @@ enum thread_status { - THREAD_INITIALIZING, THREAD_RUNNING, THREAD_READY, THREAD_BLOCKED, @@ -20,13 +19,14 @@ enum thread_status struct thread { - enum thread_status status; - char name[16]; - uint8_t *stack; - list_elem rq_elem; + enum thread_status status; /* Thread state. */ + char name[16]; /* Name (for debugging purposes). */ + uint8_t *stack; /* Saved stack pointer. */ + list_elem rq_elem; /* Run queue list element. */ #ifdef USERPROG - struct addrspace addrspace; + struct addrspace addrspace; /* Userland address space. */ #endif + unsigned magic; /* Always set to THREAD_MAGIC. */ }; void thread_init (void); @@ -37,8 +37,8 @@ struct thread *thread_create (const char *name, void (*) (void *aux), void *); bool thread_execute (const char *filename); #endif -void thread_destroy (struct thread *); -void thread_ready (struct thread *); +void thread_wake (struct thread *); +const char *thread_name (struct thread *); struct thread *thread_current (void); void thread_exit (void) NO_RETURN;