El kernel Linux está compuesto por más de cuatro millones de líneas de código, por lo que es uno de los mayores proyectos de código abierto . La base de código completo puede ser visto y modificado por cualquier persona. Con un gran número de desarrolladores de ver el código fuente , los problemas de seguridad se pueden observar y corregir rápidamente. También permite a los desarrolladores escribir el código necesario para soportar nuevo hardware y para adaptarla a los cambios tecnológicos y condiciones.
Monolítico con soporte para módulos cargables dinámicamente
Linux kernel es monolítico - todos los servicios básicos son equiparados en el kernel. Un núcleo monolítico proporciona acceso directo al hardware. No hay cola para el tiempo de procesador . Los procesos pueden comunicarse entre sí . Hardware soportado funciona de forma automática , sin necesidad de software adicional.
El kernel Linux también soporta módulos cargables dinámicamente . Sólo los módulos necesarios se cargan durante el proceso de arranque. Los usuarios pueden cargar módulos adicionales cuando se necesitan , sin tener que reiniciar el sistema operativo.
Verdadera multitarea
El kernel Linux está diseñado para soportar múltiples usuarios que ejecutan varios procesos (programas ) de forma simultánea . Cada proceso en ejecución tiene su propio espacio de direcciones virtual. Los espacios de direcciones están completamente separados el uno del otro . Esto mantiene un proceso fallido de causar todo el sistema falle. El núcleo asigna los recursos del sistema para cada proceso individual .
Soporte para hardware y sistemas de archivos
soporta Linux se puede ejecutar en diferentes arquitecturas de computadores , incluyendo ARM , PA- RISC , IBM , Intel , x86 y SPARC . También es compatible con un gran número de periféricos tales como dispositivos USB , unidades de CD /DVD , cámaras web e impresoras, todo ello sin necesidad de controladores adicionales. El kernel reconoce la arquitectura y las enchufado periféricos durante el proceso de arranque y carga el software apropiado para ejecutarlas.
Linux soporta varios sistemas de archivos , incluyendo el Ext3 , ReiserFS , HPFS , MS -DOS , NFS y sistemas de archivos SysV . Los sistemas de archivos de Linux más utilizados son Ext3 y Ext4 . Usted puede optar por utilizar otro tipo, como ReiserFS . Linux es compatible con MS -DOS y NFS para leer ventanas y unidades de red .