Was ist der Inhalt dieser monolithischen Codebasis?
Ich verstehe die Unterstützung der Prozessorarchitektur, die Sicherheit und die Virtualisierung, kann mir aber nicht vorstellen, dass das mehr als 600.000 Zeilen sind.
Was sind die historischen und aktuellen Gründe, warum Treiber in der Kernel-Codebasis enthalten sind?
Enthalten diese mehr als 15 Millionen Leitungen jeden einzelnen Treiber für jede Hardware? Wenn ja, stellt sich dann die Frage, warum Treiber in den Kernel eingebettet sind und nicht Pakete, die automatisch erkannt und von Hardware-IDs installiert werden?
Ist die Größe der Codebasis ein Problem für Geräte mit eingeschränktem Speicher oder mit eingeschränktem Speicher?
Es scheint, als würde die Kernelgröße für ARM-Geräte mit eingeschränktem Speicherplatz aufgebläht, wenn alles eingebettet wäre. Werden viele Zeilen vom Präprozessor ausgesondert? Nennen Sie mich verrückt, aber ich kann mir nicht vorstellen, dass eine Maschine so viel Logik benötigt, um zu funktionieren. Ich verstehe, dass es sich um die Rollen eines Kernels handelt.
Gibt es Beweise dafür, dass die Größe in mehr als 50 Jahren ein Problem sein wird, da sie anscheinend immer größer wird?
Das Einbeziehen von Treibern bedeutet, dass es mit der Hardware wächst.
EDIT : Für diejenigen, die denken, dass dies die Natur des Kernels ist, wurde mir nach einigen Recherchen klar, dass dies nicht immer der Fall ist. Ein Kernel muss nicht so groß sein, da der Microkernel Mach von Carnegie Mellon als Beispiel aufgeführt wurde: "Normalerweise weniger als 10.000 Codezeilen".
make menuconfig
um zu sehen , wie viel von dem Code kann aktiviert / deaktiviert , um Gebäude vor werden.