Subversion Repositories HelenOS-historic

Rev

Rev 475 | 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