reactos/dll/win32/smdll/readme.txt
Cameron Gutman c2d0d784c7 [USB-BRINGUP-TRUNK]
- Create a branch to do a proper merge of USB work from a trunk base instead of from cmake-bringup
- In the future, DO NOT under any circumstances branch another branch. This leads to merge problems!

svn path=/branches/usb-bringup-trunk/; revision=55018
2012-01-20 20:58:46 +00:00

43 lines
1.2 KiB
Plaintext

$Id$
This is SMDLL: a helper library to talk to the ReactOS session manager (SM).
It should be linked in the following components:
a) the SM itself, because it registers for managing native processes
IMAGE_SUBSYSTEM_NATIVE;
b) environment subsystem servers, because each one should register in
the SM its own subsystem (willing to manage those processes);
c) terminal emulators for optional subsystems, like posixw32 and os2w32,
to ask the SM to start the optional subsystem server they need connect to;
d) system and development utilites to debug/query the SM.
2004-02-15 ea
How a subsystem uses these APIs
===============================
Thread #0 Thread #1
- create your own directory (\EXAMPLE)
- create an event E0
- create your call back API port (\EXAMPLE\SbApiPort)
and serving thread T1
- wait connection requests on call
back port (\EXAMPLE\SbApiPort)
- SmConnectApiPort(
\EXAMPLE\SbApiPort,
hSbApiPort,
SUBSYSTEM_ID,
& hSmApiPort)
- wait for E0
- as SM calls back, signal event E0
- create your API port (\EXAMPLE\ApiPort) and
initialize the subsystem
- call SmCompleteSession (hSmApiPort,
hSbApiPort,
hApiPort)
- manage processes etc.