Proyectos con una Raspberry PI 3 Modelo B

No sólo es un mini-ordenador económico, donde existen varias distribuciones GNU/Linux para sacar su potencial, empecemos un poquito por sus prestaciones técnicas y te daré un ejemplo donde verás como se puede proyectar funcionalidades diversas a una Raspberry Pi a demás de poder ser usado como dije antes como un mini-ordenador, pues es mucho más gracias a sus 40 Pin Extended GPIO:

caracteristicasraspberrypi3

Es un computador de placa reducida, computador de placa única o computador de placa simple (SBC) de bajo costo desarrollado en Reino Unido por la Fundación Raspberry Pi, con el primer objetivo de estimular la enseñanza de ciencias de la computación en las escuelas, ideal para aprender a programar y poner en práctica tu imaginación en tus proyectos, donde gracias a sus características y potencial, también ha llegado su éxito en el terreno profesional.

Raspberry Pi 3 Modelo B, sacada a la luz en el año 2016, renueva procesador, una vez más de la compañía Broadcom, una vez más un Quad-Core, pero pasa de 900MHz a 1.20GHz. Mantiene la RAM en 1GB. Su mayor novedad fue la inclusión de Wi-Fi y Bluetooth (4.1 Low Energy) sin necesidad de adaptadores.

Y gracias a la programación de sus 40 PIN Extended GPIO, podemos controlar circuitos electrónicos, por ejemplo para mover motores o controlar el encendido y apagado de relés que actuarán como interruptores para circuitos de 220V, y menciono este ejemplo al azar, pero se logo_transparent_backgroundpueden hacer proyectos tan dispares y distintos entre sí, como una máquina arcade (bartop) para disfrutar de la nostalgia de los juegos, gracias a una distribución GNU/Linux “Recalbox“, y por cierto es el primer proyecto Raspberry Pi, en el que me estoy implicando, en conclusión gozarás de un sin fin de posibilidades, pues tu imaginación será el único límite a tus proyectos…

 

Rehabilita y Reutiliza con Lubuntu GNU/Linux

Si un niño de menos de tres años, pudo ayudarme a Rehabilitar y Reutilizar una donación de un mini-pc…, ¡tú también puedes hacerlo!.

Lubuntu es una distribución oficial del proyecto Ubuntu cuyo objetivo es crear un sistema operativo que minimice los recursos necesarios para su funcionamiento en un equipo informático. Por ello no es de extrañar que su propio lema sea: “ligero, rápido, más fácil”.​ Lubuntu usa como gestor de escritorio LXDE, (de hecho su propio nombre es una combinación entre LXDE y Ubuntu), a su vez el gestor LXDE usa el administrador de ventanas Openbox.

Especialmente útil en dispositivos como netbooks y algunos computadores antiguos, Lubuntu se puede usar perfectamente en equipos donde se quiera mejorar el rendimiento a costa de simplificar el entorno gráfico.

Con este ideal y esquema de desarrollo que posee, se presenta como una competencia a Xubuntu.

Los requerimientos de hardware de Lubuntu/LXDE solían ser similares a los de Windows XP: un procesador Pentium II o III entre 400-500 MHz. En sus versiones más recientes los requerimientos del sistema son: 1 GB de RAM (512 MB como mínimo) y un procesador Pentium 4 o Pentium M o un procesador AMD K8. Además Lubuntu ya no es apto para computadores tan antiguos que no soporten un Kernel PAE, y a partir de la versión 17.04 (Zesty Zapus) dejó de ser compatible por completo con la arquitectura PowerPC.

También se dispone de una versión para la Raspberry PI 2 & 3 a día de hoy.

En conclusión Lubuntu, es un ejemplo de una de las distribuciones para escritorio, que busca la agilidad del hardware, en equipos de sobremesa o portátiles, donde las bajas prestaciones no son ningún impedimento para que pueda volver a la utilidad, Rehabilitando un ordenador  que se le hubiera quedado obsoleto o fuera de uso por cualquier motivo, como por ejemplo por el tema de la obsolescencia programada del software que algunos sistemas operativos privativos, utilizan para no alargar la vida de los equipos y mover el comercio del hardware. Por lo que esta distribución de software libre, te permitirá reutilizar para ti o para otros, un computador, y aunque no lo sepas, estarás ayudando a no crear residuos de reciclaje, ayudando al medio ambiente.

Si no sabes como hacer para aplicar la distribución a tu computador, y no te ves con el tiempo suficiente para auto-aprender buscando información en internet, siempre puedes ponerte en contacto conmigo si eres de la zona de Chinchilla de Montearagón o Albacete, al igual que puedes mirar si hay una organización linux en tu ciudad, donde también podrás pedir ayuda.

También si deseas deshacerte de un equipo, antes de tirar al punto de reciclaje, puedes donármelo y yo me ocuparé de rehabilitarlo para otros que lo necesiten, especialmente en estos tiempos de crisis, hay más gente de la que parece que no puede hacerse con un ordenador nuevo, incluso tampoco de segunda mano.

No obstante si tienes tiempo u eres auto-didacta, te animo y te aconsejo que visites esta web por ejemplo: https://lubuntu.net/ para poder bajarte la distribución Lubuntu, y rehabilitar y reutilizar tú mismo.

 

 

Nueva Filosofía Noblemente Libre

SmallLogoInformática Linux, le gusta el software libre y en especial sus valores, pero también comprende y respeta la evolución informática hacia el software privativo, por lo que se le ha ocurrido promover una filosofía noblemente libre, que ha denominado Lindux.net, como ejemplo de poder utilizar aplicaciones privativas como Microsoft Access, pero actuando con valores parecidos al software libre, donde el trabajo final sea noblemente libre, para saber más pulse aquí.

LPI – Linux Professional Institute

lpiUna de las formas más adecuadas de aprender Linux, incluso de ser certificado en conocimientos, es mediante la LPI, Linux Professional Institute.

Si quieres aprender sobre la esencia de Linux, mediante comandos y con independencia a la distribución o entorno gráfico, te aconsejo los conocimientos que se imparten en LPI.

Para saber más sobre LPI España y las certificaciones, así como material de estudio u plataformas online, etc.. pulsar aquí.

Si quieres una plataforma gratuita con todo el temario, preguntas y simulación de exámenes, te aconsejo LPIFIT.

Si quieres un libro básico para la certificación básica, te aconsejo empezar por linux essential.

Introducción a la informática GNU/Linux

Un Ordenador

La computadora​ (del inglés: computer; y este del latín: computare,​ ’calcular’), también denominada computador​ y ordenador​ (del francés: ordinateur; y éste del latín: ordinator), es una máquina electrónica que recibe y procesa datos, para convertirlos en información conveniente y útil, que posteriormente se envía a las unidades de salida, para que pueda ser analizada y utilizada por humanos. Un ordenador está formado físicamente por numerosos circuitos integrados y muchos componentes de apoyo, extensión y accesorios, que en conjunto pueden ejecutar tareas diversas con suma rapidez y bajo el control de un programa (software).

Dos partes esenciales la constituyen, el hardware (hard = duro) que es su estructura física (circuitos electrónicos, cables, gabinete, teclado, etc), y el software que es su parte intangible (programas, datos, información, señales digitales para uso interno, etc).

Desde el punto de vista funcional es una máquina que posee, al menos, una unidad central de procesamiento, una memoria principal y algún periférico o dispositivo de entrada y otro de salida. Los dispositivos de entrada permiten el ingreso de datos, la CPU se encarga de su procesamiento (operaciones aritmético-lógicas) y los dispositivos de salida los comunican a otros medios. Es así, que la computadora recibe datos, los procesa y emite la información resultante, la que luego puede ser interpretada, almacenada, transmitida a otra máquina o dispositivo o sencillamente impresa; todo ello a criterio de un operador o usuario y bajo el control de un programa.

