X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=kern%2Fproc_p.h;h=4123e138240fbbbe6354c03ad6bcc18d9c4bf978;hb=8e770a994c62f109c91854136e1bbae049b07a2f;hp=5cd44a94f9d2bc9e9fa02690232e844223cd4377;hpb=1cc167e20f21d2e81527ca47ccd4a21a6198f86f;p=bertos.git diff --git a/kern/proc_p.h b/kern/proc_p.h index 5cd44a94..4123e138 100755 --- a/kern/proc_p.h +++ b/kern/proc_p.h @@ -1,9 +1,9 @@ /*! * \file * * * \brief Internal scheduler structures and definitions for processes. @@ -15,6 +15,22 @@ /* * $Log$ + * Revision 1.6 2004/08/24 16:05:15 bernie + * Add missing headers; Reformat. + * + * Revision 1.5 2004/08/14 19:37:57 rasky + * Merge da SC: macros.h, pool.h, BIT_CHANGE, nome dei processi, etc. + * + * Revision 1.4 2004/07/30 14:24:16 rasky + * Task switching con salvataggio perfetto stato di interrupt (SR) + * Kernel monitor per dump informazioni su stack dei processi + * + * Revision 1.3 2004/07/14 14:18:09 rasky + * Merge da SC: Rimosso timer dentro il task, che è uno spreco di memoria per troppi task + * + * Revision 1.2 2004/06/03 11:27:09 bernie + * Add dual-license information. + * * Revision 1.1 2004/05/23 17:27:00 bernie * Import kern/ subdirectory. * @@ -31,36 +47,42 @@ * Add multithreading kernel * */ - #ifndef KERN_PROC_P_H #define KERN_PROC_P_H #include "compiler.h" +#include "cpu.h" /* for cpu_stack_t */ #include "config.h" #include "config_kern.h" #include -#include - typedef struct Process { Node link; /*!< Link Process into scheduler lists */ cpustack_t *stack; /*!< Per-process SP */ + IPTR user_data; /*!< Custom data passed to the process */ #if CONFIG_KERN_SIGNALS sigset_t sig_wait; /*!< Signals the process is waiting for */ sigset_t sig_recv; /*!< Received signals */ #endif -#if CONFIG_KERN_TIMER - struct Timer proc_timer; /*!< Process own timer */ -#endif - #if CONFIG_KERN_HEAP uint16_t flags; /*!< Flags */ cpustack_t *stack_base; /*!< Base of process stack */ size_t stack_size; /*!< Size of process stack */ #endif + +#if CONFIG_KERN_MONITOR + struct ProcMonitor + { + Node link; + const char *name; + cpustack_t *stack_base; + size_t stack_size; + } monitor; +#endif + } Process;