- Historia de
Linux - Linus Benedict
Torvalds - Caracteristicas de
Linux - ¿Qué son las
"distribuciones" de GNU/Linux? - Linux frente a los otros
sistemas operativos
Linux es, a simple vista, un Sistema
Operativo. Es una implementación de libre distribución UNIX para
computadoras
personales (PC), servidores, y
estaciones de trabajo. Fue desarrollado para el i386 y ahora
soporta los procesadores
i486, Pentium, Pentium Pro y
Pentium II, así como los clones AMD y Cyrix.
También soporta máquinas
basadas en SPARC, DEC Alpha, PowerPC/PowerMac, y Mac/Amiga
Motorola 680×0.
Como sistema
operativo, Linux es muy
eficiente y tiene un excelente diseño.
Es multitarea, multiusuario, multiplataforma y multiprocesador;
en las plataformas Intel corre en modo protegido; protege
la memoria
para que un programa no pueda
hacer caer al resto del sistema; carga
sólo las partes de un programa que se
usan; comparte la memoria entre
programas
aumentando la velocidad y
disminuyendo el uso de memoria; usa un
sistema de memoria
virtual por páginas; utiliza toda la memoria
libre para cache; permite usar bibliotecas
enlazadas tanto estática
como dinámicamente; se distribuye con código
fuente; usa hasta 64 consolas virtuales; tiene un sistema de
archivos
avanzado pero puede usar los de los otros sistemas; y
soporta redes tanto en
TCP/IP como en
otros protocolos.
LINUX hace su aparicion a principios de la
decada de los noventa, era el año 1991 y por aquel
entonces un estudiante de informatica de la Universidad de
Helsinki, llamado Linus Torvalds empezo, -como una aficion y sin
poderse imaginar a lo que llegaria este proyecto, a
programar las primeras lineas de codigo de este
sistema operativo
llamado LINUX.
Este comienzo estuvo inspirado en MINIX, un
pequeño sistema Unix desarrollado
por Andy Tanenbaum. Las primeras discusiones sobre Linux fueron
en el grupo de
noticias comp.os.minix, en estas discusiones se hablaba sobre
todo del desarrollo de
un pequeño sistema Unix para usuarios de Minix que querian
mas.
Linus nunca anuncio la version 0.01 de Linux (agosto
1991), esta version no era ni siquiera ejecutable, solamente
incluia los principios del
nucleo del sistema, estaba escrita en lenguaje
ensamblador y asumia que uno tenia acceso a un sistema Minix
para su compilacion.
El 5 de octubre de 1991, Linus anuncio la primera
version "Oficial" de Linux, -version 0.02. Con esta version Linus
pudo ejecutar Bash (GNU Bourne Again Shell) y gcc (El compilador
GNU de C) pero no mucho mas funcionaba. En este estado de
desarrollo ni
se pensaba en los terminos soporte, documentacion,
distribucion .Despues de la version 0.03, Linus salto en la
numeracion hasta la 0.10, mas y mas programadores a lo largo y
ancho de internet empezaron a
trabajar en el proyecto y
despues de sucesivas revisiones, Linus incremento el numero de
version hasta la 0.95 (Marzo 1992). Mas de un año despues
(diciembre 1993) el nucleo del sistema estaba en la version 0.99
y la version 1.0 no llego hasta el 14 de marzo de 1994. Desde
entonces no se ha parado de desarrollar, la version actual del
nucleo es la 2.2 y sigue avanzando dia a dia con la meta de
perfeccionar y mejorar el sistema.
Linus Benedict Torvalds nació en Helsinki,
Finlándia, el año 1969. Empezó a "trabajar"
con ordenadores a los 10 años, cuando su abuelo le
compró un Comodore el año 1980. Éste buen
señor era un matemático y estadista. Trabajava a la
Universidad y
fué quién "enganchó" al mundo de los
computadores a nuestro buen amigo Linus.
Con el paso del tiempo, Linus
pasó a tener un Sinclair QL, un gran ordenador de Clive
Sinclair (creador del conocido Spectrum), que tenía algun
pequeño error de diseño.
Linus se sintió especialmente atraido por esta
máquina, después de crear aplicaciones para
ésta computadora y
de haber retocado su hardware con la finalidad de
adaptarlo a sus necesidades. El problema que tenía dicha
máquina era que los recursos eran
insuficientes para poder llevar a
la práctica los planes de Linus. Además, no era un
equipo compatible. Así pues, el mes de enero de 1991
compró su primer PC, un 386.
Retrocedamos otra vez en el tiempo, hasta
1988. Éste año fué cuando Linus entró
a la Universidad. Este mismo año fué cuando un
sistema operativo didáctico, basado en Unix y creado por
Andy Tannenbaum, empezó a cobrar importáncia. Dicho
sistema operativo era el famoso Minix.
Linus entró a formar parte de
la comunidad de
usuarios de Minix. Tannenbaum cometió un error en su
sistema operativo. Era demasiado limitado, tanto
técnicamente como políticamente, es decir, en
ningún momento tuvo en cuenta la posibilidad de incluir
Minix al proyecto GNU (creado el año 1983 por Richard
Stallman). En realidad, la creación de Andy Tannenbaum
estaba pensada para ser distribuida comercialmente. Su principal
error fué ceder todos los derechos a Prentice Hall,
que empezó a cobrar 150 dólares por licéncia
(unas 22.500 ptas. / 135.23 euros).
Así pues, Linus tomó la
decisión de cambiar esta política debido a que
el sistema Minix era ideal para los estudiantes de sistemas
operativos, y su precio era
considerablemente alto. Llegamos de nuevo al año 1991,
cuando Linus se acabó de comprar su primer 386. En
aquellos momentos, la intención de nuestro amigo era
clara: crear un nuevo Kernel de UNIX basado en el Kernel de Minix
y modificarlo periódicamente de manera que fuera capaz de
ejecutar aplicaciones GNU.
A pesar de todo, no toda la vida del
Sr. Linus ha estado
dedicada exclusivamente al sistema operativo Linux…
Actualmente Linus Torvalds vive desde
el año 1997 en Santa Clara, California, junto con su
esposa Tove y sus dos hijas, Patricia Miranda y Daniela. Le
encanta jugar con sus dos pequeñas. Está trabajando
para Transmeta, aunque nadie no sabe demasiado bién en
qué trabaja. Parece ser que existe una cláusula en
su contrato que
le impide revelar dicha información. De todas formas, se sabe que
Transmeta está desarrollando un nuevo procesador con un
juego de
instrucciones RISC capaz de ejecutar código
x86.
Tal vez una de las aficiones
más conocidas de Linus es que le le gusta la cerveza,
más aún si es Guinness. Así lo demostraron
los miembros del SVLUG (Silicon Valley Linux User Group) cuando
Linus fué a visitarlos para llevar a cabo una
conferéncia y le regalaron una caja de cerveza…
Poca cosa más de sabe de este
personaje que ha cambiado la forma de ver los ordenadores durente
estos últimos años y que ha conseguido dar un buen
empujón al proyecto GNU.
Aqui teneis una lista bastante completa con las
caracteristicas de LINUX
[Fuente: Infosheet-Como. Autor: Ivan Casado]
:
- Multitarea: La palabra multitarea describe la
habilidad de ejecutar varios programas al
mismo tiempo.
LINUX utiliza la llamada multitarea preeventiva, la cual
asegura que todos los programas que se estan utilizando en un
momento dado seran ejecutados, siendo el sistema operativo el
encargado de ceder tiempo de microprocesador a cada programa. - Multiusuario: Muchos usuarios usando la misma maquina
al mismo tiempo. - Multiplataforma: Las plataformas en las que en un
principio se puede utilizar Linux son 386-, 486-. Pentium,
Pentium Pro, Pentium II,Amiga y Atari, tambien existen
versiones para su utilizacion en otras plataformas, como Alpha,
ARM,MIPS, PowerPC y SPARC. - Multiprocesador: Soporte para sistemas con
mas de un procesador esta
disponible para Intel y SPARC. - Funciona en modo protegido 386.
- Protección de la memoria entre procesos, de
manera que uno de ellos no pueda colgar el sistema. - Carga de ejecutables por demanda:
Linux sólo lee del disco aquellas partes de un programa
que están siendo usadas actualmente. - Política de copia en escritura
para la compartición de páginas entre
ejecutables: esto significa que varios procesos
pueden usar la misma zona de memoria para ejecutarse. Cuando
alguno intenta escribir en esa memoria, la página (4Kb
de memoria) se copia a otro lugar. Esta política de copia
en escritura
tiene dos beneficios: aumenta la velocidad y
reduce el uso de memoria. - Memoria virtual usando paginación (sin
intercambio de procesos completos) a disco: A una
partición o un archivo en el
sistema de archivos, o
ambos, con la posibilidad de añadir más
áreas de intercambio sobre la marcha Un total de 16
zonas de intercambio de 128Mb de tamaño máximo
pueden ser usadas en un momento dado con un límite
teórico de 2Gb para intercambio. Este limite se puede
aumentar facilmente con el cambio de
unas cuantas lineas en el codigo
fuente. - La memoria se gestiona como un recurso unificado para
los programas de usuario y para el caché de disco, de
tal forma que toda la memoria libre puede ser usada para
caché y ésta puede a su vez ser reducida cuando
se ejecuten grandes programas. - Librerías compartidas de carga dinámica (DLL's) y librerías
estáticas. - Se realizan volcados de estado (core dumps) para
posibilitar los análisis post-mortem, permitiendo el uso
de depuradores sobre los programas no sólo en
ejecución sino también tras abortar éstos
por cualquier motivo. - Compatible con POSIX, System V y BSD a nivel
fuente. - Emulación de iBCS2, casi completamente
compatible con SCO, SVR3 y SVR4 a nivel binario. - Todo el código fuente está disponible,
incluyendo el núcleo completo y todos los drivers, las
herramientas
de desarrollo y todos los programas de usuario; además
todo ello se puede distribuir libremente. Hay algunos programas
comerciales que están siendo ofrecidos para Linux
actualmente sin código fuente, pero todo lo que ha sido
gratuito sigue siendo gratuito. - Control de tareas POSIX.
- Pseudo-terminales (pty's).
- Emulación de 387 en el núcleo, de tal
forma que los programas no tengan que hacer su propia
emulación matemática. Cualquier máquina que
ejecute Linux parecerá dotada de coprocesador
matemático. Por supuesto, si el ordenador ya tiene una
FPU (unidad de coma flotante), esta será usada en lugar
de la emulación, pudiendo incluso compilar tu propio
kernel sin la emulación matemática y conseguir un pequeño
ahorro de
memoria. - Soporte para muchos teclados nacionales o adaptados y
es bastante fácil añadir nuevos
dinámicamente. - Consolas virtuales múltiples: varias sesiones
de login a través de la consola entre las que se puede
cambiar con las combinaciones adecuadas de teclas (totalmente
independiente del hardware de
video). Se
crean dinámicamente y puedes tener hasta 64. - Soporte para varios sistemas de archivo
comunes, incluyendo minix-1, Xenix y todos los sistemas de
archivo típicos de System V, y tiene un avanzado sistema
de archivos propio con una capacidad de hasta 4 Tb y nombres de
archivos de hasta 255 caracteres de longitud. - Acceso transparente a particiones MS-DOS (o a
particiones OS/2 FAT) mediante un sistema de archivos especial:
no es necesario ningún comando especial para usar la
partición MS-DOS, esta
parece un sistema de archivos normal de Unix (excepto por
algunas restricciones en los nombres de archivo, permisos, y
esas cosas). Las particiones comprimidas de MS-DOS 6 no son
accesibles en este momento, y no se espera que lo sean en el
futuro. El soporte para VFAT (WNT, Windows 95) ha
sido añadido al núcleo de desarrollo y
estará en la próxima versión
estable. - Un sistema de archivos especial llamado UMSDOS que
permite que Linux sea instalado en un sistema de archivos
DOS. - Soporte en sólo lectura de
HPFS-2 del OS/2 2.1 - Sistema de archivos de CD-ROM que
lee todos los formatos estándar de CD-ROM. - TCP/IP,
incluyendo ftp,
telnet, NFS,
etc. - Appletalk.
- Software cliente y
servidor
Netware. - Lan Manager / Windows
Native (SMB), software
cliente y
servidor. - Diversos protocolos
de red incluidos
en el kernel: TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP, Netrom,
etc.
¿Qué
son las "distribuciones" de GNU/Linux?
Una distribución es un modo de facilitar la
instalación, la configuración y el mantenimiento
de un sistema GNU/Linux. Al principio, las distribuciones se
limitaban a recopilar software libre, empaquetarlo
en disquetes o CD-ROM y
redistribuirlo o venderlo.
Ahora las grandes distribuciones -RedHat, SuSE, Caldera,
Mandrake, Corel Linux, TurboLinux…- son potentes empresas que
compiten entre sí por incluir el último software, a
veces también software propietario, con instalaciones
gráficas capaces de autodetectar el
hardware y que instalan un sistema entero en unos cuantos minutos
sin apenas preguntas.
Entre las distribuciones de GNU/Linux, destaca el
proyecto Debian/GNU. Debian nace como una iniciativa no comercial
de la FSF, aunque luego se independiza de ésta y va
más allá del propio sistema GNU/Linux. Es la
única de las grandes distribuciones que no tiene intereses
comerciales ni empresariales. Son sus propios usuarios, muy
activos, quienes
mantienen la distribución de modo comunitario, incluidas
todas sus estructuras de
decisión y funcionamiento. Su objetivo es
recopilar, difundir y promover el uso del software libre.
Reúne el mayor catálogo de software libre, todos
ellos probados, mantenidos y documentados por algún
desarrollador voluntario.
En una distribución hay todo el software
necesario para instalar en un ordenador personal;
servidor, correo, ofimática,
fax,
navegación de red, seguridad,
etc.
Linux frente a
los otros sistemas operativos
Linux es una muy buena alternativa frente a los
demás sistemas
operativos. Más allá de las ventajas evidentes
de costo, ofrece
algunas características muy notables.
En comparación con las otras versiones de Unix
para PC, la velocidad y confiabilidad de Linux son muy
superiores. También está en ventaja sobre la
disponibilidad de aplicaciones, ya que no hay mucha
difusión de estos otros Unixes (como Solaris, XENIX o SCO)
entre los usuarios de PC por sus altos costos.
Comparado con sistemas
operativos como los diferentes Microsoft
Windows, Linux
también sale ganando. Los bajos requisitos de hardware
permiten hacer un sistema potente y útil de aquel 486 que
algunos guardan en un armario. Esta misma característica permite aprovechar al
máximo las capacidades de las computadoras
más modernas. Es poco práctico tener una PC con 16
Mb de RAM y ponerle un
sistema operativo que ocupa 13 (que es lo que reporta sobre
Windows 95 el
System Information de Symantec). No solo es superior respecto a
el sistema de multitarea y de administración de memoria, sino
también en la capacidades de networking (conectividad a
redes) y de
multiusuario (aún comparando con sistemas multiusuario
como NT). La única desventaja de Linux frente a estos
sistemas, es la menor disponibilidad de software, pero este
problema disminuye con cada nuevo programa que se escribe para el
proyecto GNU, y con algunas empresas que
están desarrollando software comercial para Linux (por
ej., ).
Elizabethromeroperez Romero Perez