ff-multiconverter, multimedia, audio, video, linux, ubuntu ubuntu kylin, china, releases, linux terminal, ubuntu, linux, comandos, shell conky, gadgets, ubuntu, linux SpeedTest-Cli, velocidad, red, consola, terminal tag foto 6 pinta, grafica, linux, ubuntu djl, juegos, yum, synaptic, paquetes ubuntu, releases, canonical psensor, ubuntu, linux, sistema, monitor

Evolución del tamaño del kernel Linux: el crecimiento es en su mayoría “exponencial”.

Uno de los dessarrolladores del núcleo Linux ha realizado un estudio del tamaño de las distintas versiones del kernel Linux, y como era de esperar el gráfico resultante demuestra ese crecimiento que se ha acentuado a partir de la versión 2.2.0.

Como explica Jérôme Pinot en la lista LKML y en el post de su blog, el crecimiento es en su mayoría “exponencial”, y si se mantiene al mismo ritmo, el kernel Linux ocupará 100 Mbytes en su versión tar.bz2 para cuando lleguemos a Linux 3.19 (el kernel 3.1.1, que apareció el pasado 11 de noviembre, pesa 73,7 Mbytes).

En el post original puden encontrar las fuentes de información que ha usado este desarrollador para generar el gráfico, para el que ha utilizado este fichero de gnuplot. Curioso esfuerzo, y muy representativo de ese gran tamaño que se debe esencialmente a la inclusión de más y más controladores de dispositivos.

Linux es un núcleo libre de sistema operativo basado en Unix. Es uno de los principales ejemplos de software libre,  licenciado bajo la GPL v2 y  desarrollado por colaboradores de todo el mundo. El desarrollo del día a día tiene lugar en 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. 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.


Cronología.

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.
  • 24 de diciembre de 2008: se lanzó Linux 2.6.28 con 10.195.402 líneas de código.
  • 20 de octubre de 2010: se lanzó Linux 2.6.36 con 13.499.457 líneas de código.
  • 30 de mayo de 2011: Linus Torvalds anunció6 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".7
  • 22 de julio de 2011: Fue lanzada la versión 3.0 del núcleo. 
  • 12 de enero de 2012: Fue lanzada la versión 3.2.1 del núcleo.
Sintesis:



Linux Version Files1 Source lines2 Days Commits3 Changes4
2.6.31 29111 12046317 (10778469) 92 10883 8938 files changed
914135 insertions(+)
504980 deletions(-)
2.6.32 30485 12606910 (11242136) 84 10998 10315 files changed
1092987 insertions(+)
530428 deletions(-)
2.6.33 31565 12990041 (11564768) 83 10871 9673 files changed
859458 insertions(+)
479452 deletions(-)
2.6.34 32297 13320934 (11861616) 82 9443 11154 files changed
609584 insertions(+)
278958 deletions(-)
2.6.35 33316 13545604 (12250679) 77 9801 8889 files changed
691927 insertions(+)
467252 deletions(-)
2.6.36 34301 13499457 (12539782) 80 9501 9202 files changed
582139 insertions(+)
628362 deletions(-)
2.6.37 35191 13996612 (13006967) 76 11446 11104 files changed,
1093202 insertions(+),
598350 deletions(-)
2.6.38 35877 14294439 (13294464) 69 9542 9133 files changed,
747809 insertions(+),
455603 deletions(-)
2.6.39 36719 14619185 (13605251) 65 10268 10985 files changed,
847537 insertions(+),
523387 deletions(-)
3.0 36795 14732555 (13693588) 64 9153 7946 files changed,
555406 insertions(+),
442033 deletions(-)
¹ find . -type f -not -regex ‘\./\.git/.*’ | wc -l
² find . -type f -not -regex ‘\./\.git.*’ | xargs cat | wc -l (find . -name *.[hcS] -not -regex ‘\./\.git.*’ | xargs cat | wc -l)
³ git-log –no-merges –pretty=oneline v2.6.(x-1)..v2.6.(x) | wc -l
⁴ git diff –shortstat v2.6.(x-1)..v2.6.(x)

Búsqueda personalizada

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:


Espero que esta publicación te haya gustado. Si tienes alguna duda, consulta o quieras complementar este post, no dudes en escribir en la zona de comentarios. También puedes visitar Facebook, Twitter, Google +, Linkedin, Instagram, Pinterest y Feedly donde encontrarás información complementaria a este blog. COMPARTE EN!

0 comentarios: