You are on page 1of 10

Ncleo Linux

Ncleo Linux
Para el sistema operativo libre compuesto principalmente por el ncleo Linux y GNU, vase GNU/Linux.
Linux Kernel

El ncleo Linux 3.0.0 en proceso de arranque


Desarrollador
Linus Torvalds, y la comunidad de colaboradores alrededor del mundo.
[1]
Linux Kernel Archives
Informacin general
[2]

Modelo de desarrollo

Desarrollo iterativo, mediante cdigo abierto y colaboracin de la comunidad.

Lanzamiento inicial

25 de agosto de 1991

ltima versin estable

3.4.6
19 de julio de 2012

ltima versin en
pruebas

3.5
21 de julio de 2012

Escrito en

Ncleo

Monoltico

Tipo de ncleo

Unix-like

[3]

(comp.os.minix info

[4]

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

Activo

Idiomas

Ingls, Espaol

En espaol
Artculos relacionados

Historia de Linux
GNU/Linux
Anexo:Distribuciones GNU/Linux - Distribuciones Linux: Debian, Ubuntu, Red Hat Enterprise Linux, Slackware, SUSE Linux, etc.

Linux es un ncleo libre de sistema operativo basado en Unix.[5] Es uno de los principales ejemplos de software
libre. Linux est licenciado bajo la GPL v2 y est desarrollado por colaboradores de todo el mundo. El desarrollo del
da a da tiene lugar en la Linux Kernel Mailing List Archive [6]

Ncleo Linux
El ncleo Linux fue concebido por el entonces estudiante de ciencias de la computacin finlands, Linus Torvalds,
en 1991. Linux consigui rpidamente desarrolladores y usuarios que adoptaron cdigos de otros proyectos de
software libre para su uso en el nuevo sistema operativo. El ncleo Linux ha recibido contribuciones de miles de
programadores. Normalmente Linux se utiliza junto a un empaquetado de software, llamado distribucin Linux.

Historia
En abril de 1991,[3] Linus Torvalds, de 21 aos, empez a trabajar en unas simples ideas para un ncleo de sistema
operativo. Comenz con un intento por obtener un ncleo de sistema operativo gratuito similar a Unix que
funcionara con microprocesadores Intel 80386. Luego, el 25 de agosto de 1991, Torvalds escribi en el grupo de
noticias comp.os.minix:[7]
"Estoy haciendo un sistema operativo (gratuito, slo un hobby, no ser nada grande ni profesional como GNU) para
clones AT 386(486). Llevo en ello desde abril y est empezando a estar listo. Me gustara saber su opinin sobre las
cosas que les gustan o disgustan en minix, ya que mi SO tiene algn parecido con l.[...] Actualmente he portado
bash(1.08) y gcc(1.40), y parece que las cosas funcionan. Esto implica que tendr algo prctico dentro de unos
meses..."
Despus de esto, muchas personas ayudaron con el cdigo. En septiembre de 1991 se lanz la versin 0.01 de Linux.
Tena 10.239 lneas de cdigo. En octubre de ese ao, se lanz la versin 0.02 de Linux; luego, en diciembre se
lanz la versin 0.11. Esta versin fue la primera en ser self-hosted (autoalbergada). Es decir, Linux 0.11 poda ser
compilado por una computadora que ejecutase Linux 0.11, mientras que las versiones anteriores de Linux se
compilaban usando otros sistemas operativos. Cuando lanz la siguiente versin, Torvalds adopt la GPL como su
propio boceto de licencia, la cual no permita su redistribucin con otra licencia que no sea GPL.
Se inici un grupo de noticias llamado alt.os.linux y el 19 de enero de 1992 se public en ese grupo el primer post.
El 31 de marzo, alt.os.linux se convirti en comp.os.linux. XFree86, una implementacin del X Window System, fue
portada a Linux, la versin del ncleo 0.95 fue la primera en ser capaz de ejecutarla. Este gran salto de versiones (de
0.1x a 0.9x) fue por la sensacin de que una versin 1.0 acabada no pareca estar lejos. Sin embargo, estas
previsiones resultaron ser un poco optimistas: desde 1993 a principios de 1994, se desarrollaron 15 versiones
diferentes de 0.99 (llegando a la versin 0.99r15).
El 14 de marzo de 1994, se lanz Linux 1.0.0, que constaba de 176.250 lneas de cdigo. En marzo de 1995 se lanz
Linux 1.2.0, que ya estaba compuesto de 310.950 lneas de cdigo.

Mayo de 1996: Torvalds decidi adoptar al pingino Tux como mascota para Linux.
9 de junio de 1996: Se lanz la versin 2 de Linux, con una recepcin positiva.
25 de enero de 1999: Se lanz Linux 2.2.0 con 1.800.847 lneas de cdigo.
18 de diciembre de 1999: se publicaron parches de IBM Mainframe para 2.2.13, permitiendo de esta forma que
Linux fuera usado en ordenadores corporativos.
4 de enero de 2001: se lanz Linux 2.4.0 con 3.377.902 lneas de cdigo.
17 de diciembre de 2003: se lanz Linux 2.6.0 con 5.929.913 lneas de cdigo.
24 de diciembre de 2008: se lanz Linux 2.6.28 con 10.195.402 lneas de cdigo.[8]
20 de octubre de 2010: se lanz Linux 2.6.36 con 13.499.457 lneas de cdigo.[9]
30 de mayo de 2011: Linus Torvalds anunci[10] que la versin del ncleo dar el salto a la 3.0 en la siguiente
publicacin.
21 de julio de 2011: Torvalds public en su perfil en la red social Google+ que el ncleo versin 3.0 estaba listo
con la frase "3.0 Pushed Out".[11]
22 de julio de 2011: Fue lanzada la versin 3.0 del ncleo en http://www.kernel.org

12 de mayo y 13 de mayo de 2012 fueron lanzadas las versiones 3.3.6 y 3.4-rc7 del ncleo en http://www.
kernel.org respectivamente.
Su cdigo fuente est disponible para descarga en el sitio web oficial: http://www.kernel.org

Ncleo Linux

Aspectos tcnicos
Arquitecturas
Actualmente Linux es un ncleo monoltico hbrido. Los
controladores de dispositivos y las extensiones del ncleo
normalmente se ejecutan en un espacio privilegiado conocido
como anillo 0 (ring 0), con acceso irrestricto al hardware, aunque
algunos se ejecutan en espacio de usuario. A diferencia de los
ncleos monolticos tradicionales, los controladores de
dispositivos y las extensiones al ncleo se pueden cargar y
descargar fcilmente como mdulos, mientras el sistema contina
funcionando sin interrupciones. Tambin, a diferencia de los
ncleos monolticos tradicionales, los controladores pueden ser
prevolcados (detenidos momentneamente por actividades ms
importantes) bajo ciertas condiciones. Esta habilidad fue agregada
para gestionar correctamente interrupciones de hardware, y para
mejorar el soporte de multiprocesamiento simtrico.
El hecho de que Linux no fuera desarrollado siguiendo el diseo
Diagrama del ncleo 2.4.0.
de un microncleo (diseo que, en aquella poca, era considerado
el ms apropiado para un ncleo por muchos tericos informticos) fue asunto de una famosa y acalorada discusin
entre Linus Torvalds y Andrew S. Tanenbaum. [12] [13]

Jerarqua de directorios
En Linux existe un sistema de archivos que carga y contiene todos los directorios, redes, programas, particiones,
dispositivos, etc. que el sistema sabe reconocer, o por lo menos, identificar. Este sistema de ficheros y directorios,
tiene como base al carcter (/); ese mismo carcter sirve tambin para demarcar los directorios, como por ejemplo:
"/home/usuario/imagen.jpg". El directorio especificado por una ruta consistente slo por este carcter contiene toda
la jerarqua de los directorios que constituyen todo el sistema. A este directorio suele llamrselo directorio raz. En
Linux, a los discos no se les asigna una letra como en Windows (p.e. "C:"), sino que se les asigna un directorio de la
jerarqua del directorio raz (/), como por ejemplo: "/media/floppy". Es prctica comn en el sistema de ficheros de
Linux, utilizar varias sub-jerarquas de directorios, segn las diferentes funciones y estilos de utilizacin de los
archivos.[14] Estos directorios pueden clasificarse en:
Estticos: Contiene archivos que no cambian sin la intervencin del administrador (root), sin embargo, pueden
ser ledos por cualquier otro usuario. (/bin, /sbin, /opt, /boot, /usr/bin...)
Dinmicos: Contiene archivos que son cambiantes, y pueden leerse y escribirse (algunos solo por su respectivo
usuario y el root). Contienen configuraciones, documentos, etc. Para estos directorios, es recomendable una copia
de seguridad con frecuencia, o mejor an, deberan ser montados en una particin aparte en el mismo disco, como
por ejemplo, montar el directorio /home en otra particin del mismo disco, independiente de la particin principal
del sistema; de esta forma, puede repararse el sistema sin afectar o borrar los documentos de los usuarios.
(/var/mail, /var/spool, /var/run, /var/lock, /home...)
Compartidos: Contiene archivos que se pueden encontrar en un ordenador y utilizarse en otro, o incluso
compartirse entre usuarios.
Restringidos: Contiene ficheros que no se pueden compartir, solo son modificables por el administrador. (/etc,
/boot, /var/run, /var/lock...)

Ncleo Linux

Kernel panic
En Linux, un panic es un error casi siempre insalvable del sistema
detectado por el ncleo en oposicin a los errores similares
detectados en el cdigo del espacio de usuario. Es posible para el
cdigo del ncleo indicar estas condiciones mediante una llamada
a la funcin de pnico situada en el archivo header sys/system.h.
Sin embargo, la mayora de las alertas son el resultado de
excepciones en el cdigo del ncleo que el procesador no puede
manejar, como referencias a direcciones de memorias invlidas.
Generalmente esto es indicador de la existencia de un bug en algn
Kernel panic.
lugar de la cadena de alerta. Tambin pueden indicar un fallo en el
hardware como un fallo de la RAM o errores en las funciones
aritmticas en el procesador, o por un error en el software. En muchas ocasiones es posible reiniciar o apagar
adecuadamente el ncleo mediante una combinacin de teclas como ALT+SysRq+RSEIUB.

Lenguajes de programacin
Linux est escrito en el lenguaje de programacin C, en la variante utilizada por el compilador GCC (que ha
introducido un nmero de extensiones y cambios al C estndar), junto a unas pequeas secciones de cdigo escritas
con el lenguaje ensamblador. Por el uso de sus extensiones al lenguaje, GCC fue durante mucho tiempo el nico
compilador capaz de construir correctamente Linux. Sin embargo, Intel afirm haber modificado su compilador C de
forma que permitiera compilarlo correctamente.
Asimismo se usan muchos otros lenguajes en alguna forma, bsicamente en la conexin con el proceso de
construccin del ncleo (el mtodo a travs del cual las imgenes arrancables son creadas desde el cdigo fuente).
Estos incluyen a Perl, Python y varios lenguajes shell scripting. Algunos drivers tambin pueden ser escritos en C++,
Fortran, u otros lenguajes, pero esto no es aconsejable. El sistema de construccin de Linux oficialmente solo
soporta GCC como ncleo y compilador de controlador.

Portabilidad
Aun cuando Linus Torvalds no ide originalmente Linux como un
ncleo portable, ha evolucionado en esa direccin. Linux es ahora
de hecho, uno de los ncleos ms ampliamente portados, y
funciona en sistemas muy diversos que van desde iPAQ (una
handheld) hasta un zSeries (un mainframe masivo). Est planeado
que Linux sea el sistema operativo principal de las nuevas
supercomputadoras de IBM, Blue Gene cuando su desarrollo se
complete.
De todos modos, es importante notar que los esfuerzos de Torvalds
tambin estaban dirigidos a un tipo diferente de portabilidad.
Segn su punto de vista, la portabilidad es la habilidad de compilar
fcilmente en un sistema aplicaciones de los orgenes ms
diversos; as, la popularidad original de Linux se debi en parte al
poco esfuerzo necesario para tener funcionando las aplicaciones
favoritas de todos, ya sean GPL o de Cdigo abierto.

Ipod ejecutando un ncleo Linux.

Ncleo Linux
Las arquitecturas principales soportadas por Linux son DEC Alpha, ARM, AVR32, Blackfin, ETRAX CRIS, FR-V,
H8, IA64, M32R, m68k, MicroBlaze, MIPS, MN10300, PA-RISC, PowerPC, System/390, SuperH, SPARC, x86,
x86 64 y Xtensa[15]

Arquitectura de mquina virtual


El ncleo Linux puede correr sobre muchas arquitecturas de mquina virtual, tanto como host del sistema operativo
o como cliente. La mquina virtual usualmente emula la familia de procesadores Intel x86, aunque en algunos casos
tambin son emulados procesadores de PowerPC o AMD.

Formatos binarios soportados


Linux 1.0 admita slo el formato binario a.out. La siguiente serie estable (Linux 1.2) agreg la utilizacin del
formato ELF, el cual simplifica la creacin de bibliotecas compartidas (usadas de forma extensa por los actuales
ambientes de escritorio como GNOME y KDE). ELF es el formato usado de forma predeterminada por el GCC
desde alrededor de la versin 2.6.0. El formato a.out actualmente no es usado, convirtiendo a ELF en el formato
binario utilizado por Linux en la actualidad.
Linux tiene la capacidad de permitir al usuario aadir el manejo de otros formatos binarios. Tambin binfmt_misc
permite correr el programa asociado a un archivo de datos.

Versiones
Ms all de haber desarrollado su propio cdigo y de integrar los cambios realizados por otros programas, Linus
Torvalds continua lanzando nuevas versiones del ncleo Linux. Estos son llamados ncleos vanilla, lo que significa
que no han sido modificados por nadie. Muchos desarrolladores de distribuciones Linux modifican dicho ncleo en
sus productos, principalmente para agregarle soporte a dispositivos o herramientas que no fueron oficialmente
lanzadas como estables, mientras que algunas distribuciones, como Slackware, mantienen el ncleo vanilla.

Numeracin
La versin del ncleo Linux original constaba de cuatro nmeros. Por ejemplo, asumamos que el nmero de la
versin est compuesta de esta forma: A.B.C[.D] (ej.: 2.2.1, 2.4.13 2.6.12.3).
El nmero A denota la versin del ncleo. Es el que cambia con menor frecuencia y solo lo hace cuando se
produce un gran cambio en el cdigo o en el concepto del ncleo. Histricamente slo ha sido modificado tres
veces: en 1994 (versin 1.0), en 1996 (versin 2.0) y en 2011 (versin 3.0).
El nmero B denota la subversin del ncleo.
Antes de la serie de Linux 2.6.x, los nmeros pares indicaban la versin estable lanzada. Por ejemplo una
para uso de fabricacin, como el 1.2, 2.4 2.6. Los nmeros impares, en cambio, como la serie 2.5.x, son
versiones de desarrollo, es decir que no son consideradas de produccin.
Comenzando con la serie Linux 2.6.x, no hay gran diferencia entre los nmeros pares o impares con respecto a
las nuevas herramientas desarrolladas en la misma serie del ncleo. Linus Torvalds dictamin que este ser el
modelo en el futuro.
El nmero C indica una revisin mayor en el ncleo. En la forma anterior de versiones con tres nmeros, esto fue
cambiado cuando se implementaron en el ncleo los parches de seguridad, bugfixes, nuevas caractersticas o
drivers. Con la nueva poltica, solo es cambiado cuando se introducen nuevos drivers o caractersticas; cambios
menores se reflejan en el nmero D.
El nmero D se produjo cuando un grave error, que requiere de un arreglo inmediato, se encontr en el cdigo
NFS de la versin 2.6.8. Sin embargo, no haba otros cambios como para lanzar una nueva revisin (la cual
hubiera sido 2.6.9). Entonces se lanz la versin 2.6.8.1, con el error arreglado como nico cambio. Con 2.6.11,

Ncleo Linux

esto fue adoptado como la nueva poltica de versiones. Bug-fixes y parches de seguridad son actualmente
manejados por el cuarto nmero dejando los cambios mayores para el nmero C.
Tambin, algunas veces luego de las versiones puede haber algunas letras como rc1 o mm2. El rc se refiere a
release candidate e indica un lanzamiento no oficial. Otras letras usualmente (pero no siempre) hacen referencia a las
iniciales de la persona. Esto indica una bifurcacin en el desarrollo del ncleo realizado por esa persona, por ejemplo
ck se refiere a Con Kolivas, ac a Alan Cox, mientras que mm se refiere a Andrew Morton.
El modelo de desarrollo para Linux 2.6 fue un cambio significativo desde el modelo de desarrollo de Linux 2.5.
Previamente exista una rama estable (2.4) donde se haban producido cambios menores y seguros, y una rama
inestable (2.5) donde estaban permitidos cambios mayores. Esto signific que los usuarios siempre tenan una
versin 2.4 a prueba de fallos y con lo ltimo en seguridad y casi libre de errores, aunque tuvieran que esperar por
las caractersticas de la rama 2.5. La rama 2.5 fue eventualmente declarada estable y renombrada como 2.6. Pero en
vez de abrir una rama 2.7 inestable, los desarrolladores de ncleos eligieron continuar agregando los cambios en la
rama estable 2.6. De esta forma no haba que seguir manteniendo una rama vieja pero estable y se poda hacer que
las nuevas caractersticas estuvieran rpidamente disponibles y se pudieran realizar ms test con el ltimo cdigo.
Sin embargo, el modelo de desarrollo del nuevo 2.6 tambin signific que no haba una rama estable para aquellos
que esperaban seguridad y bug fixes sin necesitar las ltimas caractersticas. Los arreglos solo estaban en la ltima
versin, as que si un usuario quera una versin con todos los bug fixed conocidos tambin tendra las ltimas
caractersticas, las cuales no haban sido bien testeadas. Una solucin parcial para esto fue la versin ya mencionada
de cuatro nmeros (y en 2.6.x.y), la cual significaba lanzamientos puntuales creados por el equipo estable (Greg
Kroah-Hartman, Chris Wright, y quizs otros). El equipo estable solo lanzaba actualizaciones para el ncleo ms
reciente, sin embargo esto no solucion el problema del faltante de una serie estable de ncleo. Distribuidores de
Linux, como Red Hat y Debian, mantienen los ncleos que salen con sus lanzamientos, de forma que una solucin
para algunas personas es seguir el ncleo de una distribucin.
Como respuesta a la falta de un ncleo estable y de gente que coordinara la coleccin de correccin de errores, en
diciembre de 2005 Adrian Bunk anunci que continuara lanzando ncleos 2.6.16 aun cuando el equipo estable
lanzara 2.6.17. Adems pens en incluir actualizaciones de controladores, haciendo que el mantenimiento de la serie
2.6.16 sea muy parecido a las viejas reglas de mantenimiento para las serie estables como 2.4. El ncleo 2.6.16 ser
reemplazado prximamente por el 2.6.27 como ncleo estable en mantenimiento durante varios aos.
Dado el nuevo modelo de desarrollo, que mantiene fija la subversin de 2.6, tras durante el Linux Kernel Summit de
ese ao, Linus Torvalds decidi modificar el sistema de numeracin, sustituyendo los dos primeros nmeros por una
nica cifra, de forma que Linux 2.6.39 fue seguida por Linux 3.0 [16]

Fechas de publicacin
Versin

[17]

Fecha

Nota

[18]
Ficheros

[19]

LoC

MiB MiB (bz2)

0.01

17 de septiembre de 1991 Initial Public Release

88

8.413

0.02

5 de octubre de 1991

0.11

8 de diciembre de 1991

100

11.907

0,363 0,076

0.95

7 de marzo de 1992

122

19.200

0,533 0,111

1.0.0

13 de marzo de 1994

Primera versin estable 561

170.581

4,633 0,969

1.1.0

6 de abril de 1994

Versin de desarrollo

561

170.320

1.2.0

6 de marzo de 1995

909

294.623

1.3.0

12 de junio de 1995

992

323.581

2.0.0

9 de junio de 1996

2.015

716.119

Versin de desarrollo

0,267 0,06

21,7

4,499

Ncleo Linux

7
2.1.0

30 de septiembre de 1996 Versin de desarrollo

1.727

735.736

2.2.0

26 de enero de 1999

4.599

1.676.182

2.3.0

11 de mayo de 1999

4.721

1.763.358

2.4.0

4 de enero de 2001

8.187

3.158.560

2.5.0

23 de noviembre de 2001 Versin de desarrollo

9.893

3.833.603

2.6.0

18 de diciembre de 2003

15.007

5.475.685

170,7 31,7

2.6.25

16 de abril de 2008

23.810

8.396.250

258,8 46,4

2.6.30

10 de junio de 2009

27.878

10.419.567 322,3 56,7

2.6.35

1 de agosto de 2010

33.315

12.250.679 376,2 66,1

3.0

22 de julio de 2011

36.782

13.688.408 410,8 73,2

Versin de desarrollo

96,8

18,79

Distribuciones
Una distribucin Linux es un conjunto de software acompaado del
ncleo Linux que se enfoca a satisfacer las necesidades de un grupo
especfico de usuarios. De este modo hay distribuciones para hogares,
empresas y servidores.
Las distribuciones son ensambladas por individuos, empresas u otros
organismos. Cada distribucin puede incluir cualquier nmero de
software adicional, incluyendo software que facilite la instalacin del
sistema. La base del software incluido con cada distribucin incluye el
ncleo Linux, en la mayora de los casos las herramientas GNU, al que
suelen aadirse tambin multitud de paquetes de software.
Las herramientas que suelen incluirse en la distribucin de este sistema
operativo se obtienen de diversas fuentes, y en especial de proyectos de
software libre, como: GNU, GNOME (creado por GNU) y KDE.
Tambin se incluyen utilidades de otros proyectos como Mozilla, Perl,
Ruby, Python, PostgreSQL, MySQL, Xorg, casi todas con licencia
GPL o compatibles con sta (LGPL, MPL).
Usualmente se utiliza la plataforma X.Org Server, basada en la antigua
XFree86, para sostener la interfaz grfica.

Sharp Zaurus, un computador de bolsillo con


Linux.

Copyright
Inicialmente, Torvalds distribuy Linux bajo los trminos de una licencia que prohiba la explotacin comercial.
Pero esta licencia fue reemplazada, poco tiempo despus, por la GNU GPL (versin 2 exclusivamente). Los trminos
de esta ltima licencia permiten la distribucin y venta de copias o incluso modificaciones, pero requiere que todas
las copias del trabajo original y trabajos de autora derivados del original sean publicados bajo los mismos trminos,
y que el cdigo fuente siempre pueda obtenerse por el mismo medio que el programa licenciado.
Torvalds se ha referido a haber licenciado Linux bajo la GPL como "la mejor cosa que he hecho" (en ingls, "the
best thing I ever did").[20]
Sin embargo, la versin oficial del ncleo Linux contiene firmware de cdigo cerrado[citarequerida], por ello, el
Proyecto Linux-libre, auspiciado por la FSFLA, publica y mantiene versiones modificadas del ncleo Linux a las

Ncleo Linux
que se les ha quitado todo el software no libre.

Marca
A da de hoy, Linux es una marca registrada de Linus Torvalds en los Estados Unidos.[21]
Hasta 1994 nadie registr la marca Linux en Estados Unidos. El 15 de agosto de 1994 cuando William R. Della
Croce, Jr. registr la marca Linux, pidi el pago de regalas a los distribuidores de Linux. En 1996, Torvalds y
algunas organizaciones afectadas denunciaron a Della Croce y en 1997 el caso se cerr y la marca fue asignada a
Torvalds.[22]
Desde entonces, el Linux Mark Institute gestiona la marca. En 2005 el LMI envi algunas cartas a empresas
distribuidoras de Linux exigiendo el pago de una cuota por el uso comercial del nombre. Esto es as porque la
legislacin estadounidense exige que el dueo de una marca la defienda, por lo que se tuvo que pedir dinero por usar
la marca Linux, algunas compaas de forma totalmente voluntaria han cumplido con dicha exigencia, a sabiendas de
que dicho dinero se iba a usar para caridad o defender la marca Linux.[23]

Crticas
Soporte de hardware
El ncleo Linux ha sido criticado con frecuencia por falta de controladores para cierto hardware de computadoras de
escritorio. Sin embargo, el progresivo incremento en la adopcin de Linux en el escritorio ha mejorado el soporte de
hardware por parte de terceros o de los propios fabricantes, provocando que, en los ltimos aos, los problemas de
compatibilidad se reduzcan.
Empresas como IBM, Intel Corporation, Hewlett-Packard, Dell o MIPS Technologies[24] tienen programadores en el
equipo de desarrolladores del ncleo Linux que se encargan de mantener los controladores para el hardware que
fabrican. Este grupo de programadores tambin se le suman los que provee grandes distribuidores de soluciones
Linux como Novell o Red Hat.
Algunas empresas proporcionan controladores de hardware para Linux pero sin liberar el cdigo fuente. Esto implica
que se deba depender de ellas para solucionar posibles errores o mejorar los controladores. Dos empresas que hacen
esto son Nvidia y AMD, aunque esta ltima ayud a la creacin de controladores libres liberando especificaciones
sobre su hardware y actualmente colabora en el desarrollo de un controlador libre[25] para sus tarjetas grficas ATI
de ltima generacin.[26]

Arquitectura monoltica
Andy Tanenbaum escribi el 29 de enero de 1992: ...Linux es un sistema monoltico. Esto es retroceder un paso
gigante hacia la dcada de 1970. Es como tomar un programa existente escrito en C y reescribirlo en BASIC. Para
m, escribir un sistema monoltico en 1991 es verdaderamente una idea pobre.[27]

Referencias
[1]
[2]
[3]
[4]
[5]

http:/ / www. kernel. org/


LMKL.ORG - the Linux Kernel Mailing List Archive (https:/ / www. lkml. org), Sitio Oficial de Linux Kernel Mailing List.
Sobre Linux (http:/ / www. linux-es. org/ sobre_linux). Linux.org. Consultado el 19 de julio de 2012.
http:/ / groups. google. com/ group/ comp. os. minix/ msg/ b813d52cbc5a044b?pli=1
linux.org (ed.): What is Linux (http:/ / web. archive. org/ web/ 20100527054726/ http:/ / www. linux. org/ info/ index. html) (en ingls)
(2010). Archivado desde el original (http:/ / www. linux. org/ info/ index. html), el 27-05-2010. Consultado el 11 de agosto de 2011.
[6] https:/ / lkml. org/
[7] Linus Torvalds (25-08-1991) Message from discussion What would you like to see most in minix? (http:/ / groups. google. com/
groups?hl=en& selm=1991Aug25. 205708. 9541@klaava. Helsinki. FI) Newsgroups: comp.os.minix, Google Groups (en ingls).

Ncleo Linux
[8] " Linux Kernel Data 2.6.28 (http:/ / www. heise-online. co. uk/ open/ Kernel-Log-Higher-and-Further-The-innovations-of-Linux-2-6-28--/
features/ 112299/ 5)."
[9] " Linux Kernel Data 2.6.36 (http:/ / www. h-online. com/ open/ features/ What-s-new-in-Linux-2-6-36-1103009. html?page=6)."
[10] Linus Torvalds (30 de mayo de 2011). Linux 3.0-rc1 (http:/ / permalink. gmane. org/ gmane. linux. kernel/ 1147415). Consultado el 30 de
mayo de 2011.
[11] Linus Torvalds (21 de julio de 2011). Linux 3 Pushed Out - Linus Torvalds Google Plus Profile (https:/ / plus. google. com/
102150693225130002912/ posts/ CJpyYdCqBL8). Consultado el 27 de julio de 2011.
[12] GNU/Linux Kernel Hbrido (http:/ / cosaslibres. com. co/ software/ gnulinux-kernel-hibrido/ ) (en espaol)
[13] Resumen de la afamada discusin entre Linus Torvalds y Andrew Tanenbaum (http:/ / www. dina. dk/ ~abraham/ Linus_vs_Tanenbaum.
html) (en ingls)
[14] Organizacin de los directorios en Linux (http:/ / www. linux-es. org/ node/ 112)
[15] /pub/scm / linux/kernel/git/torvalds/linux-2.6.git / tree (http:/ / git. kernel. org/ ?p=linux/ kernel/ git/ torvalds/ linux-2. 6.
git;a=tree;f=arch;h=3ce1e42a1a3b86428b2511152d21dd5fefb27c6e;hb=HEAD)
[16] 29 de mayo de 2011, anuncio de Linux 3.0-rc1 (https:/ / lkml. org/ lkml/ 2011/ 5/ 29/ 204)
[17] Fechas de publicacin de Linux (http:/ / ftp. cdut. edu. cn/ pub2/ linux/ kernel/ history/ Master. html)
[18] Contados con "find -type f | wc -l"
[19] Lines of Code (Lineas de cdigo), contados con "find -name *.[hcS] | xargs cat | wc -l"
[20] Yamagata, Hiroo (11-11-1997). The Pragmatist of Free Software: Linus Torvalds Interview (http:/ / netshooter. com/ linux/
linus-interview. html). Consultado el 30-10-2011.
[21] Registro en Estados Unidos No: 1916230 (http:/ / assignments. uspto. gov/ assignments/ q?db=tm& rno=1916230). Oficina de Patentes y
Marcas Comerciales de Estados Unidos. Consultado el 30-10-2011.
[22] Linux Timeline (http:/ / www. linuxjournal. com/ article/ 9065). Linux Journal (31-05-2006).
[23] Linus gets tough on Linux trademark (http:/ / www. infoworld. com/ article/ 05/ 09/ 05/ 36OPopenent_1. html) (05-09-2005). Consultado
el 30-10-2011.
[24] Who writes Linux (http:/ / www. linuxfoundation. org/ publications/ whowriteslinux. pdf) (Agosto de 2009).
[25] AMD to open up graphics specs (http:/ / lwn. net/ Articles/ 248227/ ). LWN.net (05-09-2007).
[26] radeonhd (http:/ / www. x. org/ wiki/ radeonhd). X.Org Wiki.
[27] A. S. Tanenbaum (29-01-1992), LINUX is obsolete (http:/ / groups. google. com/ group/ comp. os. minix/ browse_thread/ thread/
c25870d7a41696d2/ f447530d082cd95d?tvc=2), , consultado el 30-10-2011.

Enlaces externos

Wikimedia Commons alberga contenido multimedia sobre Ncleo LinuxCommons.


Sitio web oficial de Linux (http://www.kernel.org)
Cdigo fuente completo de varias versiones de Linux (http://lxr.linux.no)
Kernel Newbies (http://kernelnewbies.org/Linux)

Fuentes y contribuyentes del artculo

Fuentes y contribuyentes del artculo


Ncleo Linux Fuente: http://es.wikipedia.org/w/index.php?oldid=58161931 Contribuyentes: A Vzquez O., Acracia, Aeris17, Aguarate, Alakasam, Alexis PM, Alvaro qc, Alvarovmz, Amitie
10g, Andreasmperu, Antonio Pramo, Arenelion, Argentilinux, Ascnder, Banfield, Biasoli, Bjsg, BlackBeast, Brownout, C9003947, Cabargas, Cally Berry, Cinabrium, Clapp, Cmontero,
ColdWind, Cont3mpo, Cruzacalles, Ctrl Z, Dangarcia, Darolu, Daviba, Deleatur, Delucardenal, Diegusjaimes, Digigalos, Dodo, Dogor, Dvega78, EKhan, Eduardosalg, Edub, El Moska, Elabra
sanchez, Emiduronte, Emijrp, Esnou, Fcldlibre, Felixmoreno, Fernandomirandamuro, Fernandoxxx, Festor, Fibonacci, Gacq, Galandil, GermanX, Grillitus, Gronky, GutiRadical, Gtz, Helmy
oved, Hispa, Hulric, Ingolll, Isacdaavid, Italo2121, Ivans Sensei, JOPARA, Jarisleif, Jkbw, Joanrufe, JorSol, JorgeGG, Jorgelrm, Josell2, Jsanchezes, Jtoselli, K-F.U.N 2, Kizar, LadyInGrey,
Leae89, Leek, Leonardomurguia, Linfocito B, Locos epraix, LordT, Lucien leGrey, Luzbelito92, LyingB, Magister Mathematicae, Mansoncc, Marcoscaceres, Mario modesto, Matdrodes,
Mdiagom, Melenas1414, Miguel Prez Francisco, MiguelAngelCaballero, Moriel, Nicoguaro, Nioger, Niqueco, Pablo claret, PabloCastellano, Palissy, Pandres95, Phirosiberia, Piero71, Pilaf,
Platonides, Plux, Rafa3040, Rafael Soriano, Ramjar, Rbuj, Retama, Rgcamus, Rodoelgrande, Rodz, RoyFocker, Rubpe19, Sanbec, Santicluke, Savh, Serpof, Seymourpoler, Shooke, Skyhack,
Snakeyes, SuperBraulio13, Superzerocool, Surfaz, Technopat, Texai, Thedemon007, Tomatejc, Touareg, Triku, Tuxedoar, Txuspe, VARGUX, Vitamine, Wilfredor, Yakoo, Youssefsan, Zeoroth,
Zoquero, 344 ediciones annimas

Fuentes de imagen, Licencias y contribuyentes


Archivo:Tux.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Tux.svg Licencia: Attribution Contribuyentes: Larry Ewing, Simon Budig, Anja Gerwinski
Archivo:Linux 3.0.0 boot.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Linux_3.0.0_boot.png Licencia: Creative Commons Attribution-Sharealike 3.0 Contribuyentes:
User:Attys
Archivo:Yes_check.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Yes_check.svg Licencia: Public Domain Contribuyentes: SVG by Gregory Maxwell (modified by WarX)
Archivo:Lgp-total.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Lgp-total.png Licencia: GNU General Public License Contribuyentes: Nuno Tavares, Shooke
Archivo:Kernel-panic.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Kernel-panic.jpg Licencia: Creative Commons Attribution 2.0 Contribuyentes: Kevin
Archivo:Ipod linux booting kernel.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Ipod_linux_booting_kernel.jpg Licencia: Creative Commons Attribution-ShareAlike 3.0
Unported Contribuyentes: Elke Wetzig (Elya)
Archivo:Sharp Zaurus.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Sharp_Zaurus.jpg Licencia: GNU Free Documentation License Contribuyentes: BLueFiSH.as, Celeron,
Edward, Jamin, Museo8bits
Archivo:Commons-logo.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Commons-logo.svg Licencia: logo Contribuyentes: SVG version was created by User:Grunt and
cleaned up by 3247, based on the earlier PNG version, created by Reidab.

Licencia
Creative Commons Attribution-Share Alike 3.0 Unported
//creativecommons.org/licenses/by-sa/3.0/

10