2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS kernel
4 * FILE: include/ntos/ps.h
5 * PURPOSE: Process/thread declarations used by all the parts of the
7 * PROGRAMMER: David Welch <welch@cwcom.net>
13 #ifndef __INCLUDE_PS_H
14 #define __INCLUDE_PS_H
16 /* Thread access rights */
17 #define THREAD_TERMINATE (0x0001L)
18 #define THREAD_SUSPEND_RESUME (0x0002L)
19 #define THREAD_GET_CONTEXT (0x0008L)
20 #define THREAD_SET_CONTEXT (0x0010L)
21 #define THREAD_SET_INFORMATION (0x0020L)
22 #define THREAD_QUERY_INFORMATION (0x0040L)
23 #define THREAD_SET_THREAD_TOKEN (0x0080L)
24 #define THREAD_IMPERSONATE (0x0100L)
25 #define THREAD_DIRECT_IMPERSONATION (0x0200L)
27 #define THREAD_ALL_ACCESS (0x1f03ffL)
28 #define THREAD_READ (0x020048L)
29 #define THREAD_WRITE (0x020037L)
30 #define THREAD_EXECUTE (0x120000L)
32 /* Process access rights */
33 #define PROCESS_TERMINATE (0x0001L)
34 #define PROCESS_CREATE_THREAD (0x0002L)
35 #define PROCESS_SET_SESSIONID (0x0004L)
36 #define PROCESS_VM_OPERATION (0x0008L)
37 #define PROCESS_VM_READ (0x0010L)
38 #define PROCESS_VM_WRITE (0x0020L)
39 #define PROCESS_DUP_HANDLE (0x0040L)
40 #define PROCESS_CREATE_PROCESS (0x0080L)
41 #define PROCESS_SET_QUOTA (0x0100L)
42 #define PROCESS_SET_INFORMATION (0x0200L)
43 #define PROCESS_QUERY_INFORMATION (0x0400L)
45 #define PROCESS_ALL_ACCESS (0x1f0fffL)
46 #define PROCESS_READ (0x020410L)
47 #define PROCESS_WRITE (0x020bebL)
48 #define PROCESS_EXECUTE (0x120000L)
50 /* Thread priorities */
51 #define THREAD_PRIORITY_ABOVE_NORMAL (1)
52 #define THREAD_PRIORITY_BELOW_NORMAL (-1)
53 #define THREAD_PRIORITY_HIGHEST (2)
54 #define THREAD_PRIORITY_IDLE (-15)
55 #define THREAD_PRIORITY_LOWEST (-2)
56 #define THREAD_PRIORITY_NORMAL (0)
57 #define THREAD_PRIORITY_TIME_CRITICAL (15)
58 #define THREAD_PRIORITY_ERROR_RETURN (2147483647)
61 #define CREATE_DEFAULT_ERROR_MODE (67108864)
62 #define CREATE_NEW_CONSOLE (16)
63 #define CREATE_NEW_PROCESS_GROUP (512)
64 #define CREATE_SEPARATE_WOW_VDM (2048)
65 #define CREATE_SUSPENDED (4)
66 #define CREATE_UNICODE_ENVIRONMENT (1024)
67 #define DEBUG_PROCESS (1)
68 #define DEBUG_ONLY_THIS_PROCESS (2)
69 #define DETACHED_PROCESS (8)
70 #define HIGH_PRIORITY_CLASS (128)
71 #define IDLE_PRIORITY_CLASS (64)
72 #define NORMAL_PRIORITY_CLASS (32)
73 #define REALTIME_PRIORITY_CLASS (256)
75 /* ResumeThread / SuspendThread */
76 #define MAXIMUM_SUSPEND_COUNT (0x7f)
78 #endif /* __INCLUDE_PS_H */