Locking is added to the thread library.

Now, we support thread trees which are spanning more than one level depth. Any
thread can create any number of threads provided that they are under the limits
which are enforced by the kernel.

Also with this commit, we have almost finished supporting SHARED space thread
creation in which stack and utcb space are allocated statically.
This commit is contained in:
Bora Sahin
2009-11-11 21:33:15 +02:00
parent c8a55f8834
commit 9763296ddc
6 changed files with 144 additions and 69 deletions

View File

@@ -6,11 +6,14 @@
#ifndef __LIB_STACK_H__
#define __LIB_STACK_H__
/* Symbolic constants and macros */
#define IS_STACK_SETUP() (lib_stack_size)
int stack_pool_init(unsigned long stack_start,
unsigned long stack_end,
unsigned long stack_size);
void *stack_new_space(int nitems, int size);
int stack_delete_space(void *stack_address, int nitems, int size);
void *get_stack_space(int nitems, int size);
int delete_stack_space(void *stack_address, int nitems, int size);
#endif /* __LIB_STACK_H__ */