Files
codezero/include/l4/api/thread.h
Bahadir Balban 89d49ef495 Lots of fixes, notion of pager hierarchy, fixed tgroup capability checking
Notion of pager hierarchy introduced using the existing but unused
pagerid field.

Thread creation now has two more flags TC_AS_PAGER and TC_SHARE_PAGER.
The former sets creator as pager, the latter sets creator's pager as pager.

Thread group capability sharing now correctly carries shared capabilities
to the thread group leader's tgr_cap_list list, and this list is checked
during capability checking.
2009-10-23 02:36:12 +03:00

23 lines
820 B
C

#ifndef __THREAD_H__
#define __THREAD_H__
#define THREAD_ACTION_MASK 0x000F
#define THREAD_CREATE 0x0000
#define THREAD_RUN 0x0001
#define THREAD_SUSPEND 0x0002
#define THREAD_RESUME 0x0003
#define THREAD_DESTROY 0x0004
#define THREAD_RECYCLE 0x0005
#define THREAD_CREATE_MASK 0x07F0
#define TC_SHARE_CAPS 0x0010 /* Share all thread capabilities */
#define TC_SHARE_UTCB 0x0020 /* Share utcb location (same space */
#define TC_SHARE_GROUP 0x0040 /* Share thread group id */
#define TC_SHARE_SPACE 0x0080 /* New thread, use given space */
#define TC_COPY_SPACE 0x0100 /* New thread, copy given space */
#define TC_NEW_SPACE 0x0200 /* New thread, new space */
#define TC_SHARE_PAGER 0x0400 /* New thread, shared pager */
#define TC_AS_PAGER 0x0800 /* Set new thread as child */
#endif /* __THREAD_H__ */