Saturday, July 31, 2004

¿Qué es Linux?


Introducción.

Un sistema operativo es un conjunto de instrucciones computacionales que se encargan de administrar los procesos y las comunicaciones que se llevan a cabo entre los dispositivos físicos (hardware), y los programas. Tales actividades están regidas por el kernel ó núcleo del sistema operativo.

Linux, es un sistema operativo gratuito, de código abierto y de libre distribución. Su origen está íntimamente relacionado con UNIX, creado por American Telephone and Telegraph Corporation (AT&T) y especialmente vinculado está con Minix, un sistema operativo tipo UNIX para PC´s basadas en Intel.

Precisamente, gracias a Minix, es que Linus Torvalds inicia el proyecto Linux en aras de sustituir a Minix. Era necesario crear un sistema operativo libre de patentes que restringieran la capacidad de mejorarlo, ampliarlo y poner a disposición de cualquier persona el código fuente del mismo.

Existen muchos distribuidores y muchas versiones de UNIX; sin embargo, éstas últimas se pueden clasificar en dos categorías trascendentes: El System V y la BSD (Berkeley Software Distribution. tr.: Distribución de Software Berkeley). Para el caso de Linux, también existen muchos distribuidores y versiones; sin embargo, no es posible efectúar una clasificación como la hecha para su antecesor.

Linux es un "clon" de UNIX, por éste motivo comparte muchas de las característas de su "padre". Algunas de éstas son: Es multitareas, multiusuario, posee consolas programables, tiene independencia de los dispositivos y una fuerte capacidad de comunicaciones de red. Además, Linux es de código abierto y de libre distribución y hasta se puede conseguir de manera gratuita (descargándolo desde Internet, por ejemplo). No debe olvidarse la "portabilidad" otra característica fundamental de Linux.

Para realizar diversas tareas y obtener mayor beneficio de un sistema operativo, es preciso que éste pueda tener programas. La Fundación para el Software Libre (Free Software Foundation; FSF por sus siglas en Inglés), se dedica a "promover los derechos de los usuarios para utilizar, estudiar, copiar, modificar y redistribuir programas computacionales." Muchos de los programas incluídos en las distribuciones Linux actuales, proceden del patrocinio que la FSF hace al proyecto GNU, de donde nacen dichos programas, en gran medida, gracias a las contribuciones de muchísimos programadores y hackers alrededor del mundo. Es aquí, donde se crea el enlace: Linux-FSF, desde el cual nace un sistema operativo Linux funcionalmente apto para cualquier usuario y que, en éste punto, recibe el nombre de GNU/Linux.

Características de Linux.

Anteriormente, ya fueron mencionadas las características de Linux. Ahora, las conoceréis más a fondo.

Multitareas.

Por éste nombre se conoce a la facultad que tiene Linux de ejecutar, aparentemente, de forma simultánea, muchos programas sin obstaculizar la ejecución de cada aplicación. Esto es multitareas preferente. El sistema operativo le permite funcionar cuando tenga asegurado su turno y sin perjudicar a los otros programas.

Existe también otro sistema multitareas. Se llama: multitareas cooperativo. Este sistema multitareas no es propio de Linux. Ocurre aquí que un programa en ejecución es quien decide ó no la ejecución de otro.

Para darle una perspectiva de hardware al sistema multitareas preferente, el de Linux, diré que un microprocesador solamente puede hacer una cosa a la vez. Conforme se hacen microprocesadores de mayor frecuencia (más rápidos), las instrucciones se ejecutan-terminan más rápidamente, pero, el principio de "una cosa a la vez" sigue siendo el mismo. Es válido para todos los ordenadores, sin perjucio de edad.

Linux, administra exquisitamente las órdenes que son enviadas hacia y desde el microprocesador; monitorea los procesos que esperan por ejecutarse y aquellos que ya se están ejecutando, luego, programa cada proceso para que tenga la misma oportunidad de acceso al microprocesador. En realidad, existen "retrasos" de mil millonésimas de segundo entre cada orden, pero, la estricta y eficiente administración que de los mismos hace Linux, da la impresión -realmente así lo experimenta uno- de que todo "se hace al mismo tiempo".

Multiusuario.

En entornos de trabajo de muchos usuarios, tener acceso desde un mismo ordenador a una aplicación por parte de varios individuos resulta una capacidad útil y necesaria.

Varias personas pueden estar conectadas al mismo ordenador y a la vez pueden estar usando el mismo programa. Ellos pueden estar trabajando en cosas distintas usando la misma aplicación. Básicamente, es a ésto a lo que se refiere la capacidad multiusuario en Linux.

La labor de trabajar en un mismo proyecto, no se refiere a la capacidad multiusuario. Ésa labor, forma "parte de", pero, no lo es todo. En el párrafo anterior está la esencia de la capacidad multiusuario.

Independencia de dispositivos.

Linux, tiene la enorme ventaja de que considera a cualquier cosa como a un archivo. Si tenéis un "archivo de texto", éso un archivo, si tenéis un directorio, también es un archivo y... aunque tal vez os sorprenda: Una impresora es un archivo. Es decir, cualquier dispositivo de hardware es un fichero también.

¿Y qué? ¿Cuál es la ventaja de eso?

Pues bien, cuando compráis un aparato que no existía hace 1 semana (por decir algo), para lograr que funcione solamente necesitáis "fusionarlo con el núcleo" de Linux. De tal forma, sin importar cuántos nuevos dispositivos aparezcan, siempre tendréis la oportunidad de hacerlos funcionar en Linux.

Algunos dispositivos como los "Winmodems" no siempre funcionan con Linux. Ellos, constituyen una excepción, esto porque tales "aparatos" no son dispositivos verdaderos. Funcionan como punto de conexión, pero, el sistema operativo (primordialmente entiéndáse: Windows) es quien administra el flujo de información y otros procesos vinculados a la estabilidad de la conexión. Usualmente, los fabricantes de Winmodems, fabrican éstos modems para Windows y dadas la característica principal de su funcionamiento, generalmente es muy poco probable que funcione en otro sistema que no sea el anteriormente citado.

Al usuario se le presenta una dificultad muy grande cuando no puede usar un dispositivo periférico por causa de la incapacidad del sistema operativo para accesarlo. Tal incapacidad es el resultado de una arquitectura de sistema incompatible, limitación de direccionamiento del sistea operativo y otras. Linux, al poseer la capacidad de adaptar el núcleo para vincular un dispositivo físico a un fichero, no tiene el problema antes mencionado. De aquí la enorme importancia de la independencia de dispositivos.

Toda vez que el vínculo entre el dispositivo y el núcleo de Linux se ha creado, entonces, cada vez que el servicio del primero se solicita estará dsponible inmediatamente.


0 comments: