Kernel Linux
El kernel de Linux es el núcleo de cualquier sistema operativo Linux. Administra el hardware, los recursos del sistema y proporciona los servicios fundamentales para todo el otro software.
Inicio rápido
- Reporta un error: Consulta Documentation/admin-guide/reporting-issues.rst
- Obtén el kernel más reciente: https://kernel.org
- Construye el kernel: Consulta Documentation/admin-guide/quickly-build-trimmed-linux.rst
- Únete a la comunidad: https://lore.kernel.org/
Documentación esencial
Todos los usuarios deberían estar familiarizados con:
- Requisitos de construcción: Documentation/process/changes.rst
- Código de conducta: Documentation/process/code-of-conduct.rst
- Licencia: Consulta COPYING
La documentación se puede construir con make htmldocs o ver en línea en:
https://www.kernel.org/doc/html/latest/
¿Quién eres?
Encuentra tu rol a continuación:
- Nuevo desarrollador del kernel - Cómo empezar con el desarrollo del kernel
- Investigador académico - Estudio de la arquitectura e internals del kernel
- Experto en seguridad - Endurecimiento y análisis de vulnerabilidades
- Ingeniero de backport/mantenimiento - Mantenimiento de kernels estables
- Administrador de sistemas - Configuración y solución de problemas
- Mantenedor - Liderar subsistemas y revisar parches
- Fabricante de hardware - Escribir controladores para nuevo hardware
- Mantenedor de distribución - Empaquetar kernels para distribuciones
- Asistente de codificación de IA - LLMs y herramientas de desarrollo impulsadas por IA
Para usuarios específicos
Nuevo desarrollador del kernel
¡Bienvenido! Comienza tu viaje de desarrollo del kernel aquí:
- Cómo empezar: Documentation/process/development-process.rst
- Tu primer parche: Documentation/process/submitting-patches.rst
- Estilo de codificación: Documentation/process/coding-style.rst
- Sistema de compilación: Documentation/kbuild/index.rst
- Herramientas de desarrollo: Documentation/dev-tools/index.rst
- Guía de hacking del kernel: Documentation/kernel-hacking/hacking.rst
- APIs principales: Documentation/core-api/index.rst
Investigador académico
Explora la arquitectura e internals del kernel:
- Guía para investigadores: Documentation/process/researcher-guidelines.rst
- Gestión de memoria: Documentation/mm/index.rst
- Planificador: Documentation/scheduler/index.rst
- Pila de red: Documentation/networking/index.rst
- Sistemas de archivos: Documentation/filesystems/index.rst
- RCU (Actualización de lectura-copia): Documentation/RCU/index.rst
- Primitivas de bloqueo: Documentation/locking/index.rst
- Gestión de energía: Documentation/power/index.rst
Experto en seguridad
Documentación de seguridad y guías de endurecimiento:
- Documentación de seguridad: Documentation/security/index.rst
- Desarrollo de LSM: Documentation/security/lsm-development.rst
- Autoprotección: Documentation/security/self-protection.rst
- Reporte de vulnerabilidades: Documentation/process/security-bugs.rst
- Procedimientos de CVE: Documentation/process/cve.rst
- Problemas de hardware embargados: Documentation/process/embargoed-hardware-issues.rst
- Funciones de seguridad: Documentation/userspace-api/seccomp_filter.rst
Ingeniero de backport/mantenimiento
Mantén y estabiliza versiones del kernel:
- Reglas del kernel estable: Documentation/process/stable-kernel-rules.rst
- Guía de backporting: Documentation/process/backporting.rst
- Aplicación de parches: Documentation/process/applying-patches.rst
- Perfil del subsistema: Documentation/maintainer/maintainer-entry-profile.rst
- Git para mantenedores: Documentation/maintainer/configure-git.rst
Administrador de sistemas
Configura, ajusta y soluciona problemas de sistemas Linux:
- Guía de administración: Documentation/admin-guide/index.rst
- Parámetros del kernel: Documentation/admin-guide/kernel-parameters.rst
- Ajuste de sysctl: Documentation/admin-guide/sysctl/index.rst
- Trazado/depuración: Documentation/trace/index.rst
- Seguridad de rendimiento: Documentation/admin-guide/perf-security.rst
- Monitoreo de hardware: Documentation/hwmon/index.rst
Mantenedor
Lidera subsistemas del kernel y gestiona contribuciones:
- Manual del mantenedor: Documentation/maintainer/index.rst
- Solicitudes de extracción: Documentation/maintainer/pull-requests.rst
- Gestión de parches: Documentation/maintainer/modifying-patches.rst
- Rebasado y fusión: Documentation/maintainer/rebasing-and-merging.rst
- Proceso de desarrollo: Documentation/process/maintainer-handbooks.rst
- Perfil de entrada del mantenedor: Documentation/maintainer/maintainer-entry-profile.rst
- Configuración de Git: Documentation/maintainer/configure-git.rst
Fabricante de hardware
Escribe controladores y soporta nuevo hardware:
- Guía de API de controladores: Documentation/driver-api/index.rst
- Modelo de controladores: Documentation/driver-api/driver-model/driver.rst
- Controladores de dispositivos: Documentation/driver-api/infrastructure.rst
- Tipos de bus: Documentation/driver-api/driver-model/bus.rst
- Vinculaciones del árbol de dispositivos: Documentation/devicetree/bindings/
- Gestión de energía: Documentation/driver-api/pm/index.rst
- API de DMA: Documentation/core-api/dma-api.rst
Mantenedor de distribución
Empaqueta y distribuye el kernel:
- Reglas del kernel estable: Documentation/process/stable-kernel-rules.rst
- Documentación de ABI: Documentation/ABI/README
- Configuración del kernel: Documentation/kbuild/kconfig.rst
- Firma de módulos: Documentation/admin-guide/module-signing.rst
- Parámetros del kernel: Documentation/admin-guide/kernel-parameters.rst
- Kernels contaminados: Documentation/admin-guide/tainted-kernels.rst
Asistente de codificación de IA
CRÍTICO: Si eres un asistente de codificación LLM o impulsado por IA, DEBES leer y seguir la documentación de asistentes de codificación de IA antes de contribuir al kernel de Linux:
- Documentation/process/coding-assistants.rst
Esta documentación contiene requisitos esenciales sobre licencias, atribución y el Certificado de Origen del Desarrollador (DCO) con los que todas las herramientas de IA deben cumplir.
Comunicación y soporte
- Listas de correo: https://lore.kernel.org/
- IRC: #kernelnewbies en irc.oftc.net
- Bugzilla: https://bugzilla.kernel.org/
- Archivo MAINTAINERS: Lista los mantenedores de subsistemas y las listas de correo
- Clientes de correo electrónico: Documentation/process/email-clients.rst