Núcleo Linux

February 26, 2017 | Author: Anonymous | Category: Linux
Share Embed


Short Description

Núcleo Linux Para el sistema operativo libre compuesto principalmente por el núcleo Linux y GNU, véase GNU/Linux. Lin...

Description

N€cleo Linux

1

N€cleo Linux Para el sistema operativo libre compuesto principalmente por el n€cleo Linux y GNU, v•ase GNU/Linux. Linux Kernel

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 Archives

[1]

Informaci•n general Modelo de desarrollo Lanzamiento inicial ‚ltima versi•n estable

Desarrollo iterativo, mediante c‚digo abierto y colaboraci‚n de la comunidad.

[2]

[3] [4] 25 de agosto de 1991 (comp.os.minix info ) 3.4.6 19 de julio de 2012

‚ltima versi•n en pruebas

21 de julio de 2012

Escrito en

C

N€cleo

Monolƒtico

Tipo de n€cleo

Unix-like

3.5

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

Ingl•s, Espa„ol

En espaƒol Art„culos relacionados …

Histo istori riaa de de Lin Linux ux



GNU/Linux



Anexo:Distr Anexo:Distribucion ibuciones es GNU/Linux GNU/Linux - Distribuciones Distribuciones Linux: Linux: Debian, Ubuntu, Ubuntu, Red Hat Enterprise Enterprise Linux, Slackware, Slackware, SUSE SUSE Linux, etc.

Linux es un n€cleo 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 dƒa a dƒa tiene lugar en la  Linux Kernel Mailing List Archive

[6]

N€cleo Linux

2

El n€cleo Linux fue concebido por el entonces estudiante de ciencias de la computaci‚n finland•s, Linus Torvalds, en 1991. Linux consigui‚ r†pidamente desarrolladores y usuarios que adoptaron c‚digos de otros proyectos de software libre para su uso en el nuevo sistema operativo. El n€cleo Linux ha recibido contribuciones de miles de programadores. Normalmente Linux se utiliza junto a un empaquetado de software, llamado distribuci‚n Linux.

Historia En abril de 1991,

[3]

Linus Torvalds, de 21 a„os, empez‚ a trabajar en unas simples ideas para un n€cleo de sistema

operativo. Comenz‚ con un intento por obtener un n€cleo 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 [7]

noticias comp.os.minix:

"Estoy haciendo un sistema operativo (gratuito, s€lo 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 gustar‚a saber su opini€n sobre las cosas que les gustan o disgustan en minix, ya que mi SO tiene algƒn parecido con „l.[...] Actualmente he portado bash(1.08) y gcc(1.40), y parece que las cosas funcionan. Esto implica que tendr„ algo pr•ctico dentro de unos meses..." 

Despu•s de esto, muchas personas ayudaron con el c‚digo. En septiembre de 1991 se lanz‚ la versi‚n 0.01 de Linux. Tenƒa 10.239 lƒneas de c‚digo. En octubre de ese a„o, se lanz‚ la versi‚n 0.02 de Linux; luego, en diciembre se lanz‚ la versi‚n 0.11. Esta versi‚n fue la primera en ser self-hosted (autoalbergada). Es decir, Linux 0.11 podƒa 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 versi‚n, Torvalds adopt‚ la GPL como su propio boceto de licencia, la cual no permitƒa su redistribuci‚n 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 implementaci‚n del X Window System, fue portada a Linux, la versi‚n del n€cleo 0.95 fue la primera en ser capaz de ejecutarla. Este gran salto de versiones (de 0.1x a 0.9x) fue por la sensaci‚n de que una versi‚n 1.0 acabada no parecƒa 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 versi‚n 0.99r15). El 14 de marzo de 1994, se lanz‚ Linux 1.0.0, que constaba de 176.250 lƒneas de c‚digo. En marzo de 1995 se lanz‚ Linux 1.2.0, que ya estaba compuesto de 310.950 lƒneas de c‚digo. … Mayo de 1996: Torvalds decidi‚ adoptar al ping‡ino Tux como mascota para Linux. … 9 de junio de 1996: Se lanz‚ la versi‚n 2 de Linux, con una recepci‚n positiva. … 25 de enero de 1999: Se lanz‚ Linux 2.2.0 con 1.800.847 lƒneas de c‚digo. … 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 lƒneas de c‚digo. … 17 de diciembre de 2003: se lanz‚ Linux 2.6.0 con 5.929.913 lƒneas de c‚digo. [8]

