Subversion Repositories HelenOS

Rev

Rev 2131 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2131 Rev 2307
Line 37... Line 37...
37
 
37
 
38
#include <kernel/proc/uarg.h>
38
#include <kernel/proc/uarg.h>
39
#include <libarch/thread.h>
39
#include <libarch/thread.h>
40
#include <types.h>
40
#include <types.h>
41
 
41
 
-
 
42
typedef uint64_t thread_id_t;
-
 
43
 
42
extern void __thread_entry(void);
44
extern void __thread_entry(void);
43
extern void __thread_main(uspace_arg_t *uarg);
45
extern void __thread_main(uspace_arg_t *uarg);
44
 
46
 
45
extern int thread_create(void (* function)(void *arg), void *arg, char *name);
47
extern int thread_create(void (* function)(void *), void *arg, char *name, thread_id_t *tid);
46
extern void thread_exit(int status);
48
extern void thread_exit(int status);
-
 
49
extern void thread_detach(thread_id_t thread);
-
 
50
extern int thread_join(thread_id_t thread);
-
 
51
extern thread_id_t thread_get_id(void);
47
extern tcb_t * __make_tls(void);
52
extern tcb_t * __make_tls(void);
48
extern tcb_t * __alloc_tls(void **data, size_t size);
53
extern tcb_t * __alloc_tls(void **data, size_t size);
49
extern void __free_tls(tcb_t *);
54
extern void __free_tls(tcb_t *);
50
extern void __free_tls_arch(tcb_t *, size_t size);
55
extern void __free_tls_arch(tcb_t *, size_t size);
51
 
56