. load average calculation changed to calculate it all over every tick
instead of keeping a running total of enqueued processes (because somehow the load average was broken) . added SI_KPROC_TAB to get a copy of kernel process table from PM, for a top implementation . fixed arg to sys_nice() to make it an endpoint, not a slot number
This commit is contained in:
@@ -121,7 +121,6 @@ struct kinfo {
|
||||
|
||||
/* Runnable processes and other load-average information. */
|
||||
struct loadinfo {
|
||||
u16_t procs_enqueued; /* current no. of runnable processes */
|
||||
u16_t proc_load_history[_LOAD_HISTORY]; /* history of proc_s_cur */
|
||||
u16_t proc_last_slot;
|
||||
clock_t last_clock;
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#define SI_MEM_ALLOC 4 /* get memory allocation data */
|
||||
#define SI_DATA_STORE 5 /* get copy of data store */
|
||||
#define SI_LOADINFO 6 /* get copy of load average structure */
|
||||
#define SI_KPROC_TAB 7 /* copy of kernel process table */
|
||||
|
||||
/* NULL must be defined in <unistd.h> according to POSIX Sec. 2.7.1. */
|
||||
#define NULL ((void *)0)
|
||||
|
||||
Reference in New Issue
Block a user