ea wrote:
Thomas Weidenmueller wrote:
Ge van Geldorp wrote:
I think you are acting unbelievably rude here.
Please revert your
change and
discuss this on the mailinglist first.
You're right, I apologize for moving it without permission. If anyone
or if the majority thinks this change was right, someone may do it
again, I'm not going to anymore. Same applies for epsapi and expat.
I am sorry that little library caused so much noise. I hope a long
explanation won't hurt you. I could not decide if it should be a
static, or a dynamic library (I should have sent it as static to
Alex), or even something else, but a few days ago I recalled what Alex
himself quoted about LPC - "Security through obscurity" - and I
decided to make it dynamic. It is ridiculously small, but it is the
client side library for clients of the Session Manager subsystem server.
I would make it static if I were you, but only when it's complete.
Dynamic libraries are much easier to debug, but if it's not in the "Real
Thing" then it should be static..it's also faster ;)
It is wat kernel32 is for the W32 subsystem. This is a
new concept, or
an implicit one in the NT architecture. Possibly, it is the obscurity
brought by the implicit idea of having environment servers running as
clients of the session manager, that has prevented, up to present
days, anyone developing new subsystems. MS made it a static library, I
suppose, but I guess not because it is that small.
I'll look into this... my work on LPC has been indefintely delayed due
to some other projects, but I've done a lot of research on csrss. I have
the full APIs/Structures used and I'm making a document out of it
(Slowly)..it won't be much use to ROS since we supposedly don't want to
clone NT so much (and I agree, this is ultra internal stuff that doesn't
need to be cloned..nobody should know how to talk to crsrss (but maybe
they all will start making programs after I publish the docs :P). But
I've never looked at smss much... there is however a document from MS
that shows how to create your own subsystem... I'll look into it and see
what I can find out for you.
Examples of really small components are csrss.exe
(6144 bytes, in
XPSP2IT),
Dumb loader which loads the csr dlls.
and csrsrv.dll (32768 bytes, in XPSP2IT: this one is
the server #0
that csrss hosts and was removed in NT 4.0, but was reborn in NT 5.x).
As csrsrv.dll shows up again since NT 5.0, I deduced I had not to put
smdll code in ntdll.
Right, a very confusing concept of CSRSS, the externel CSR Server
"Server" DLL.
I actually don't know what is the right place for this code, because
it does not exist in a visible library in The Real Thing, but I chose
that place for coherence with other subsystems.
At present, code is unfinished and off main line also in smss,
therefore, moving it to a proper place is to you.
I would leave it as you created it, but make it static later on... but
I'm pretty sure MS has this in a dyn dll somewhere.
Best regards,
Alex Ionescu