El hecho de que sea programable, le posibilita realizar una gran diversidad de tareas, esto la convierte en una máquina de propósitos generales (a diferencia, por ejemplo, de una calculadora cuyo único propósito es calcular limitadamente). Es así que, sobre la base de datos de entrada, puede realizar operaciones y resolución de problemas en las más diversas áreas del quehacer humano (administrativas, científicas, de diseño, ingeniería, medicina, comunicaciones, música, etc), incluso muchas cuestiones que directamente no serían resolubles o posibles sin su intervención.

Básicamente, la capacidad de una computadora depende de sus componentes hardware, en tanto que la diversidad de tareas radica mayormente en el software que admita ejecutar y contenga instalado.

Si bien esta máquina puede ser de dos tipos, analógica o digital, el primer tipo es usado para pocos y muy específicos propósitos; la más difundida, utilizada y conocida es la computadora digital (de propósitos generales); de tal modo que en términos generales (incluso populares), cuando se habla de «la computadora» se está refiriendo a computadora digital. Las hay de arquitectura mixta, llamadas computadoras híbridas, siendo también éstas de propósitos especiales.

En la Segunda Guerra mundial se utilizaron computadoras analógicas mecánicas, orientadas a aplicaciones militares, y durante la misma se desarrolló la primera computadora digital, que se llamó ENIAC; ella ocupaba un enorme espacio y consumía grandes cantidades de energía, que equivalen al consumo de cientos de computadores actuales (PC).​ Los computadores modernos están basados en circuitos integrados, miles de millones de veces más veloces que las primeras máquinas, y ocupan una pequeña fracción de su espacio. ​

Computadoras simples son lo suficientemente pequeñas para residir en los dispositivos móviles. Las computadoras portátiles, tales como tabletas, netbooks, notebooks, ultrabooks, pueden ser alimentadas por pequeñas baterías. Las computadoras personales en sus diversas formas son iconos de la Era de la información y son lo que la mayoría de la gente considera como «ordenador». Sin embargo, los ordenadores integrados se encuentran en muchos dispositivos actuales, tales como reproductores MP4; teléfonos celulares; aviones de combate, y, desde juguetes hasta robot industriales.

Un poco de historia básica sin entrar en mucho detalle

Lejos de ser un invento de alguien en particular, el ordenador es el resultado evolutivo de ideas y realizaciones de muchas personas relacionadas con áreas tales como la electrónica, la mecánica, los materiales semiconductores, la lógica, el álgebra y la programación.

  • 1971: Intel presenta el primer procesador comercial y a la vez el primer chip Microprocesador, el Intel 4004.
  • 1975: Paul Alen y Bill Gates fundan Microsoft.
  • 1976: Steve Jobs, Steve Wozniak, Mike Markkula y otros amigos mas fundan Apple.
  • 1977: Apple presenta el primer computador personal que se vende a gran escala, el Apple II, desarrollado por Steve Jobs y Steve Wozniak.
  • 1981: se lanza al mercado el IBM PC, que se convertiría en un éxito comercial, marcaría una revolución en el campo de la computación personal y definiría nuevos estándares.
  • 1982: Microsoft presenta su sistema operativo MS-DOS, por encargo de IBM.
  • 1983: ARPANET se separa de la red militar que la originó, pasando a un uso civil y convirtiéndose así en el origen de Internet.
  • 1983: Richard Stallman anuncia públicamente el proyecto GNU.
  • 1985: Microsoft presenta el sistema operativo Windows 1.0.
  • 1990: Tim Berners-Lee idea el hipertexto para crear el World Wide Web (www), una nueva manera de interactuar con Internet.
  • 1991: Linus Torvalds comenzó a desarrollar Linux, un sistema operativo compatible con Unix.
  • 2000: aparecen a comienzos del siglo XXI los ordenadores de bolsillo, primeras PDAs
  • 2007: Presentación del primer iPhone, por la empresa Apple, un teléfono inteligente o smartphone.

Con la invención del microprocesador en 1970, fue posible fabricar computadores muy baratos. Nacen los computadores personales (PC), los que se hicieron famosos para llevar a cabo diferentes tareas como guardar libros, escribir e imprimir documentos, calcular probabilidades y otras tareas matemáticas repetitivas con hojas de cálculo, comunicarse mediante correo electrónico e Internet. Sin embargo, la gran disponibilidad de computadores y su fácil adaptación a las necesidades de cada persona, han hecho que se utilicen para varios propósitos.

Al mismo tiempo, los pequeños computadores fueron casi siempre con una programación fija, empezaron a hacerse camino entre las aplicaciones del hogar, los coches, los aviones y la maquinaria industrial. Estos procesadores integrados controlaban el comportamiento de los aparatos más fácilmente, permitiendo el desarrollo de funciones de control más complejas como los sistemas de freno antibloqueo en los coches. A principios del siglo XXI, la mayoría de los aparatos eléctricos, casi todos los tipos de transporte eléctrico y la mayoría de las líneas de producción de las fábricas funcionan con un computador. La mayoría de los ingenieros piensa que esta tendencia va a continuar.

Hacia finales de siglo XX y comienzos del XXI, los computadores personales son usados tanto para la investigación como para el entretenimiento (videojuegos), pero los grandes computadores todavía sirven para cálculos matemáticos complejos y para otros usos de la ciencia, tecnología, astronomía, medicina, etc.

Tal vez el más interesante “descendiente” del cruce entre el concepto de la PC o computadora personal y los llamados supercomputadores sea la Workstation o estación de trabajo. Este término, originalmente utilizado para equipos y máquinas de registro, grabación y tratamiento digital de sonido, y ahora utilizado precisamente en referencia a estaciones de trabajo (traducido literalmente del inglés), se usa para dar nombre a equipos que, debido sobre todo a su utilidad dedicada especialmente a labores de cálculo científico, eficiencia contra reloj y accesibilidad del usuario bajo programas y software profesional y especial, permiten desempeñar trabajos de gran cantidad de cálculos y “fuerza” operativa. Una Workstation es, en esencia, un equipo orientado a trabajos personales, con capacidad elevada de cálculo y rendimiento superior a los equipos PC convencionales, que aún tienen componentes de elevado coste, debido a su diseño orientado en cuanto a la elección y conjunción sinérgica de sus componentes. En estos casos, el software es el fundamento del diseño del equipo, el que reclama, junto con las exigencias del usuario, el diseño final de la Workstation.

Estaciones de Trabajo – Workstation

En informática una estación de trabajo (en inglés workstation) es un computador de altas prestaciones destinado para trabajo técnico o científico. En una red de computadoras, es una computadora que facilita a los usuarios el acceso a los servidores y periféricos de la red. A diferencia de una computadora aislada, tiene una tarjeta de red y está físicamente conectada por medio de cables u otros medios no guiados con los servidores. Los componentes para servidores y estaciones de trabajo alcanzan nuevos niveles de rendimiento informático, al tiempo que ofrecen fiabilidad, compatibilidad, escalabilidad y arquitectura avanzada ideales para entornos multiproceso.

Lo de las computadoras en general, las computadoras promedio de hoy en día son más poderosas que las mejores estaciones de trabajo de una generación atrás. Como resultado, el mercado de las estaciones de trabajo se está volviendo cada vez más especializado, ya que muchas operaciones complejas que antes requerían sistemas de alto rendimiento pueden ser ahora dirigidas a computadores de propósito general. Sin embargo, el hardware de las estaciones de trabajo está optimizado para situaciones que requieren un alto rendimiento y fiabilidad, donde generalmente se mantienen operativas en situaciones en las cuales cualquier computadora personal tradicional dejaría rápidamente de responder.

Actualmente las estaciones de trabajo suelen ser vendidas por grandes fabricantes de ordenadores como HP o Dell y utilizan CPU x86-64 como Intel Xeon o AMD Opteron ejecutando Microsoft Windows o GNU/Linux. Apple Inc. y Sun Microsystems comercializan también su propio sistema operativo tipo UNIX para sus estaciones de trabajo.