… 24 de diciembre de 2008: se lanz‚ Linux 2.6.28 con 10.195.402 lƒneas de c‚digo. [9]

… 20 de octubre de 2010: se lanz‚ Linux 2.6.36 con 13.499.457 lƒneas de c‚digo. [10]

… 30 de mayo de 2011: Linus Torvalds anunci‚

que la versi‚n del n€cleo dar† el salto a la 3.0 en la siguiente

publicaci‚n. … 21 de julio de 2011: Torvalds public‚ en su perfil en la red social Google+ que el n€cleo versi‚n 3.0 estaba listo con la frase "3.0 Pushed Out".

[11]

… 22 de julio de 2011: Fue lanzada la versi‚n 3.0 del n€cleo 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 n€cleo en http:/   / www. kernel.org respectivamente. Su c‚digo fuente est† disponible para descarga en el sitio web oficial: http:/  / www.kernel.org

N€cleo Linux

3

Aspectos t…cnicos Arquitecturas Actualmente Linux es un n€cleo monolƒtico hƒbrido. Los controladores de dispositivos y las extensiones del n€cleo 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 n€cleos

monolƒticos

tradicionales,

los

controladores

de

dispositivos y las extensiones al n€cleo se pueden cargar y descargar f†cilmente como m‚dulos, mientras el sistema contin€a funcionando sin interrupciones. Tambi•n, a diferencia de los n€cleos monolƒticos tradicionales, los controladores pueden ser prevolcados (detenidos moment†neamente por actividades m†s importantes) bajo ciertas condiciones. Esta habilidad fue agregada para gestionar correctamente interrupciones de hardware, y para mejorar el soporte de multiprocesamiento sim•trico. El hecho de que Linux no fuera desarrollado siguiendo el dise„o

Diagrama del n€cleo 2.4.0.

de un micron€cleo (dise„o que, en aquella •poca, era considerado el m†s apropiado para un n€cleo por muchos te‚ricos inform†ticos) fue asunto de una famosa y acalorada discusi‚n entre Linus Torvalds y Andrew S. Tanenbaum.

[12] [13]

Jerarqu„a 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 car†cter ( / ); ese mismo car†cter sirve tambi•n para demarcar los directorios, como por ejemplo: " /home/usuario/imagen.jpg". El directorio especificado por una ruta consistente s‚lo por este car†cter contiene toda la jerarquƒa de los directorios que constituyen todo el sistema. A este directorio suele llam†rselo directorio raƒz. 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  jerarquƒa del directorio raƒz ( / ), como por ejemplo: " /media/floppy". Es pr†ctica com€n en el sistema de ficheros de Linux, utilizar varias sub-jerarqu‚as de directorios, seg€n las diferentes funciones y estilos de utilizaci‚n de los [14]

archivos. …

Estos directorios pueden clasificarse en:

Est†ticos: Contiene archivos que no cambian sin la intervenci‚n del administrador (root), sin embargo, pueden ser leƒdos por cualquier otro usuario. (/bin, /sbin, /opt, /boot, /usr/bin...)



Din†micos: 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 r ecomendable una copia de seguridad con frecuencia, o mejor a€n, deberƒan ser montados en una partici‚n aparte en el mismo disco, como por ejemplo, montar el directorio /home en otra partici‚n del mismo disco, independiente de la partici‚n 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...)

N€cleo Linux

4

 Kernel panic En Linux, un  panic es un error casi siempre insalvable del sistema detectado por el n€cleo en oposici‚n a los errores similares detectados en el c‚digo del espacio de usuario. Es posible para el c‚digo del n€cleo indicar estas condiciones mediante una llamada a la funci‚n de p†nico situada en el archivo header sys/system.h. Sin embargo, la mayorƒa de las alertas son el resultado de excepciones en el c‚digo del n€cleo que el procesador no puede manejar, como referencias a direcciones de memorias inv†lidas. Generalmente esto es indicador de la existencia de un bug en alg€n lugar de la cadena de alerta. Tambi•n pueden indicar un fallo en el

 Kernel panic.

hardware como un fallo de la RAM o errores en las funciones aritm•ticas en el procesador, o por un error en el software. En muchas ocasiones es posible reiniciar o apagar adecuadamente el n€cleo mediante una combinaci‚n de teclas como ALT+SysRq+RSEIUB.

