Rev 475 | Rev 501 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 475 | Rev 483 | ||
---|---|---|---|
Line 36... | Line 36... | ||
36 | #include <list.h> |
36 | #include <list.h> |
37 | 37 | ||
38 | #define RQ_COUNT 16 |
38 | #define RQ_COUNT 16 |
39 | #define NEEDS_RELINK_MAX (HZ) |
39 | #define NEEDS_RELINK_MAX (HZ) |
40 | 40 | ||
- | 41 | /** Scheduler run queue structure. */ |
|
41 | struct runq { |
42 | struct runq { |
42 | spinlock_t lock; |
43 | spinlock_t lock; |
43 | link_t rq_head; /**< List of ready threads. */ |
44 | link_t rq_head; /**< List of ready threads. */ |
44 | int n; /**< Number of threads in rq_ready. */ |
45 | count_t n; /**< Number of threads in rq_ready. */ |
45 | }; |
46 | }; |
46 | 47 | ||
47 | extern atomic_t nrdy; |
48 | extern atomic_t nrdy; |
48 | extern void scheduler_init(void); |
49 | extern void scheduler_init(void); |
49 | 50 | ||
50 | extern void scheduler_fpu_lazy_request(void); |
51 | extern void scheduler_fpu_lazy_request(void); |
51 | extern void scheduler(void); |
52 | extern void scheduler(void); |
52 | extern void kcpulb(void *arg); |
53 | extern void kcpulb(void *arg); |
53 | 54 | ||
- | 55 | extern void before_thread_runs(void); |
|
- | 56 | ||
54 | /* |
57 | /* |
55 | * To be defined by architectures: |
58 | * To be defined by architectures: |
56 | */ |
59 | */ |
57 | 60 | ||
58 | extern void before_thread_runs(void); |
- | |
59 | extern void before_thread_runs_arch(void); |
61 | extern void before_thread_runs_arch(void); |
60 | 62 | ||
61 | #endif |
63 | #endif |