Sistema Operativo

Un sistema operativo (SO o, frecuentemente, OS —del inglés operating system—) es el software principal o conjunto de programas de un sistema informático que gestiona los recursos de hardware y provee servicios a los programas de aplicación de software, ejecutándose en modo privilegiado respecto de los restantes (aunque puede que parte de él se ejecute en espacio de usuario).

Nótese que es un error común muy extendido denominar al conjunto completo de herramientas sistema operativo,​es decir, la inclusión en el mismo término de programas como el explorador de ficheros, el navegador web y todo tipo de herramientas que permiten la interacción con el sistema operativo. Otro ejemplo para comprender esta diferencia se encuentra en la plataforma Amiga, donde el entorno gráfico de usuario se distribuía por separado, de modo que, también podía reemplazarse por otro, como era el caso de directory Opus o incluso manejarlo arrancando con una línea de comandos y el sistema gráfico. De este modo, comenzaba a funcionar con el propio sistema operativo que llevaba incluido en una ROM, por lo que era cuestión del usuario decidir si necesitaba un entorno gráfico para manejar el sistema operativo o simplemente otra aplicación. Uno de los más prominentes ejemplos de esta diferencia, es el núcleo Linux, usado en las llamadas distribuciones Linux, ya que al estar también basadas en Unix, proporcionan un sistema de funcionamiento similar. Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores​ se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de gestionar.​ Véase AmigaOS, beOS o Mac OS como los pioneros​ de dicha modernización, cuando los Amiga fueron bautizados con el sobrenombre de Video Toasters​ por su capacidad para la Edición de vídeo en entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D.

En ciertos textos, el sistema operativo es llamado indistintamente como núcleo o kernel, pero debe tenerse en cuenta que la diferencia entre kernel y sistema operativo solo es aplicable si el núcleo es monolítico, lo cual fue muy común entre los primeros sistemas. En caso contrario, es incorrecto llamar al sistema operativo núcleo.

Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. La mayoría de aparatos electrónicos que utilizan microprocesadores para funcionar, llevan incorporado un sistema operativo (teléfonos móviles, reproductores de DVD, computadoras, radios, enrutadores, etc.). En cuyo caso, son manejados mediante una interfaz gráfica de usuario, un gestor de ventanas o un entorno de escritorio, si es un celular, mediante una consola o control remoto si es un DVD y, mediante una línea de comandos o navegador web si es un enrutador.

Núcleo Monolítico

En computación, un núcleo monolítico es una arquitectura de sistema operativo donde éste en su totalidad trabaja en espacio del núcleo, estando él solo en modo supervisor. Difiere de otras arquitecturas (como la de micronúcleo) en que solo define una interfaz virtual de alto nivel sobre el hardware del ordenador. Un conjunto primitivo de llamadas al sistema implementa todos los servicios propios del sistema operativo tales como la planificación de procesos, concurrencia, sistema de archivos, gestión de memoria, etc.

En esta arquitectura hay una correspondencia entre el programa que conforma el sistema operativo y el núcleo en sí.

Éste núcleo está programado de forma no modular y puede tener un tamaño considerable. A su vez, cada vez que se añada una nueva funcionalidad, deberá ser recompilado en su totalidad y luego reiniciado. Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Por ende, un error en una rutina podría propagarse a todo el sistema.

Hay diversas ramificaciones de este diseño, que se han ido amoldando a nuevas necesidades. Existen sistemas que, en tiempo de ejecución, permiten la carga dinámica de módulos ejecutables, lo cual le brinda al modelo de núcleo monolítico algunas de las ventajas de un micronúcleo. Dichos módulos pueden ser compilados, modificados, cargados y descargados en tiempo de ejecución, de manera similar a los servicios de un micronúcleo, pero con la diferencia de que se ejecutan en el espacio de memoria del núcleo mismo (anillo 0). De esta forma, es probable que un bloqueo del módulo bloquee todo el núcleo. Además, el módulo pasa a formar un todo con el núcleo, usando la API del mismo, y no se emplea un sistema de mensajes como en los micronúcleos. Este es el esquema usado por, entre otros, Linux, FreeBSD y varios derivados de UNIX.

La alternativa es tener una estructura de micronúcleo, donde las partes funcionales están divididas en unidades separadas con mecanismos de comunicación estrictos entre ellos. Cabe resaltar que el paso constante de mensajes entre los servicios del micronúcleo, es en parte responsable del pobre rendimiento de esta estructura.

Entre los sistemas operativos que cuentan con núcleos monolíticos actualmente se encuentran los populares:

Núcleos tipo Unix, Linux, Unix BSD (FreeBSD, NetBSD, OpenBSD).

Unix

Unix (registrado oficialmente como UNIX®) es un sistema operativo portable, multitarea y multiusuario; desarrollado, en principio, en 1969, por un grupo de empleados de los laboratorios Bell de AT&T, entre los que figuran Dennis Ritchie, Ken Thompson y Douglas McIlroy.​

El sistema, junto con todos los derechos fueron vendidos por AT&T a Novell, Inc. Esta vendió posteriormente el software a Santa Cruz Operation en 1995, y esta, a su vez, lo revendió a Caldera Software en 2001, empresa que después se convirtió en el grupo SCO. Sin embargo, Novell siempre argumentó que solo vendió los derechos de uso del software, pero que retuvo el copyright sobre “UNIX®”. En 2010, y tras una larga batalla legal, ésta ha pasado nuevamente a ser propiedad de Novell.

Solo los sistemas totalmente compatibles y que se encuentran certificados por la especificación Single UNIX Specification pueden ser denominados “UNIX®” (otros reciben la denominación «similar a un sistema Unix» o «similar a Unix»). En ocasiones, suele usarse el término “Unix tradicional” para referirse a Unix o a un sistema operativo que cuenta con las características de UNIX Versión 7 o UNIX System V o unix versión 6. Unix es utilizado mucho por los hackers de todo el mundo, ya que provee un buen sistema operativo y eso les ayuda a hacer cualquier tipo de cosa.

Familias Unix más significativas

  • AT&T: la familia que tuvo su origen en el UNIX de AT&T. Considerada la familia UNIX “pura” y original. Sus sistemas operativos más significativos son UNIX System III y UNIX System V.
  • BSD: familia originada por el licenciamiento de UNIX a Berkely. BSD se reescribió para no incorporar propiedad intelectual originaria de AT&T en la versión 4. La primera implementación de los protocolos TCP/IP que dieron origen a Internet son la pila (stack) TCP/IP BSD.
  • AIX: Esta familia surge por el licenciamiento de UNIX System III a IBM.
  • Xenix: familia derivada de la adquisición de los derechos originales de AT&T primero por parte de Microsoft y de esta los vendió a SCO.
  • GNU: En 1983, Richard Stallman anunció el Proyecto GNU, un ambicioso esfuerzo para crear un sistema similar a Unix, que pudiese ser distribuido libremente. El software desarrollado por este proyecto -por ejemplo, GNU Emacs y GCC – también han sido parte fundamental de otros sistemas UNIX.
  • Linux: En 1991, cuando Linus Torvalds empezó a proponer el núcleo Linux y a reunir colaboradores, las herramientas GNU eran la elección perfecta. Al combinarse ambos elementos, conformaron la base del sistema operativo (basado en POSIX), que hoy se conoce como GNU/Linux. Las distribuciones basadas en el núcleo, el software GNU y otros agregados entre las que se pueden mencionar a Slackware Linux, Red Hat Linux y Debian GNU/Linux se han hecho populares tanto entre los aficionados a la computación como en el mundo empresarial. Obsérvese que Linux tiene un origen independiente, por lo que se considera un ’clónico’ de UNIX y no un UNIX en el sentido histórico.

