J
Joe Pfeiffer
jmfbahciv said:Joe said:No, the part he's right about is that it really is possible to
distribute a lot of the functionality of a conventional kernel (even if
he can't spell it) among several services, so the microkernel doesn't
have to be involved with the details of the IO. The slave does have to
ask the boss for the resources as you say, but only once at system
startup and never again.
Nuts. [that was said politely ] Consider a system that has an
uptime of years. Rebooting to acquire or redistribute resources is
not an option. think about replacing or adding gear without
having to reload the system. And what about cores who have a need
to cooperate with each other? Then think about updating software
such as those DLLs (I think that's what you call them). Are you
going to cause a system or CPU reboot? If you do need a CPU to
reboot, how do you go about it without having to take the rest
of the CPUs or the whole system down?
These are all extremely rare events (i.e., not on the order of thousands
of times per second). So "never" again wasn't quite accurate, but the
point is that the requests for new resources don't happen enough to be
considered as part of the load (if you're going to have hot-swapping you
do need to make sure it all works -- but it isn't part of why this
organization doesn't make much sense).
And this is just thinking about executables which are staid; I'm not
thinking at all about data, static nor variable. Good grief...the
static data would be a bitch...now that I am thinking about it.
And the 1990s were mostly small computer thinking. Some days, I wish
the distributed computing had stayed a pipe dream in the 80s.
The issues in microkernel vs. more conventional organizations have
nothing to do with small vs. large computer thinking. If anything, it's
easier to see a path to things like upgrading and restarting services as
necessary, and isolating bugs to ensure multi-year uptimes, with a
microkernel than with a modular OS. Not any easier to actually get
there, but easier to see the path.