Thread/Process Termination/Repeaing Rewrite + Fixes
[reactos.git] / reactos / ntoskrnl / ps / psmgr.c
1 /* $Id$
2 *
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: ntoskrnl/ps/psmgr.c
6 * PURPOSE: Process management
7 *
8 * PROGRAMMERS: David Welch (welch@mcmail.com)
9 */
10
11 /* INCLUDES **************************************************************/
12
13 #include <ntoskrnl.h>
14 #define NDEBUG
15 #include <internal/debug.h>
16
17 /* FUNCTIONS ***************************************************************/
18
19 VOID PiShutdownProcessManager(VOID)
20 {
21 DPRINT("PiShutdownProcessManager()\n");
22
23 PiKillMostProcesses();
24 }
25
26 VOID INIT_FUNCTION
27 PiInitProcessManager(VOID)
28 {
29 PsInitJobManagment();
30 PsInitProcessManagment();
31 PsInitThreadManagment();
32 PsInitIdleThread();
33 PsInitialiseW32Call();
34 }
35
36
37 /**********************************************************************
38 * NAME EXPORTED
39 * PsGetVersion
40 *
41 * DESCRIPTION
42 * Retrieves the current OS version.
43 *
44 * ARGUMENTS
45 * MajorVersion Pointer to a variable that will be set to the
46 * major version of the OS. Can be NULL.
47 *
48 * MinorVersion Pointer to a variable that will be set to the
49 * minor version of the OS. Can be NULL.
50 *
51 * BuildNumber Pointer to a variable that will be set to the
52 * build number of the OS. Can be NULL.
53 *
54 * CSDVersion Pointer to a variable that will be set to the
55 * CSD string of the OS. Can be NULL.
56 *
57 * RETURN VALUE
58 * TRUE OS is a checked build.
59 * FALSE OS is a free build.
60 *
61 * NOTES
62 * The DDK docs say something about a 'CmCSDVersionString'.
63 * How do we determine in the build is checked or free??
64 *
65 * @unimplemented
66 */
67
68 BOOLEAN
69 STDCALL
70 PsGetVersion (
71 PULONG MajorVersion OPTIONAL,
72 PULONG MinorVersion OPTIONAL,
73 PULONG BuildNumber OPTIONAL,
74 PUNICODE_STRING CSDVersion OPTIONAL
75 )
76 {
77 if (MajorVersion)
78 *MajorVersion = 4;
79
80 if (MinorVersion)
81 *MinorVersion = 0;
82
83 if (BuildNumber)
84 *BuildNumber = 1381;
85
86 if (CSDVersion)
87 {
88 CSDVersion->Length = 0;
89 CSDVersion->MaximumLength = 0;
90 CSDVersion->Buffer = NULL;
91 #if 0
92 CSDVersion->Length = CmCSDVersionString.Length;
93 CSDVersion->MaximumLength = CmCSDVersionString.Maximum;
94 CSDVersion->Buffer = CmCSDVersionString.Buffer;
95 #endif
96 }
97
98 /* FIXME: How do we determine if build is checked or free? */
99 return FALSE;
100 }
101
102 /* EOF */