#include <debug.h>#include <list.h>#include <stdint.h>#include "threads/interrupt.h"#include "threads/synch.h"

Go to the source code of this file.
Classes | |
| struct | thread |
Macros | |
| #define | USERPROG |
| #define | VM |
| #define | TID_ERROR ((tid_t) -1) /* Error value for tid_t. */ |
| #define | PRI_MIN 0 /* Lowest priority. */ |
| #define | PRI_DEFAULT 31 /* Default priority. */ |
| #define | PRI_MAX 63 /* Highest priority. */ |
| #define | FDT_PAGES 3 |
| #define | FDCOUNT_LIMIT FDT_PAGES *(1<<9) |
Typedefs | |
| typedef int | tid_t |
| typedef void | thread_func(void *aux) |
Enumerations | |
| enum | thread_status { THREAD_RUNNING , THREAD_READY , THREAD_BLOCKED , THREAD_DYING } |
Functions | |
| void | thread_init (void) |
| void | thread_start (void) |
| void | thread_tick (void) |
| void | thread_print_stats (void) |
| tid_t | thread_create (const char *name, int priority, thread_func *, void *) |
| void | thread_block (void) |
| void | thread_unblock (struct thread *) |
| struct thread * | thread_current (void) |
| tid_t | thread_tid (void) |
| const char * | thread_name (void) |
| void | thread_exit (void) NO_RETURN |
| void | thread_yield (void) |
| int | thread_get_priority (void) |
| void | thread_set_priority (int) |
| int | thread_get_nice (void) |
| void | thread_set_nice (int) |
| int | thread_get_recent_cpu (void) |
| int | thread_get_load_avg (void) |
| void | do_iret (struct intr_frame *tf) |
| int64_t | get_global_ticks (void) |
| void | set_global_ticks (int64_t ticks) |
| void | thread_awake (int64_t ticks) |
| void | thread_sleep (int64_t ticks) |
| bool | cmp_priority (const struct list_elem *a, const struct list_elem *b, void *aux UNUSED) |
Variables | |
| bool | thread_mlfqs |
| #define FDCOUNT_LIMIT FDT_PAGES *(1<<9) |
| #define FDT_PAGES 3 |
| #define PRI_DEFAULT 31 /* Default priority. */ |
| #define PRI_MAX 63 /* Highest priority. */ |
| #define PRI_MIN 0 /* Lowest priority. */ |
| #define TID_ERROR ((tid_t) -1) /* Error value for tid_t. */ |
| #define USERPROG |
| #define VM |
| typedef void thread_func(void *aux) |
| typedef int tid_t |
| enum thread_status |

| void do_iret | ( | struct intr_frame * | tf | ) |


| int64_t get_global_ticks | ( | void | ) |

| void set_global_ticks | ( | int64_t | ticks | ) |

| void thread_awake | ( | int64_t | ticks | ) |


| void thread_block | ( | void | ) |


| tid_t thread_create | ( | const char * | name, |
| int | priority, | ||
| thread_func * | function, | ||
| void * | aux | ||
| ) |


| struct thread * thread_current | ( | void | ) |
| void thread_exit | ( | void | ) |


| int thread_get_load_avg | ( | void | ) |
| int thread_get_nice | ( | void | ) |
| int thread_get_priority | ( | void | ) |


| int thread_get_recent_cpu | ( | void | ) |
| void thread_init | ( | void | ) |


| const char * thread_name | ( | void | ) |


| void thread_print_stats | ( | void | ) |


| void thread_set_nice | ( | int | ) |
| void thread_set_priority | ( | int | new_priority | ) |

| void thread_sleep | ( | int64_t | ticks | ) |


| void thread_start | ( | void | ) |


| void thread_tick | ( | void | ) |


| tid_t thread_tid | ( | void | ) |
| void thread_unblock | ( | struct thread * | t | ) |


| void thread_yield | ( | void | ) |


|
extern |