Introducción a Linux
Linux es una familia de sistemas operativos de código abierto similar a Unix basada en el kernel de Linux, y el kernel del sistema operativo fue publicado por primera vez el 17 de septiembre de 1991 por Linus Torvalds . Normalmente, Linux se empaqueta como la distribución de Linux, que contiene las bibliotecas de soporte, el software y el kernel del sistema, varios de los cuales son ofrecidos por el Proyecto GNU. Varias distribuciones de Linux utilizan el término 'Linux' en el título, pero la Free Software Foundation utiliza el 'GNU/Linux' título para centrarse en la necesidad del software GNU, lo que provocó algunas controversias.
Las distribuciones de Linux famosas son Ubuntu, Fedora Linux y Debian, la última de las cuales se compone de varias modificaciones y distribuciones diferentes, incluidas Xubuntu y Lubuntu. Las distribuciones comerciales son SUSE Linux Enterprise y Red Hat Enterprise Linux. Las distribuciones de escritorio de Linux son sistemas de ventanas como Wayland o X11 y entornos de escritorio como KDE Plasma y GNOME.
- Originalmente, Linux fue diseñado para computadoras personales basadas en la arquitectura Intel x86, pero desde entonces se ha trasladado a más entornos que otros sistemas operativos.
- Incluyendo Android, Linux tiene la base instalada más grande de todos los sistemas operativos de propósito general debido al control de Android basado en Linux sobre los teléfonos inteligentes a partir de mayo de 2022.
- Sin embargo, Linux es utilizado por solo alrededor del 2,6% de las computadoras de escritorio en noviembre de 2022.
- Además, Linux se ejecuta en muchos sistemas integrados, es decir, dispositivos cuyo sistema operativo generalmente está diseñado en el firmware y está extremadamente personalizado para el sistema.
- Incluye naves espaciales (el rover Perseverance, la cápsula Dragon Crew y el cohete Falcon 9), automóviles (Toyota, Hyundai, Mercedes-Benz, Audi y Tesla), televisores (LG y Samsung Smart TV), consolas de videojuegos, dispositivos domésticos inteligentes, controles de automatización y enrutadores.
Linux es uno de los ejemplos más destacados de colaboración de software libre y de código abierto. El código fuente puede ser distribuido, modificado y utilizado de forma no comercial o comercial por cualquier persona bajo las condiciones de sus respectivas licencias, como la GNU GPL (Licencia Pública General). Por ejemplo, el kernel de Linux tiene licencia GPLv2.
Historia del sistema operativo Linux
El sistema operativo basado en Unix fue implementado y concebido en 1969 en Campana de AT&T laboratorios de Joe Ossanna, Douglas Mcllroy, Dennis Ritchie y Ken Thompson en los Estados Unidos. Publicado por primera vez en 1971, Unix estaba escrito íntegramente en lenguaje ensamblador, como era la práctica básica en ese momento. Dennis Ritchie lo actualizó en lenguaje C de manera pionera y clave en 1973. La disponibilidad de una implementación del lenguaje Unix de alto nivel hizo que su portabilidad a distintas plataformas informáticas fuera conveniente.
Torvalds se registró en un curso de Unix mientras visitaba la Universidad de Helsinki en el otoño de 1990. El curso utilizó una minicomputadora MicroVAX ejecutando Ultrix, y uno de los textos necesarios fue Sistemas operativos: diseño e implementación de Andrews S. Tanenbaum. El libro de texto contenía una copia del sistema operativo MINIX de Tanenbaum. Fue junto con este curso que Torvalds se abrió inicialmente a Unix. Se interesó en los sistemas operativos en 1991. Frustrado por la licencia MINIX, que en ese momento lo limitaba únicamente al uso educativo, comenzó a trabajar en el kernel de su sistema operativo, que eventualmente se convirtió en el Kernel de Linux.
Torvalds inició el desarrollo del kernel de Linux en MINIX y también se utilizó en Linux el software escrito para MINIX. Más tarde, se cultivó Linux y luego apareció el desarrollo del kernel de Linux en los sistemas Linux. Además, las aplicaciones GNU reemplazaron todos los componentes de MINIX debido a que era beneficioso utilizar el código libre a través del Proyecto GNU con el nuevo sistema operativo; El código con licencia GNU GPL se puede volver a aplicar en otras funciones de la computadora siempre que también se publiquen bajo una licencia compatible o con la misma licencia.
Torvalds inició un cambio de su licencia actual, que prohibía la distribución comercial, a la GNU GPL. Los desarrolladores trabajaron para desarrollar elementos GNU con el kernel de Linux, creando un sistema operativo gratuito y completamente funcional.
El mantenedor principal del kernel de Linux es Greg Kroah-Hartman quien guía su desarrollo. El director ejecutivo de la Free Software Foundation es William John Sullivan , que a su vez admitía los componentes GNU. Las corporaciones y los individuos finalmente desarrollan componentes de terceros que no son GNU.
Los componentes de terceros se componen de una amplia cantidad de trabajo y pueden contener tanto bibliotecas y aplicaciones de usuario como módulos del kernel. La comunidad y los proveedores de Linux distribuyen y combinan el kernel, los componentes que no son GNU y los componentes GNU con software de administración de paquetes adicional al estilo de las distribuciones de Linux.
En entornos de producción, la adopción de Linux comenzó a despegar inicialmente a mediados de la década de 1990 en la comunidad de supercomputadoras en lugar de ser utilizado sólo por aficionados, donde organizaciones como la NASA comenzaron a reemplazar cada vez más sus costosas máquinas con grupos de computadoras de bajo costo que ejecutaban Linux. El uso comercial comenzó cuando IBM y Dell, perseguidos por Hewlett-Packard, comenzaron a brindar soporte a Linux para escapar del monopolio de Microsoft en el mercado de sistemas operativos de escritorio.
Los sistemas Linux se utilizan íntegramente en la informática actual, desde sistemas integrados hasta prácticamente cualquier supercomputadora, y se han asegurado una posición en instalaciones de servidores como la famosa pila de aplicaciones LAMP. El uso de distribuciones de Linux en escritorios empresariales y domésticos se ha ido desarrollando.
Además, las distribuciones de Linux se han hecho famosas en el mercado de las netbooks, con varios dispositivos funcionando con distribuciones de Linux personalizadas instaladas y Google publicando su ChromeOS desarrollado para netbooks.
Diseño del sistema operativo Linux
Varios desarrolladores de código abierto admiten que el kernel de Linux no fue desarrollado sino que evolucionó a partir de la selección natural. Un sistema basado en Linux es un sistema operativo compatible tipo Unix, que deriva gran parte de su diseño común de los principios creados en Unix durante las décadas de 1970 y 1980. Dicho sistema aplica el kernel de Linux, un kernel monolítico que administra sistemas de archivos, acceso a periféricos, redes y control de procesos. Los controladores de dispositivos se integran directamente con el kernel o se incluyen como módulos cargados mientras el dispositivo está activo.
Los componentes instalados del sistema Linux incluyen lo siguiente:
- A gestor de arranque , por ejemplo, systemd-boot, SYSLINUX, LILO y GNU GRUB. Es un programa que puede cargar el kernel de Linux en la memoria principal de la computadora al ser ejecutado por la computadora después de iniciar sesión en el firmware y cuando está encendido.
- Un entrar al programa , como el tradicional sysvinit y los más nuevos Upstart, OpenRC y systemd. Es el primer proceso anunciado por el kernel de Linux y la raíz del árbol de procesos. En otras palabras, cada proceso se abre desde el inicio. Inicia procesos como solicitudes de inicio de sesión y servicios del sistema (ya sea en modo terminal o gráfico).
- Se requiere la biblioteca estándar C para ejecutar programas C en un sistema que utiliza la biblioteca GNU C como estándar. Se han desarrollado alternativas como uClibc (desarrollada para uClinux), EGLIBC (bifurcación glibc utilizada por Debian una vez) y musl. Sin embargo, los dos primeros ya no se mantienen. Android usa su biblioteca C, que se conoce como Biónico .
- Los shells GUI son las interfaces de usuario más famosas en sistemas de escritorio, incluidos en amplios entornos de escritorio como Xfce, Pantheon, LXDE, Cinnamon, MATE, GNOME y KDE Plasma, aunque hay disponible una variedad de interfaces de usuario.
- Las interfaces de usuario más famosas funcionan con el concepto del sistema X Window, conocido como 'X' .
- Ofrece transparencia de red y permite que una aplicación gráfica activa en un sistema se muestre en otro en el que un usuario puede colaborar con la aplicación.
- Sin embargo, ciertas extensiones del sistema X Window no pueden funcionar en la red.
- Muchos servidores de visualización X están disponibles con el servidor X.Org, siendo la implementación de referencia la más famosa.
Además, la interfaz de usuario se denomina shell. Es una GUI (interfaz gráfica de usuario), una CLI (interfaz de línea de comandos) o controles conectados al hardware relacionado, lo cual es normal en los sistemas integrados. La interfaz de usuario predeterminada es gráfica para sistemas de escritorio. Sin embargo, la CLI está disponible mediante ventanas de emulador de terminal o en una consola virtual aislada.
Los shells de interfaz de línea de comandos son interfaces de usuario basadas en texto, que utilizan texto tanto para la salida como para la entrada. El shell dominante es el bash (Bourne-Again Shell) utilizado en Linux, diseñado originalmente para el proyecto GNU. Casi todos los componentes de bajo nivel de Linux, incluidas varias partes del área de usuario, utilizan exclusivamente la CLI. En particular, la CLI es compatible con la automatización de tareas retrasadas o repetitivas y proporciona una comunicación entre procesos muy sencilla.
Actualmente, Linux tiene dos API de espacio de usuario del kernel para manejar dispositivos de entrada de video: API DVB para recepción de TV y API V4L2 para transmisiones de radio y video.
Esta infraestructura requiere evolucionar para adaptarse mejor a otros dispositivos debido a la diversidad y complejidad de los diferentes dispositivos y a la gran cantidad de estándares y formatos administrados por esas API. Una mejor biblioteca de dispositivos de espacio de usuario también es la clave del éxito para tener aplicaciones de espacio de usuario que puedan funcionar con todos los formatos admitidos por los dispositivos.
Usos del sistema operativo Linux
Varios estudios cuantitativos de software libre/de código abierto se concentran en temas como la confiabilidad y la participación de mercado, y muchos estudios examinan Linux específicamente. El mercado de Linux se está desarrollando y se espera que el tamaño del mercado de los sistemas operativos Linux crezca un 19,2% hasta 2027, alcanzando los 15,64 mil millones de dólares, frente a los 3,89 mil millones en 2019. Los defensores y analistas atribuyen el éxito asociativo de Linux a su libertad y bajo costo. , confiabilidad y seguridad frente a la dependencia del proveedor.
W3Cook publica estadísticas que utilizan los 1.000.000 de dominios principales de Alexa, que estiman que el 96,55% de los servidores web usan Linux, el 1,73% usa Windows y el 1,72% usa FreeBSD en mayo de 2015.
En mayo de 2022, la cuota de mercado estimada de Linux es de alrededor del 2,5% en computadoras de escritorio, según las estadísticas de servidores web. Microsoft Windows incluye una cuota de mercado de aproximadamente el 75,5%, mientras que macOS tiene alrededor del 14,9%.
Android se ha convertido en el sistema operativo líder para teléfonos inteligentes basado en el kernel de Linux. En julio de 2022, el 71,9% de los teléfonos inteligentes de todo el mundo que utilizaban Internet utilizaban Android. Además, Android es un sistema operativo famoso para tabletas y representó más del 60% de las ventas de tabletas en 2013.
Linux ha sido la plataforma preferida en la industria cinematográfica durante años. La primera gran película estrenada en un servidor Linux fue Titanic de 1997. Desde entonces, grandes estudios, incluidos Industrial Light & Magic, Weta Digital, Pixar y DreamWorks Animation, se han trasladado a Linux.
Las distribuciones de Linux también han ganado popularidad en varios gobiernos nacionales y locales. Kerala ha llegado al extremo de exigir que todas las escuelas secundarias estatales utilicen Linux en sus sistemas. China utiliza Linux exclusivamente como sistema operativo para su familia de procesadores Loongson para lograr independencia tecnológica.
Algunas regiones han integrado su distribución Linux en España, que es muy utilizada en instituciones oficiales y educativas. Además, Alemania y Francia han dado pasos hacia la adopción de Linux. El sistema operativo Red Star de Corea del Norte se basa en una versión de Fedora Linux desarrollada desde 2002.
Sistema operativo Linux funcionando
El sistema operativo Linux sigue un diseño estándar que es la clave de sus diversas distribuciones y variaciones. Cada distribución de Linux se basa en el kernel de Linux, pero puede diferir según factores como:
- Controladores de dispositivos, que utilizan código que administra cómo funcionan los dispositivos vinculados.
- Controladores del sistema de archivos, que utilizan código que administra cómo opera el kernel con distintos sistemas de archivos.
- Llamadas al sistema, que utilizan código que gestiona cómo los programas reclaman servicios a través del kernel.
- Arrancando y cargando el kernel de Linux.
- El kernel maneja todas las salidas y entradas del sistema una vez iniciado. El sistema se inicia y se pueden inicializar los procesos.
- El sistema se puede utilizar para procesos que contienen comandos ingresados de forma interactiva mediante la línea de comandos, funciones del servidor de red, aplicaciones de escritorio o cualquier programa o aplicación a medida que se inician los procesos del sistema.
El kernel es lo único que todos los sistemas que ejecutan Linux tienen en común. Linux funciona mediante:
La experiencia del usuario puede variar ampliamente, dependiendo de cómo se utilice el sistema Linux, mientras que el kernel puede ser casi idéntico con algunas diferencias de compilación y divergencias en la configuración. Por ejemplo, algunos casos de uso de Linux con distintas experiencias de usuario son:
Linux funciona de manera muy similar a cualquier sistema operativo basado en GUI cuando se usa como GUI con un entorno de escritorio. Se pueden iniciar aplicaciones y muchos otros recursos presionando íconos, y los archivos se pueden eliminar, copiar o mover usando un trackpad o mouse.
Distribuciones de Linux
Linux ha aceptado las disposiciones copyleft de la Free Software Foundation, que produjo la GNU GPL desde su inicio. La GPL describe que cualquier cosa que se modifique y sea gratuita debe distribuirse libremente.
Hay disponibles cientos de versiones de Linux, también llamadas distros o distribuciones. Por lo general, las distribuciones se diferencian del resto al definir un objetivo, mercado objetivo, función o filosofía específicos.
Hay muchas distribuciones creadas para funciones específicas, como seguridad, juegos, computadoras de escritorio, servidores o dispositivos integrados, como los sistemas Raspberry Pi. Casi todas las distribuciones modernas están listas para usar y precompiladas, mientras que otras, como Gentoo Linux, se componen de código fuente que cualquier usuario puede compilar localmente durante el inicio de la instalación para usar la configuración de su sistema.
Pros y contras del sistema operativo Linux
Algunos beneficios de usar Linux se enumeran y explican a continuación:
Algunas desventajas de Linux son: