1.
Introducción
2. Procesador y Tarjeta
Madre
3. Requisitos de
memoria
4. Requisitos de la controladora de
disco duro
5. Requisitos de espacio en
disco
6. Requisitos de monitor y adaptador de
vídeo
7.
Conclusiones
LINUX es un sistema
operativo, compatible Unix. Dos
características muy peculiares lo
diferencian del resto de los sistemas que
podemos encontrar en el mercado, la
primera, es que es libre, esto significa que no tenemos que pagar
ningún tipo de licencia a ninguna casa desarrolladora de
software por el
uso del mismo, la segunda, es que el sistema viene
acompañado del código
fuente. El sistema lo forman el núcleo del sistema
(kernel) mas un gran numero de programas /
librerías que hacen posible su
utilización.
Su objetivo
inicial es propulsar el software de libre distribución junto con su código
fuente para que pueda ser modificado por cualquier persona, dando
rienda suelta a la creatividad.
El hecho de que el sistema operativo
incluya su propio código fuente expande enormemente las
posibilidades de este sistema. Este método
también es aplicado en numerosas ocasiones a los programas que
corren en el sistema, lo que hace que podamos encontrar
muchisimos programas útiles totalmente gratuitos y con su
código fuente. La cuestión es que, como ya
mencionamos, Linux es un
sistema operativo totalmente gratuito.
LINUX se distribuye bajo la GNU Public License: Ingles ,
por lo tanto, el código fuente tiene que estar siempre
accesible.
El sistema ha sido diseñado y programado por
multitud de programadores alrededor del mundo. El núcleo
del sistema sigue en continuo desarrollo
bajo la coordinación de Linus Torvalds, la persona de la que
partió la idea de este proyecto, a
principios de
la década de los noventa.
Día a día, más y más
programas / aplicaciones están disponibles para este
sistema, y la calidad de los
mismos aumenta de versión a versión. La gran
mayoría de los mismos vienen acompañados del
código fuente y se distribuyen gratuitamente bajo los
términos de licencia de la GNU Public License.
En los últimos tiempos, ciertas casas de software
comercial han empezado a distribuir sus productos para
Linux y la
presencia del mismo en empresas aumenta
rápidamente por la excelente relación calidad –
precio que se
consigue con Linux.
- Diseño:
Linux es un sistema operativo completo con multitarea y
multiusuario (como cualquier otra versión de UNIX). Esto
significa que pueden trabajar varios usuarios
simultáneamente en él, y que cada uno de ellos
puede tener varios programas en ejecución.
El sistema Linux es compatible con ciertos
estándares de UNIX a nivel de código fuente,
incluyendo el IEEE POSIX.1, System V y BSD. Fue desarrollado
buscando la portabilidad de los fuentes: casi
todo el software gratuito desarrollado para UNIX se compila en
Linux sin problemas. Y
todo lo que se hace para Linux (código del núcleo,
drivers, librerías y programas de usuario) es de libre
distribución
En Linux también se implementa el control de
trabajos POSIX (que se usa en los shells csh y bash), las
pseudoterminales (dispositivos pty), y teclados nacionales
mediante manejadores de teclado
cargables dinámicamente. Además, soporta consolas
virtuales, lo que permite tener más de una sesión
abierta en la consola de texto y
conmutar entre ellas fácilmente. A los usuarios del
programa
"screen" les resultará familiar esto.
El núcleo es capaz de emular por su cuenta las
instrucciones del coprocesador 387, con lo que en cualquier 386
con coprocesador o sin él se podrán ejecutar
aplicaciones que lo requieran.
Linux soporta diversos sistemas de
ficheros para guardar los datos. Algunos de
ellos, como el ext2fs, han sido desarrollados
específicamente para Linux. Otros sistemas de ficheros,
como el Minix-1 o el de Xenix también están
soportados. Y con el de MS-DOS se
podrán acceder desde Linux a los disquetes y particiones
en discos duros
formateados con MS-DOS.
Además, también soporta el ISO-9660, que
es el estándar seguido en el formato de los CD-ROMs.
Hablaremos más sobre los sistemas de ficheros en los
capítulos 2 y 4.
Linux implementa todo lo necesario para trabajar en
red con
TCP/IP. Desde
manejadores para las tarjetas de red
más populares hasta SLIP/PPP, que permiten acceder a
una red
TCP/IP por el
puerto serie. También se implementan PLIP (para
comunicarse por el puerto de la impresora) y
NFS (para acceso remoto a ficheros). Y también se han
portado los clientes de
TCP/IP, como FTP, telnet, NNTP y
SMTP. Hablaremos más acerca de esto en el capítulo
5.
El núcleo de Linux ha sido desarrollado para
utilizar las características del modo protegido de los
microprocesadores 80386 y 80486. En concreto, hace
uso de la gestión
de memoria avanzada
del modo protegido y otras características
avanzadas.
Cualquiera que conozca la programación del 386 en el modo protegido
sabrá que este modo fue diseñado para su uso en
UNIX (o tal vez Multics). Linux hace uso de esta funcionalidad
precisamente.
El núcleo soporta ejecutables con
paginación por demanda. Esto
significa que sólo los segmentos del programa que se
necesitan se cargan en memoria desde el
disco. Las páginas de los ejecutables son compartidas
mediante la técnica copy-on-write, contribuyendo todo ello
a reducir la cantidad de memoria requerida para las
aplicaciones.
Con el fin de incrementar la memoria
disponible, Linux implementa la paginación con el
disco:
puede tener hasta 256 megabytes de espacio de
intercambio o "swap" en el disco duro.
Cuando el sistema necesita más memoria, expulsará
páginas inactivas al disco, permitiendo la
ejecución de programas más grandes o aumentando el
número de usuarios que puede atender a la vez. Sin
embargo, el espacio de intercambio no puede suplir totalmente a
la memoria RAM, ya
que el primero es mucho más lento que
ésta
La memoria dedicada a los programas y a la cache de
disco está unificada. Por ello, si en cierto momento hay
mucha memoria libre, el tamaño de la cache de disco
aumentará acelerando así los accesos.
Los ejecutables hacen uso de las librerías de
enlace dinámico. Esto significa que los ejecutables
comparten el código común de las librerías
en un único fichero, como sucede en SunOS. Así, los
ejecutables serán más cortos a la hora de
guardarlos en el disco, incluyendo aquellos que hagan uso de
muchas funciones de
librería. También pueden enlazarse
estáticamente cuando se deseen ejecutables que no
requieran la presencia de las librerías dinámicas
en el sistema. El enlace dinámico se hace en tiempo de
ejecución, con lo que el programador puede cambiar las
librerías sin necesidad de recompilación de los
ejecutables.
Para facilitar la depuración de los programas, el
núcleo de Linux puede generar volcados de la imagen de memoria
de los programas (ficheros core). Entre esto y la posibilidad de
compilar ejecutables con soporte de depuración, el
programador podrá averiguar la causa de los fallos de su
programa.
Las funciones
principales de este sistema operativo son:
- Sistema multitarea En Linux es posible ejecutar
varios programas a la vez sin necesidad de tener que parar la
ejecución de cada aplicación. - Sistema multiusuario Varios usuarios pueden acceder a
las aplicaciones y recursos del
sistema Linux al mismo tiempo. Y, por
supuesto, cada uno de ellos puede ejecutar varios programas a
la vez (multitarea). - Shells programables Un shell conecta las ordenes de
un usuario con el Kernel de Linux (el núcleo del
sistema), y al ser programables se puede modificar para
adaptarlo a tus necesidades. Por ejemplo, es muy útil
para realizar procesos en
segundo plano. - Independencia de dispositivos Linux admite cualquier
tipo de dispositivo (módems, impresoras)
gracias a que cada una vez instalado uno nuevo, se añade
al Kernel el enlace o controlador necesario con el dispositivo,
haciendo que el Kernel y el enlace se fusionen. Linux posee una
gran adaptabilidad y no se encuentra limitado como otros
sistemas
operativos. - Comunicaciones Linux es el sistema más
flexible para poder
conectarse a cualquier ordenador del mundo. Internet se
creó y desarrollo
dentro del mundo de Unix, y por lo tanto Linux tiene las
mayores capacidades para navegar, ya que Unix y Linux son
sistemas prácticamente idénticos. Con linux
podrá montar un servidor en su
propia casa sin tener que pagar las enormes cantidades de
dinero que
piden otros sistemas.
- Programación:
LINUX es un sistema desarrollado completamente en C,
con el uso de algunas librerías hechas en ensamblador. Actualmente Cuenta con el sistema
X Windows
que es un sistema de administración gráfico por lo
que se han incorporado otros lenguajes de
programación para el desarrollo de aplicaciones
como el Java y
Visual
C.Actualmente Linux soporta sistemas con una CPU
Intel14 80386, 80486, o Pentium/Pro. Esto incluye todas las variantes
del tipo de CPU, como
el 386SX, 486SX, 486DX, y 486DX2. Los "clónicos" no
Intel, como AMD y Cyrix también funcionan con Linux
.Linux ya soporta, en la actualidad a otras arquitecturas
tales como ALPHA, Amiga, PowerPc, etc.Si se tiene un 80386 o 80486SX, puede que
también quiera aprovechar el coprocesador
matemático, si bien no es imprescindible (el
núcleo de Linux puede emular el coprocesador si no
cuenta con uno). Están soportados todos los copros
estándar, tales como los IIT, Cyrix FasMath, e
Intel.La placa base debe ser de arquitectura
ISA o EISA en cuanto a bus se
refiere.Estos términos definen cómo
interactúa el sistema con los periféricos y otros componentes por
medio del bus
principal. La mayoría de los sistemas vendidos hoy son
de bus ISA o EISA. El bus MicroChannel (MCA), que se
encuentra en máquinas como los IBM/PS2 no
está soportado actualmente.Los sistemas que usan arquitectura
de bus local (para accesos más rápidos en
vídeo y disco) también están soportados.
Es recomendable que tenga una arquitectura de bus local
estándar como pueda ser el Bus Local VESA, PCI
también está soportadoLinux, comparado con otros sistemas
operativos avanzados, necesita muy poca memoria para
funcionar . Debería contar con un mínimo de 2
megabytes de RAM; sin
embargo, es altamente recomendable tener 4 megabytes. Cuanta
más memoria tenga más rápido irá
su sistema.Linux soporta el rango completo de direcciones de
32-bits de los 386/486; es decir, utilizará toda la
memoria
RAM de forma automática, y se
apañará sin problemas
con tan sólo 4 megabytes de RAM,
incluyendo aplicaciones "pedigüeñas" como
X-Window, Emacs, y demás. Sin embargo, disponer de
más memoria es casi tan importante como tener un
procesador
más rápido. 8 megabytes es más que
suficiente para uso personal; 16
megabytes o más pueden ser necesarios si espera una
fuerte carga de usuarios en el sistema.La mayoría de los usuarios de Linux, reservan
una parte del disco duro
para espacio de intercambio ("swapping") que se usa como RAM
virtual. Incluso si dispone de bastante memoria RAM física en su
máquina, puede que quiera utilizar un área de
"swap" .El área de "swap" no puede reemplazar a una
memoria física RAM real,
pero puede permitir a su sistema ejecutar aplicaciones
más grandes guardando en disco duro aquellas partes de
código que están inactivas.4. Requisitos
de la controladora de disco duroNo se necesita un disco duro para ejecutar Linux; se
puede ejecutar un sistema mínimo completamente desde
disquete. Sin embargo, resulta lento y muy limitado, y de
todas formas, muchos usuarios tienen acceso a almacenamiento en disco duro. Se debe tener
una controladora AT-estándar (16-bit). El
núcleo soporta controladoras XT-estándar (8
bit); aunque la mayoría de las controladoras usadas
hoy son AT-estándar. Linux debería soportar
todas las controladoras MFM, RLL, e IDE. La mayoría,
pero no todas, las controladoras ESDI están soportadas
sólo aquellas que hacen emulación hardware de
la ST506.La regla general para controladoras que no sean
SCSI, es que si puede acceder a las unidades (disco y/o
disquete) desde MS-DOS u otro sistema operativo,
debería poder
hacerlo desde Linux.Linux también soporta un número de
controladoras de disco SCSI, si bien el soporte para SCSI es
más limitado a causa de la gran cantidad de estandars
que existen para el interfaz de las controladoras. Las
controladoras SCSI soportadas16 incluyen las Adaptec
AHA1542B, AHA1542C, AHA1742A (versión de BIOS
1.34), AHA1522, AHA1740, AHA1740 (controladora SCSI-2,
BIOS 1.34
en modo mejorado); Future Domain 1680, TMC-850, TMC-950;
Seagate ST-02; UltraStor SCSI; Western Digital WD7000FASST.
Las controladoras clónicas basadas en estas tarjetas
también deberían funcionar.5. Requisitos de
espacio en discoPara instalar Linux, se necesitará tener algo
de espacio libre en el disco duro. Linux soporta
múltiples discos
duros en la misma máquina; puede disponer de
espacio para Linux en múltiples unidades si es
necesario.La cantidad de espacio en disco duro que se
necesitará depende en gran medida de las necesidades
de cada uno y de la cantidad de software que se va a
instalar. Linux es relativamente pequeño en
relación a las implementaciones de UNIX; uno
podría correr un sistema completo con 10-20 megabytes
de espacio en disco. Sin embargo, si se quiere disponer de
espacio para expansiones, y para paquetes más grandes
como X Windows,
necesitará más espacio. Si se planea permitir a
múltiples usuarios utilizar la máquina, se
tendrá que dejar espacio para sus ficheros.También, a menos que se tenga un
montón de memoria RAM física (16 megabytes o
más), se necesitará crear espacio de
intercambio ("swap"), para ser usado como RAM
virtual.Cada distribución de Linux normalmente viene
con algún que otro texto que
debería ayudarla estimar la cantidad precisa de
espacio a reservar en función del software que se planee
instalar. Puede ejecutarse un sistema mínimo con menos
de 20 megabytes; un sistema completo con toda la parafernalia
en 80 megabytes o menos; y un sistema grande con sitio para
muchos usuarios y espacio para futuras expansiones en un
rango de 100-150 megabytes. De nuevo, estas cifras son
meramente orientativas; uno tendrá que decidir,
según sus necesidades y objetivos,
los requerimientos específicos de almacenamiento para su
sistema.6. Requisitos de
monitor y
adaptador de vídeoLinux soporta todas las tarjetas de
vídeo estándar Hercules, CGA, EGA, VGA, IBM
monocromo, y Super VGA así como monitores
para el interfaz por defecto basado en texto. En general, si
la combinación que tiene de monitor y
tarjeta de vídeo funcionan bajo otro sistema operativo
como MS-DOS, debería funcionar perfectamente con
Linux. La genuínas tarjetas CGA de IBM sufren el
(d)efecto nieve ("snow") bajo Linux, por lo que no es muy
recomendable su uso.Los entornos gráficos como el Sistema X Window
tienen requerimientos propios de hardware para
la tarjeta de vídeo.Puesta a Punto:
La Puesta a Puntos del sistema LINUX se realiza a
través de órdenes directas que se le dan al
intérprete de comandos,
tales instrucciones sirven para crear directorios, alta de
cuentas,
solución de problemas tanto de hardware como de
software. Con la introducción del sistema X Windows
la
administración se realiza de una manera
gráfica a través de ventanas y el uso del
mouse.- Instalación:
La operación del sistema es cómoda,
siempre y cuando se tengan los conocimientos necesarios, como
conocimientos mínimos se requieren los necesarios para
usar el UNÍS, lo demás es pan comido, ya que lo
que se tiene que aprender demás es el uso de las
aplicaciones que se instalarán en el sistema
operativo. Con la introducción de X Windows todo es ya
más sencillo debido a es una GUI (Graphic User
Interface) por que se familiariza uno con el uso de ventanas
y puntero, tal y como si fuera MS-Windows. - Operación:
LINUX posee el ext2, éste es un sistema de
archivos
mucho más avanzado que el MS-DOS, con soporte de
corrección y detección de errores (los cuales
inician al encender la
computadora después de un apagado no correcto),
compresión de archivos,
mayor tolerancia a
la fragmentación de archivos y con unos tiempos de
respuesta muy superiores, aunque a un costo
superior de utilización de memoria. - Mantenimiento:
- Actualización:
Las actualizaciones pueden bajarse del internet de forma gratuita
desde los sitios oficiales de Linux. La comunidad Linux
es muy dinámica. Las versiones nuevas del
núcleo aparecen cada pocas semanas, y otros programas se
actualizan casi tan a menudo. Por esto, los nuevos usuarios de
Linux sienten a menudo la necesidad de actualizar sus sistemas
constantemente para mantener el paso de los cambios.
No sólo ésto no es necesario, sino que es
una pérdida de tiempo. Para mantenerse al día de
todos los cambios del mundo Linux, uno debería utilizar
todo su tiempo actualizando en vez de usando su
sistema.
Pero entonces, cuándo se debe actualizar?. Alguna
gente piensa que se debe actualizar cuando se libera una nueva
versión de distribución . Por ejemplo, cuando
Slackware (sistema de Instalación del LINUX) presenta una
nueva versión.
Muchos usuarios Linux reinstalan completamente sus
sistemas con la nueva versión Slackware, cada vez. Esto,
también, es una pérdida de tiempo. En general, los
cambios de las versiones Slackware son pequeños. Bajarse y
reinstalar 30 discos cuando sólo ha cambiado un 10% del
software es, por supuesto, inútil.
La mejor forma de actualizar el sistema es
haciéndolo a mano: actualizando solo aquellos paquetes de
software que se sepa que hay que actualizar. Esto asusta a un
montón de gente: quieren saber qué actualizar y
cómo, y qué se romperá si no actualizan.
Para tener éxito
con Linux, es importante superar los temores del "hágalo
usted mismo" que es lo que Linux es, a fin de cuentas. De
hecho, una vez que se tenga el sistema trabajando y todo el
software correctamente configurado, la reinstalación de
una nueva versión no dudará en limpiar toda la
configuración y todo estará roto otra vez, igual
que la primera vez que instaló su sistema. Volver
atrás de ésta forma no es necesario, todo lo que se
necesita es algún conocimiento
acerca de cómo actualizar el sistema y de cómo
hacerlo bien
Nos encontraremos con que cuando se actualice un
componente del sistema, no tienen por que fallar los
demás. Realmente, la actualización insensata para
mantenerse en la ola" no es tan importante. Esto no es MS-DOS o
Microsoft
Windows. No hay ninguna razón importante para ejecutar la
versión más reciente de todo el software. Si se
desean o necesitan funciones de una versión nueva,
entonces es necesario actualizar. Si no, no es necesario. En
otras palabras, hay que actualizar sólo lo que necesite y
cuando se tenga que hacer. No hay que actualizar sólo por
el mero hecho de actualizar. Hacerlo sólo gastaría
un montón de tiempo y esfuerzo intentando mantenerse al
día.
El software más importante para actualizar en el
sistema es el núcleo, las librerías y el compilador
gcc. Estas son las tres partes esenciales del sistema, y en
algunos casos cada uno depende de las otras para que todo
funcione bien. Todos ellos se toman los fuentes
actualizados y se compilan manualmente. La mayor parte del resto
del software del sistema no necesita ser actualizado
periódicamente.
La conclusión más importante es que Linux
es una excelente elección para trabajar con UNIX a nivel
personal.
Linux permite desarrollar y probar el software UNIX en su PC,
incluyendo aplicaciones de bases de datos y
X Windows. Con Linux, se puede correr un sistema UNIX y adaptarlo
a las necesidades. La instalación y uso de Linux es
también una excelente manera de aprender UNIX si no se
tiene acceso a otras máquinas UNIX.
Linux no es solo para los usuarios personales de UNIX.
Es robusto y suficientemente completo para manejar grandes
tareas, así como necesidades de cómputo
distribuidas. Muchos negocios
especialmente los pequeños se están cambiando a
Linux en lugar de otros entornos de estación de trabajo
basados en UNIX. Grandes vendedores de software comercial se
están dando cuenta de las oportunidades que puede brindar
un sistema operativo gratuito.
Linux es, propiamente, el núcleo de un sistema
operativo. Es decir, el conjunto de programas que controla los
aspectos más básicos del funcionamiento de un
ordenador. Y como ya se dijo su desarrollo lo inició en
1991 Linus Tovalds, entonces estudiante en la Universidad de
Helsinki, en Finlandia, y se completó con miles de
aportaciones a través de Internet.
Autor:
Francisco Armando Dueñas
Rodríguez
Edad: 23 años
Universidad La
Salle
Cancún, Quintana Roo México