Added .o -> .sys rule to simplify driver makefiles
[reactos.git] / reactos / doc / psmgr.texi
1 \input texinfo @c -*-texinfo-*-
2 @c %**start of header
3 @setfilename psmgr.info
4 @settitle Process Manager Design and Implementation
5 @setchapternewpage odd
6 @c %**end of header
7
8 @ifinfo
9 This document describes the ReactOS process manager design and implementation
10 @end ifinfo
11
12 @titlepage
13 @title Process Manager Design and Implementation
14 @author David Welch <david.welch@seh.ox.ac.uk>
15 @page
16 @vskip 0pt plus 1filll
17 Copyright @copyright{} 1999 David Welch
18 @end titlepage
19
20 @node Top, Overview, , (dir)
21 @comment node-name, next, previous, up
22
23 @ifinfo
24 This document describes the design and implementation of the reactos process
25 manager
26 @end ifinfo
27
28 @menu
29 * Overview:: Overview of this document
30 * External Interfaces:: External Interfaces
31 * Data Structures:: Data Structures
32 * Concept Index:: This index has two entries
33 @end menu
34
35 @node Overview, External Interfaces, top, top
36 @comment node-name, next, previous, up
37 @chapter Overview
38
39 This document describes the design and implementation of the ReactOS process
40 manager. ReactOS is a GPLed operating system that attempts to be compatible
41 with Windows NT, for more information see @uref{http://www.reactos.com}.
42
43 @node External Interfaces, Data Structures, Overview, top
44 @comment node-name, next, previous, up
45 @chapter External Interfaces
46
47 This chapter describes the external interfaces provided by the process
48 manager both to user-mode and to the rest of the kernel.
49
50 @menu
51 * NtCreateProcess:: Creates a new process
52 @end menu
53
54 @node NtCreateProcess, , , External Interfaces
55 @comment node-name, next, previous, up
56
57 @deftypefn Function NTSTATUS NtCreateProcess
58
59 The parameters are
60 @itemize @bullet
61 @item
62 HANDLE ProcessHandle: Received a handle for the created process on return.
63 @item
64 ACCESS_MASK DesiredAccess: Specifies the requested types of access to
65 the created process.
66 @item
67 POBJECT_ATTRIBUTES ObjectAttributes: Specifies various attributes for the
68 created process.
69 @item
70 HANDLE ParentProcessHandle: Specifies the parent process for the created
71 process.
72 @item
73 BOOLEAN InheritObjectTable: True if the new process such inherit its parent's
74 handles.
75 @item
76 HANDLE SectionHandle: If this parameter is NULL then the new process's
77 address space will be a copy of its parent's. Otherwise the new process's
78 address space will contain a mapping of the section pointed to by this
79 handle and NTDLL.
80 @item
81 HANDLE DebugPort: Specifies a handle that will receive debug messages
82 associated with this process.
83 @item
84 HANDLE ExceptionPort: Specifies a handle that will receive exception messages
85 associated with this process.
86 @end itemize
87
88 The return value is either STATUS_SUCCESS or a value indicating the reason
89 by failure.
90 @end deftypefn
91
92 @node Data Structures, Concept Index, External Interfaces, top
93 @comment node-name, next, previous, up
94 @chapter Data Structures
95
96 @node Concept Index, ,Data Structures, Top
97 @unnumbered Concept Index
98 @printindex cp
99 @contents
100 @bye