#include "proc.h"
#include "cfg/cfg_arch.h" // ARCH_EMUL
-#include "cfg/cfg_kern.h"
+#include "cfg/cfg_proc.h"
+#include "cfg/cfg_monitor.h"
#include <cfg/macros.h> // ROUND_UP2
#include <cfg/module.h>
#include <cfg/depend.h> // CONFIG_DEPEND()
#include <string.h> /* memset() */
-// Check config dependencies
-CONFIG_DEPEND(CONFIG_KERN_SIGNALS, CONFIG_KERN_SCHED);
-CONFIG_DEPEND(CONFIG_KERN_SEMAPHORES, CONFIG_KERN_SIGNALS);
-CONFIG_DEPEND(CONFIG_KERN_MONITOR, CONFIG_KERN_SCHED);
-
-
/*
* The scheduer tracks ready processes by enqueuing them in the
* ready list.
*/
List StackFreeList;
-#define NPROC 8
+#define NPROC 10
cpu_stack_t proc_stacks[NPROC][(64 * 1024) / sizeof(cpu_stack_t)];
#endif
#if (ARCH & ARCH_EMUL)
/* Ignore stack provided by caller and use the large enough default instead. */
PROC_ATOMIC(stack_base = (cpu_stack_t *)list_remHead(&StackFreeList));
+ ASSERT(stack_base);
stack_size = CONFIG_KERN_MINSTACKSIZE;
#elif CONFIG_KERN_HEAP