Lenguajes de programaci•n Linux est† escrito en el lenguaje de programaci‚n C, en la variante utilizada por el compilador GCC (que ha introducido un n€mero de extensiones y cambios al C est†ndar), junto a unas peque„as secciones de c‚digo 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, b†sicamente en la conexi‚n con el proceso de construcci‚n del n€cleo (el m•todo a trav•s del cual las im†genes arrancables son creadas desde el c‚digo fuente). Estos incluyen a Perl, Python y varios lenguajes shell scripting. Algunos drivers tambi•n pueden ser escritos en C++, Fortran, u otros lenguajes, pero esto no es aconsejable. El sistema de construcci‚n de Linux oficialmente solo soporta GCC como n€cleo y compilador de controlador.

Portabilidad Aun cuando Linus Torvalds no ide‚ originalmente Linux como un n€cleo portable, ha evolucionado en esa direcci‚n. Linux es ahora de hecho, uno de los n€cleos m†s 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 tambi•n estaban dirigidos a un tipo diferente de portabilidad. Seg€n su punto de vista, la portabilidad es la habilidad de compilar f†cilmente en un sistema aplicaciones de los orƒgenes m†s 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 C‚digo abierto.

Ipod ejecutando un n€cleo Linux.

N€cleo Linux

5

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 m†quina virtual El n€cleo Linux puede correr sobre muchas arquitecturas de m†quina virtual, tanto como host del sistema operativo o como cliente. La m†quina virtual usualmente emula la familia de procesadores Intel x86, aunque en algunos casos tambi•n son emulados procesadores de PowerPC o AMD.

Formatos binarios soportados Linux 1.0 admitƒa s‚lo el formato binario

a.out. La siguiente serie estable (Linux 1.2) agreg‚ la utilizaci‚n del

formato ELF, el cual simplifica la creaci‚n 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 versi‚n 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 a„adir el manejo de otros formatos binarios. Tambi•n binfmt_misc permite correr el programa asociado a un archivo de datos.

Versiones M†s all† de haber desarrollado su propio c‚digo y de integrar los cambios realizados por otros programas, Linus Torvalds continua lanzando nuevas versiones del n€cleo Linux. Estos son llamados n€cleos vanilla , lo que significa €



que no han sido modificados por nadie. Muchos desarrolladores de distribuciones Linux modifican dicho n€cleo 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 n€cleo vanilla.

Numeraci•n La versi‚n del n€cleo Linux original constaba de cuatro n€meros. Por ejemplo, asumamos que el n€mero de la versi‚n est† compuesta de esta forma:

A.B.C[.D] (ej.: 2.2.1, 2.4.13 ‚ 2.6.12.3).

… El n€mero A denota la versi‚n del n€cleo. Es el que cambia con menor frecuencia y solo lo hace cuando se produce un gran cambio en el c‚digo o en el concepto del n€cleo. Hist‚ricamente s‚lo ha sido modificado tres veces: en 1994 (versi‚n 1.0), en 1996 (versi‚n 2.0) y en 2011 (versi‚n 3.0). … El n€mero B denota la subversi‚n del n€cleo. Antes de la serie de Linux 2.6.x, los n€meros pares indicaban la versi‚n estable lanzada. Por ejemplo una €



para uso de fabricaci‚n, como el 1.2, 2.4 ‚ 2.6. Los n€meros impares, en cambio, como la serie 2.5.x, son versiones de desarrollo, es decir que no son consideradas de producci‚n. Comenzando con la serie Linux 2.6.x, no hay gran diferencia entre los n€meros pares o impares con respecto a las nuevas herramientas desarrolladas en la misma serie del n€cleo. Linus Torvalds dictamin‚ que este ser† el modelo en el futuro. … El n€mero C indica una revisi‚n mayor en el n€cleo. En la forma anterior de versiones con tres n€meros, esto fue cambiado cuando se implementaron en el n€cleo los parches de seguridad, bugfixes, nuevas caracterƒsticas o drivers. Con la nueva polƒtica, solo es cambiado cuando se introducen nuevos drivers o caracterƒsticas; cambios menores se reflejan en el n€mero

D.

… El n€mero D se produjo cuando un grave error, que requiere de un arreglo inmediato, se encontr‚ en el c‚digo NFS de la versi‚n 2.6.8. Sin embargo, no habƒa otros cambios como para lanzar una nueva revisi‚n (la cual hubiera sido 2.6.9). Entonces se lanz‚ la versi‚n 2.6.8.1, con el error arreglado como €nico cambio. Con 2.6.11,

