multi-cpu scheduling WIP
This commit is contained in:
@@ -25,17 +25,20 @@ struct cpu {
|
||||
|
||||
uintptr_t lapic_mmio_base;
|
||||
uint64_t lapic_ticks;
|
||||
uint64_t lapic_id;
|
||||
uint32_t id;
|
||||
|
||||
spin_lock_t lock;
|
||||
|
||||
struct list_node_link* proc_run_q;
|
||||
struct proc* proc_current;
|
||||
atomic_int proc_run_q_count;
|
||||
};
|
||||
|
||||
struct cpu* cpu_make (void);
|
||||
struct cpu* cpu_make (uint64_t lapic_id);
|
||||
struct cpu* cpu_get (void);
|
||||
void cpu_request_sched (struct cpu* cpu);
|
||||
struct cpu* cpu_find_lightest (void);
|
||||
|
||||
#define thiscpu (cpu_get ())
|
||||
|
||||
|
||||
Reference in New Issue
Block a user