[ros-dev] RE: [weiden] 13459: moved smdll to rosrtl. We just _can't_have separate dlls for everything internal, that's what static libraries are for. Unless we want a dll hell evenworse than necessary...

ea ea at iol.it
Mon Feb 7 23:24:29 CET 2005


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. 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. Examples of really small components are 
csrss.exe (6144 bytes, in XPSP2IT), 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.

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.


More information about the Ros-dev mailing list