Dennis Ritchie, uno de los creadores de Unix, ha expresado su opinión diciendo que los sistemas Unix-like como GNU/Linux son sistemas Unix de facto.​ Eric S. Raymond y Rob Langley sugirieron​ que se podía definir un UNIX funcional Globalmente, a cualquier sistema Unix-like que se comporte de manera bastante similar a las especificaciones de UNIX. Más específicamente se puede referir a sistemas como Linux o Minix que se comportan de manera similar pero no tienen conexión alguna con el código de AT&T. Muchas implementaciones libres, tanto descendientes de UNIX como no, entran en esta categoría, dado el alto costo de obtener una certificación del Open Group, la cual cuesta cientos de dólares y no es necesaria comercialmente.

GNU

GNU es un sistema operativo de tipo Unix desarrollado por y para el Proyecto GNU, y auspiciado por la Free Software Foundation. Está formado en su totalidad por software libre, mayoritariamente bajo términos de copyleft. GNU es el acrónimo recursivo de “GNU’s Not Unix” (en español: GNU no es Unix), nombre elegido debido a que GNU sigue un diseño tipo Unix y se mantiene compatible con éste, pero se distingue de Unix por ser software libre y por no contener código de Unix.​

El ñu es el animal simbólico o mascota o logo de este proyecto

El desarrollo de GNU ha sido liderado desde su inicio en 1983 por Richard Stallman,​ auxiliado por un número de académicos, programadores voluntarios y formalmente empleados, con el objetivo de crear el primer sistema operativo completamente libre. A fecha de diciembre de 2013 todavía no hay un lanzamiento oficial de GNU​ pero el proyecto ha sido responsable por la creación de varios programas ampliamente utilizados; como los compiladores GCC, el intérprete de comandos Bash, el editor de texto Emacs e incluso el escritorio GNOME. La Free Software Foundation considera que el objetivo principal del Proyecto GNU ha sido alcanzado con la ayuda de otros programas de software libre ajenos a GNU, por lo que el desarrollo de un sistema operativo puramente GNU se ha vuelto una tarea secundaria al crecimiento y manutención del sistema existente (GNU/Linux), y secundaria a la garantía de la libertad de sus usuarios y la promoción de tales ideas. Richard Stallman así como muchos otros partidarios del movimiento del software libre considera al sistema operativo GNU como «un medio técnico para un fin social».​

El proyecto GNU originalmente pretendía remplazar el núcleo de Unix con su propio núcleo llamado GNU Hurd, pero las implementaciones comunes de GNU siempre han usado Linux en lugar de Hurd; combinación a la cual se le llama GNU/Linux o simplemente Linux. Nótese que el Proyecto GNU denomina a GNU como “sistema operativo” en el sentido coloquial del término, similar al de distribución, como sucede cuando se habla de sistemas operativos como Windows, Mac OS, Android e incluso Unix; mientras que algunos programas particulares como Linux y GNU Hurd también son llamados sistemas operativos en calidad de kernels o núcleos.

Copyleft

El copyleft (sin derecho de copia o sin derecho de autor, en referencia a los derechos de autor) es una práctica que consiste en el ejercicio del derecho de autor con el objetivo de permitir la libre distribución de copias y versiones modificadas de una obra u otro trabajo, exigiendo que los mismos derechos sean preservados en las versiones modificadas. Se aplica a programas informáticos, obras de arte, cultura, ciencia, o cualquier tipo de obra o trabajo creativo que sea regido por el derecho de autor.

Los programas publicados sin copyleft vienen con permiso de redistribución y modificación, como así también con el permiso de agregarle restricciones. Si un programa es libre pero no tiene copyleft, es posible que algunas copias o modificaciones no sean libres en absoluto.

El término surge en las comunidades de software libre como un juego de palabras en torno a copyright: «derecho de autor», en inglés (literalmente «derecho de copia») con otro sentido, el de left: pretérito del verbo dejar o permitir (literalmente «dejar copiar»), así como izquierda, en contraste con right, que es derecho. Se considera que una licencia libre es copyleft cuando, además de otorgar permisos de uso, copia, modificación y redistribución de la obra protegida, contiene una cláusula que dispone una licencia similar o compatible a las copias y a las obras derivadas.

Sus partidarios lo proponen como alternativa a las restricciones que imponen las prácticas tradicionales de los editores y de la industria del entretenimiento al ejercer los derechos patrimoniales que detienen y gestionan para los autores, a la hora de autorizar hacer, modificar y distribuir copias de una obra determinada. Se pretende así ofrecerle a un autor la posibilidad de liberar una obra, escogiendo una licencia libre que permita su utilización, copia, modificación y redistribución, al mismo tiempo que, mediante el copyleft, se garantiza que se preserven estas libertades para cualquier receptor de una copia, o de una versión derivada.

Pese a que hoy en día el concepto se aplica a una amplia variedad de campos como la producción literaria o la cinematográfica, su origen se encuentra en la década de los años setenta en el incipiente desarrollo de software para la todavía embrionaria industria informática.

Por aquel entonces Richard Stallman estaba elaborando un intérprete de Lisp que interesó a la compañía Symbolics, este accedió a proporcionarles una versión del intérprete bajo dominio público, sin restricciones iniciales. Más tarde, la empresa amplió y mejoró el software original, pero cuando Stallman quiso acceder a dichas modificaciones, la compañía se negó.

Fue entonces, en 1984, cuando Stallman decidió ponerse a trabajar para erradicar este tipo de comportamiento, al que bautizó con el nombre de «acaparamiento del software» (software hoarding).

Como a Stallman le pareció poco viable a corto plazo eliminar las leyes del copyright así como las injusticias que consideraba provocadas por su perpetuamiento, decidió trabajar dentro del marco legal existente y creó así su propia licencia de derechos de autor, la Licencia Pública General de GNU (GPL). Según el proyecto GNU:

La forma más simple de hacer que un programa sea libre es ponerlo en el dominio público, sin derechos reservados. Esto le permite compartir el programa y sus mejoras a la gente, si así lo desean. Pero le permite a gente no cooperativa convertir el programa en software privativo. Ellos pueden hacer cambios, muchos o pocos, y distribuir el resultado como un producto privativo. Las personas que reciben el programa con esas modificaciones no tienen la libertad que el autor original les dio; el intermediario se las ha quitado. En el proyecto GNU, nuestro objetivo es el dar a todo usuario la libertad de redistribuir y cambiar software GNU. Si los intermediarios pudieran quitar esa libertad, nosotros tendríamos muchos usuarios, pero esos usuarios no tendrían libertad. Así en vez de poner software GNU en el dominio público, nosotros lo protegemos con Copyleft. Copyleft dice que cualquiera que redistribuye el software, con o sin cambios, debe dar la libertad de copiarlo y modificarlo más. Copyleft garantiza que cada usuario tiene libertad. Firmado Richard Stallman.

Por primera vez se recogía el derecho a que el titular de los derechos de autor pudiera transferir de forma permanente y a obras derivadas surgidas, el máximo número de derechos posible a aquellos que reciban una copia del programa. Es decir, impedir jurídicamente al material ofrecido en estos términos que en un futuro se pueda apropiar parte de él a derechos de autor. Aunque es la primera licencia copyleft, será posteriormente, con nuevas licencias inspiradas en esta y con la popularización del software libre cuando se empezaría a hacer frecuente este término.

En el año 2006 el término Copyleft fue recogido por primera vez en una sentencia judicial. La SGAE española demandó a la Asociación Cultural Ladinamo en reclamación de comunicación pública de música que se emitía en su local. El Juzgado de lo Mercantil nº 5 de Madrid absolvió a Ladinamo de la reclamación de la SGAE ya que la misma solo utilizaba música Copyleft.

Richard Stallman

Richard Matthew Stallman (nacido en Manhattan, Nueva York, 16 de marzo de 1953), con frecuencia abreviado como «rms»,​ es un programador estadounidense y fundador del movimiento por el software libre en el mundo.

