Luke Kenneth Casson Leighton wrote: > [] > srvsvcd's job is also to handle the dependencies for service startup. > > we could look at the linux kernel 'Calculating module dependencies' > code to get an algorithm to work out the startup order.
Why, why, why this is needed???? Why not to use runtime linker for this? If some service a needs a routine from a service b, and a explicitly (and I mean: explicitly) knows that, why not link a with b, like this: ld -o a.so a.o ... b.so ? If it is not obvious that a depends of functionality of b (maybe because there may be many b's implementations), then place that functionality to plain (shared) library (that is also have it's own dependances as well), and again, allow runtime linker to do ITS job. Is there runtime linker now that can't load other libraries when loading some shared object? Or I completely missed the point here (probably)? Regards, Michael.
