3 ms·
That is not what monolithic means. Monolithic is opposed to modular. Just being in the same repository does not make components tightly coupled etc.
by andreasvc 12y ago
That is not what monolithic means. Monolithic is opposed to modular. Just being in the same repository does not make components tightly coupled etc.
- the_why_of_y 12y agoMonolithic is _not_ opposed to modular. Here's a list of systems that are both monolithic and modular: * Linux * the FreeBSD kernel * the Solaris kernel * Apache HTTPD * Postfix * OpenJDK * XOrg * EMACS * LibreOffice A modular, non-monolithic alternative to the kernels would be MINIX or HURD.
- andreasvc 12y agoMonolithic may have a specific technical meaning in the context of kernels which is not opposed to modularity, but in general the two can be considered opposites. Monolithic is simply "of one piece", while modular means something has separate, changeable pieces. If you disagree it would be more enlightening to tell me your definition instead of a list of exceptions, because right now I don't see why they are.
- justincormack 12y agoBut they are in the same repo because they are tightly coupled. Some of the code is shared between kernel and userspace for example, and stuff is versioned to match, as the BSDs do not have the strict userspace compatibility guarantees that Linux does, so things do change (though there are compat shims).
- vertex-four 12y agoOn the other hand, with the BSDs, you can swap out nearly any userland component for an alternative and it keeps working. While various things share code, it's very rare that one feature depends on an entirely unrelated feature, which is extremely unlike systemd.
- justincormack 12y agoTrue, and you can look in the Makefile to see what the dependencies are.