Entre sus logros destacados como programador se incluye la realización del editor de texto GNU Emacs, el compilador GCC,3​ y el depurador GDB,4​ bajo la rúbrica del Proyecto GNU. Sin embargo, es principalmente conocido por el establecimiento de un marco de referencia moral, político y legal para el software libre, un modelo de desarrollo y distribución alternativo al software propietario. Es también inventor del concepto de copyleft (aunque no del término), un método para licenciar software de tal forma que su uso y modificación permanezcan siempre libres y queden en la comunidad de usuarios y desarrolladores.

En 1971, siendo estudiante de primer año de Física en la Universidad Harvard, Stallman se convirtió en un hacker del Laboratorio de Inteligencia Artificial del Instituto Tecnológico de Massachusetts (MIT). En los años 1980, la cultura hacker que constituía la vida de Stallman empezó a disolverse bajo la presión de la comercialización en la industria del software. En particular, otros hackers del laboratorio de IA fundaron la compañía Symbolics, la cual intentaba activamente reemplazar el software libre del Laboratorio con su propio software privativo.

Entre 1982 y 1983, Stallman por sí solo duplicó los esfuerzos de los programadores de Symbolics para impedir que adquirieran un monopolio sobre los ordenadores del laboratorio. Por ese entonces, sin embargo, él era el último de su generación de hackers en el laboratorio. Se le pidió que firmara un acuerdo de no divulgación (non-disclosure agreement) y que llevara a cabo otras acciones que él consideró traiciones a sus principios. El 27 de septiembre de 1983 Stallman anunció en varios grupos de noticias de Usenet el inicio del proyecto GNU, que perseguía crear un sistema operativo completamente libre.

Al anuncio inicial del proyecto GNU siguió, en 1985, la publicación del Manifiesto GNU, en el cual Stallman declaraba sus intenciones y motivaciones para crear una alternativa libre al sistema operativo Unix, al que denominó GNU (GNU No es Unix), pronunciado de forma parecida a ñu, en inglés (de ahí los dibujos-logotipos que lo representan). Poco tiempo después fundó la organización sin ánimo de lucro Free Software Foundation para coordinar el esfuerzo. Inventó el concepto de copyleft, que fue utilizado en la Licencia Pública General GNU (conocida generalmente como la «GPL») en 1989. La mayor parte del sistema GNU, excepto el núcleo, se completó aproximadamente al mismo tiempo. En 1991, Linus Torvalds liberó el núcleo Linux bajo los términos de la GPL, completando un sistema GNU completo y operativo, el sistema operativo GNU/Linux.

Stallman insiste en la utilización del término «software libre», y no código abierto, porque lo importante es la libertad del usuario que se pierde. También busca que se utilice GNU/Linux y no solamente Linux cuando se habla del sistema operativo. Para Stallman el software libre no quiere decir gratis y considera que en la enseñanza no debería utilizarse software propietario.

Las motivaciones políticas y morales de Richard Stallman, lo han convertido en una figura controvertida. Muchos programadores influyentes que se encuentran de acuerdo con el concepto de compartir el código, difieren con las posturas morales, filosofía personal o el lenguaje que utiliza Stallman para describir sus posiciones. Un resultado de estas disputas condujo al establecimiento de una alternativa al movimiento del software libre, el movimiento de código abierto.

Que las empresas tengan especial influencia en la política significa que la democracia está enferma. El propósito de la democracia es asegurarse de que los ricos no tengan una influencia proporcional a su riqueza. Y si tienen más influencia que tú o que yo, eso significa que la democracia está fallando. Las leyes que se obtienen de esta forma no tienen autoridad moral, sino la capacidad de hacer daño.

Stallman tiene una posición no remunerada como investigador en el MIT.​ Ha declarado ser “un ateo de ascendencia judía”​ y a menudo lleva un botón que dice “Acuse a Dios”.​ Niega ser un anarquista a pesar de su cautela de algunas leyes y el hecho de que ha “defendido enérgicamente la privacidad de los usuarios y su propia visión de la libertad del software”.​ Stallman disfrazado de St.IGNUcius, un «santo de la Iglesia de Emacs», su aureola es un disco duro antiguo.

Stallman se refiere a los teléfonos móviles como “dispositivos portátiles de vigilancia y seguimiento”​ y dice que se niega a poseer un teléfono celular hasta que exista uno que se ejecute por completo en software libre. También evita el uso de una tarjeta-llave para entrar en su oficina,​ ya que estos sistemas llevan un seguimiento de cada lugar y hora en que alguien entra en el edificio. A excepción de unos pocos sitios web relacionados con su trabajo en GNU y la FSF, por lo general no navega por la web directamente desde su ordenador personal con el fin de evitar ser conectado con su historial de navegación. En su lugar, usa wget o programas similares que recuperan el contenido de los servidores web y luego envían el contenido a su correo electrónico.

Su imagen descuidada y sus manías extravagantes le han hecho ser blanco de numerosos chistes y bromas, llegando a aparecer en tiras cómicas.​

En la actualidad, Stallman se encarga de difundir la ideología GNU en todo el mundo mediante charlas y conferencias. Habla español de manera fluida y ha dado numerosas conferencias en países de habla hispana. Durante sus charlas aparece con una segunda personalidad que corresponde a San Ignucio con la que suele bendecir las computadoras de las personas.

Algunos ejemplos de sus luchas:

En 1999 promovió la creación de una enciclopedia libre, la GNUPedia, considerada como un antecedente directo de Wikipedia. El proyecto resultante se retiró finalmente en favor de esta última, que tenía objetivos similares y estaba contando con un éxito mayor.

En agosto de 2006, en reuniones con el gobierno del estado indio de Kerala, convenció a los funcionarios de desprenderse del software propietario en escuelas estatales. Esto dio lugar a la decisión histórica de migrar todas las computadoras en 12.500 escuelas secundarias de Windows a un sistema operativo de software libre.

Stallman ha participado en protestas contra el uso de patentes de software,​ DRMs,​ y software propietario. Linus Torvalds ha criticado a Stallman por lo que considera un pensamiento “de blanco o negro”.

Linux

Linux es un núcleo de libre distribución y mayormente libre semejante al núcleo de Unix. Linux es uno de los principales ejemplos de software libre y de código abierto.​ Linux está licenciado bajo la GPL v2 y a mayor parte del software incluido en el paquete que se distribuye en su sitio web es software libre. 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.

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 usarlos con el nuevo núcleo de sistema.​ A día de hoy miles de programadores de todo el mundo contribuyen en su desarrollo.

Aunque en el archivo Léeme de Linux se indica que es un clon del sistema operativo Unix,9​ Linux no es un sistema operativo en sí mismo. Es un núcleo compatible con el de Unix. Inicialmente se publicó como un núcleo semejante a Minix4​ y a día de hoy sigue incluyendo el mismo tipo de software: controladores, planificadores, gestores de memoria virtual y más funcionalidad habitual en un núcleo de sistema operativo. Linux se ejecuta en el nivel con más privilegios del modo protegido, el que corresponde al núcleo del sistema operativo. 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 los sistemas micronúcleo la cantidad de funcionalidad situada en espacio de usuario es aún mayor, como es el caso de Darwin y de GNU Hurd cuyos núcleos son una versión de Mach o el caso de Minix, sistema operativo en el que se basó inicialmente Linux.

Las distribuciones son una recopilación de software que incluyen el núcleo Linux y el resto de programas necesarios para completar un sistema operativo.10​ De esta manera, Linux no es sinónimo del sistema operativo GNU/Linux, perteneciendo éste último a una clase de distribuciones que 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 más software adicional como entornos gráficos o navegadores web. El creador de la distribución también añade su aportación con programas que permiten instalar y desinstalar programas (gestores de paquetes) o configuraciones iniciales de los distintos programas incluidos en la distribución. Otro ejemplo de distribuciones muy conocido serían las de Android, que incluyen el núcleo Linux junto con el entorno de ejecución y herramientas del proyecto AOSP de Google.

