Núcleo Linux

Para el sistema operativo libre compuesto principalmente por el núcleo Linux y GNU, véase GNU/Linux.
Para el paquete que no incluye software privativo, véase Linux-libre.
Linux Kernel
Parte de la familia Linux

Tux.svg

Linux 3.0.0 boot.png

El núcleo Linux 3.0.0 en proceso de arranque
Desarrollador
Linus Torvalds, y la comunidad de colaboradores alrededor del mundo.
Linux Kernel Archives
Información general
Modelo de desarrollo Desarrollo iterativo, mediante código abierto y colaboración de la comunidad.[1]
Lanzamiento inicial 25 de agosto de comp.os.minix info)
Última versión estable Kernel: 4.14.4 (info)
5 de diciembre de 2017 (11 días)
Última versión en pruebas 4.15-rc2 (info)
3 de diciembre de 2017 (13 días)
Escrito en C, ensamblador[3]
Núcleo Monolítico
Tipo de núcleo Unix-like
Plataformas soportadas DEC Alpha, ARM, AVR32, Blackfin, ETRAX CRIS, FR-V, H8/300, Itanium, M32R, m68k, Microblaze, MIPS, MN103, PA-RISC, PowerPC, s390, S+core, SuperH, SPARC, TILE64, Unicore32, x86, Xtensa
Licencia GPL v2
Estado actual En Desarrollo
Idiomas Inglés
En español No
Artículos relacionados
[ editar datos en Wikidata]

Linux es un núcleo mayormente libre semejante al núcleo de Unix.[5]​ Linux está licenciado bajo la Linux Kernel Mailing List Archive.

El núcleo Linux fue concebido por el entonces estudiante de ciencias de la computación finlandés Linus Torvalds en 1991.[8]

Linux es multiprogramado, dispone de memoria virtual, gestión de memoria, conectividad en red y permite bibliotecas compartidas. Linux es multiplataforma y es portable a cualquier arquitectura siempre y cuando ésta disponga de una versión de GCC compatible.[9]

Núcleo de sistema operativo

Núcleo

En el archivo Léeme de Linux se indica que es un clon del sistema operativo Unix. [4]​, que a su vez era semejante a Unix pero con una concepción de micronúcleo en vez de monolítica.

Un micronúcleo contiene una funcionalidad mínima en comparación con un núcleo monolítico tradicional.

It's important to realize that these programs are not part of the operating system (...). The operating system is the portion of the software that runs in kernel mode (...). A trend in modern operating systems is to take this idea of moving code up into higher layers even further and remove as much as possible from the operating system, leaving a minimal kernel.

Es importante darse cuenta que estos programas no son parte del sistema operativo (...). El sistema operativo es la porción de software que se ejecuta en modo kernel (...). Una tendencia en sistemas operativos modernos es tomar esta idea de mover código hacia capas más lejanas y eliminar cuanto sea posible del sistema operativo, dejando un kernel mínimo.

Operating Systems Design & Implementation, Tanenbaum y Woodhull. (Refiriéndose a un sistema micronúcleo basado en el modelo cliente-servidor. El autor indica repetidamente que es razonable argumentar que las funciones que pasan a ejecutarse en espacio de usuario siguen siendo parte del sistema operativo).

Darwin y GNU Hurd tienen núcleos que son una versión de Mach. Minix, sistema operativo en el que se basó inicialmente Linux, también es micronúcleo. Todos ellos tienen en común el traslado de parte de la funcionalidad en espacio privilegiado a espacio de usuario.

Sistema operativo

ubuntu-minimal
La instalación mínima de Ubuntu consiste en una serie de software que forma una distribución mínima de GNU/Linux. Todo el software termina dependiendo del entorno de ejecución del proyecto GNU, la biblioteca de C GNU libc.

La parte de un sistema operativo que se ejecuta sin privilegios o en espacio de usuario es la biblioteca del lenguaje C, que provee el entorno de tiempo de ejecución, y una serie de programas o herramientas que permiten la administración y uso del núcleo y proveer servicios al resto de programas en espacio de usuario, formando junto con el núcleo el sistema operativo.

En un sistema con núcleo monolítico como Linux la biblioteca de lenguaje C consiste en una abstracción de acceso al núcleo. Algunas bibliotecas como la biblioteca de GNU proveen funcionalidad adicional para facilitar la vida del programador y usuario o mejorar el rendimiento de los programas.

En un sistema con micronúcleo la biblioteca de lenguaje C puede gestionar sistemas de archivos o controladores además del acceso al núcleo del sistema.

A los sistemas operativos que llevan Linux se les llama de forma genérica distribuciones Linux. Éstas consisten en una recopilación de software que incluyen el núcleo Linux y el resto de programas necesarios para completar un sistema operativo.[10]​ Las distribuciones más comunes son de hecho distribuciones GNU/Linux o distribuciones Android. El hecho de que compartan núcleo no significa que sean compatibles entre sí. Una aplicación hecha para GNU/Linux no es compatible con Android sin la labor adicional necesaria para que sea multiplataforma.

Las distribuciones GNU/Linux usan Linux como núcleo junto con el entorno de tiempo de ejecución del Proyecto GNU y una serie de programas y herramientas del mismo que garantizan un sistema funcional mínimo. La mayoría de distribuciones GNU/Linux incluye software adicional como entornos gráficos o navegadores web así como los programas necesarios para permitirse instalar a sí mismas.[10]​ Los programas de instalación son aportados por el desarrollador de la distribución. Se les conoce como gestores de paquetes. Los creadores de una distribución también se pueden encargar de añadir configuraciones iniciales de los distintos programas incluidos en la distribución.

Las distribuciones Android incluyen el núcleo Linux junto con el entorno de ejecución y herramientas del proyecto AOSP de Google. Cada fabricante de teléfonos dispone de su propia distribución de Android a la cual modifica, elimina o añade programas extra: interfaces gráficas, tiendas de aplicaciones y clientes de correo electrónico son algunos ejemplos de programas susceptibles de ser añadidos, modificados o eliminados. Además de las distribuciones de los fabricantes de teléfonos existen grupos de programadores independientes que también desarrollan distribuciones de Android. LineageOS y Replicant son dos ejemplos de distribuciones Android independientes.

Other Languages
Ænglisc: Linux (cyrnel)
العربية: نواة لينكس
azərbaycanca: Linux nüvəsi
български: Линукс (ядро)
català: Linux (nucli)
čeština: Linux (jádro)
kaszëbsczi: Linux (jądro)
Ελληνικά: Πυρήνας Linux
English: Linux kernel
français: Noyau Linux
furlan: Linux
Bahasa Indonesia: Linux (kernel)
íslenska: Linuxkjarninn
italiano: Linux (kernel)
한국어: 리눅스 커널
Limburgs: Linux
latviešu: Linux
Bahasa Melayu: Linux (inti)
Nederlands: Linuxkernel
norsk nynorsk: Linux-kjernen
occitan: Nuclèu Linux
ਪੰਜਾਬੀ: ਲੀਨਕਸ ਕਰਨਲ
Pälzisch: Linux (Kernel)
português: Linux (núcleo)
română: Linux (nucleul)
русский: Ядро Linux
sicilianu: Linux (nùcliu)
Simple English: Linux kernel
slovenčina: Linux (jadro)
српски / srpski: Језгро Линукса
ślůnski: Linux (kernel)
українська: Ядро Linux
Tiếng Việt: Hạt nhân Linux
中文: Linux内核