N€cleo Linux

6

esto fue adoptado como la nueva polƒtica de versiones. Bug-fixes y parches de seguridad son actualmente manejados por el cuarto n€mero dejando los cambios mayores para el n€mero

C.

Tambi•n, 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 bifurcaci‚n en el desarrollo del n€cleo 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 existƒa una rama estable (2.4) donde se habƒan producido cambios menores y seguros, y una rama inestable (2.5) donde estaban permitidos cambios mayores. Esto signific‚ que los usuarios siempre tenƒan una versi‚n 2.4 a prueba de fallos y con lo €ltimo en seguridad y casi libre de errores, aunque tuvieran que esperar por las caracterƒsticas 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 n€cleos eligieron continuar agregando los cambios en la rama estable 2.6. De esta forma no habƒa que seguir manteniendo una rama vieja pero estable y se podƒa hacer que €



las nuevas caracterƒsticas estuvieran r†pidamente disponibles y se pudieran realizar m†s test con el €ltimo c‚digo. Sin embargo, el modelo de desarrollo del nuevo 2.6 tambi•n signific‚ que no habƒa una rama estable para aquellos que esperaban seguridad y bug fixes sin necesitar las €ltimas caracterƒsticas. Los arreglos solo estaban en la €ltima versi‚n, asƒ que si un usuario querƒa una versi‚n con todos los bug fixed conocidos tambi•n tendrƒa las €ltimas caracterƒsticas, las cuales no habƒan sido bien testeadas. Una soluci‚n parcial para esto fue la versi‚n ya mencionada de cuatro n€meros (y en 2.6.x.y), la cual significaba lanzamientos puntuales creados por el equipo estable (Greg Kroah-Hartman, Chris Wright, y quiz†s otros). El equipo estable solo lanzaba actualizaciones para el n€cleo m†s reciente, sin embargo esto no solucion‚ el problema del faltante de una serie estable de n€cleo. Distribuidores de Linux, como Red Hat y Debian, mantienen los n€cleos que salen con sus lanzamientos, de forma que una soluci‚n para algunas personas es seguir el n€cleo de una distribuci‚n. Como respuesta a la falta de un n€cleo estable y de gente que coordinara la colecci‚n de correcci‚n de errores, en diciembre de 2005 Adrian Bunk anunci‚ que continuarƒa lanzando n€cleos 2.6.16 aun cuando el equipo estable lanzara 2.6.17. Adem†s 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 n€cleo 2.6.16 ser† reemplazado pr‚ximamente por el 2.6.27 como n€cleo estable en mantenimiento durante varios a„os. Dado el nuevo modelo de desarrollo, que mantiene fija la subversi‚n de 2.6, tras durante el Linux Kernel Summit de ese a„o, Linus Torvalds decidi‚ modificar el sistema de numeraci‚n, sustituyendo los dos primeros n€meros por una €nica cifra, de forma que Linux 2.6.39 fue seguida por Linux 3.0

[16]

Fechas de publicaci•n Versi•n

[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 versi‚n estable 561

170.581

4,633 0,969

1.1.0

6 de abril de 1994

Versi‚n 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

Versi‚n de desarrollo

0,267 0,06

21,7

4,499

N€cleo Linux

7

2.1.0

30 de septiembre de 1996 Versi‚n 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 Versi‚n 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

Versi‚n de desarrollo

96,8

18,79

Distribuciones Una distribuci‚n Linux es un conjunto de software acompa„ado del n€cleo Linux que se enfoca a satisfacer las necesidades de un grupo especƒfico de usuarios. De este modo hay distribuciones para hogares, empresas y servidores. Las distribuciones son ensambladas por individuos, empresas u otros organismos. Cada distribuci‚n puede incluir cualquier n€mero de software adicional, incluyendo software que facilite la instalaci‚n del sistema. La base del software incluido con cada distribuci‚n incluye el n€cleo Linux, en la mayorƒa de los casos las herramientas GNU, al que suelen a„adirse tambi•n multitud de paquetes de software. Las herramientas que suelen incluirse en la distribuci‚n 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. Tambi•n 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

Sharp Zaurus, un computador de bolsillo con

XFree86, para sostener la interfaz gr†fica.

Linux.

Copyright Inicialmente, Torvalds distribuy‚ Linux bajo los t•rminos de una licencia que prohibƒa la explotaci‚n comercial. Pero esta licencia fue reemplazada, poco tiempo despu•s, por la GNU GPL (versi‚n 2 exclusivamente). Los t•rminos de esta €ltima licencia permiten la distribuci‚n y venta de copias o incluso modificaciones, pero requiere que todas las copias del trabajo original y trabajos de autorƒa derivados del original sean publicados bajo los mismos t•rminos, y que el c‚digo 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 ingl•s, "the [20]

best thing I ever did" ).

Sin embargo, la versi‚n oficial del n€cleo Linux contiene firmware de c‚digo cerrado

[cita requerida]

, por ello, el

Proyecto Linux-libre, auspiciado por la FSFLA, publica y mantiene versiones modificadas del n€cleo Linux a las

N€cleo Linux

8

que se les ha quitado todo el software no libre.

Marca A dƒa 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 regalƒas 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 [22]

Torvalds.

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 legislaci‚n estadounidense exige que el due„o de una marca la defienda, por lo que se tuvo que pedir dinero por usar la marca Linux, algunas compa„ƒas 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]

