X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcfg%2Fcfg_kern.h;h=bc4594a420b6d8c2ee6f8d4c342193226a95319f;hb=29e7e26cf5643df1e8fac632a77ad435675ecafa;hp=f11c2bcc8234d1dfea6cdb7295a8038a3e721530;hpb=623e3552b249d49cd8a9fcfe8a5f86d6af2ef1a1;p=bertos.git diff --git a/bertos/cfg/cfg_kern.h b/bertos/cfg/cfg_kern.h index f11c2bcc..bc4594a4 100644 --- a/bertos/cfg/cfg_kern.h +++ b/bertos/cfg/cfg_kern.h @@ -26,8 +26,8 @@ * invalidate any other reasons why the executable file might be covered by * the GNU General Public License. * - * Copyright 2001,2004 Develer S.r.l. (http://www.develer.com/) - * Copyright 1999,2000,2001 Bernie Innocenti + * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/) + * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti * --> * * \brief Kernel configuration parameters @@ -39,32 +39,27 @@ #ifndef CFG_KERN_H #define CFG_KERN_H -#include "cfg/cfg_arch.h" /* ARCH_EMUL */ - /** - * Multithreading kernel. + * Enable the multithreading kernel. */ -#define CONFIG_KERNEL 0 +#define CONFIG_KERN 1 /** - * \name Modules activation - * + * \name Optional kernel features * \{ */ -/* Module/option Active Dependencies */ -#define CONFIG_KERN_SCHED (0) -#define CONFIG_KERN_SIGNALS (0 && CONFIG_KERN_SCHED) -#define CONFIG_KERN_TIMER (0) -#define CONFIG_KERN_HEAP (0) -#define CONFIG_KERN_SEMAPHORES (0 && CONFIG_KERN_SIGNALS) -#define CONFIG_KERN_MONITOR (0 && CONFIG_KERN_SCHED) +#define CONFIG_KERN_SCHED 1 ///< Process schedling +#define CONFIG_KERN_SIGNALS 1 ///< Inter-process signals +#define CONFIG_KERN_IRQ 0 ///< Interrupt supervisor +#define CONFIG_KERN_HEAP 0 ///< Dynamic memory allocation +#define CONFIG_KERN_SEMAPHORES 1 ///< Re-entrant mutual exclusion primitives +#define CONFIG_KERN_MONITOR 1 ///< Process monitor +#define CONFIG_KERN_PREEMPT 0 ///< Preemptive process scheduling +#define CONFIG_KERN_PRI 0 ///< Priority-based scheduling policy /*\}*/ -/* EXPERIMENTAL */ -#define CONFIG_KERN_PREEMPTIVE (0 && CONFIG_KERN_SCHED && CONFIG_KERN_TIMER) - -/// Time sharing quantum in timer ticks. -#define CONFIG_KERN_QUANTUM 50 +/// [ms] Time sharing quantum (a prime number prevents interference effects) +#define CONFIG_KERN_QUANTUM 47 /// Module logging level. #define KERN_LOG_LEVEL LOG_LVL_ERR