Subversion Repositories HelenOS-historic

Rev

Rev 1125 | Rev 1129 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1125 Rev 1128
Line 42... Line 42...
42
typedef sysarg_t pstid_t;
42
typedef sysarg_t pstid_t;
43
 
43
 
44
struct psthread_data {
44
struct psthread_data {
45
    struct psthread_data *self; /* ia32, amd64 needs to get self address */
45
    struct psthread_data *self; /* ia32, amd64 needs to get self address */
46
 
46
 
47
    link_t list;
47
    link_t link;
48
    context_t ctx;
48
    context_t ctx;
49
    void *stack;
49
    void *stack;
50
    void *arg;
50
    void *arg;
51
    int (*func)(void *);
51
    int (*func)(void *);
52
 
52
 
Line 59... Line 59...
59
 
59
 
60
extern int context_save(context_t *c);
60
extern int context_save(context_t *c);
61
extern void context_restore(context_t *c) __attribute__ ((noreturn));
61
extern void context_restore(context_t *c) __attribute__ ((noreturn));
62
 
62
 
63
pstid_t psthread_create(int (*func)(void *), void *arg);
63
pstid_t psthread_create(int (*func)(void *), void *arg);
64
int ps_preempt(void);
64
int psthread_schedule_next(void);
65
int ps_join(pstid_t psthrid);
65
int psthread_join(pstid_t psthrid);
66
 
66
 
67
#endif
67
#endif