En abril de 1991,​ Linus Torvalds, de 21 años, empezó a trabajar en unas simples ideas para un núcleo de un sistema operativo. Comenzó intentando obtener un núcleo de sistema operativo gratuito similar a Unix que funcionara con microprocesadores Intel 80386. Para ello tomó como base al sistema Minix (un clon de Unix) e hizo un núcleo monolítico compatible que inicialmente requería software de Minix para funcionar. El 26 de agosto de 1991 Torvalds escribió en el grupo de 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…”

  • El 14 de marzo de 1994, salió Linux 1.0.0, que constaba de 176.250 líneas de código.
  • 19 de mayo de 2008: La Free Software Foundation publica Linux-libre, una bifurcación de Linux que no incluye en su distribución ningún BLOB privativo, como firmware de dispositivos.
  • 20 de octubre de 2010: se lanzó Linux 2.6.36 con 13.499.457 líneas de código….

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. A diferencia de los núcleos monolíticos tradicionales, los controladores también pueden ser pre-volcados (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 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 motivo de una famosa y acalorada discusión entre Linus Torvalds y Andrew S. Tanenbaum.

Linux-libre

Linux-libre es un proyecto que publica y mantiene versiones modificadas del núcleo Linux a las que se les ha quitado todo el software que no incluye código fuente, así como el código fuente ofuscado o el que esté publicado mediante licencias privativas. Las partes que no tienen código fuente son llamadas blobs binarios y corresponden a firmware privativo.

Estos fragmentos privativos o firmwares incluidos en Linux sirven para inicializar los dispositivos, o aplicarles parches que solventan fallas del hardware que no pudieron ser corregidas antes de ser puestos a disposición de los usuarios. El firmware es cargado en el dispositivo por el controlador, formando parte de éste y por consiguiente del núcleo. Es conocido que dichos firmwares contienen vulnerabilidades que pueden afectar a Linux pese a usar controladores libres, como es el caso del Intel Management Engine.​ En algunos casos sin el firmware no es posible hacer funcionar el dispositivo, quedando éste inutilizado. Esto lleva a que hay menor cantidad de hardware compatible con Linux-libre que con Linux. Al hablar de dispositivos se incluye también la CPU de la computadora. Esto significa que las computadoras pueden quedar totalmente inservibles si su microprocesador también requiere de un firmware corrector para funcionar adecuadamente.​

Linux-libre es el núcleo recomendado por la Free Software Foundation4​ y una pieza principal de las distribuciones GNU totalmente libres. Linux-libre es mantenido y publicado por la Fundación Software Libre América Latina (FSFLA).

Existen proyectos para realizar implementaciones libres de dichos firmwares como libreboot, encargado de implementar BIOS y UEFI para las placas base de los computadores siempre que sea posible.

La eliminación de controladores y firmwares privativos del núcleo imposibilita el uso de Linux-libre con el hardware que los necesite. En los casos en los que sea posible, se incluye controladores libres como sustitutos. Entre otros, las tarjetas de sonido, de vídeo, de red y de red inalámbrica quedan sin servicio sin un firmware y controlador disponibles.

Desgraciadamente, aún teniendo controladores libres, éstos a menudo requieren que los fabricantes de dispositivos hardware publiquen los firmwares necesarios para poder inicializar sus dispositivos.​ Sin estos firmwares no pueden funcionar. También existe la posibilidad de que requieran ser firmados digitalmente, por lo que no es posible realizar un firmware propio mediante ingeniería inversa y cargarlo en el chip, ya que éste repudiará cualquier binario sin firmar. Adicionalmente las compañías pueden poner restricciones de distribución del firmware por lo que tampoco puede ser incluido en Linux ni en ningún paquete adicional hecho por la distribución, al poder ser considerado parte integrante de un controlador privativo por parte del fabricante del dispositivo.8​ Este tipo de restricciones entorpecen el desarrollo de controladores libres además de dejar el dispositivo inhabilitado.​ Estos dispositivos nunca serán compatibles con Linux-libre, salvo que el código fuente de dichos firmwares sea publicado y se permita a los desarrolladores de Linux-libre y a sus usuarios firmar los binarios generados a partir de dicho código fuente.

Trisquel GNU/Linux es una versión del sistema operativo GNU que utiliza el kernel Linux-libre. Los principales objetivos del proyecto son la producción de un sistema operativo totalmente libre, fácil de usar, completo, y con buen soporte de idiomas. Las versiones actuales incluyen traducciones para los idiomas Gallego, Inglés, Español, Catalán, Vasco, Chino, Francés, Indio y Portugués.2​

El nombre del proyecto proviene del símbolo celta trisquel, formado por tres espirales entrelazadas. El logotipo de la distribución consiste en un trisquel compuesto por tres remolinos de Debian, como muestra de reconocimiento al proyecto en el cual está basado.

El proyecto nació en 2004 con el patrocinio de la Universidad de Vigo, y fue oficialmente presentada en abril de 2005 con Richard Stallman, fundador del proyecto GNU, como invitado especial.3​ Fue inicialmente desarrollada como una distribución basada en Debian, pero los repositorios de origen se cambiaron por los de Ubuntu con la publicación de la versión 2.0, en el verano de 2008. El proyecto hospeda sus propios repositorios, que derivan de los “main” y “universe” de Ubuntu, pero con todo el software privativo eliminado. Las diferencias incluyen la eliminación de todos los paquetes no libres y la sustitución del kernel linux original por la versión sin firmware privativo linux-libre, y la adición de diversos paquetes.

El 11 de diciembre de 2008, Trisquel GNU/Linux fue incluida por la Free Software Foundation en la lista de distribuciones GNU/Linux 100% libres4​ disponibles en el website de GNU, siguiendo el proceso de verificación para asegurar el compromiso del equipo de desarrollo de Trisquel y su comunidad para promover y distribuir tan solo software 100% libre.

Linus Torvalds

Linus Benedict Torvalds (28 de diciembre de 1969, Helsinki, Finlandia) es un ingeniero de software finlandés estadounidense, conocido por iniciar y mantener el desarrollo del “kernel” (en español, núcleo) Linux, basándose en el sistema operativo libre Minix creado por Andrew S. Tanenbaum y en algunas herramientas, varias utilidades y los compiladores desarrollados por el proyecto GNU. Actualmente Torvalds es responsable de la coordinación del proyecto. Pertenece a la comunidad sueco-parlante de Finlandia.

Sus padres tomaron su nombre de Linus Pauling (estadounidense, Premio Nobel de Química 1954). Comenzó sus andanzas informáticas a los 11 años cuando su abuelo, un matemático y estadístico de la Universidad, compró uno de los primeros microordenadores Commodore en 1980 y le pidió ayuda para usarlo.

A finales de los años 80 tomó contacto con los ordenadores IBM, PC y en 1991 adquirió un ordenador con procesador modelo 80386 de Intel.

En 1988 fue admitido en la Universidad de Helsinki, donde estudio Ciencias de la Computación. Ese mismo año el profesor Andrew S. Tanenbaum saca a la luz el S.O. Minix con propósitos didácticos. Dos años después, en 1990, Torvalds empieza a aprender el lenguaje de programación C en su universidad.

A la edad de 21 años, con un año de experiencia programando (en C), ya conocía lo suficiente del sistema operativo Minix como para tomar prestadas algunas ideas y empezar un proyecto personal. Basándose en Design of the Unix Operating System, publicado por Maurice J. Bach en 1986, crearía una implementación que ejecutará cualquier tipo de programa, pero sobre una arquitectura de ordenadores compatibles, IBM/PC.

Este proyecto personal desembocó el 5 de octubre de 1991 con el anuncio​ de la primera versión de Linux capaz de ejecutar BASH (Bourne Again Shell) y el compilador conocido como GCC (GNU Compiler Collection).

En enero de 1992 se adoptó la Licencia Pública General (GPL) para Linux. Esta añade libertades de uso a Linux totalmente opuestas a las del software propietario, permitiendo su modificación, redistribución, copia y uso ilimitado. Este modelo de licencia facilita lo que es conocido como el modelo de desarrollo de bazar, que ha dado estabilidad y funcionalidad sin precedentes a este sistema operativo.

En 1997 Linus Torvalds recibe los premios 1997 Nokia Foundation Award de Nokia y Lifetime Achievement Award at Uniforum Pictures. Ese mismo año finaliza los estudios superiores (1988 – 1997) tras una década como estudiante e investigador en la Universidad de Helsinki, coordinando el desarrollo del núcleo del S.O. desde 1992.

Torvalds trabajó en Transmeta desde febrero de 1997 hasta junio de 2003. Actualmente trabaja para el Open Source Development Labs en Beaverton, Oregón. Solo el 2% del código del Linux actual está escrito por él, pero, además de su paternidad, en su persona sigue descansando la dirección de la gestión núcleo del sistema operativo.

Torvalds posee la marca registrada “Linux” y supervisa4​ el uso de la marca a través de la organización sin ánimo de lucro Linux International.

En Finlandia, Linus Torvalds, por entonces estudiante de Ciencias de la Computación de la Universidad de Helsinki, decidió realizar la entonces cuantiosa inversión de 3500 dólares estadounidenses para adquirir un nuevo ordenador con el microprocesador 80386 de Intel, el cual funcionaba a 33 MHz y tenía 4MB de memoria RAM. El pago lo realizaría a plazos, pues no disponía de tal cantidad de dinero en efectivo.

Normalmente, este ordenador lo usaba para tener acceso por línea telefónica a la red informática de su Universidad, pero debido a que no le gustaba el sistema operativo con el cual trabajaba, denominado Minix, decidió crear uno él mismo. Inicialmente, escribió un programa con lenguaje de bajo nivel prescindiendo de Minix. En los primeros intentos, consiguió arrancar el ordenador y ejecutar dos procesos que mostraban la cadena de caracteres “AAAAABBBBB”. Uno lo utilizaría para leer desde el módem y escribir en la pantalla, mientras que el otro escribiría al módem y leería desde el teclado. Inicialmente, el programa arrancaba desde un disquete.

La siguiente necesidad que tuvo fue la de poder descargar y subir archivos de su universidad, pero para implementar esta funcionalidad en el software emulador era necesario crear un controlador de disco. Así que después de un trabajo continuo y duro, creó un controlador compatible con el sistema de archivos de Minix. En ese momento, se percató de que estaba creando algo más que un simple emulador de terminal, así que, emprendió la tarea de crear un sistema operativo partiendo de cero.

De forma privada, Linus nombraba Linux a su nuevo sistema, pero cuando decidió hacer una presentación pública pensó que era demasiado egocéntrico llamarlo así y propuso llamarlo Freax, aunque después se le siguió conociendo como Linux, práctica que perdura hasta ahora.

Distribución Linux

Una distribución Linux (coloquialmente llamada distro) es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo específico de usuarios, dando así origen a ediciones domésticas, empresariales y para servidores. Por lo general están compuestas, total o mayoritariamente, de software libre, aunque a menudo incorporan aplicaciones o controladores propietarios.

Además del núcleo Linux, las distribuciones incluyen habitualmente las bibliotecas y herramientas del proyecto GNU y el sistema de ventanas X Window System. Dependiendo del tipo de usuarios a los que la distribución esté dirigida se incluye también otro tipo de software como procesadores de texto, hoja de cálculo, reproductores multimedia, herramientas administrativas, etc. En el caso de incluir paquetes de código del proyecto GNU, se denomina distribución GNU/Linux.

Existen distribuciones que están soportadas comercialmente, como Fedora (Red Hat), openSUSE (Novell), Ubuntu (Canonical Ltd.) y Mandriva; distribuciones mantenidas por la comunidad, como Debian y Gentoo; y distribuciones que no están relacionadas con ninguna empresa o comunidad, como es el caso de Slackware.

Las distribuciones Linux comenzaron a surgir poco después de que el núcleo Linux fuera utilizado por otros programadores además de los creadores originales. Existía mayor interés en desarrollar un sistema operativo que en desarrollar aplicaciones, interfaces para los usuarios o un paquete de software conveniente.

Los usuarios vieron en Linux una alternativa a los sistemas operativos DOS, Microsoft Windows en la plataforma PC, Mac OS en Apple Macintosh y las versiones de uso bajo licencia (de pago) de UNIX. La mayoría de estos primeros usuarios se habían familiarizado con el entorno UNIX en sus trabajos o centros de estudios. Estos adoptaron GNU/Linux por su estabilidad, reducido (o nulo) coste y por la disponibilidad del código fuente del software incluido.

Las distribuciones eran originalmente una cuestión de comodidad para el usuario medio, evitándole la instalación (y en muchos casos compilación) por separado de paquetes de uso común, pero hoy se han popularizado incluso entre los expertos en este tipo de sistemas operativos (UNIX/Linux). Si bien, históricamente, Linux estuvo mejor posicionado en el mercado de los servidores, distribuciones centradas en la facilidad de instalación y uso, tales como Fedora, Mandriva, OpenSuSE, Knoppix y Ubuntu, entre otras, han logrado una mayor aceptación en el mercado doméstico.

Estos sistemas operativos puede funcionar tanto en entorno gráfico como en modo consola. La consola es común en distribuciones para servidores, mientras que otras distribuciones usan la interfaz gráfica que está orientada al usuario final tanto de hogar como empresarial de fácil uso. Asimismo, también existen los entornos de escritorio, que son un conjunto de programas conformado por ventanas, iconos y muchas aplicaciones que facilitan la utilización del computador. Los escritorios más populares en GNU/Linux son: GNOME, KDE SC, LXDE, Xfce, Unity, MATE y Cinnamon. Estos escritorios también pueden ser instalados a selección al arrancar antes de entrar en la sesión, una vez instalados en tu distribución aunque este trajera otro entorno prederterminado, aunque para evitar posible problemas, es sabido que existen distribuciones o derivadas de estas, que ya implementan en su instalación, uno u otros escritorio gráfico. Como ves el concepto de sistema operativo si vienes de Windows o Apple, cambia en su concepto al usar distribuciones Linux. Pero todavía hay más diferencias, sigue leyendo.

Las distribuciones están divididas en «paquetes». Cada paquete contiene una aplicación específica o un servicio. Ejemplos de paquetes son una biblioteca para manejar el formato de imagen PNG, una colección de tipografías o un navegador web.

El paquete es generalmente distribuido en su versión compilada y la instalación y desinstalación de los paquetes es controlada por un sistema de gestión de paquetes en lugar de un simple gestor de archivos.En este caso Cada paquete elaborado para ese sistema de paquetes contiene meta-información tal como fecha de creación, descripción del paquete y sus dependencias. El sistema de paquetes analiza esta información para permitir la búsqueda de paquetes, actualizar las librerías y aplicaciones instaladas, revisar que todas las dependencias se cumplan y obtenerlas si no se cuenta con ellas de manera automática.

En pocas palabras, son sistemas de paquetes por ejemplo para instalar programas, que difieren de la costumbre del .exe de Windows, por ejemplo.

Algunos de los sistemas de paquetes más usados son:

  • RPM, creado por Red Hat y usado por un gran número de distribuciones de Linux, es el formato de paquetes del Linux Standard Base.
  • Deb, paquetes Debian, originalmente introducidos por Debian, pero también utilizados por otros como Knoppix y Ubuntu.

Son las Distribuciones Linux, de las que se basan la principales variantes de distribuciones linux existentes, aunque las hay más independientes como Arch Linux o Slackware, por poner un ejemplo, pero que no serán mencionada ni para el hogar, ni para el uso profesional, en cuanto a lo que aquí nos implica aprender, estas distribuciones no tienen sistemas de paquetes de las distribuciones de las que ramifican la mayor parte de las existentes, y las que vas a encontrar mayormente en el hogar o en estaciones de trabajo, servidores, etc. Estas últimas que podríamos decir independientes, tienen sus propios sistemas de paquetes, etc.

La diversidad de distribuciones es más grande lo que imaginamos, así como sistemas de paquetes, etc. Tienes que ver las distribuciones linux, como positivas en la hora de elegir que sistema de paquete utilizar, así como que escritorio, y que programas lleva ya incluidos, etc…, no como un todo como otros sistemas Windows o Apple. Y las distribuciones que más programas controlan y más fama tienen son las derivadas de .rpm y deb. Generalizando. Pero como siempre uno es libre incluso de crear su propia distribución si disponen de los conocimientos adecuados, o de instalar en una distribución todo lo que quieras, pero creo que una distribución preparada para .deb, no debería de instalar .rpm, aunque ahora mismo desconozco si hay alguna herramienta que te lo permita, o convertir formatos, pero como digo cada distribución está diseñada para las dependencia y sistemas de archivos concreto.

También decir que desde comandos, puedes hacer funcionar cualquier distribución, con independencia del escritorio gráfico que utilices, sólo has de saber si utiliza .rpm o .deb, para saber que clase de comandos utilizar.

De momento este capítulo es solo para coger una idea para todo aquel iniciado, para formar un contexto de la evolución y de los que son los sistemas operativos Linux o GNU/Linux.

Algunas Distribuciones Populares

Entre las distribuciones Linux más populares para demostrar la diversidad:

  • Arch Linux, una distribución basada en el principio KISS, con un sistema de desarrollo continuo entre cada versión (no es necesario volver a instalar todo el sistema para actualizarlo).
  • Canaima, es un proyecto socio-tecnológico abierto, construido de forma colaborativa, desarrollado en Venezuela y basado en Debian.
  • CentOS, una distribución creada a partir del mismo código del sistema Red Hat pero mantenida por una comunidad de desarrolladores voluntarios.
  • Chakra project, una popular distribución para escritorio, inicialmente basada en Arch Linux, actualmente se encuentra en un desarrollo independiente.
  • Debian, una distribución mantenida por una red de desarrolladores voluntarios con un gran compromiso por los principios del software libre.
  • Dragora y Trisquel, que van adquiriendo importancia entre las distribuciones que sólo contienen software libre.
  • Elementary OS Es una distribución Linux basada en Ubuntu 12.04
  • Fedora, una distribución lanzada por Red Hat para la comunidad.
  • Fuduntu, distribución ligera y rápida basada en Fedora y orientada al uso en notebooks.
  • Gentoo, una distribución orientada a usuarios avanzados, conocida por la similitud en su sistema de paquetes con el FreeBSD Ports, un sistema que automatiza la compilación de aplicaciones desde su código fuente.
  • Huayra, distribución Educativa, desarrollada por el estado Argentino, desde el Anses /Programa Conectar Igualdad. Está basada en Debian Jessie con entorno de escritorio MATE.
  • Knoppix, fue la primera distribución live en correr completamente desde un medio extraíble. Está basada en Debian.
  • Kubuntu, la versión en KDE de Ubuntu.
  • Linux Mint, una popular distribución derivada de Ubuntu.
  • Mageia, creada por ex trabajadores de Mandriva, muy parecida a su precursor.
  • Mandriva, mantenida por la compañía francesa del mismo nombre, es un sistema popular en Francia y Brasil. Está basada en Red Hat.
  • openSUSE, originalmente basada en Slackware es patrocinada actualmente por la compañía SUSE (Micro Focus International).
  • PCLinuxOS, derivada de Mandriva, pasó de ser un pequeño proyecto a una popular distribución con una gran comunidad de desarrolladores.
  • Puppy Linux, versión para equipos antiguos o con pocos recursos que pesa unos 130 MiB.
  • Red Hat Enterprise Linux, derivada de Fedora, es mantenida y soportada comercialmente por Red Hat.
  • Slackware, una de las primeras distribuciones Linux y la más antigua en funcionamiento. Fue fundada en 1993 y desde entonces ha sido mantenida activamente por Patrick J. Volkerding.
  • Slax, es un sistema Linux pequeño, moderno, rápido y portable orientado a la modularidad. Está basado en Slackware.
  • Tuquito Basada en Ubuntu, distribución desarrollada en Argentina con buenas interfaces gráficas y drivers universales. Recomendada para usuarios iniciales.
  • Trisquel Distribución 100 % libre, utiliza el núcleo Linux-Libre y es apropiada para usuarios finales.
  • Ubuntu, una popular distribución para escritorio basada en Debian y mantenida por Canonical.
  • Zorin OS, distribución basada en Ubuntu y orientada a los usuarios de Windows que quieren pasar a Linux de la forma más fácil y sencilla posible.

El sitio web DistroWatch ofrece una lista de las distribuciones más populares; la lista está basada principalmente en el número de visitas, por lo que no ofrece resultados muy confiables acerca de la popularidad de las distribuciones.

Distribuciones Especializadas

Otras distribuciones se especializan en grupos específicos:

  • 64 Studio, una distribución basada en Debian diseñada para la edición multimedia.
  • ABC GNU/Linux, distribución para la construcción de clusters Beowulf desarrollado por Iker Castaños Chavarri, Universidad del País Vasco.
  • Kali Linux, distribución basada en Debian y especializada en seguridad de red.
  • BackTrack, distribución basada en Ubuntu y especializada en seguridad de red.
  • WiFiSlax, distribución basada en Slackware y especializada en seguridad de red.
  • Wifiway, distribución basada en Ubuntu y especializada en seguridad de red.
  • Debian Med, Debian Med es una distro orientada a la práctica médica y a la investigación bio-médica.
  • Edubuntu, un sistema del proyecto Ubuntu diseñado para entornos educativos.
  • Emmabuntüs, es diseñada para facilitar el reacondicionamiento de computadores donados a comunidades Emaús.
  • Fedora Electronic Lab, distribución basada en Fedora y especializada en el desarrollo electrónico.
  • GeeXbox, distribución rápida y ligera orientada a los centros multimedia.
  • ICABIAN, en formato Live USB está pensada para usuarios técnicos ya que contiene una gran variedad de programas para la ciencia e ingeniería.
  • LULA, distribución académica para universidades. Proyecto LULA.
  • mkLinux, Yellow Dog Linux o Black Lab Linux, orientadas a usuarios de Macintosh y de la plataforma PowerPC.
  • Musix, una distribución de Argentina destinada a los músicos.
  • MythTV, orientada para equipos multimedia o grabadores de vídeo digital.
  • OpenWrt, diseñada para ser empotrada en dispositivos enrutadores.
  • Scientific Linux, distribución para desarrollo científico basada en Red Hat.
  • UberStudent, distribución dedicada a la educación y basada en Ubuntu.

 Distribuciones Especializadas para el Hardware

Aquí entrarían por ejemplo las distribuciones que se especializan en sacar el mejor rendimiento al hardware, para hacerlas funcionar fluidamente, por lo que puedes deducir que estamos hablando de un hardware que muchas veces es económico u de baja prestaciones comparadas con una computadora media del mercado.

  • LUBUNTU GNU/Linux, es una distribución que te permitirá sacar partido de computadoras incluso antiguas a partir de sobre el año 2000.
  • RaspEX es una de las recientes distribuciones para la Rasperry PI 3, que como sabemos es un hardware económico y potente en posibilidades, pero con una distribución, o un sistema operativo de una computadora normal, quizás no sólo no llegue a funcionar, sino que si lo hace irá lenta. Por lo que todas las distribuciones dedicadas a ser utilizadas especialmente para la Raspberry PI, son exclusivamente para sacar el máximo partido a este hardware, como ocurre con RaspEX.