¿Cuáles son los contenidos de esta base de código monolítico?
Entiendo el soporte de la arquitectura del procesador, la seguridad y la virtualización, pero no puedo imaginar que sean más de 600,000 líneas más o menos.
¿Cuáles son los motivos históricos y actuales por los que se incluyen los controladores en la base del código del núcleo?
¿Esos más de 15 millones de líneas incluyen cada controlador para cada pieza de hardware? Si es así, entonces surge la pregunta, ¿por qué los controladores están integrados en el kernel y no paquetes separados que se detectan automáticamente e instalan desde las ID de hardware?
¿Es el tamaño de la base del código un problema para dispositivos con almacenamiento limitado o con memoria?
Parece que aumentaría el tamaño del kernel para dispositivos ARM con espacio limitado si todo eso estuviera incrustado. ¿Hay muchas líneas seleccionadas por el preprocesador? Llámame loco, pero no puedo imaginar una máquina que necesite tanta lógica para ejecutar lo que entiendo son los roles de un núcleo.
¿Hay evidencia de que el tamaño será un problema en más de 50 años debido a su naturaleza aparentemente cada vez mayor?
La inclusión de controladores significa que crecerá a medida que se haga el hardware.
EDITAR : Para aquellos que piensan que esta es la naturaleza de los núcleos, después de algunas investigaciones me di cuenta de que no siempre es así. No se requiere que un núcleo sea tan grande, ya que el microkernel Mach de Carnegie Mellon se enumeró como un ejemplo 'generalmente bajo 10,000 líneas de código'
make menuconfig
para ver cuánto del código se puede habilitar / deshabilitar antes de la compilación.