Cr„ticas Soporte de hardware El n€cleo Linux ha sido criticado con frecuencia por falta de controladores para cierto hardware de computadoras de escritorio. Sin embargo, el progresivo incremento en la adopci‚n 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 a„os, 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 n€cleo Linux que se encargan de mantener los controladores para el hardware que fabrican. Este grupo de programadores tambi•n 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 c‚digo 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 creaci‚n de controladores libres liberando especificaciones sobre su hardware y actualmente colabora en el desarrollo de un controlador libre de €ltima generaci‚n.

[25]

para sus tarjetas gr†ficas ATI

[26]

Arquitectura monol„tica Andy Tanenbaum escribi‚ el 29 de enero de 1992: ˆ...Linux es un sistema monolƒtico. Esto es retroceder un paso gigante hacia la d•cada de 1970. Es como tomar un programa existente escrito en C y reescribirlo en BASIC. Para mƒ, escribir un sistema monolƒtico en 1991 es verdaderamente una idea pobre‰.

[27]

Referencias [1] http:/   / www.kernel.org/  [2] LMKL.ORG - the Linux Kernel Mailing List Archive (https:/   / www.lkml.org), Sitio Oficial de Linux Kernel Mailing List . [3] ˆ Sobre Linux (http:/   / www.linux-es.org/ sobre_linux)‰. Linux.org. Consultado el 19 de julio de 2012. [4] http:/   / groups.google.com/ group/ comp.os.minix/ msg/ b813d52cbc5a044b?pli=1 [5] linux.org (ed.): ˆ What is Linux (http:/   / web.archive.org/ web/ 20100527054726/ http:/   / www.linux.org/ info/ index.html)‰ (en ingl•s) (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/  [email protected]) Newsgroups: comp.os.minix, Google Groups (en ingl•s).

N€cleo 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 Hƒbrido (http:/   / cosaslibres.com.co/ software/ gnulinux-kernel-hibrido/ ) (en espa„ol) [13] Resumen de la afamada discusi‚n entre Linus Torvalds y Andrew Tanenbaum (http:/   / www.dina.dk/ ~abraham/ Linus_vs_Tanenbaum. html) (en ingl•s) [14] Organizaci‚n 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 publicaci‚n 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 c‚digo), 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 N€cleo LinuxCommons. … Sitio web oficial de Linux (http:/   / www.kernel.org) … C‚digo fuente completo de varias versiones de Linux (http:/   / lxr.linux.no) … Kernel Newbies (http:/   / kernelnewbies.org/ Linux)

9

Fuentes y contribuyentes del artƒculo

Fuentes y contribuyentes del art„culo N€cleo Linux  Fuente: http://es.wikipedia.org/w/index.php?oldid=58161931 Contribuyentes: A V†zquez O., Acracia, Aeris17, Aguarate, Alakasam, Alexis PM, Alvaro qc, Alvarovmz, Amitie 10g, Andreasmperu, Antonio P†ramo, Arenelion, Argentilinux, Asc†nder, 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, G‹tz, 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 P•rez Francisco, MiguelAngelCaballero, Moriel, Nicoguaro, Nioger, Niqueco, Pablo claret, PabloCastellano, Palissy, Pandres95, Phirosiberia, Piero71, Pilaf, Platonides, P‚lux, 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 an‚nimas

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

View more...

Comments

Copyright © 2017 DATENPDF Inc.